From 9fd889613ba8fc70876fdaf187c62543c01aa028 Mon Sep 17 00:00:00 2001 From: Steven Evans Date: Thu, 12 Jul 2018 09:57:12 -0400 Subject: [PATCH 1/5] [chore] Removing documentation build artifactsReadTheDocs builds directly from Github, so there's no need to store thedocs in the repository. --- .eslintignore | 1 + .gitignore | 1 + doc/build/doctrees/changelog.doctree | Bin 261230 -> 0 bytes doc/build/doctrees/environment.pickle | Bin 1685269 -> 0 bytes doc/build/doctrees/index.doctree | Bin 7777 -> 0 bytes doc/build/doctrees/netscript.doctree | Bin 4452 -> 0 bytes .../netscriptadvancedfunctions.doctree | Bin 7188 -> 0 bytes .../doctrees/netscriptbladeburnerapi.doctree | Bin 77729 -> 0 bytes doc/build/doctrees/netscriptdatatypes.doctree | Bin 10203 -> 0 bytes doc/build/doctrees/netscriptfunctions.doctree | Bin 306116 -> 0 bytes .../doctrees/netscripthacknetnodeapi.doctree | Bin 34011 -> 0 bytes doc/build/doctrees/netscriptixapi.doctree | Bin 51987 -> 0 bytes doc/build/doctrees/netscriptjs.doctree | Bin 32071 -> 0 bytes .../netscriptloopsandconditionals.doctree | Bin 7305 -> 0 bytes doc/build/doctrees/netscriptmisc.doctree | Bin 36900 -> 0 bytes doc/build/doctrees/netscriptoperators.doctree | Bin 22936 -> 0 bytes .../doctrees/netscriptscriptarguments.doctree | Bin 5369 -> 0 bytes .../netscriptsingularityfunctions.doctree | Bin 112834 -> 0 bytes doc/build/doctrees/shortcuts.doctree | Bin 28398 -> 0 bytes doc/build/doctrees/terminal.doctree | Bin 50874 -> 0 bytes doc/build/html/.buildinfo | 4 - doc/build/html/.nojekyll | 0 doc/build/html/_sources/changelog.rst.txt | 803 -- doc/build/html/_sources/index.rst.txt | 33 - doc/build/html/_sources/netscript.rst.txt | 28 - .../netscriptadvancedfunctions.rst.txt | 45 - .../_sources/netscriptbladeburnerapi.rst.txt | 460 - .../html/_sources/netscriptdatatypes.rst.txt | 44 - .../html/_sources/netscriptfunctions.rst.txt | 1030 -- .../_sources/netscripthacknetnodeapi.rst.txt | 171 - .../html/_sources/netscriptixapi.rst.txt | 174 - doc/build/html/_sources/netscriptjs.rst.txt | 206 - .../netscriptloopsandconditionals.rst.txt | 39 - doc/build/html/_sources/netscriptmisc.rst.txt | 238 - .../html/_sources/netscriptoperators.rst.txt | 53 - .../_sources/netscriptscriptarguments.rst.txt | 17 - .../netscriptsingularityfunctions.rst.txt | 537 - doc/build/html/_sources/shortcuts.rst.txt | 101 - doc/build/html/_sources/terminal.rst.txt | 414 - doc/build/html/_static/agogo.css | 541 - doc/build/html/_static/ajax-loader.gif | Bin 673 -> 0 bytes doc/build/html/_static/basic.css | 639 - doc/build/html/_static/bgfooter.png | Bin 276 -> 0 bytes doc/build/html/_static/bgtop.png | Bin 266 -> 0 bytes doc/build/html/_static/comment-bright.png | Bin 756 -> 0 bytes doc/build/html/_static/comment-close.png | Bin 829 -> 0 bytes doc/build/html/_static/comment.png | Bin 641 -> 0 bytes doc/build/html/_static/doctools.js | 287 - doc/build/html/_static/down-pressed.png | Bin 222 -> 0 bytes doc/build/html/_static/down.png | Bin 202 -> 0 bytes doc/build/html/_static/file.png | Bin 286 -> 0 bytes doc/build/html/_static/jquery-3.1.0.js | 10074 ---------------- doc/build/html/_static/jquery.js | 4 - doc/build/html/_static/minus.png | Bin 90 -> 0 bytes doc/build/html/_static/plus.png | Bin 90 -> 0 bytes doc/build/html/_static/pygments.css | 69 - doc/build/html/_static/searchtools.js | 758 -- doc/build/html/_static/underscore-1.3.1.js | 999 -- doc/build/html/_static/underscore.js | 31 - doc/build/html/_static/up-pressed.png | Bin 214 -> 0 bytes doc/build/html/_static/up.png | Bin 203 -> 0 bytes doc/build/html/_static/websupport.js | 808 -- doc/build/html/changelog.html | 1180 -- doc/build/html/genindex.html | 546 - doc/build/html/index.html | 435 - doc/build/html/netscript.html | 329 - .../html/netscriptadvancedfunctions.html | 175 - doc/build/html/netscriptbladeburnerapi.html | 763 -- doc/build/html/netscriptdatatypes.html | 165 - doc/build/html/netscriptfunctions.html | 1798 --- doc/build/html/netscripthacknetnodeapi.html | 349 - doc/build/html/netscriptixapi.html | 379 - doc/build/html/netscriptjs.html | 329 - .../html/netscriptloopsandconditionals.html | 158 - doc/build/html/netscriptmisc.html | 395 - doc/build/html/netscriptoperators.html | 262 - doc/build/html/netscriptscriptarguments.html | 140 - .../html/netscriptsingularityfunctions.html | 875 -- doc/build/html/objects.inv | Bin 1617 -> 0 bytes doc/build/html/search.html | 131 - doc/build/html/searchindex.js | 1 - doc/build/html/shortcuts.html | 321 - doc/build/html/terminal.html | 519 - 83 files changed, 2 insertions(+), 27857 deletions(-) delete mode 100644 doc/build/doctrees/changelog.doctree delete mode 100644 doc/build/doctrees/environment.pickle delete mode 100644 doc/build/doctrees/index.doctree delete mode 100644 doc/build/doctrees/netscript.doctree delete mode 100644 doc/build/doctrees/netscriptadvancedfunctions.doctree delete mode 100644 doc/build/doctrees/netscriptbladeburnerapi.doctree delete mode 100644 doc/build/doctrees/netscriptdatatypes.doctree delete mode 100644 doc/build/doctrees/netscriptfunctions.doctree delete mode 100644 doc/build/doctrees/netscripthacknetnodeapi.doctree delete mode 100644 doc/build/doctrees/netscriptixapi.doctree delete mode 100644 doc/build/doctrees/netscriptjs.doctree delete mode 100644 doc/build/doctrees/netscriptloopsandconditionals.doctree delete mode 100644 doc/build/doctrees/netscriptmisc.doctree delete mode 100644 doc/build/doctrees/netscriptoperators.doctree delete mode 100644 doc/build/doctrees/netscriptscriptarguments.doctree delete mode 100644 doc/build/doctrees/netscriptsingularityfunctions.doctree delete mode 100644 doc/build/doctrees/shortcuts.doctree delete mode 100644 doc/build/doctrees/terminal.doctree delete mode 100644 doc/build/html/.buildinfo delete mode 100644 doc/build/html/.nojekyll delete mode 100644 doc/build/html/_sources/changelog.rst.txt delete mode 100644 doc/build/html/_sources/index.rst.txt delete mode 100644 doc/build/html/_sources/netscript.rst.txt delete mode 100644 doc/build/html/_sources/netscriptadvancedfunctions.rst.txt delete mode 100644 doc/build/html/_sources/netscriptbladeburnerapi.rst.txt delete mode 100644 doc/build/html/_sources/netscriptdatatypes.rst.txt delete mode 100644 doc/build/html/_sources/netscriptfunctions.rst.txt delete mode 100644 doc/build/html/_sources/netscripthacknetnodeapi.rst.txt delete mode 100644 doc/build/html/_sources/netscriptixapi.rst.txt delete mode 100644 doc/build/html/_sources/netscriptjs.rst.txt delete mode 100644 doc/build/html/_sources/netscriptloopsandconditionals.rst.txt delete mode 100644 doc/build/html/_sources/netscriptmisc.rst.txt delete mode 100644 doc/build/html/_sources/netscriptoperators.rst.txt delete mode 100644 doc/build/html/_sources/netscriptscriptarguments.rst.txt delete mode 100644 doc/build/html/_sources/netscriptsingularityfunctions.rst.txt delete mode 100644 doc/build/html/_sources/shortcuts.rst.txt delete mode 100644 doc/build/html/_sources/terminal.rst.txt delete mode 100644 doc/build/html/_static/agogo.css delete mode 100644 doc/build/html/_static/ajax-loader.gif delete mode 100644 doc/build/html/_static/basic.css delete mode 100644 doc/build/html/_static/bgfooter.png delete mode 100644 doc/build/html/_static/bgtop.png delete mode 100644 doc/build/html/_static/comment-bright.png delete mode 100644 doc/build/html/_static/comment-close.png delete mode 100644 doc/build/html/_static/comment.png delete mode 100644 doc/build/html/_static/doctools.js delete mode 100644 doc/build/html/_static/down-pressed.png delete mode 100644 doc/build/html/_static/down.png delete mode 100644 doc/build/html/_static/file.png delete mode 100644 doc/build/html/_static/jquery-3.1.0.js delete mode 100644 doc/build/html/_static/jquery.js delete mode 100644 doc/build/html/_static/minus.png delete mode 100644 doc/build/html/_static/plus.png delete mode 100644 doc/build/html/_static/pygments.css delete mode 100644 doc/build/html/_static/searchtools.js delete mode 100644 doc/build/html/_static/underscore-1.3.1.js delete mode 100644 doc/build/html/_static/underscore.js delete mode 100644 doc/build/html/_static/up-pressed.png delete mode 100644 doc/build/html/_static/up.png delete mode 100644 doc/build/html/_static/websupport.js delete mode 100644 doc/build/html/changelog.html delete mode 100644 doc/build/html/genindex.html delete mode 100644 doc/build/html/index.html delete mode 100644 doc/build/html/netscript.html delete mode 100644 doc/build/html/netscriptadvancedfunctions.html delete mode 100644 doc/build/html/netscriptbladeburnerapi.html delete mode 100644 doc/build/html/netscriptdatatypes.html delete mode 100644 doc/build/html/netscriptfunctions.html delete mode 100644 doc/build/html/netscripthacknetnodeapi.html delete mode 100644 doc/build/html/netscriptixapi.html delete mode 100644 doc/build/html/netscriptjs.html delete mode 100644 doc/build/html/netscriptloopsandconditionals.html delete mode 100644 doc/build/html/netscriptmisc.html delete mode 100644 doc/build/html/netscriptoperators.html delete mode 100644 doc/build/html/netscriptscriptarguments.html delete mode 100644 doc/build/html/netscriptsingularityfunctions.html delete mode 100644 doc/build/html/objects.inv delete mode 100644 doc/build/html/search.html delete mode 100644 doc/build/html/searchindex.js delete mode 100644 doc/build/html/shortcuts.html delete mode 100644 doc/build/html/terminal.html diff --git a/.eslintignore b/.eslintignore index 3564dd983..f0da1ec30 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,3 +1,4 @@ node_modules/ +doc/build/ dist/ tests/*.bundle.* diff --git a/.gitignore b/.gitignore index d7d90e793..c827e24bf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ Changelog.txt Netburner.txt +/doc/build /node_modules /dist/*.map /tests/*.map diff --git a/doc/build/doctrees/changelog.doctree b/doc/build/doctrees/changelog.doctree deleted file mode 100644 index 54828a601168c5253d9d78156821a0a9a40be03e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 261230 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 D7td>wVmI2P8z#mdY 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 z znRR1(h}kL8DUL62U$*+n)xsjn8+J%mx7NV1(Q�gt%9je-o2T(nsoRL9PdZ5nG*p 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') - .appendTo($('#searchbox')); - } - }, - - /** - * init the domain index toggle buttons - */ - initIndexTable : function() { - var togglers = $('img.toggler').click(function() { - var src = $(this).attr('src'); - var idnum = $(this).attr('id').substr(7); - $('tr.cg-' + idnum).toggle(); - if (src.substr(-9) == 'minus.png') - $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); - else - $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); - }).css('display', ''); - if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { - togglers.click(); - } - }, - - /** - * helper function to hide the search marks again - */ - hideSearchWords : function() { - $('#searchbox .highlight-link').fadeOut(300); - $('span.highlighted').removeClass('highlighted'); - }, - - /** - * make the url absolute - */ - makeURL : function(relativeURL) { - return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; - }, - - /** - * get the current relative url - */ - getCurrentURL : function() { - var path = document.location.pathname; - var parts = path.split(/\//); - $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { - if (this == '..') - parts.pop(); - }); - var url = parts.join('/'); - return path.substring(url.lastIndexOf('/') + 1, path.length - 1); - }, - - initOnKeyListeners: function() { - $(document).keyup(function(event) { - var activeElementType = document.activeElement.tagName; - // don't navigate when in search box or textarea - if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT') { - switch (event.keyCode) { - case 37: // left - var prevHref = $('link[rel="prev"]').prop('href'); - if (prevHref) { - window.location.href = prevHref; - return false; - } - case 39: // right - var nextHref = $('link[rel="next"]').prop('href'); - if (nextHref) { - window.location.href = nextHref; - return false; - } - } - } - }); - } -}; - -// quick alias for translations -_ = Documentation.gettext; - -$(document).ready(function() { - Documentation.init(); -}); \ No newline at end of file diff --git a/doc/build/html/_static/down-pressed.png b/doc/build/html/_static/down-pressed.png deleted file mode 100644 index 5756c8cad8854722893dc70b9eb4bb0400343a39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 222 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`OFdm2Ln;`PZ^+1>KjR?B@S0W7 z%OS_REiHONoJ6{+Ks@6k3590|7k9F+ddB6!zw3#&!aw#S`x}3V3&=A(a#84O-&F7T z^k3tZB;&iR9siw0|F|E|DAL<8r-F4!1H-;1{e*~yAKZN5f0|Ei6yUmR#Is)EM(Po_ zi`qJR6|P<~+)N+kSDgL7AjdIC_!O7Q?eGb+L+qOjm{~LLinM4NHn7U%HcK%uoMYO5 VJ~8zD2B3o(JYD@<);T3K0RV0%P>BEl diff --git a/doc/build/html/_static/down.png b/doc/build/html/_static/down.png deleted file mode 100644 index 1b3bdad2ceffae91cee61b32f3295f9bbe646e48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6CVIL!hEy=F?b*7pIY7kW{q%Rg zx!yQ<9v8bmJwa`TQk7YSw}WVQ()mRdQ;TC;* diff --git a/doc/build/html/_static/file.png b/doc/build/html/_static/file.png deleted file mode 100644 index a858a410e4faa62ce324d814e4b816fff83a6fb3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 286 zcmV+(0pb3MP)s`hMrGg#P~ix$^RISR_I47Y|r1 z_CyJOe}D1){SET-^Amu_i71Lt6eYfZjRyw@I6OQAIXXHDfiX^GbOlHe=Ae4>0m)d(f|Me07*qoM6N<$f}vM^LjV8( diff --git a/doc/build/html/_static/jquery-3.1.0.js b/doc/build/html/_static/jquery-3.1.0.js deleted file mode 100644 index f2fc27478..000000000 --- a/doc/build/html/_static/jquery-3.1.0.js +++ /dev/null @@ -1,10074 +0,0 @@ -/*eslint-disable no-unused-vars*/ -/*! - * jQuery JavaScript Library v3.1.0 - * https://jquery.com/ - * - * Includes Sizzle.js - * https://sizzlejs.com/ - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license - * https://jquery.org/license - * - * Date: 2016-07-07T21:44Z - */ -( function( global, factory ) { - - "use strict"; - - if ( typeof module === "object" && typeof module.exports === "object" ) { - - // For CommonJS and CommonJS-like environments where a proper `window` - // is present, execute the factory and get jQuery. - // For environments that do not have a `window` with a `document` - // (such as Node.js), expose a factory as module.exports. - // This accentuates the need for the creation of a real `window`. - // e.g. var jQuery = require("jquery")(window); - // See ticket #14549 for more info. - module.exports = global.document ? - factory( global, true ) : - function( w ) { - if ( !w.document ) { - throw new Error( "jQuery requires a window with a document" ); - } - return factory( w ); - }; - } else { - factory( global ); - } - -// Pass this if window is not defined yet -} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { - -// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 -// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode -// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common -// enough that all such attempts are guarded in a try block. -"use strict"; - -var arr = []; - -var document = window.document; - -var getProto = Object.getPrototypeOf; - -var slice = arr.slice; - -var concat = arr.concat; - -var push = arr.push; - -var indexOf = arr.indexOf; - -var class2type = {}; - -var toString = class2type.toString; - -var hasOwn = class2type.hasOwnProperty; - -var fnToString = hasOwn.toString; - -var ObjectFunctionString = fnToString.call( Object ); - -var support = {}; - - - - function DOMEval( code, doc ) { - doc = doc || document; - - var script = doc.createElement( "script" ); - - script.text = code; - doc.head.appendChild( script ).parentNode.removeChild( script ); - } -/* global Symbol */ -// Defining this global in .eslintrc would create a danger of using the global -// unguarded in another place, it seems safer to define global only for this module - - - -var - version = "3.1.0", - - // Define a local copy of jQuery - jQuery = function( selector, context ) { - - // The jQuery object is actually just the init constructor 'enhanced' - // Need init if jQuery is called (just allow error to be thrown if not included) - return new jQuery.fn.init( selector, context ); - }, - - // Support: Android <=4.0 only - // Make sure we trim BOM and NBSP - rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, - - // Matches dashed string for camelizing - rmsPrefix = /^-ms-/, - rdashAlpha = /-([a-z])/g, - - // Used by jQuery.camelCase as callback to replace() - fcamelCase = function( all, letter ) { - return letter.toUpperCase(); - }; - -jQuery.fn = jQuery.prototype = { - - // The current version of jQuery being used - jquery: version, - - constructor: jQuery, - - // The default length of a jQuery object is 0 - length: 0, - - toArray: function() { - return slice.call( this ); - }, - - // Get the Nth element in the matched element set OR - // Get the whole matched element set as a clean array - get: function( num ) { - return num != null ? - - // Return just the one element from the set - ( num < 0 ? this[ num + this.length ] : this[ num ] ) : - - // Return all the elements in a clean array - slice.call( this ); - }, - - // Take an array of elements and push it onto the stack - // (returning the new matched element set) - pushStack: function( elems ) { - - // Build a new jQuery matched element set - var ret = jQuery.merge( this.constructor(), elems ); - - // Add the old object onto the stack (as a reference) - ret.prevObject = this; - - // Return the newly-formed element set - return ret; - }, - - // Execute a callback for every element in the matched set. - each: function( callback ) { - return jQuery.each( this, callback ); - }, - - map: function( callback ) { - return this.pushStack( jQuery.map( this, function( elem, i ) { - return callback.call( elem, i, elem ); - } ) ); - }, - - slice: function() { - return this.pushStack( slice.apply( this, arguments ) ); - }, - - first: function() { - return this.eq( 0 ); - }, - - last: function() { - return this.eq( -1 ); - }, - - eq: function( i ) { - var len = this.length, - j = +i + ( i < 0 ? len : 0 ); - return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); - }, - - end: function() { - return this.prevObject || this.constructor(); - }, - - // For internal use only. - // Behaves like an Array's method, not like a jQuery method. - push: push, - sort: arr.sort, - splice: arr.splice -}; - -jQuery.extend = jQuery.fn.extend = function() { - var options, name, src, copy, copyIsArray, clone, - target = arguments[ 0 ] || {}, - i = 1, - length = arguments.length, - deep = false; - - // Handle a deep copy situation - if ( typeof target === "boolean" ) { - deep = target; - - // Skip the boolean and the target - target = arguments[ i ] || {}; - i++; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !jQuery.isFunction( target ) ) { - target = {}; - } - - // Extend jQuery itself if only one argument is passed - if ( i === length ) { - target = this; - i--; - } - - for ( ; i < length; i++ ) { - - // Only deal with non-null/undefined values - if ( ( options = arguments[ i ] ) != null ) { - - // Extend the base object - for ( name in options ) { - src = target[ name ]; - copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) { - continue; - } - - // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( jQuery.isPlainObject( copy ) || - ( copyIsArray = jQuery.isArray( copy ) ) ) ) { - - if ( copyIsArray ) { - copyIsArray = false; - clone = src && jQuery.isArray( src ) ? src : []; - - } else { - clone = src && jQuery.isPlainObject( src ) ? src : {}; - } - - // Never move original objects, clone them - target[ name ] = jQuery.extend( deep, clone, copy ); - - // Don't bring in undefined values - } else if ( copy !== undefined ) { - target[ name ] = copy; - } - } - } - } - - // Return the modified object - return target; -}; - -jQuery.extend( { - - // Unique for each copy of jQuery on the page - expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), - - // Assume jQuery is ready without the ready module - isReady: true, - - error: function( msg ) { - throw new Error( msg ); - }, - - noop: function() {}, - - isFunction: function( obj ) { - return jQuery.type( obj ) === "function"; - }, - - isArray: Array.isArray, - - isWindow: function( obj ) { - return obj != null && obj === obj.window; - }, - - isNumeric: function( obj ) { - - // As of jQuery 3.0, isNumeric is limited to - // strings and numbers (primitives or objects) - // that can be coerced to finite numbers (gh-2662) - var type = jQuery.type( obj ); - return ( type === "number" || type === "string" ) && - - // parseFloat NaNs numeric-cast false positives ("") - // ...but misinterprets leading-number strings, particularly hex literals ("0x...") - // subtraction forces infinities to NaN - !isNaN( obj - parseFloat( obj ) ); - }, - - isPlainObject: function( obj ) { - var proto, Ctor; - - // Detect obvious negatives - // Use toString instead of jQuery.type to catch host objects - if ( !obj || toString.call( obj ) !== "[object Object]" ) { - return false; - } - - proto = getProto( obj ); - - // Objects with no prototype (e.g., `Object.create( null )`) are plain - if ( !proto ) { - return true; - } - - // Objects with prototype are plain iff they were constructed by a global Object function - Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; - return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString; - }, - - isEmptyObject: function( obj ) { - - /* eslint-disable no-unused-vars */ - // See https://github.com/eslint/eslint/issues/6125 - var name; - - for ( name in obj ) { - return false; - } - return true; - }, - - type: function( obj ) { - if ( obj == null ) { - return obj + ""; - } - - // Support: Android <=2.3 only (functionish RegExp) - return typeof obj === "object" || typeof obj === "function" ? - class2type[ toString.call( obj ) ] || "object" : - typeof obj; - }, - - // Evaluates a script in a global context - globalEval: function( code ) { - DOMEval( code ); - }, - - // Convert dashed to camelCase; used by the css and data modules - // Support: IE <=9 - 11, Edge 12 - 13 - // Microsoft forgot to hump their vendor prefix (#9572) - camelCase: function( string ) { - return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); - }, - - nodeName: function( elem, name ) { - return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); - }, - - each: function( obj, callback ) { - var length, i = 0; - - if ( isArrayLike( obj ) ) { - length = obj.length; - for ( ; i < length; i++ ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; - } - } - } else { - for ( i in obj ) { - if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { - break; - } - } - } - - return obj; - }, - - // Support: Android <=4.0 only - trim: function( text ) { - return text == null ? - "" : - ( text + "" ).replace( rtrim, "" ); - }, - - // results is for internal usage only - makeArray: function( arr, results ) { - var ret = results || []; - - if ( arr != null ) { - if ( isArrayLike( Object( arr ) ) ) { - jQuery.merge( ret, - typeof arr === "string" ? - [ arr ] : arr - ); - } else { - push.call( ret, arr ); - } - } - - return ret; - }, - - inArray: function( elem, arr, i ) { - return arr == null ? -1 : indexOf.call( arr, elem, i ); - }, - - // Support: Android <=4.0 only, PhantomJS 1 only - // push.apply(_, arraylike) throws on ancient WebKit - merge: function( first, second ) { - var len = +second.length, - j = 0, - i = first.length; - - for ( ; j < len; j++ ) { - first[ i++ ] = second[ j ]; - } - - first.length = i; - - return first; - }, - - grep: function( elems, callback, invert ) { - var callbackInverse, - matches = [], - i = 0, - length = elems.length, - callbackExpect = !invert; - - // Go through the array, only saving the items - // that pass the validator function - for ( ; i < length; i++ ) { - callbackInverse = !callback( elems[ i ], i ); - if ( callbackInverse !== callbackExpect ) { - matches.push( elems[ i ] ); - } - } - - return matches; - }, - - // arg is for internal usage only - map: function( elems, callback, arg ) { - var length, value, - i = 0, - ret = []; - - // Go through the array, translating each of the items to their new values - if ( isArrayLike( elems ) ) { - length = elems.length; - for ( ; i < length; i++ ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - - // Go through every key on the object, - } else { - for ( i in elems ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - } - - // Flatten any nested arrays - return concat.apply( [], ret ); - }, - - // A global GUID counter for objects - guid: 1, - - // Bind a function to a context, optionally partially applying any - // arguments. - proxy: function( fn, context ) { - var tmp, args, proxy; - - if ( typeof context === "string" ) { - tmp = fn[ context ]; - context = fn; - fn = tmp; - } - - // Quick check to determine if target is callable, in the spec - // this throws a TypeError, but we will just return undefined. - if ( !jQuery.isFunction( fn ) ) { - return undefined; - } - - // Simulated bind - args = slice.call( arguments, 2 ); - proxy = function() { - return fn.apply( context || this, args.concat( slice.call( arguments ) ) ); - }; - - // Set the guid of unique handler to the same of original handler, so it can be removed - proxy.guid = fn.guid = fn.guid || jQuery.guid++; - - return proxy; - }, - - now: Date.now, - - // jQuery.support is not used in Core but other projects attach their - // properties to it so it needs to exist. - support: support -} ); - -if ( typeof Symbol === "function" ) { - jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; -} - -// Populate the class2type map -jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), -function( i, name ) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); -} ); - -function isArrayLike( obj ) { - - // Support: real iOS 8.2 only (not reproducible in simulator) - // `in` check used to prevent JIT error (gh-2145) - // hasOwn isn't used here due to false negatives - // regarding Nodelist length in IE - var length = !!obj && "length" in obj && obj.length, - type = jQuery.type( obj ); - - if ( type === "function" || jQuery.isWindow( obj ) ) { - return false; - } - - return type === "array" || length === 0 || - typeof length === "number" && length > 0 && ( length - 1 ) in obj; -} -var Sizzle = -/*! - * Sizzle CSS Selector Engine v2.3.0 - * https://sizzlejs.com/ - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2016-01-04 - */ -(function( window ) { - -var i, - support, - Expr, - getText, - isXML, - tokenize, - compile, - select, - outermostContext, - sortInput, - hasDuplicate, - - // Local document vars - setDocument, - document, - docElem, - documentIsHTML, - rbuggyQSA, - rbuggyMatches, - matches, - contains, - - // Instance-specific data - expando = "sizzle" + 1 * new Date(), - preferredDoc = window.document, - dirruns = 0, - done = 0, - classCache = createCache(), - tokenCache = createCache(), - compilerCache = createCache(), - sortOrder = function( a, b ) { - if ( a === b ) { - hasDuplicate = true; - } - return 0; - }, - - // Instance methods - hasOwn = ({}).hasOwnProperty, - arr = [], - pop = arr.pop, - push_native = arr.push, - push = arr.push, - slice = arr.slice, - // Use a stripped-down indexOf as it's faster than native - // https://jsperf.com/thor-indexof-vs-for/5 - indexOf = function( list, elem ) { - var i = 0, - len = list.length; - for ( ; i < len; i++ ) { - if ( list[i] === elem ) { - return i; - } - } - return -1; - }, - - booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", - - // Regular expressions - - // http://www.w3.org/TR/css3-selectors/#whitespace - whitespace = "[\\x20\\t\\r\\n\\f]", - - // http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier - identifier = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+", - - // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors - attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + - // Operator (capture 2) - "*([*^$|!~]?=)" + whitespace + - // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" - "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + - "*\\]", - - pseudos = ":(" + identifier + ")(?:\\((" + - // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: - // 1. quoted (capture 3; capture 4 or capture 5) - "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + - // 2. simple (capture 6) - "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + - // 3. anything else (capture 2) - ".*" + - ")\\)|)", - - // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter - rwhitespace = new RegExp( whitespace + "+", "g" ), - rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), - - rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), - rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), - - rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ), - - rpseudo = new RegExp( pseudos ), - ridentifier = new RegExp( "^" + identifier + "$" ), - - matchExpr = { - "ID": new RegExp( "^#(" + identifier + ")" ), - "CLASS": new RegExp( "^\\.(" + identifier + ")" ), - "TAG": new RegExp( "^(" + identifier + "|[*])" ), - "ATTR": new RegExp( "^" + attributes ), - "PSEUDO": new RegExp( "^" + pseudos ), - "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + - "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + - "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), - "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), - // For use in libraries implementing .is() - // We use this for POS matching in `select` - "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + - whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) - }, - - rinputs = /^(?:input|select|textarea|button)$/i, - rheader = /^h\d$/i, - - rnative = /^[^{]+\{\s*\[native \w/, - - // Easily-parseable/retrievable ID or TAG or CLASS selectors - rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, - - rsibling = /[+~]/, - - // CSS escapes - // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters - runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ), - funescape = function( _, escaped, escapedWhitespace ) { - var high = "0x" + escaped - 0x10000; - // NaN means non-codepoint - // Support: Firefox<24 - // Workaround erroneous numeric interpretation of +"0x" - return high !== high || escapedWhitespace ? - escaped : - high < 0 ? - // BMP codepoint - String.fromCharCode( high + 0x10000 ) : - // Supplemental Plane codepoint (surrogate pair) - String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); - }, - - // CSS string/identifier serialization - // https://drafts.csswg.org/cssom/#common-serializing-idioms - rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g, - fcssescape = function( ch, asCodePoint ) { - if ( asCodePoint ) { - - // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER - if ( ch === "\0" ) { - return "\uFFFD"; - } - - // Control characters and (dependent upon position) numbers get escaped as code points - return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " "; - } - - // Other potentially-special ASCII characters get backslash-escaped - return "\\" + ch; - }, - - // Used for iframes - // See setDocument() - // Removing the function wrapper causes a "Permission Denied" - // error in IE - unloadHandler = function() { - setDocument(); - }, - - disabledAncestor = addCombinator( - function( elem ) { - return elem.disabled === true; - }, - { dir: "parentNode", next: "legend" } - ); - -// Optimize for push.apply( _, NodeList ) -try { - push.apply( - (arr = slice.call( preferredDoc.childNodes )), - preferredDoc.childNodes - ); - // Support: Android<4.0 - // Detect silently failing push.apply - arr[ preferredDoc.childNodes.length ].nodeType; -} catch ( e ) { - push = { apply: arr.length ? - - // Leverage slice if possible - function( target, els ) { - push_native.apply( target, slice.call(els) ); - } : - - // Support: IE<9 - // Otherwise append directly - function( target, els ) { - var j = target.length, - i = 0; - // Can't trust NodeList.length - while ( (target[j++] = els[i++]) ) {} - target.length = j - 1; - } - }; -} - -function Sizzle( selector, context, results, seed ) { - var m, i, elem, nid, match, groups, newSelector, - newContext = context && context.ownerDocument, - - // nodeType defaults to 9, since context defaults to document - nodeType = context ? context.nodeType : 9; - - results = results || []; - - // Return early from calls with invalid selector or context - if ( typeof selector !== "string" || !selector || - nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { - - return results; - } - - // Try to shortcut find operations (as opposed to filters) in HTML documents - if ( !seed ) { - - if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { - setDocument( context ); - } - context = context || document; - - if ( documentIsHTML ) { - - // If the selector is sufficiently simple, try using a "get*By*" DOM method - // (excepting DocumentFragment context, where the methods don't exist) - if ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) { - - // ID selector - if ( (m = match[1]) ) { - - // Document context - if ( nodeType === 9 ) { - if ( (elem = context.getElementById( m )) ) { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( elem.id === m ) { - results.push( elem ); - return results; - } - } else { - return results; - } - - // Element context - } else { - - // Support: IE, Opera, Webkit - // TODO: identify versions - // getElementById can match elements by name instead of ID - if ( newContext && (elem = newContext.getElementById( m )) && - contains( context, elem ) && - elem.id === m ) { - - results.push( elem ); - return results; - } - } - - // Type selector - } else if ( match[2] ) { - push.apply( results, context.getElementsByTagName( selector ) ); - return results; - - // Class selector - } else if ( (m = match[3]) && support.getElementsByClassName && - context.getElementsByClassName ) { - - push.apply( results, context.getElementsByClassName( m ) ); - return results; - } - } - - // Take advantage of querySelectorAll - if ( support.qsa && - !compilerCache[ selector + " " ] && - (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { - - if ( nodeType !== 1 ) { - newContext = context; - newSelector = selector; - - // qSA looks outside Element context, which is not what we want - // Thanks to Andrew Dupont for this workaround technique - // Support: IE <=8 - // Exclude object elements - } else if ( context.nodeName.toLowerCase() !== "object" ) { - - // Capture the context ID, setting it first if necessary - if ( (nid = context.getAttribute( "id" )) ) { - nid = nid.replace( rcssescape, fcssescape ); - } else { - context.setAttribute( "id", (nid = expando) ); - } - - // Prefix every selector in the list - groups = tokenize( selector ); - i = groups.length; - while ( i-- ) { - groups[i] = "#" + nid + " " + toSelector( groups[i] ); - } - newSelector = groups.join( "," ); - - // Expand context for sibling selectors - newContext = rsibling.test( selector ) && testContext( context.parentNode ) || - context; - } - - if ( newSelector ) { - try { - push.apply( results, - newContext.querySelectorAll( newSelector ) - ); - return results; - } catch ( qsaError ) { - } finally { - if ( nid === expando ) { - context.removeAttribute( "id" ); - } - } - } - } - } - } - - // All others - return select( selector.replace( rtrim, "$1" ), context, results, seed ); -} - -/** - * Create key-value caches of limited size - * @returns {function(string, object)} Returns the Object data after storing it on itself with - * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) - * deleting the oldest entry - */ -function createCache() { - var keys = []; - - function cache( key, value ) { - // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) - if ( keys.push( key + " " ) > Expr.cacheLength ) { - // Only keep the most recent entries - delete cache[ keys.shift() ]; - } - return (cache[ key + " " ] = value); - } - return cache; -} - -/** - * Mark a function for special use by Sizzle - * @param {Function} fn The function to mark - */ -function markFunction( fn ) { - fn[ expando ] = true; - return fn; -} - -/** - * Support testing using an element - * @param {Function} fn Passed the created element and returns a boolean result - */ -function assert( fn ) { - var el = document.createElement("fieldset"); - - try { - return !!fn( el ); - } catch (e) { - return false; - } finally { - // Remove from its parent by default - if ( el.parentNode ) { - el.parentNode.removeChild( el ); - } - // release memory in IE - el = null; - } -} - -/** - * Adds the same handler for all of the specified attrs - * @param {String} attrs Pipe-separated list of attributes - * @param {Function} handler The method that will be applied - */ -function addHandle( attrs, handler ) { - var arr = attrs.split("|"), - i = arr.length; - - while ( i-- ) { - Expr.attrHandle[ arr[i] ] = handler; - } -} - -/** - * Checks document order of two siblings - * @param {Element} a - * @param {Element} b - * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b - */ -function siblingCheck( a, b ) { - var cur = b && a, - diff = cur && a.nodeType === 1 && b.nodeType === 1 && - a.sourceIndex - b.sourceIndex; - - // Use IE sourceIndex if available on both nodes - if ( diff ) { - return diff; - } - - // Check if b follows a - if ( cur ) { - while ( (cur = cur.nextSibling) ) { - if ( cur === b ) { - return -1; - } - } - } - - return a ? 1 : -1; -} - -/** - * Returns a function to use in pseudos for input types - * @param {String} type - */ -function createInputPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for buttons - * @param {String} type - */ -function createButtonPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return (name === "input" || name === "button") && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for :enabled/:disabled - * @param {Boolean} disabled true for :disabled; false for :enabled - */ -function createDisabledPseudo( disabled ) { - // Known :disabled false positives: - // IE: *[disabled]:not(button, input, select, textarea, optgroup, option, menuitem, fieldset) - // not IE: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable - return function( elem ) { - - // Check form elements and option elements for explicit disabling - return "label" in elem && elem.disabled === disabled || - "form" in elem && elem.disabled === disabled || - - // Check non-disabled form elements for fieldset[disabled] ancestors - "form" in elem && elem.disabled === false && ( - // Support: IE6-11+ - // Ancestry is covered for us - elem.isDisabled === disabled || - - // Otherwise, assume any non-

CkZyF>qHqp8yBl+ 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≀OSt~*?>ExW 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�Hv5J13mouJ_&6UT=5%hb@Kv-@4Ez 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 z zXL{pGjl>ksoi=U+NV+g6vFY+q#D;@v!N`KRQjina4Yzvrg~lTv)>;TEt#_8!Pm_a8 z=7KKAln6xE$_p!9 z+LB;(DmGK?=~tB?kpl~luJHEqIynnvs_#ze;IT;37UKJ8K8#;9NrwP0RHc8PLi{p1 zp90g#hD?RznYqb2+ZrV4GgP>E^U+u3s&{6(`9;$)0C61f!(6~n-Mv|m?WTh7av}7o zxqwV|$Pf`wXA=o@pIy0EsqJIazC4rfYiBuuBN<*@`XC%_oJrGe4!&lfk797Q`L0FeOOiNfAjHY*BK0(P#907e=_pU{#i zb8F4o!8Bn)5aMEa2a_V4>Mxu$Ff$7s)`dnSqeKNmqItAN|Mo7XNs9sUdn2gTP)IG-n{a~C2B=MWX{{N zd{#YzBNt3+aY$W;%U>6OYHi&x%hViYw={($BSzOm3gid*zj|AyJnD!QG+<=XVh^Q> zH>2rX6uvC6@k$`RMS&cion5b1NyfsI6kRH#LE~T`1k(~%scTn5GKFAArJkq@clf~} zk`XUTC11ZD4vrO_8ALF$xekzQ7++ZQh?z)%K|v6j?!VJwP>=rtIh+TC*52sEKsWL@dTnU>=d#U_X~2IWAFQt`Xy-`RqHF zi}xSZ@XXAew*g)OqO}Oiu;hg>b}e_JD%u-43Hjno;m8!3*P)_mc{WYrLFS}(N)rW1 zN<^i-Nhrp5VJDa}vS=1YU?gg{9fZIwZ##`hMkL{bRS;~i{p*XX`Q?Q!8aHj84$~mT zB&)0zxo--o;9WR+*GUUXGn`lO!XhZLWMgY=qIhY3&#^U_WQCxPqCDsMHE`x?=?obK zFfu{9gzRu<$*!sKO1Wl*Mlu{fap#C~$Ipzz&-2qr+UbM2=ytp82>C$?D|5O!L`MV0 z5i}a6I~%i^hS7MWLtasWYgyXDOfTuz-(V28wMWq>_H-fD#QL&!Q!f{?$w3!Jh@^u^ z8nXMeq+vpqS-m3jd`Ho)Dxs1U0)j3dII~K0b6Iz~d_*G=io&)0JD$CqqD4s3_|6Pu z_Y1%ll)O<==!^SbpA08B1UOKWYT9$1IxGStU3*qMZ%Tqv&g8I%dB&vlK2H~OvA??T z`6R81!|edKtl~5x8KJ%L7gy7+f`4<<=K?0fBNr8$%Ls2z&t7O*wuxekpvV#(yAmn) z71k?Gv+blee4E>{a|NZSB!=vfY%E%vNVQC%yNPKyXE|AoMIy{&SWhDVvY4~E|2s!U zG!kKPFy1I-rK{`98#-~Nt&ky-4YhS)SaFiX2fNkg-`^y-*$qv8qyv53MOy4)>hNOq zMqKWKHR)o;u9_?OJgeN@F^?yyEAl_M z6ddQ|LVHj5q2L>shoy1qh2}6_ZY!IDtLF%v zwwW=9;nLufrPyTt%3w7ra}GQ13RZv|7o4f4oNX5u#re9^(KkA_Ywok2sy2;EUW}8P zK(tc$S&h>)c(1)_(#A4Mh$O^f;a{Ij=NB)h>2X!lUg)H2@koa9rjSq@&o1;q5Hm~N zkxz3##D|#~vY=3WQpF<&iq+(qqj_0u#3E|B!6Tcj5qEN+StBVGl_NVLl zYPPpbq6en!pu-ax7J0CQnx+>xzdqa^?GN_UJG}W4DgctMwXD5Wf{4m*lAUrOH4y$}5}U8Zn3v^;g3->lQj6pp4CjpaJfKkFaytQd4KkP3c>BzXeFL z!uS@C5Vef6tJWvfvcj~kGN&+uBOUf7XWDyEw|l3M#w2Mt3I3<+q*%zTp)8&RcQAxT zw$f+4JhNIT=5{Zpy8;jiBNIfU ztTb2@K3J((%(|^?iM2Q+faUI;VUZ&WLJiho8y5Uu(l*XE?Hjg4tVaEFS+3eXkx2d9Z%7I76mEZR;B2}FP^v52?1sjEt>#}9&VWP_#U zv&PPG&zn@4FRqw1j=&-!UkD`@N}x!6K-b6I2b}>@)AEi4KbUGBT=9QIFiXe&KvsOOmY;oTmh1dt$X3^E4Y$4I{~qU zeiVxLwgUG7n*6X$1gu(4n_W6NGGsmJ;ON2t~ zd*~&_0c}rCjtATN1{(AIWSRd0Ajuf~hiFzSe3Rh6U=SDPn==gLUCf?MQEsH*P4n$M zw=p89h@~-^P@jP!BgJA0qaLFvz>!HjEHRs0;!Ba3FT5}mk3wu1eob`(@Um zfiZJ@XIOeZ5rSXfS`HmRGJQxa1{`2&wOc1DncF5nS(6!4^Z2N4M&^KsAA%JSO#V^S zYq@!_qQxNrrmk>OAkVj(;m$n$+=)wW*ydbvgS9lhF1Y=sR_$DR3X+sfYz9u2JJ+cu z)LiF@Y3XA#4HQZ6(p;=eJRkW%ahOh2Zcu74vS9YaTN|uaQxu1n`xl#zhInlKmo|HU zlcW&xlKr?p_1)9Z-ArV&8lcJ9Rq2v~k`sbHuVj#%p`tbScD_J6P{|8hy{V2kU99KN z7qfHuh5TPpn#W?T@yP4+{;NdTwI$_o0**R5v)E0tS{C z+PBpvFM%RUD?zjBEK`DZh-(K#d_+&8bkAV#;8fonU|MjQfXU!U)jD^+`rkWu5D&NM z+!dh7?*b1#)`3WB2z#iNY8qgjk&Xy3&|Uxgoy#}>(ro7c_5b{@zx(%JP9^#_Uv7FD65Lp{zn-PzZR`P0>O_2$Nca5?7%4zYQCY4dPW-d`g# z3G?CkbUqVjTRlLJz~=*mufMo@dGV_hiX8V`d=AHqj+XO8i%I{PtX4xckQaS^s>ZzqTh@fx6ME-*nROseZCpTwP)`TL%XxM<+A6 zCl~K8f0Q1BoO3}W_Z0k4fF<>N=!`U5%@${cCDs$tAYD532^v{GUav2vg?#ADukTi*tEkzgC6hnALAIHu*n5CAaL}t&{00 ze}fgnDh3M5xT+*DZr++lbDD>7>XkYPCOS}?1pW(x2ehbcARPl1Q(yi4h zUR(fh!_2|R^ZER8dVao|t=C%zv#XcW^|v@pe_hxSJ+3Op+Cn+f_G6Ar`X9@(-#WXP zLnUlM!)z}X3%G5`A>E!!>B$}AIQIA#3YgUQ##hVBfhai%p*orSeI`UN)LKRG&{oy{-h6|5mJuh+@!SG;+G zxu@WVGBO|FBg&G8*jlrKZ0e~(RN};dfFV3 zHU`VqT8_?#_)vtSG+B^F-MKL7G3ZE~s<#}FTyM+ysGOt64DaG-fr$On*Do)&yvefO zn!Uc9UTqEKzd2pSzP)_o5!^iX0+aq8E+|Cj&vkrhU7Q}1VZ291Nx~6b0 zm5Bg#=0OPkxeWJw`4V;?s_*9KQrdtH4{k3gNz@atArqmRY3#x!`CV^cmO9*4=$3RL zYA|wqd?tr-*INkQUB85M$>*?Qj|U7lup%DWK99HM>Ec`I8GsjiwLDwus78gU6+>k^ zJjLb%{Jj#t%F5oKuh;M?{OPEC8vafA*8lSBU!O0})?1fvaHHg6Yq@&<>)-sEFIZvw z$>?+)3T%AFAO9JGUJUxHt#9U+{=`N8JQaq0i{l=q{g}X#_zrq+tg#kmnd4Srv4!vY zVaGT`|MB`y7f5LSW(zO;`D*&|B_=x`R!?w;(@Y#k#Sa-MX+Jz&JQa%`6|>WeoNoh( zo&%EWU7r!jSt=agbi2k-#Q!W_^N8O`0n7Dz4^`eu7F8GnF_4?b_!kE&1d!+xCwK=&+#-zP+TrcdHX3&PLSd@d@iB!W0{evsHri%7z|UX$FCHKD=C@y^-u z@=aj@^<*5mP2D%c95xul{doQ2`U)YMF)U`;f%#ljSSbO+aTM{$_U`(6F}*GXE_x~h zI1K+)&k>;z`aJ|Qrt7o$yntRIKbvnmg65N-4sv_~agrbDR~n*1%cfGJ3`)*VpUB9icC>+FwfcuxO1 zK0JtWYf3s*BoQ2jBPpVBFdx(BcDI~Mq7u)dxGL;_VmLZ}P=KWS5&ss!%<=W5xNtMs zM~bnhaTRBgFp4q7B2U~_ z#QV0wEma_nQvIfZCF@TlJM(mjOu}mfUZe&B-6CH2MRh}JA~{xmD8Q2XN64+BY=E!w z5HbEd2wgG3fN_*vaOArav}``O4Ys$!BE!4BA7D&K9X{SYaQ;NN%X{ zFA`|d-_vO$iKQvp3R&8ngmP$PDmhUIq)X3`(j4Ee6O|D0nIxQ-I(CU!pIouzzg_?R(n`$BjNV*?Wg@m~E;7n!#yIxUNxByaNa zP||*m;3&E?UqNUhWq@D;Rz`8K72$G1Ic9z+;gbBn$m6Z2ueZj7CrVispP;9Xi{giP z&DeXv`52!nZT9fwghH zCzJVE&QzffQ>GM-JU?c_P^zmW0bb0?RV-uTxQXP443xBu%eOawIlnqY0CII*$Ocv{ zA-a5}(t;eE{6D5^Bk9>~ANb7YxnkJFal__^43xC@=;{99dWQ0XmzP(%ooodm$BUfp zb-2>A07}A7U!SkUp2QF_$K{t>5d;e;ew&sN$@qSl&Eh)RVBw~4=d(^dN zdASN-GUY2`l2HX_hDE(uF+>U)H<|n(Ql~{EVUrYWT&q%&u0rq>0}mM}Y5yyhR$J2< za^bI3OC^2Dgdy%d*ad?f^bI;guA@*TTJcg- ziUK0pK2!4`W&g!gZ-qysfbt1d&}9GL@TF9oT)D;*!6op$1Tv4{{8l}JE=E4(FKJwQ zV-?k1%jXNkr#kHAii#%!x@qEvZgf7#r!=j1mS-n0-FFdeNgKOY=ntYec78}8N%(YzF6u26O9K2G7tbMJELBIdAtabzA2?#%-W0l^KafJUajRVC8?A_KIx z-tI99D~t*S>K;M;rjv$G^(i%qM1G#b-6@F8ihV&8_XPZqK$7yqIDwlh`-)Hw0UR4Y zNIKY~k?7v#{OnuQn;*G9Hew10{@vziWV*ZS((R>$MMX9#U8@?59Pddx^7+&2(iwq@ zIZH_rG_rieaPjVPh32C9q*ZKkLbzGuhZv7!A1bG5_c}TAS7G*9j+nzF-6wn&D0S!d z<)f>x5D211rx8i`-ucs)TMPNmEVF4V%pLinV@Y5L|HIOHtH4c{0%3?Nj!$dOxsdQ> zI0}@{SVeqW!MOpc-xLV=ByU}p>Jz@SO&EO75jEc@;%CeCdU}06hhOt*>u@|C$j|wx zDr(DOAjcK|LL-y>UeK!#oSM#AE4Fb#OUGzrYLZC@%klNui+!J3${8#2SRLyOYSy!Wcyq#C5#rfe=+J&5yeta`8rL&`2=q-=A~NF-`a~*zUXLLga&k2 z^h!5KuD3wMzPB?&kP$~dFi+h2u?JWo15*i7Ky28;i9&H=N@pu7)_g#4Q&m7C)BCKC zKith1dPQk(TGTNl4hh~qTfZt)r&PRY`J!J?4FW-N%n)u|IVe~$H|d*5(8$sxN*=Fp z&KwR4tKgLZUlD*1k4p;r-DvnB10}6ffaljQLoQvBRVXT@03#T}zl*|JT!Wgw?G3WL zF%f9xilpPgxsWqMb%T1@ z6?!H{ajPr-MFdOQpD9PjhqIiJ$zNH;;YbDM=+$pBcs|9?xd*}%qG;NmBOO+rN^ zh-hkibwKkGK8-yfx$SE+7mg^7njgfeiXcgO2VGdMQ1OsY^#%nT3X2Rsir>DJ{+}$D zS&NK{{9+7~t*RK8#6OL{fq3-gaoKXYaAJF~?+ z2_99*>yF@20!rpz#9{2g_0 z6()KNluf@zCi#1VHO!RqfHzRb2^v|#S>xsM+c|3Vx80xlUaB5pz=?)fKqj{oxU}9~ zb2PW>K-j7MmKC6T2=$vH1)t^)s+(~?YQe0ku-L+P9i_q{dQ*-fM@QF}Q`gHu$>fUo zYf&aEK+@@x@~}+w<=7RWpw1#C2S%Qs#|s;`_bsn*V|vHYp$gp>qeW}TpM)>K^D!Eu za%cGxnSc0ZrP9+1Ayu5=43xB=@t={J!B7TVRNahqpsCye0 z&5cS$AsCKL#7PE7x}=z0D$tbdsz`9Le%+DrgD+-xaHRTh`^Eg?Jk*EglUOmVbcN)A zD=EV!53!7s(~#6W5D|Jk*IDk0<3ZVYe3(j*h<^9}bUhmu zCCvsCroqS&HB`bqwky4HJ}1B&+o&UpGC^FdTNpAnLuwFWLjCi|VoxD6V|JafJc0!Ipq z3?E+OYB3k}7=JszJV|>hRcO`*zzwST)WDJHSFzs|I#nCp<-NOKfNNM#)wsjsu zI{Nq*T^xL%yAm&dzPK)An=6iVt6+PJLh!d%vjT2KDi+^!BWb=*#GgdFY~1YRd}Y+E z#OCXss|T6vZ_9XRnF^^$=BSDC2n7A8Iji2DV^T|?LPIqWZq}Ml5g^ejCO8aueK zpDGr5s-{vn@_f4OYx5BW97xeu=^Rvrx1G{;ppx~oI0g;-)pbwGS4Ragf!u`hgG9D9 zDv3X0Bmhxgo-$D{vBL2ngrnq#7>{JXRL5N~C07W!BGx^Afr-vXTM>;@fR11Nrbxl3 zK|&4H{I7G~4II`OiugY{i(`)m%dVi~fh{Q&k{hP_jm9SbTVKrz$&m_uovz&mhsYlc z7q8~Xt!~_0EM>^>$mGs{NecF087G?t7Z=O#+|E>MwIWHu<(aJ24sbrkyZ-D;etf1v z)kMc;ViZC*am9nB^f>4k*`{&D43xAg^V9ZD^r^p_PHL>T-NeSf$iVpsZ=Fn^=9_PW z_1WMM`KKXtBdvxX;btJ$ZMc}$shHO^f>Q=1wTst=P>4^^7Tul-K`tw`6kthEN&G$w zQA<@W74{~-?%p3i5Q`-5_!XQLFIMzq%(j85R($8ra%OCnStu0_fcvI<>Ij1m+;ndU zX=QN&vVIX2@qwb)NHIyO`gk9qh46Gy?7~=4CqM=6#>Wp%n`>B7>!af<$&aheToJMC z%*uGQh6#NS()K!Wbf?1WjXEf#NM!k0WZcR%8ME%-UWM?F!2B|AE$IR{pW&k`=_-bE z99t)@y;!zLE9~3`!tpkrB0#d;L2~JOu;PeWnl>B9YhC(DOfkzpy6 zXQqf`yz8oMal=9`$tv~(zwBm{A3PEXlJ?QQU}IQRF*TlKR~toEYqZFGfX`H=&_2R! z)8~cENX6<=KyJwDHwv2UcNn0`_F#pEOBas9BEx5K3Qc-d&sL@0+!gwpKz=hut*kUE zi9eyv6)W(m#7na=R;*Qmc+$|TNh6Z*W1dG)^AL;hib3*7Lf-yNp^~#{z5Ea|XSzCj z@g}qa$6%Els3>+Ss^k(b$=?e(mn+}BM)6hb&O*k9NMyLn^6~uLRS@vY?%nZ&M1u0lS(?iVuiSe%uKGxD+>|E2Yq81x;b`4=YIg$#m;;haX$u5o;{Ihx z`=sxqEplW&z=zzVO?*V{x{7y705`e((4vv(eKE78*>|bK{|3>)6plQgFU~oZ#n4|f7{j?C#=j`x^FiK2hRan-7EFx_UD$lvkv5-ZPUn#0 zt!3$~M@1AI-*dRl_lfvkD1W`B4W6Kpc3%MwrXP+k)Gx;D(lYKca7t^9S4u-c5@H(}Go!3Vk%TDs(lq$1=~ zXb0nQi2m*=Dp^a*YJ*^I3`P9A(lO{6qK^6FZ;-;)VC2a9>>*?yT6`tay5bySx>kw{ zND=Tc?z-!=<&JWsTeN$&!B90AIX+p;u2yGq_0j6A;~Yap;=zNsk(KdC_l|4rnZLRU zt1J}+5fafqW<}E8boG4p&HOSeajMYj#BihG2L(vF&yL`hz?m(aLyLt>MI}Hwwr*f@ zztd4vvB5+}NJPIUH-t_vwnk!D7h)0>_Ci2#vsgeQ)6Yx3X2(LTP~!^CajV}1UpB&T zo+I6+{)!0Z#FT)pNQb3p?orZTCKTaOuK)c%pZ$y68{=-F#7*jQ0Httaa!P7 z6O=b$gr*2d%C{zSslk{&Rb%OiTYHkZzYNB`ptG$8gQ!2m;7+&4zr7h~_T(Oepm?d< z=jz~xx(_JTP)*`3cWbZt_P6!epl+znj>Bq0Vfk;*t+ zoVGYq(_{`tURXPr2!+^T_PS37v8J+%;~N0$yR-fx5BHLFdx~6u-%m$;h7s8KC%cH)N&M_*?fH$_+I<^A{1id z^6!=0`CHTL=f`yS^gEJDb@<u3hKf-3(#nN*J%h5O!Vd(Fct8-1(li~4X zrI{+jk{9n9CRJhH%y<2KwrB^{Vno0VvwGb<7IeiRn)Q!cr2Tn|)eJ4abN|D9F?!o( zSR4m#!}c0Zj9dLWdaRU=cON5>0L!aeyO^WMq=d#Ii73g_gVFZk&QQG!Q%Pp{4Gf{N zg8aFMo!PUSVZU@IFxo}b!Vnvie}X$UXNC1?N{vMN$2bxEV7xsV72wTxn@voN6cM-^ z6bc09^FMuqO3Ze0VjRMY241d~1$0yDo#A^ec!Waiw*?#Vj@Q~{Gv@`BMDnFqXju{C zd!z__^7Q%{iaphe>B;;14duVn;u3_on2??M*+y#M9N%k!BNSrGI-lW6zw>mRZzRxK zDB}NczWCGie5DiY=6lT4IZ+7v0UmpLc?k!vq`rDQ@D34{fRX0Cqc?*!F5xYam=h#^ z!ZOy83W^jzoIG<8Qnh4$*B$%v14u0606|PxB$KQ4dZHJ3Pa$gnO-w$AKupXyHF;rY z_Bfp$TMSUK0@}rxppoZ8XeP*r!D=;qQy}UIcz7ZaFi6)=-?U6A9;u+C#A|_zRUk5T zROV=DERsOj?_MmYrQK@^ON7#Je{EwO#yEt(1M^;5NTY#IVl$iTGuvbeiUfEc^j1o{ zz7O$RT#gy4E(Xe0@3G4zM z*+lU>0~@26j4zg2#hF68(>V87F-tV2p^m}XEIs1^7FiGu@>^oCnk`&WvztLRcRl4S zUVNl;S41Qu-c^twlO3Fcl2BBVG%>?ZUBV;=B;6-jybG*4vSY4|#Niq1_?g2ao%mI* zye{{fO^;Cf%`ptov5(MKaXh=am3`Dg1^nxO|Ka7Ef04|#i!FZ=XC|dF&E)9t_(Uy@ ziqeu8#F-KCFIrR%@zZnkACy$REDSN$mX{*I6l;$@V-pQQacmuMr27z7?AFm&4< zy*)fSnVcM-4kx>Z#}jR8RMh+t%}-&tS7@gU%}2Q7pKW|{JUV!wX0d1Ga~8891{i|h zMTx@p-p*wBWOOpzQRqFsEzzSohX{n&pSgPUZ}vv_C&#A;C!_u0$)yMxoc6IliO15Hyg9-{cA z7fRX^NK*b({?V4S=DL#hQLIL4$))9i* zNBDUwWAD*se2oNgy!@aMN%$iel&W5wXU>SrMWA@Utez~SWJa3DHC zZMYt9osW#~I$(uCK*3rmy^%uP4*R`D!_@&iQgg9bFqE zKr;UD3|;zPY-zFI6Z<2B|C$>R5eWG%=5ah6el-~$=(k+4dZJg+KoIw%@8$~>XfDpT z#@M?BDcIwU@Ua^R_vFo|2#{=dgSLjPu|IgC-gr+Wjy$>64>*K>2P55`obDZNYyD6$ z_0b#=fv6(JWgCnR9uAKa9dR=;9-|Qb1NKNf9!z#7yZc%P_4v7*l~TXO28%4Rd=4k~ zM+bw(!vBxYfACj7kpKPh|HGgEezSGdU^N86`rR9hZ>;EYucKLm`wfLa{Bh7E5 z;=E`JJlWry43CfD1nrN;M|*>9SR?Ygqmg=&r?v%EXC3tL@nJu}T6}Qqq|HJ8IxFNr zv{y9_89wnVYI}6NeY(H9H+(Yu!|6cxzOGO(*|JRWNcW%6MMVoUs6MNrKI*{oq**Ti zRPi3+r=P+*do+Y9I2oOMJvkoks(1O!Cco*sEOK)AttU4=+E!1pp(iIW1pjfPPWJCl zP-bv27@t52kF|iWh{H5ET1lm-!0*3YzdBo8ZS8$E!6r}iamDsIL<}iCK0z5i4=Fl zZ$f+{cfKn8X8Eq4_85fFAHpP+3%s|s#bDY!9_l&o$#-)15x{ZqLyJZtZxs!Wj=rB! zeK-ja#QhM$W;J`hbv%5aZ7y$WRjB;{;GRDRBhQb-@{rWJOL9G%uhv(S3$*1|yP!hT zDFdd2N5T-}93AXH_b8SMk&)@s07LM1!#>Nr%?cws-((Jj(5^@B;SpBTWczUc=y*8J z!kZPVN(HHMG?IPb2YNhu@URf?u8@7%L`6^}x$FPY@DKU^uCSmo2I3I@4$PB%1WreL zqXWJBDqR1_v}rMje6LZ&;vWw7MuV|hNEOSqLE!di9axV?t~+u*V{3YG_2*@>DJqtf z`>tb9D8&B93R7(ab-sVJH#`|mj`S=}Zr?`JWPHqzWCU$kT0Z?w&3A?AltcU~|JCmr zlTE@#N5?Q}P7x4RTor34vh7<84#q{$&R$+lmfA3;DNk*HU=18({>sV1p75k)L{55MAvA~5Mc2&at3 zBj}_}oan-dr51}U@1s~mI;%*VnrvJ(qR)Tb4J(Br2ld3k;aD%PicOvC35P=HPh?y2 z)+C%ZcK6I^+qi1Kv>^Tk6;VkVjJ2aZ?3c_>-NaaHkw_8r_RjED^mc$D_`7azP1jjq zyJEYmZHaZP0_N{|HFa=!lFv(p;hibD28d7oGv;~Y)b9Pg!NFIV+N*HC2MeLsaM8hIKOCfzgAlE9j` zR8V1rB8SY;@W}*M5FTq4cC$HZAc%{LbhpAOy!AxNu-B8BZ-J^Nt0Jcpy@?J$a{gZx zGOS&S!zT#e9SjhZE(b4{_RhX(@Uowr!;q--@d-+7c80?vBuaFat-_~@W=!Ld;pe5T zNq00U>Z#}})xR?%T=KK8)cA03lFIA~GoxtadL%OZoh${{3lu3<6p?SCA|Bm5uHH;g z;EyZoE+#MhU#Qhs;R~g>ZU?8o>?GskeIWOBJwrkImi%x&U#Z8aks$oOmmvH^H1eP| zqGaSJBZRKBR;jR1lh;ZVVvFQBe!M#we|?~1?KhJg4FqvNY>U83#a|V2uT=a+D6;Tk zITU0iiOz}*R!DSu9HPG${>9ED$FEr61$-irA=uG-_m7cCQ>$l__*Z}-xa653(T|P~ zPY$;abuhSM;Y9K$Mj<*A8iU;lLOLh6kk|9uFvN4iL}06ouNaZny8BU zvw-3@SqCB+-@{S$*_H$vCSz1aDyE7h<-YBCG!F4UZdy(qpN2reNl(pE($&mi%?DvvZ}m_C6f<3;56{qh?2J` zTXwgXYzGOsjna=&g{mJRc?mw&bRWX?Gb;puIk>ef7Vy&;vm)BPc zzCshL{8xY=>_=gD4t92q5wRFN8jQ3qsFXuh;c~p zLGX(u5%vd(6exy@$ZEmIZn4Pn*X$6>KO^a|GkkP#nq*f0Z(F_uq<@Hz+*%+5|BU{g zOnj=l&PhL?zPZ4eNWDU8j0NrMH!wv1P?AyG!{d|5Az}$Ai_mMN!rW2WER95xwz4D5 z;8%fjPN5Ctq)ibYpjC}K6r|ou#cpX(++uA$`7&o>lJlMCXIsywtEV`J zp?E6FN%2j`5FrrtZ-YJ*9f%@^!_(vKA%6J7DNgV0V;zhqd!w-~%&6Fm0hGgHv8M1+xC z=p+TL2ZQ|~V(5v>U*Y)?q!Dj9A_-glbb9l&W->a_Pl7`1kKt7u9gas&CcA^3NAOK> z7*5*@6{c9^ndDexN{O!Pe29;A9A^f*ZKaKdiiksZTqxj??Oh)QK@5CdN;GDIqTpR!*Ilu7h~d^8KPW)bv8WY79z~*h?^NX0 z^HoP65`2aRNGC_TdxHn#$;l~-peEzf``d_XY2&R&@A~Enr~+wQICW!^_NN@R7jmfA zojiVs$Y3tME0UkYQqx%kCVePbz^k5QL-+l3=+FBJ+2@l~WvxG*fFGOn^hgnV!?z_XLDCOK8>9ZIA zW_$NH%^)Uhd{8t(X_h#GjypP-)e~jvU)dgtBtI{CMIqINgXZcTR0K{_H1{^rUy9=u zQSedTk&ppQ?6gw7Cg2s<*#`*1et?b}GZ!pD9PjJlKs!to>#F&_-=`@Wd4556_vyv- z+u4`vEmZrV@5KX1KqL>6!u|t$6%o#{@c`C05uKDs+R{ z)L^9IxjAHeP7koCk`w3^CSNY)BP`O;J3M$YI#dIxP__jEK_T={nsCnf?Ai4C;!17~ zm#b=$_Kp?V@&?Jht>#mXOK!$=9&V2&Qmiw9p4`8&EnA4`B!J}m9M2?XnY5qT!q4(& zF)mxNGGi!?w-cKWa95(alh?~jX*;9kO2wO0q2LyU;O~VRLFw2xU1^uNA|#TQ2@;0z zjJFIP3`V+ow*ow0gdT?Af1QfQ5cHb7nqJ6j!gQ&1|FtbTQbhNX(q9&6_((psEHX2z zY_AxwleLc0{nWq^-JeG~N>WTWJ&z>cC*psXu^B4;Ur!IdnhbVP9)#`@+mqp*i)g5s zePPe+O;vjbD<8b^%8zd)YV1&m&E$wwB0k2!a;*j`#B(8T(_)b&Sfs;nvQW+ECKhP} z)DSqiF+mm!8)-681Qm->3yv0s@bCIH`sd7?uJO2Z66MN+5Sc z|FP_^*6VhCf!;vdXu(?1ib~_SU8{c;L6iJrHZD39=dRTJsKS>dhNI*M1=!HFB@KI{ z{n5!}XKp^Psb4=`P{irmdQ-UHM?ROzXrAO6MI0f$#bCIXv1e*LPGHnfVHj!AOMSj;=GzQbUi` z_vLSuNT}#TGj_f1XdWP3)AeeEotF4@h*V)m%CV-JC^2G*EZqpYFXyl>OfW|-C zrmiqG^M&b92>ns&m8b3adOXSs$6U}z^}kn`HIhHr8E)%v`!~05$TU2BI5}u3sT?s0 z&;er`2LaT6=$Qse$qoa9Xk?<1G(1SFIxF60mb&mL#Fnz`CsM(UG?!~%qQ+1WACJ-& z8ix$d??Hk7)kH##3clv?;WT+kg&$fJf`7sirKpctQtehDDhT3;_(3C*P!3-{Mi)mZ zP}S8o6)Gi~s}_UE@4rN^xff{jRw@>%uvYnXHwb!~Q&O>BbLkdv2>(N|m@n75r)h(#7!1cEjvN~GdI4uRkFv7_ziPLwn_WRQMmhm)P`EI`F`N7zIl>L>U+o#7pB5TlF; z3Si`->KN^!0kN8&8rdtyEWGgLfeS%tu!9Y}_nYISCSoK1&chH~iuK(~d9ZhQKS`!n zJbE-cF$&RZ`gxrm44)j~SST8L!OKfl*VEhImKh%()+x}JGlVOpSL}^nVyr-0lm;9# z<-4Dbc9NRpiU2?~%@GK(#ly;=b*0vwpI_vEPY8bpXWNt`O4O z13AkI-vs9rc2Q@4dOVyQ9-u-ieh%iY^a|ge+&>+m!-)1|D)x@* zINqWVJY?vPF=(|GE0#;>$%U+Lj{@&8b865VPB#^%5l?Sri08qa~7^=7_AY1bZ9Leahqq;~NG8H>Ew`mWT>}r0^6Rxk_!YhmVF@yj7HC(7)?) z_8cZj>uM#?bYKiK;pFhE>cYVN;eLA6L`6ipr!X)8lI>n76}yxx z&#vRJieJw$xz|m|2g} z7`2TGc_XXX!=&K*QlRwx!95JY&TUQm0NfMdZg-UL&h=aql{B)xg;b92=kv={5#qTG{!l;nI0m2Ey z5*)cWkexrA9_ot5jRxXj2<|uf_+i#M>!uq$KoIxiv-PVjd0?E1MeDKCee^TcC;Kac z`-0)8rvyf-PtvT~ZdUeG(YvPsafHpMkf`&JWc-`xd|WvC%j;7@Q|k2I;77JbiZI_;O4g-;CzaY zTiNM*ON@tmy5hfL5jGf!G>#C-_uj$sY9x2|9N1jgCQ8VASzD0VByzWBGbC zJa!jvNen8h38^UBEG!o%V>4W`zb{GkhXb5AC>$oNkc28HALBFx(KZnCOif~iEm#}eBrR{Ovy*-#l zzG)n>z{m#<4R~NC-A`0@g;>b+T!10?=j%URpbgA#w)~&0zRf$FS1esZxi`QMC0vr% zWZ_N*59AsT++>&3a{mRgaEgl$Sv-C6aI}NAqG~5p*iZdVO28!VXVJC`HXcqBO|W$o z?E`x)c5J`|l)UeU6cSF?!az^z+bar+^1xSvL<$}#L!3~Jr6Tr~t!JtBYm7G7-d&Yh zgPo)8{mFxW`cfy6E6)E_m1afo9Ob9;%8k!g>+83PGxXpyW;{m)3pl+-*h1EyVBP|fe<>Z zIyv5YQ{ZgXIS>M~_yIR_;TBefU7>&T*$+5`&#%XQ_G~@VrhCO3P?Ix)UDMpQ>)}Wj z+z>f+zMHn;xv?A4pb-6DWO1YO?cn%ap>RjjXmE6X90Q3vGYd^iI8 z$A?J(x5A(-aQc8;j7ip?MdKX0psVEUgH5TWaK$ ztc5H?hRm(CALCd%x*mI^R6;NElocxy(dyY~mO@5CYen+SnZ(KprO*^xxdR zA=B{i;qHYcKbC7E(DiMYBd!Sf209)@Q5v<<)YP*?1KmOlISCBl8h>QSSBmU`t^9DpcPb+uRx3(J4} z@s8xINQK1X_noldhX#x^jieYqI??iIBT3;aR^qW^)kNPK3!A`k|#b0YgGhpoWDC zb>iY6_^GZ#UOcdKmL{Cs?hMmkgUQ(z2S)mjxv65{G%KH7^i$9}(#L|g>{w=VP3_k&|=> z3dyJxC?W?zrRHQZ;OG+jCPTrXAUK{S%w_Y-)7cyJz@)FU1cQVmjN!lFm6z(v@K-R1 z{&0B4%YPI~@}DI*J}#_+Yp~q# zb9AqC@2&xrw9Tg|32c$L3@lTd3Qa)-%!nekJU(7jjjH3+g}=9Bhn10K>6 zmss+FibuU&VnGB%Jy~Df6g9>{QCI7&rlam7u}lz|QErrLrSe6QqH7COkuD+c0U{}> z!h~bD0P9Y@0jW<5rDAC#oeB%#8G@b{StQ-6(Ss0%OBG?Hgz$s$OlwReda89B%E3d? zubG=uGg4=g5y#lLB7h`^9}+YqguwvP^Cjcnz^O7d=bmFR4tfH9+W;uim0~QwbcRkA z;dJ3nd7}<_K553IURRXN(O?dZ1CcM<0=`7 z46iX+tZf`5Abhz=UTQCm38O0pK=#Fa66xegK9j>D=W4;voEzzdN@JoFrxfzb!+b=eE+GpUDgOy-+1eK?-lwTkA}AYI(l!(gK8ZiwY}HJZxrJ-Rdh$ zIq3@X-A${&-n|O}Y|q&($SkLPi0XW{uvOe9!-8Q!Cm3?>Bp)qEBuMvOGW})iDxFB_ z_g)4TsoJhJ>iyzuhrR3!;95&uU&pMQJd<=Y#c-{4xDo_F*!I`S^9=9qld6Qg1Qi45 z+QZ1i=Nynkp|KTb-&;`?M_q#W3LKY0wAWy%$3*t4!WiJu{#7w-E;&KLQH)B=t-NB1liG%P@$xSrGl;U64e6d%| zm%Fbg8m5<`al}eeR}5!vdLanCUNO`V*w2m$j73h>=6120tz>0^9U?(io*zjI?s38#d9EmTiGz**e;S{n)8qb)w z9YPBeJfwG0t~TJbn8?A__9e%rVz`T))yhUf8b`z~N8EB*T%z7+hIfc;kPrib@$y#Q z+fy*CeSg|27z7tL(Gu+`R$(uSnPGex5MO~BNThhibx!4azxie$w5o$1G)m=h?d=kP zNKF*DquFyoJ+`)+Z@+jE>XE>rD+k_qy>aW})r)9BTRL>YAPuRhGC`Lv#zgR@7(ih2 z-l!bEufSn zoInW_M1Ec8>l6zs^Ak4;w8kvUkuC0L$WC_0#%7$*Q3O-D#i^Iw;(`oEb|47BKp_n~ zA`WcGg^4_MK1Ga39FH9$;t&lf9T!_;Vf+<@D~%d-3{^ok))oxHqaK2k1Wt@J1Kig` z3I@T20j!dWl41{t{!-XJj$_`LGJsA#YojpFup*$)L{#HxFtU_K&}d;&u(iq%_n zIE~)eY8Gy_i;W_zh0cX)MhqH)NnzoKFfumaxV$Uj7JMjuXASZ1>vzBiQ=Bh(>i;7DsBOT;D<|FV%Ak^ z>r|C8hPrxFcEtig;Nv8f3zZI|-QgrIiAU=(W3w(y7Bb*$g`=_g3AhXl<-dtw7-35W zO7_Kk3IJp0a4!xQ^72!Z9%JPBi>byz_;bcU)+TX&(o0UmII%P+vR~#C#YCDXF+5V- z?3!@{vpFkkxm4MLjM$Qx2Zm(y{RIfen%a%zEQo{f=fxTVcGtK$m@U>y8}$Ym5)9TM zjO+}4a50gnjx;J{W`!r7kYbEnMg0V&MXOTofXg^%jajY{=^n{HGn@rgg{qM=_LIEPZ zAY9XOuRo3pmWno9mBsYLr6+IJGPDt5NvilE2#j5|PbO&2NCq4I;Rh!ZN!7U%U^oer z5bVP2)Qq#$XN+!mU3SEU!M2~$d$8pKluIZ;Q8{|&grRo=n>Y&$=>(E*O~QSG>k~I7 zUM|e$K&tP|Qt#WYB;N|qz!sUYKQZ0&_B=551qwpHSqjxTlY!_|c_;~L7jlbEgY%ch z6m!l9=_wY20Jg{s(b;+D0%c!ARH7iZDeah*cc-#T)WyS4k3KsgMUuGPBe0N+7s+4W z_R4TEbV^56tlldRQ*2UiFF1dD@E3HdDWV5ySH_Qz!-d4IS;b&!uD#K zDLf@k0U$bRDzh{vGP=kMfig)HTnL7wU!+Hj>kQ;jA%=?$5CN`BkT+AL%BN-k!@FRO zrUV0#pYC*+rIInKD8O2!M(xr4!Bg3x7_{(!W?|v+~*eHlD&dq3*H88`w zjXLYxY(6o2gdT#c&6(Mk3pby=^rEr=P@Utp7az?7p>B8)aDBMAK z&p2>#V zXLHULh%t^4L251hAi~cy9FjV2!qr7RA{u7IV3rrJu22lR(k?UeR~Ef`R}5pu*G&k7 z1WuEbEK|9colO;EU*0JnivmMJekO&f`HbrsWWW=JcRq8iFg;5bUxqc*AxJApt`=Z|WQsU=oR5Ej&w@$#LAt?5Ap;cTa>W2w;OA(UCw> z(?HNgt<|Vk{o{B>d;$TIO(9PRG*UOl%#B^i;UiHH`?$6kUIy#%<`Q+mGUjW*-asUz z@T5>1FsgJ;(*;NkJU=s;6$)wr(kl=lGPW;72}NL${8RpJ6?TkEP`EY_8?e}Yd(dT5 zO0lsKLapa+%ogS{aEd^B%+LYWYMWpnGWyTq2(V}0nZL?P6oj@_dFC2j>=;9%gDMwD zNCB>3H^=W58@2kj$jnHCK^V?Oq8)7>sa8JEF*ElPdPX53p29FrEA;zPg?d;>=BO=D>35O7bwo#SJn5n)VFi1$^iO^XZRMv%J zvsuS&!_nc<6SM>tsUMQo)pmspK*nK-W0U~^A`YuV8n~T8Fd5p|JKYf&2rGl;wyVX~ zdcCnlkQuuwGWiV%LLXN_X;W|*zwBnPWo$jXkTwHk2&i!hJCfNflv^OJXYAGK=rkyZ zu5Wk1?NjOnVDQD`xCBAqv&m_mN>#j=aZVW+TR?*$r?dH_V}v9k(mUtbrVA6-oIqd3 z1-@9EsscoU$K)k#h@%i%k}@x{XN%nTHc&`Grc!D_0)z5uv2?py*>Y5Ugp3L9hJ{@6 zP7GoP3dtOm9lfmJ`GK~1PJmQNCD1CewJ1bcLzo-{3FrgB+P9FI_8tY@7L zn-V~zcq|Etb{$9z9T$j*7AOcFoQzOJb0R;Lp+h0{WHhKq`?TbNxOtdgnt<|VS?6q) zv8i#mNU@O41=l`-8m;eInOULh9ix8+M-D;rNn1Sz73rST&O3-sDP;25Wg1Vz=v~11 zmtY~4$5lcsp&GD7;5#X+%aLSMGQ4dGmh58kF#wGXKqsfJ=nXgI2~~z25$LA{hIHgb zH%MOGDnKUOHuVfMbRgL+STG1Lz0Tl*Xo6#fbbzrk5NyOSz|xEpCvlF|8(9`2R-6Vx z^fw6o>!(7L+xEo?9bQ8E6Dh`MtW&_01AqmNO+nY%l}YC)hM}hX^-rQ8^rLD!cCFmX zms^pv)z`XvBfO1W5EKccyLW!7;N=62SmDUXfV&rwkir=&SOr2g=RGov2^0)bFRHsG55Lw{JsGx0l|u;GnHXYk_Fhlc3@*7VH|Wfr)OxPGDe^L zK_^iV`ivO;VC5}B`m+MK{PON4A&v^SXOfGBgdS64QeVJ}3~$C7m5%N_ajzznEL3N9c@I)t^EN2Ek85 z39;oR$uG!N`_fF|8qGlyQEu^MN(hF8&T1nnE_0_U zIb*vXKPFL-Nb+ID>KW0&<;84%WeGw6>9&K>LtkDF9+JaRk~*K^YN5Lc(d9_93o&da z#t}jlzL$g$i1Ow5mi)nLppb^NnIQ~9--;(B7_*z$wH6G*dpAyV%i`7-A;VbkadV+; zPV-6ct28Fk#7ne`S+5*6WAOOnU*jPB30OcOBz-(9PgtFj8w{!F*X8JRp^%0##BQ$S zcflhnQ9SHfw>SaAAo7hoiGtWxMp!={ioty1DpGMX3I_=cn;YR|2r+hGp`=^EM&B$7O$4tRi+b7`F+Vef26p&+!r z$_2Gj7AA7noyt^<{f-BpAR&pPdRDB|+>JJ41O;Z7!ZGM-g3rKtnv=YYq3%M;LBJq5 zTA6vsCq@L!V7!klQ4sp%cD2%M2`7%Y&1iGM^9)>4-$|<=UM}!*Oyj zBK9m}9}y7sB*+C)B+nPOR@aKl?rAGeYhsFJ4+@FU^9teNFNhVO0LR~iS&RiIa%zxZ zB3)gi5xo5(_ke%HF=E1^8^D_u1PlqC)MGch1fy5jccfbkF8X6EfkGmW(7WM~e+gU; z{-Fi)&LfJQ;=L%?A#F6VN0^Vw1) z@^!>JlU!JlO2A79%@`mFgdCR1#{?0{acUSYLH_TIn-=?(?p^G4hhXSn;~sXc;HfsxTmu8RnBVtQ90uR5#0#SRy;#fH77qp=O0j)`3olZhJW=p)&EVc{vRjQZh%p zA~h3X7{iRTdLfT^B?cm&DitB8*jlkMzE-?nD6XzH2t4B&kO7eLFrN$@QZfeX&1*Tj z3NR$$&RQr!Do_yn4f1;@34=H;xCT)mkbA_hm$}q^ygM|zp<`Qy3x&1vYWtQ`0ED6V z9F>~jAoTwCw4JD&-W9ckK)};hBCh-mh)kZQ(~+T^ECe|Ktj~yu)Q-W?+xU{qG4hJz zpkNFE@v@{qQ4sumq86bDPaP_?-D-NumSF)TFp^mEk)k5mLs0arTyyRlF?!?38c`7T zD0n$xDpf@+7LABzOnA#fnqVOEaqUwCw+d9op^GzPGZZ-1L?oo}l(a;3sLr^KT7h7~ z8Hk4Q9KMV!KoP?hf^2MHY{4UU%f;JJk7;}gSXf-GmX{j!d-pvXo-rB_NR9>k;G-g8 zC)3j9=R|5Gd(q+O(~g;z6dckz>84>Kgcy!={l4s)hlNxgg@dbByH%+|JlA~@HUg2< zkOc{<|I+fXk%$+AaIv^u5mJ#9%~K!O&<<&JI1+PXI~kj!xGvY2NLQ@3D$$d>QZXi< zwb~{a23hZh7PAwJ)T7wvPF}zu_**+=i!gcC3){f{%01`Sb+P+W=psuAx(_iqMSvVO z@sv7!gp)aOAN9`V!WA-TIr@j5J=#b}MC8?(71dv;_n8qYZplsqAm%y2qw!L;0=ccn z=a!e3@&)gtf)Vp>qevdw4=h+Diw73cvrkyn*LYDd2#%f~u#>1w$ymPpJ(@&8Xd!}P zHDzf^4S<+utP38HS$jEC$iG5Z!qBZ9?u!^Wq=lC$z-IwjDIBL8W0d;rF-S;4Y~^pv z+|0OjUwYfhBLbpg!?SR-KkHuV?yKPj2}ztsx32Q!itH|;oD2<0=cr`u5SH_x6DATp zwcY~v-zp5MY5|xF=Uzng40n|VkkouIr1LPY@j0yK=vfU6n;1bPG5kOgk>D|zdsi)} z4i6bq+)3PPU=nn3$tDkZG(By_L8mu#3=EZmYvMCka;)HFR2Y~hA;qOM;{Bt$uEIB3hMei_}Ygadd)-Pf3|OfQQ9EEl+sH+q8lGH zkS2lcFd4qGo<>RR7;?J;C zEdbY|(SS(n0x;fMyz>wsAd-1b&j9~OAt|v}(UalU391sXs1Ocm=}0h< zI=~NkVW=#R{|OS3zzr3Y6y1#wV+DiYcyR{~QXo?k-LEm4AGo-KNJ!xrY|Pado^tC5 zF(hs6>Man&#Q2j`O0{7=#c5#gM5P~+F9*CC*WjA@bY_BPW@5OaJ6M1+ z4UY|rv>%1)n%m`4YkW#?j-bZ+;!JJ=Qoj&2#vqMI$_DHVi=<8DfS2{3v0wBpK#79b zw)0?O5}ci%b>~5h3bx8Vmj{izxZ+e#X80f@i#;MDwa2XAf+3)@ch5m8ekVGIWk?!d zOu)vV&`2K-A|T9*CZlJF*Ehx_3PPXI!2;q+62uzOgfT@$Zq^vxmIozTXnybAj2i5Amlg- zp&=;~cCSuD3V7+--efZZy(R#6rr$@sGK{oG7Z^8Ww=(db)8l|XpH-@mQH|Fm zB)wwhtOz}X;@WT%Cj-?&=wUyDxz={ZM!~L%8$A$QKHGpw?aOX#I>Qw7Mr4A7B!oLy zm7mQCW3wQxh-P#2Or0_I?T$>%L8d~AhScP}WRt8KE+^l)a+QdR5zs<(lZ%Cfgij&2 zJU^C=hz#678|gQ_YEN{d=WjD^6PP8JjrdD1cf-z8Fkf%|rOc^)>iz75E5 z#|7q=NW~aJ#uhwo-F+3MM#VO|kYAbfk60pxVEh)W4~xVxe_Z}uv_2VQYvOTtUVtDl zsrU$|sOAk8a~b2@-*9Rigx7YRtZ3#ZR$#2F zp5Jg=z;*V@tbqYP@K;s6eQAQL~J6Av35e3NR*bE5gR(nQ^w5cyq`@NNbMZw{DhqLlVYA(?R>j}7@_Mmd zl}9T59H-!rL^v`u@u5ot8-wX>C+5YG0JSO@u26sJKp-S=QXW2l|0cgUv6P>4^2{@a zrh9l{At4PBY7ZL;82Us^jPMd`+-m^D#3*vOA11vu1ewunpECvtNg(g%Gn3wlZ(qDe zAS56H3dD6KuoePK3d1t6*h6uUf|n?0(ZA2k(5lAjm1Ea@(l)ThM4G`84B+JyRq345 zjfnpRy%x^!a&EXLut@!!K0U~T_7hGgh-`&Ysx&BzVM`Ld4rd519Fl{>=~X zdL4xLvSzD|gajT@ZqP|(fXudQB~gK9+4ZL~gs6Zdsm_>4Ry*C7GxN@MTZR+JvnCY^ zLLb|%H!Jso*-#imUcD@PL2(fN08)Nf|Ad+ABfg&P7H!Ji?j)ogCoZB6W>6OYUrlO%`8mKQC-8(%)UjXaS;9lsK{)gL!c&Or*2t01P1YS z;Ns%U4H42$#LZ~Fw`w7dffpP2Qhob=qjGD5I*d4T#IAXgpdh&IZI&rkXW>%WeC8F} zjlR9j6cUL_&&hhVUTpb?Jq&pehlT}%@aE=-Oql7JER1^;0mnf;0Yf@iv~b$HQNsu+ zwFZ?)rK~UzSuEZSZ#+~c<3BQR z(9qT}Qb}}zM4B=orBU?G4SB{~3ojUeg9J=CU4F$WPQjUKPB1SNfe(pPmh7!o>}oOUiw=G@~>hNTcb?$lUFMT~w(Rj{xmwnjwgy^a0^1CdXf zRM^6W?$$tIh}lZ=GCec7a;<r8qG7;R!aa4IS7e>DkHVE@rB7k2C8R^C`iIQ#>T*4C<7#fi1dck%9y1m zXN)5)Z$$+N1U)VH^((WoxGp$w@{VVKF*_X30L4N&7a6A(aELALjeyhCiHP~a?taTY z4zLqi*vPY1$P5%W264K1BN(pR4uLWW9#V5MQLcVgGEv&7NZ31$U0hnGS1TC<*EpZ# zz%`%H6(tan-f3OgHzShXyszm?7CgX7=U6R8GtYI7TSU&rHz34u+V>3Li#9 zqL0dn>^S!FFGI;-dP{=g;&N0%7!&ErGJ~=pk*Nbov?%BF$2RI6C?qqi)~OjMzLK#x z`wJXkAS}k2f$}1)X2c?SdU;-eAh4GKa}kzR8f?a}Ce6g`Fiiy{QbdoCOmQ>ktTTOi zgbWgrIIJ(`z-17^Eyk1yTs1^%A` zgz6CrjQNm&NHHWIZA>KjSZE%;l*uixIC_)eJB?371VzecL%~O+uMAZk4?HsR3idKP zJL|a&Quh);v6ttJIlTh8M#8ma82$8&YKn%`9?^SeD4tZfJ~Oif&IGtP1jRS#ip%Mx zU+*FSigXWabvK=*+MA)5e0?WC5Lo9rUnoOK*fr0Yz);rS`G*CCM2^dW3#KH*#IGz+ zi9dq5= zVS~sv*bfp^B#P5=WeWB!bQ{*!wA45VPpe^wlGDO4^JAVk))|~ktEggfKt?fjq(x% zN{T2vxKcuw0)|)-M^eTQ9w?H1irm!)=PE=E=iz8-T3y$tLzi{EHF94+0FUiB*}4rO z8n7CQ&`B?=d&K>Z49E9nxAB7kLo%b5_jVStAc)(eGVlZv(d4IcnI$*<1f$CxoVgw0 zu`Tv7vJ3>?-AhXp5{VvDm&C^N%igw(q4xC4dT2G8ATJGs_&Qe=j2;@3z&JOxHXD$u zN+KYtfA{<9mEFGktq_r-%-LQL$%@_kK@4Z0)srQIfyg>qZ$WJNh{|Rx44(Q_CZ1hFw!(DGas6a?LEGyHx5&m1Blg(pQ#>r4&8tlBbea=g+k zY__+y3y`VxR+$EIFk+7cnjENIV3GW3>d3$J>Rdp=A*nIO zj!y4V3QP2y_|@()2}DiJW#QyVxB}^k zF=JBwmsMM5ID?akyNB48J`y&4DM9}S)i!ijl?(qbG9k1PNyrYOgEDi!_$cYn775FK-1=qvx zJNIuH!Xl@j9vG6kpiXZln)hp^&UvmF+DGBYzIB8|qGv_hWMTnvFF2H?px6F+U`WaY z;QO~w88$posUj{@p&r4-tK92NL#Ud^yw*|~xoU?G(w+B3eG&rlZw!?+JP)g=sK%XEeqlr8Spkg>xsV#wqsKu7{3nkQx# zv-)NYA;Qp7zNKV?A)&{~K?MY;RH1xjFux(=T&KfD9v2m9qlpgnsPfcCV+hIbo`ON} z3)be;xbH-Y9>Pb4j_j~YrI<+da8lBc&|zr&@US)mT4eS!i2|H-0}OO)uVJL(l*zbqGh3S{tA6K3GzAncO~K0}0l`!x>2+b&2?AN22nlu$@R0c#Rw?O+k(Vx5ya7 zunk-zPq2{6IkAH+6js5gy1iY8)6k82{kD_8jd2J;_UHjPB&QGbldQ0Q(q@Lc!&^dJ zJS6uz8EfK1`7eTZdMdXvDdQ8#$m67jr&kA~(AWwyBxM=aT^^DyCK5dhD#5B&lLJG` z3AkkpA<2^bHyw+v_SI0TA=RY_aNOk&h@LjA3wU5h@IX zJYH(UfqQctPg!hRk6|C{x8;KFAR&bd<|0ULB|mXZWF~`@GC3#onXy|mIFg$AYZkE*pUd6tLJLv$-1^*! z0=7n^BQ4kNR2uc#Dp7=tyD64xFc64)7#yeKV#-8~x)2!~OZ}$oiG_m5PYEkr7~hK! z-A%6@fj%zS3t+9l zok%cJRu(2588e16S^qjfB3ZoQCzr{7N)-BDvIGi=yiV5otJGCpLHKJ8d|igs-YPJL zlm;BLfTT>j6T&v3X(l%iWJEKTWxvx32EkS4{=hD}H&Yp$(rP1)xTj&;t8%sEA*qL7 z@}1!gF$j`h=2L=)v>w(ckvc&IUb40Y#W^O972N8kMKdh07873rE#NtFXW_S%setH zEEt48rafFsvxS@!EXZhnz&)mc5dSmd|Q@N92z&K$s0Fs#bWZ;m}abo~L^0zEK;$;kI z^EUR$B$5Lxr17Wl73JnPz zRjWsCBA0UtMKbh)xAJHh1piz{yu&Q4fh)NgxbZ0OHRKC7p?1skGPMpiyKgvqy6KN?FJxNgCdtQj#zTu8)Wcnc3-VmLB3T&|RI4Fo-U0 zgM#B?WpU!AiOjs0w}3IvsRzUcLK<>?R5$NC)^=TLd0JUZM_0`BlV{h5>$1i8>r$B!7~)rIxPISTlwp z(7`1okdOwh9T392J8OpqLi|(7ejeQ5kVKZo{q^UE0_BciNC$5_h#G;**{nGBCKH@N zC}4G1U`XhU+Oka58&LEV%J43`MVA;WjJE-zXh`b#?ehJ*^~T!x?Yq@Vvqk#D*!JMt za=_sS4TU65tk)Z$kVQTe@Y!alQe^Zbd0kRTJ}NXMgXa_C7P8oW(ZEthUwqjlP?|{l z>7B2ZF{x)3+)ue>FIXg#)v>bIS%oII$RB*V?!{a2*&<&hFU)i%gvM6jK)EDaTK=%6YIuA zhUyN6#c7Q;1A(|`5oYpks~I+%-)aSe;IfptO0Vo^q-1b~Y;tTIB!I17@Vo?lwO+v> zxRWR!POE6XcgE__`PfjRA*Hu6oJtdu5HaBF%wOJps}sp!(;g!xn8@)ryC|w1i=~Ck zERNeVoY~Ot`(i zP$Yao9Amh#MsUPTcb=Sp5x`MW>I8@+p9*W(8IjV!b8|4Z*&W8Z(Xt6Jwg68B<;H$y zIdGGuzf(bqhtx!B^HM0-~yVUyz#HOU~O{Yz%}jXbeQQBPB8VHe0xnfvZI~ z$lOgADd|BYePQ{5<13SOvo`56ery+Fp@EZi>0E>7g9G8xh-&Vm$P)@?+j`KWO| z>B>ZqSwc8E-P9e7OAH1{&NB1K$3@z&BmG^-VaY7L^c>`)661mnK*n~m!-7H}k?IM| z6;XaqyIga2c8oz7N;`p2NP}}81{cdAbS;~s?%vPBd00XSn`a%Zh{{oL>57b1#*7bW z6*yW!Fr*_YbgTTa%19$r7~|F24FwKLtA%H?vm6)gQUpk4Oezt!q%x8H`LK z560N_*F*(_;O1WFgy-sKpt~#KGMEqIdMTo#e>XFqpP?~Y3~;~c3I@Sdum!BXyAo`X z;2{3vR;0B`I$D5vDEe1$s&_M%@nFogkBYQMo9$Y$JwCBA4TbKcT{fdrB#M+@GZVSO zRT^@{I2cioa$<7ObyM0qC${guT?o2T+LBf39=z|t(>rHY@3+b-)$LaCb{T4o)|zB& zGIUx~w;1ILT2C6W3b^7OXm>%}!V_XRVnQ7RW&^@4ZS##qJ@ zWXYN2V^>1hxD%q~&G9fB7>k(C1{(~iz(j3ypuw;fC=Ci_1brL?4Pm6srX}Y~2}8Du zr48`=H13ZtLD7}jN=-1oQoB>ER-hDCxln@dom-j3?gtzRzQcbeIpog;(FQro%s<+# zQmuZMj7r8#HLuI|m`~;(8Wrij-h5&H0l!#p)VD-qVBTzPlNRK&Ir*6)p3p{ly$l6? zO67~tfZ`S$ple@jM_?rVm}#*b3ABCoIZcE*o;esO+W7!5Qh!}CmLamHIzC@~?|rSK z){7;$YjB?kfH4vhK-q}oV<&uU%G1eDlX)}?X_ED{6_!~++(#oVdb#`9OmLkRbs>Wd zvov|~hNVx|L9G-(5!wf~f-41_`Se?mdG+2atJeLt_ih zm~X{D##?o`DnsZpmQ@4c)75}T?W8f#MHQ{m-8Djrv2@}4k`jIp(v)CGrh{4v>&IPE zO9?o(;=JLD`G?P5#woaY+h?!T4GI*gCK^e+H!ftJG;Mb@QUDmKKO$?uLv0<{D39lB z#qH)sy)|A1yNO78zWcnlfn>++2NW5JKL*u^WWj^wVk1*qudB|hXM{ZCv;d(L=?E?o zA1T$VRak}KLJZ^#u5Zcw@N2F1HWXlh?9R98NqW9J18h9m3j0BjfN6?k)oQVHdpzHQ z|K{6UTSc&<#8@bJagmHNY6)Hwzu2#1s&!2}4)#pZ31 zPDa${gX&aGy52C9C}vm?@2UgY&d^BxVKYU|KU_PI;mkAdN+z36<{ttQDISv*9;8HF zuJ&x4Qz)eHWFmAjh@cd118fT-NQMec&|*Uf!LbpKiIN?Yu-g$EEj4}(5NQD;N|03l z=!BUNwvBs9Ic(JSZ`TRAI>1Q%DNO92uiUB?Taf%z^&RfBR*S2Sp|aRrl^~pCJ$~qf zjg2@(me&o?XoTa8111EJWbuPstR)%}I<{5;<6X>X2)U+v`ku!!g+dCCm^oya9x|~w zmFsX=_;XbD0AZ2xF|}1kb!D%=J@<`5A%$~9J;4BxT92}kvEFr2dkHSmJ&P+OEVjbV zAFpqhX*~~y<%k$cCnT$E0*K^3$IScjWzaumvHZ;3E0wp!f~#gn89$P7`fB&-kwB|< zAU=Zf53c4zw&B!dl0_QsW3rB#3vf3-(0kcLFGSogiL3yh>6 zF*mL&+r}I#2m_7KW_U;tNQwtPyyBr6!eqKj8yV^*uYxOy5KcGU2`o~6)Ta!tFBqea z@?=a%gXC)(N!s8d?cM8C>ra8`2wnZ0TjFk-7+V zBfMbah*jHeLcZ6FrL8p)jHZlBg*isyu;)kBW2kWl7bgghBdc#WA{q^8oKZC33@A4R zmlQ>H+8IJBvP11gih?4=nA6tpZvq@~APW--4sGerrd7;^}RRE}t^Ff+NrzK7avG)zk{q;OtSfJ6BkaQ|;+ z^5x|j?^a6066#9L14hbv1m2j)Eqa#`Qj9=@hjdP>9?njz%rC3Vtn^-4WM%HwIf9Aw zw4PX+SY`)(b)zG(5MTF4=6lS*r5<-^r05U9M0%)~WWi6LTpGP(K_WG+FGT!#AS^J& z9JUZ0T9DNSR>M3Dexe0a(6SJbmgb^T?2sP7Nu-#9i#8-u(_?UDdG-a;rxa_I#6tWF zYEI41T$`ABSq1UuA$MzrUhs%Gw7ZS?05a0n_TLm(FHVlK6!xD+LmFDUgPd~9D>Q?2 z3hjM zNaNqu3#xI%pMbg`t#+|GqR)H@WF#Cfzz>ZyhDg}bGsRWd?1RsJM3g-qk^UP(CZY@i zWDspkpp7XsLu$L;tO$=9bO?%Kx8W3vdir}Km7t9oG$eII9qf+?zcA@dzH%MC}_ih7t8o&Sw-)1U64S;}Wz{ye(uALF6wOto+ zfR38!Z4e^bn1zOw;!rFMfaqHsMi-DG2HmlZtFAAVHyFk8<-5ipxSTGAn(;}Ax0!=dz z2s&)oN>FS%G>Gu@+FRo4oz-G{CHhYcFJs1uk^ z76<|ln{iL(PH!SjFc9`&wYasqM(alR#sCd~fG31mF#@(es4p)@w>R}A4HStqCXoyY zbB+vwa&2d__eR1XjVUA~@szF6M$GO~=}LEbia2ZnvbB-N46@Ri0vVg2f-z7@n;#PC zN5Uf5lnueh?Un&&Yc1HYz+SWlHVs{mBd6Wn$ZA;Fm?~K8?cqXUy)B}XoJjlL#-f5S zJsL7QMSCjtW=$9fZ0W&(b>CYn9h?4;xE-YyxX>aeM~DVO`tXN}FIHoAy^%@2Byf%GVL>*n7*c zwOxlfD7I;Y-I0720nGt8WA$~If)WSeMLA(`nN%x9>WJ!1e@IJOff!(+|0}oJuyX|iIwBzCurvs~pu66fAuz@y2Ev{e9sp1tTW}7rp?s}mZ1ko-1Q;j}8w?4Z zhw;A(42S(;xdFuBzawzBgogF^<{eUqV;16=L`0HDL{CHhz~1(F(jVxU4MRq^+Y;_= z1u_uW-m_LuMw%P#)>{28RWH4r%UEz@1`dhsFBjM8{nFk%NAh(9Q=TI?puIPCc%F+x zTg7c}d*0h5LIiB*aAj+&omQhH7zleP1lnUub+Zui4B98V<2y&Rknj8`oOra#Ya`7P zM1GUWA4#r>%$C| zSio(Gg=CHh=B$m#TZg0ry@^tyj42d^J|+zbxFlbPyUFyBsWBh+cLISBicdNX(onD0W`FD!5(yWSR9`8u|G-*%ZU*1a)6 zyp2%D#qE^}SYiS1Yj0Co1C41QBydEDZ{+HwOP5IhdmFn7WlW+V^e~j@fr$aOBLVKs z2u?5%_AL18;d<}bd)jrm5c&Y0B+I9p_JHOtvh=D-Rz{#8IO-_6AX8Vx$SJs>x zQoShv`8u}!h&n+Y@vffrHmMZKm_$M76HvUR4K*NxgRwUgO(S^&@hI3;;p4~NOiY0B z4<1j%yyd;MzmtP}XdP#9|JywSfqXwA_h%3e2H{6!2K6RV8wH_H%5|wy3iG@-lUPIf zd>>M$s*W!1ZH^iUZ2A5xt@>5Mjov1Wd>z4tO7(K1_O=Ek z7zle(_`hTjUC6HNO=JQ}M$)-v<#FMgsh01J)Y>8yKH+nZdRqaFX&~%{8q?CfLlcGc zF{U+&hHkfah6{I#jhfiXK3Lp243RReM!CFJX*}4On0ouGD@_REdv&c?tCU}b!U4Bi z_3c+zE3MUb1A<+bVT+r5dKKP%b+uiou8DsMl;(q-$K*t6ZbS6JJz27P4Jy~%ffG=X zed&Dr)$_xjwvk z{xuIhbp6ogkdO8nWk`OnpNKPx|p zK;Uu)INLM^BwA0OH|E_zgHRm+8YB6Zh;5AB?8LN*h) zFHE1F6T3v{A#hEce?hOra=Z56gF7e7FgDf-GFYs+Q7*Rtl8A{j` zNdX&WIYwjv_UT%=r3-&=tJvx0gTE;Tz(;nDn6Ea?vtdY=(`c32a1sW;l9K(%&M@41 zt=%eD>$j|j=gr$25OoG0YLFpA_>whxLKuBGhRAXAYUQ5w#xe64^0$=`XGp}7%Vbnv z`_Mx$wBUb9%N{ka6xZ$)A%EJMN9+mn6Nu;DZWe26uvo6?7-Q38(J2lE|`Z(4tO?fXeXS4E7wJ_eZsHWJBQY)V!XpNKcZ&%xX6R{ zVCUp4JQcg-m0IOJ(-8ah;G+-T@_wMYx^qYb1&g)g`m;OxVeab*FDICIxj8N*B@kEJ za9ReFKolyJuZuL7Ly+>Y3iG7);0qpXu7CYQ5A6(#9~8jNxn+K}c^kg?0{Ha_-71(` z8ugSOq6M*CxdlAjFmLS~Y84@!2)JQ(0>9Fjnx;_@=Izb9vN6dQiGVOEQ351@M05gZIlBG2AHLRS7gBKi)YA%?E|~VDn3WYJ0V~`2qO5@#xNB6X2xu z+P=zK6F3FWYbBUEvUl*aLvnurT!ya>h==lDLn3JebU=PM2>)m|Di1b}?F>m3E)uSN zaA#<(y^SxlH$MneH`}BMn;(LYAgRp{!(WimN7SFMQGY(B{(QCkqu;N?hxY2`2K<3B zB3@PE+ibuS5QFOzUEMh>mx5-!R=p3peZM$IfxidwXFEe`RfpB!`a_y8MvxoFHWhC` zHbt4V!QtfsUMsg$(LYb-x`_F zHy{A-W%bp`k;!5c?BiJ-5((d2Q{S8!nb0cG{xXY*b4p2%EW+F$nOMp^*ql*cy>SH6 znZPrV`9Rba10s?of280IQUYx4);_d7@R&`??tWF>_m z*)91ic__Ih8M7%EAiKILISI6-ZglA_0NDBc3+R~`b%ua054eDaZonp8?pMhiN**gAygSAQ zDum%tvG13V{j>dMj2?sSD}&DVnR}2hTx@YD+s$Le_AiUE!DV|HA^T_hm&E8X*nWS& z*?xFd?5V*Vgxem3@%9&r_1_v}1!et_Q8*7SR>y>oCxxo{c#I;0`QNn5%vWYyzgCyx zqOuS)QmXao_qDAeSGxW!!Bf7q;;(rrEy2^*%lB97#m3r5-uRWsXbb&7@#~YZF+fJ$ z#-m-P`Kiu!->=1}Fh<(1$oG9t?z-J~;u<&+Miz^ADz}I`L)p>Zw~B|KiS>@~aOdRc zEg%4~Ervk1{Po?W)VkLm6C47d^D?hP5x&UZ=;-epCJ?# zUE}>vjfog#hEU!y;6gcXcn*H5jZTv3_$wuzjTn=tcrGO3frFWiU6D~aMxG&~)d82$ zap8ySBpUZiC6S#NOQ=LnjEd8nT@l2GVpJJ|_`og;VmHh{Wiaf98Td=~D%rmoc*Ztf zq^`eZIZw39&ssp`Pqw_D_=aLr{HBA;@V(Y|(q%Y2WsVrha%w$SBk^a0V`8WOV;K9q z#kLa@x8WJ>BmC(g>CK;q$8ZeuOX|-rt3Urv{rNZYkADB3!UuW`y zRNP-Esa%OMhfWnGl^0;DJU4bZwNx&~2s5Pew!I-0HCHZQ=`>ef7^lBbQh6!HoUl~H zT)BKD?Oe&n2s5OzG~iN^YsT~ASCj?|2qp9bC6o8YSVLu^7M176t_b~=RwQ?0bQvOP z4Y)|;lJUG$U!c1>P89bSN+{nPV-6LHQeV%5`U2gRS}K1hMwlU$uiG0^5z0xdD1n)x zHmwo$AWmFLFfOi3$}LovDxk?hy+ z5427EtX$`>Uc3UE6>s+_)tCDVC6w_Pb3zjZRM*(mu`96H3o`xhA3rBXm?4#?_l8u& zmj3F+&NlJ0Qo$v^P*Taom=l)DWspjGn>ZUI%#h0bfJ;Scr)Q=5x(eA*{izcAfs)Cc z7;C6Zl=^xW)YnxpSJF+CW{fUFB-;Zn5~-Y?8GjZg3alp~=U4C-N+{nDV-6LHvWcG& zw%6E|)b6jp9V5(;%7eWjm1m?>E=Qz7f1#xElQHImr2+yOyPR4oKOQ5@kjjtj4XIoO zsa(EzwWCe^%sBmplFFxJ%n3^cmXxupscqs<#RxN`^2xm+72#+Bkvtz*RkQ}9zfe*+ z_|0sq7&REol(8$|aY?tX?28d*NaZ2@{y>|>&q(v?^2N(9c9x1T(UM;%sk}ADobX(^ z3{tuLVp^%ZIYyWvl{f4SsR&OB7{zk4@;p82(sPCWLP=#Y#+++L8%RcRK3ROGr6l8XBaC6z{uIU%WB1;ZGmBG;8PQmMxXGo(`83sSkFG#JQ4 zXt0n}++QfEd@RPCkW_>~g#SxuuryNnXpAsJDjykeshkxD!*BypXfW^<%QHwvEa9Ih zx%^m+Jyb4d%HNC;W=LgcFG%Hu z@#mCOLgukp?XS4MP*VA!7;{2Wc>y-}AeGd{@js3cW=Q4x_J&l%DGSUMdGZySD=)}% znB*5qD!(3MPFO0>3aO-C?f+ejFheT;c5g^UoS^{EJNaE;uFzj7sr*HZIbo?hBczgg zwf`S6!VIbW>3~Z`oB;#R#Tm+r7ekAE=m$zBum3oEw;~UTue<;z@rw|TpVBOTDn^$f zlE?M?gK8FQjtjH+MRh^K(O#h+D3Q#@SVN}?isTB2M4m;aS?8x>bQvP~{JkL(W$}ho zmlg^6ffC7Pj5T4A2#Ywi;<^>1%Mi)hfQv*MR>ItU;o?;p$m&d!;4hR=zBZ&Hf#+~tB*1g=ROyyKi7_F>bGR6ig6Dr6 zBgf$RAMOR7L)>nF=i;g2`J>;$HY(K``pj4w-Euxgj=}S@`u#yQC8dS(OmLiwr;6wA zh%q5F&Ywv&&ObLsj=}R6_5#nZ2FJO0s(8K{V?v1M5M`4>w-jRJ7(9P%&mp#1 z^ZWxbCWLvOMxXz+7&!*dzkDz79AcCM`dmC!awqFj; zKk-z_=#OGdpfXbS6xdkz?@u zq<(*(ZCFryRDa3QFP^G#{`MFXLgO6VZz*{Ge2g4}=g;g7o`=@5z#R)c&c7nYgfP$3=$0>wkz?@uOZEWIFTXhM1XBpzBA+VV^6fDu z1b7Z-^l8E-zBNXU!Sj#r4W2*e>vQ1wb9$Wrs~8i)Jcn2N_ILh^7&!*de`as+JfK^E z=crr$ON(x^U)mcy4~=sO9ML>~CB}p>&(nVW zo-gkOo+&03}rmL+UH%0BRy;vcc4Xhe>FyhQSarK<@-KoNfiyv>{JDgk8Y@H z+N$I|;U)b_aqoY``bDSQu~7ouKQI3@Mw7wI|E}Mc6)sYhEBqrR6|02IZiwK*Qo8{~ z%A0VkKt{JyMzr(KlxUv%`$6kAFtB$X8QnG{$F!87(B&FbF701TkH_dU#Po=Me^ABr z1kpST<*n6nW8|e`qf%V;O1^gatrFN&jA3*xJ&AKkN@;9M5+A!`i1#nG&yO{NA+^sN zaH*Yjq}JM~uQ?Md{1YXkTQT-f89nUENRjGaG;1;14AB$^Tr>w(T9v9J3;j$n|HCl` zQ05;TZA-BJx&6TyF$TB4a=^KLSXZHby7?Bmk+Hu}eE;4UD=6O&kLm)|V`-L-?~V~< z@cuh@nfJR<9Zy+syHOqQ7j65c|LS!igv+Y``RjJpU zX&(8V8iKzU8xdp(b}gCwd}k~DcVko-XG8s(6_TqzXNiW z>SpFecy=I0i@~$k>i5%|d4H+6zsuJ6{#%XuU5C~3kz)1RV%;YLbLYUQdM{q~IKt|; z#Aq>C{iXqD^})O4;_Y&cG8-Q%b}z+PK-qn0RKs<#0U``vh*4uO{G9{N@B__ixx7vJ zt)D4&w_*&S>^?ZE!20L*dt$^G+^!8ex3?RWTFc?KdZxJjbuk9G+}1DltxUc)MvTGj zuNiP|A8ZBKjSm&SeL%I`y?8m|B0{i88z42J*EfHQokR4o@9^YvSFgeQ*`(|;?* z2Fmo|Q3+WE$o|>>8!>tew*UHov;FW|r71j49^>sV6zli@1GZUsWK_eZWBzMm6dBC_ zivef;aJd%bz4ctN{^=Ma=%|M+v;bM#qGIR=c#(xKPrIw=krXA6ob!`1J39D<$L84 zHD1&s#p!CS`;^lM;3N^C`e$_|MvKAf^#Nz~f#!Dct~03hGsWzW#27%C4bEE$)<3uZ zMvNGP+g~-{+}?k?Qmr}zTRu{}{zR<%l-CDF)q8!Lh2I~e#bEXK3^=O~3H}saZkwly z;lCPV0%iD+WVitAe|Z0Lj2wgKzc}DL2PIu`j1u)oar-l|?o)0Hy$w+Pv-;0sv>2@Z zlL2S-zGlhU@5m>L(Iel^@0>2TgR zD&Fc_S5L$!F_`?0L1*%|6Up;hc%YcP5$n3kWbsztOfJVLF_^qM;7mRS!Qi=iy){uP zfp3r+A5mJe<^$@MwB6i4-B{zj@&A@=IYH>t+?fQ!^t;F z0^b*729?0kQ2^dR;Qsmlk76Vl{Qs^2=l==8fAG=5wTSuhow8$$d*3QK{M#5)s2om8 zIVb{ENuYmO{F@kAhAe)5z-94pB8!D~wN=@!R>}=WGj;fllFOgQ7)0fA&XUWPMXZ16 z{P!4fhIIaDk4UFhZgrK8^BX0d$G?khg&OGq(C$d*kr;7?bk6Db2h}b;4|6A9Zrmw1 z7V5R~{fRrpN>v0A&~?4zuaty7KgJ|Fe=dmm)070a1i_*q*#8Xrycl_gjNU%rGCGyW zsCZ9`iApE%y^_mXj4@O$r!Bb@?@7_5uz`y)!VHOg;ebm-tnX^pT!VP*mUBSveXFGL z!5CAhH00{9W{HT>1_J%hj<1Z7WysSK;J�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 S40w*K;uDtZ!pb}DDg1xd5t6|G diff --git a/doc/build/doctrees/index.doctree b/doc/build/doctrees/index.doctree deleted file mode 100644 index b529b68d8b58be51c68e77453869987dbb152b2a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7777 zcmeHMTaO$^72eHycW1_Xu{Q}X#H1oH*+e_D&IK8*P$I=aC|a>Z!Nedr^wvz*PW5b0 zSG%ivXT~8SK{#?uA%xNhct8k<6n+2##6JLW5fTy-&phxL3GvQ%sxNcd^##RG5tesm zy82YrsdK(_tv65o;MGsexqo)eSDn-Zp>9RW7do>w8t9A2WbbBAyp_F?ZQA9C_eJ1q z_plK}e$Ww`@yKU}w?mp#4mL5^ECBGiY1DXnQ#YsRz;cI2tSwj^ z@{#bF6bbmF!Dd@D^TDPYOzp#Z)NiZMJ5b6*$_P&zo|tTR&TiAp`#~Z)#>4ckFgklJvvrzeMzNc?DVO(T{iZyG6co*FgF(Y!q~!>gmMX<d9amXqexM>%C(N4SAXQ`v2 zgMfamtJF*?C$o#GIcR=1vkl2ZA$ZpT321|C;Py4Y~few3gLd6d~(dR+vaoJv zREuCW89@ececmAOjm&myc)~7%$Z*hgCz4o;)CVj55GPoN4=`eAz;Yi8n~DnaB28GP zbFKgza50gyd^~SdHa}(nhk7Kp$lDp{86wt@vV=nk=@fR2fLfi6wrUgxNLI6Fm%aQk zvzIRIT>T25sIU4w3dGeHg+4SYzFIlw%iwVQbQKc6n$NuomnVj;M8lxgoCGGVx840!FG3eMG^A+)N6Ddu3uWb)0l z&83nr*akPSp>|51n=**STsDYzH9w8V4}{7o;ecYfbOx_wsk|kJX&da-u?6oYJeHNX zaNHV63dj9dbw)}gIO~ksB8k)JuxTW4lF@<7ZydR3o9K>&&utg;w zc@f8Z59oCgSjzLW>iD)%iG*?h@b%PKYxjtsoCzg=eO!+6mrgKsJ}Vp9;3*ioVPCu- z*qcDZ{aLR-%rEjP0d_yehht3?`8WRRZAR^QZ3XZSu zuH;@47%$xYru^pYOS^HU@NSh;dA@QsK;TKQ$AbC~xcPVC`)|(_h&}*gKdSa#%^CaZ zALi%gs%>xM!6zN~D=&Y64X8F_Bb9EE3(l*!1i$$q3PcPfDs+ArMIPcnqy`a_2sR=i zr_Gsmjdw<`srAPs7jae19pn zQR*<48Y5?;!G!5l$3X|-UFWt7p1?1nlST<^BuWN0KmmqNxO&I2V}bERr6{biMys)> z23w2=J~nQTioLh!6+@MU129F*UPI|-s3`7o9IdY+F>4V$bzKg3hDs%|mRb-Xd_hy}wUDq+N zG;EhbC3;;hdqf^yRXY8ZvxjfmF56*;TlYF!hBDd=%N) zJLEKxX!6)4;I@9rwL*;Earuc|s_2lV*k!8js4hpoZ5wP4Hqb%Qijt-tRlncH6T2*u zJ}Ncz9BS|%`A@ufknM_5Tk*taUzX_Rpy7t1v97D%plPs6=%#d$GopU3qe3lyznuxB zAAC^q+I!R;)GoTp%B51a*5^Ys5UA>0v@69?siJo*_dbmoy(j2ni$1pTAzbR!a5axs zQ8+?Td#W3%cJ>Zp2Xgq{I;ifbQoCMgr8z)a9-|9HL5pJ35#~+Arqg^f-;*mY+)a=! zj8U^XO}bW+%GyLYJ2#7%$#7P@v>PuS?^2fGkHXmrugBni#htzPGQRF1sP(?+=uo7b zZl{P6Xt)HZcPFZ{M~`!iiiW7X0R5H;(!v_-`VKPAoqg2DPR;w{P&|&FkIL73UE;Ke z>b-~XK)o-V91W=)1_E?*J$@!y@vKDY5g zfA7&=x7A_*k!otm&(Uhm}X!Z&jN zm3Iv7>f~y!m$+K>f!*35Un?3@W#1MJU7v0jiq0{0LC`Nm+LQOz$8P`n?qVLH?4QSF z7#yd&26VGopHoG|D5=sbd&>mOb^EoeR(G zT)4=dzVOt=R^w}^U8n`deWYHmZCk8x2JVYKw%0Xv0O_Eruo{3k*ZD zl!iXTRUxVqZ5pVy4Anb%t)~pzFVc~HmS3_3M`E%R`N$ouN>^M^KL0@JDn5x{NWdm= zKHG7tE+t Hears>WV+0J diff --git a/doc/build/doctrees/netscript.doctree b/doc/build/doctrees/netscript.doctree deleted file mode 100644 index 674a4b4499ceeefdfb5258da7f5161d015ab8db3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4452 zcmeHLU29}X8BQk2bf+iX`51S{j~OU0mYsn~XVC>Ece6XI&PJm!aUGWohw5{xyUNt5 zI$KpINectIvbuvMDto*Ze}MP{#0#&z69hpJ1VIo4!9UozQA=XMcIe`WNgpA8DD4wRTE7mRLuPtBzLuo-Ie#2?rOnN`jqeWp`;g zW8=8GBUB~~OI-r>3H+#@R(>-mxoHsGXU|Dx<3EuFsV#H!!9 z;$D>PTIQTk6F{=tU^F&bIi|A8Uw@0r5;hx<2G$t?*Up6%P6yk!g(^yyFqP^I2PMoH zZ4ypZCgGdEUMp07hvg%d0h6g@mNVw6=YCMIA~9^t4Af!f*bjp5iO7-y%i^-~*96?S zVRdOzmPnz_Ahcz30Gqs10%VJ0cGzX1ElUKvHj2t{(4GZ?z!#`XmRydt$sxHF42~#d zOCu{!xO0U)JUF+O?#e_@zT;BM)jC zBvPjo%);_6yA&=YpDS$}Vt?jg3@CEH55fyI)-!hC3h$(x8k&MdwH|N=99^27$iQ;f~X@Kvg8w23$2$VBqK|xe%G-)lnB;u)=~E0^N>~6qc14 zT*)OO*hbnrcIn`9j)Pqz1wCa0mqVOe;0CISsw)#H-{gGj0D`(*XXJ+^=uQx}K$)YU z$Pk4e1fn*v1yj9Q0*0(P_MN2uto-L+KRo>^sAx|!ssuZI$n2TZ#py`6QE3!2C-AWS zItAjVweD$CVTZ;dsRj{+#SGq@FdRVZDznDaIV^vo<^Yo{asY@rzCe+_q-s*qNnm4! zKss-zi4>Ms$h}xC=XAK{2g|77rqbfoPk#ms4TVFMdCQ8>JeJGIohx~DrRZ@|j(o?_ zNhsPCUk$Z-+*JLKT&cqW>Bz^my7}-fU-6ybMQAupewe8LZXk2<8vs0;-}^hO(!u*7jj3Zo&N=cvGB&I(dmmJy+%z=bw4BYI3; zn{#zoH2^&OZ=Kkp^Z`QoaShK8Lsa}bz=gjDw7-YnbNs%K-wzNo;{8!QlOV#4I>IM6 zR##TO#+f2hU6KnU93%CBVnaYp4EIB9Q-bS=Lg?c2cw2<#a149x8c?$W^&P4NC1py& zXu@2;=S_M}Yg0pV!XcP56d~B5jx-0nY&xR^qi4!Glso`Y0z1s4G1!sg!ZEY7j(EoqahY@uVF=#dH2bfF-gXTu^xmm5T%@; zhz8A|fq{!jT`=>>#T@*f*l*GM10o5Qh{zVyj`}F8jSdRxui?tCV#V-X^rjI8X3U%`zAscN%Zzc6A=#?up`M_A z(jxW_zxlZCBK9y=7Jt2wL%s2xFq?#_60O4DZg1_)$K-B%g`XO}au36MFMJM@~6&CTaa>fl7~j85bP-`I1by^?DI9x5yW@F6t9s z*LVkoIKn{h?=*+XAOVvYINN>b?vls#i|v7##HSs!KH6y26$}rm*%lOb$ZOP!lzgsK zvDYrSHEtFmd6PWI&MBTK*`n~ro5SgBcS&iNd;!f3GUOP;2zl_8M~kmVUhf4C&_V=A zUm_=lLhunrQj^DyOxP1lq-w&*-IGU8?$u`u8nfbZrurgzj6PRN+<}`ey4a#-TY)7n z0fL0pdRn{cR19#QKdlIW`an^F0hFa|-g`@OSZeos%avJKxRe zC7v~57T)k%GYW@yMx-MDE&m<=J^us$BmWcsGye&mtfS(v!O-lBMk zM=dpYVB(E$F^R^>Zg=TLKAU$!iu=80qF++z&mZ*laQF=GXlTv;IMH7`EuP+G)-tD#i+&G||3+#8K|@y`rf^F!k(dR&f% F{{(+t^gmf&>_`hjLP`=vvFmou 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 diff --git a/doc/build/doctrees/netscriptbladeburnerapi.doctree b/doc/build/doctrees/netscriptbladeburnerapi.doctree deleted file mode 100644 index f9b1b19e163b0c38606ce032ae8b03f074a37362..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77729 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 U)m?V2kquT#x~#p~`uNcQ2YvO;a{vGU diff --git a/doc/build/doctrees/netscriptdatatypes.doctree b/doc/build/doctrees/netscriptdatatypes.doctree deleted file mode 100644 index efbdad60cf9bfe4824efea2a35404f2feb5f3ea0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10203 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 diff --git a/doc/build/doctrees/netscriptfunctions.doctree b/doc/build/doctrees/netscriptfunctions.doctree deleted file mode 100644 index 2540e9bd6b80fd438754b72b31f8fe3203169203..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 306116 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 diff --git a/doc/build/doctrees/netscripthacknetnodeapi.doctree b/doc/build/doctrees/netscripthacknetnodeapi.doctree deleted file mode 100644 index 2deecc153150a4316731374f007d18abd36f8186..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34011 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 diff --git a/doc/build/doctrees/netscriptixapi.doctree b/doc/build/doctrees/netscriptixapi.doctree deleted file mode 100644 index 5334d13424980b4538884eb1986c11c00a06fb7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51987 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 E2cLc_F8}}l diff --git a/doc/build/doctrees/netscriptjs.doctree b/doc/build/doctrees/netscriptjs.doctree deleted file mode 100644 index 23da6ced5277e8a45cc21114924b6e0884317a6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32071 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 P7Do<}pm>Rxbz1)eYNMK< diff --git a/doc/build/doctrees/netscriptmisc.doctree b/doc/build/doctrees/netscriptmisc.doctree deleted file mode 100644 index 8bc99cf309b5b62a7bf519da28ab5395592ff133..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36900 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 diff --git a/doc/build/doctrees/netscriptoperators.doctree b/doc/build/doctrees/netscriptoperators.doctree deleted file mode 100644 index a71e962396fff7b4dc031c13ec7d03f58bfb9c30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22936 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 YDv`nU1-X>2M`Km1;|A4K4s%og2lFkyFaQ7m diff --git a/doc/build/doctrees/netscriptscriptarguments.doctree b/doc/build/doctrees/netscriptscriptarguments.doctree deleted file mode 100644 index 11484727fc2751ffd4201fd125f9511b7e941a3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5369 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 diff --git a/doc/build/doctrees/shortcuts.doctree b/doc/build/doctrees/shortcuts.doctree deleted file mode 100644 index c34f9b14ed7819899d663cc79fff130b569c4f4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28398 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 ZG9t=jrSHrrV&6X7C5mQ{=dmg9{{d+*woL#4 diff --git a/doc/build/doctrees/terminal.doctree b/doc/build/doctrees/terminal.doctree deleted file mode 100644 index 305c53b75ee823f3f84fa8a68f78bca972d54ca3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50874 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 Technologies) -* Bug Fix: hacknetnodes keyword should no longer incur RAM cost if its in a comment -* Bug Fix: disableLog() now works for the commitCrime() Netscript function (fixed by Github user hydroflame) - -v0.36.0 - 5/2/2018 ------------------- -* Added BN-6: Bladeburners -* Rebalanced many combat Augmentations so that they are slightly less powerful -* Bug Fix: When faction invites are suppressed, an invitation will no longer load the Faction page - - -v0.35.2 - 3/26/2018 -------------------- -* Corporation Changes: - * Fixed an issue with Warehouse upgrade cost. Should now be significantly cheaper than before. - * Scientific Research now has a slightly more significant effect on Product quality - * The Energy and Water Utilities industries are now slightly more profitable - * The Robotics and Computer Hardware industries are now less profitable - * The Software industry is slightly less profitable - * When selling Materials and Products, the 'PROD' qualifier can now be used to set dynamic sell amounts based on your production - * Exporting MAX should now work properly - * You can no longer export past storage limits - * Scientific Research production reduced - * Effects of AdVert. Inc upgrade were reduced, but the effect that popularity and awareness have on sales was increased to compensate (popularity/awareness numbers were getting too big with Advert. Inc) - * Bug Fix: Products from Computer Hardware division should now properly have ratings -* Improved Augmentation UI/UX. Now contains collapsible headers and sort buttons -* Improved Faction Augmentations display UI/UX. Now contains sort buttons. There is also an option to disable confirmation when purchasing Augmentations - -v0.35.1 - 3/12/2018 -------------------- -* You can now easily download all of your scripts/text files as zip folders. Use the 'help download' Terminal command for details -* Scripts are now downloaded with the .script.js extension at the end of their filename -* Corporation Management Changes: - * Implemented Smart Supply unlock - * Changed the way a division's Production Multiplier is calculated. It is now the sum of the individual Production Multiplier for every city. Therefore, it is now beneficial to open offices in different cities - * Several small UI/UX improvements - * Numerous balance changes. The significant ones are listed below. - * Product descriptions will now display their estimated market price - * The sale price of Products can no longer be marked up as high as before - * Scientific Research now affects the rating of Products - * In general, the maximum amount of product you are able to sell is reduced - * Sale bonus from advertising (popularity/awareness) now has diminishing returns rather than scaling linearly -* Experience gained during Infiltration now scales linearly based on the clearance level you reach. Compared to before, the experience gained will be much less at lower clearance levels, but much more at higher clearance levels -* The editor can now be used to edit both scripts and text files -* New Terminal config file that can be edited using the command 'nano .fconf'. Right now there is only one option, but there will be more in the future. -* You can now enable Bash-style Terminal hotkeys using the .fconf file referenced above -* Bug Fix: Fixed an issue with the UI elements of Gang Management persisting across different instances of BitNode-2 - -v0.35.0 - 3/3/2018 ------------------- -* Minor rebalancing of BitNodes due to the fact that Corporations provide a (relatively) new method of progressing -* Corporation Management Changes: - * Once your Corporation gets big/powerful enough, you can now bribe Factions for reputation using company funds an/or stock shares - * You can now only create one Division for every Industry type - * Added several new UI/UX elements - * Wilson Analytics multiplier was significantly reduced to 1% per level (additive). - * Reduced the effect of Advert Inc upgrade. Advert Inc. upgrade price increases faster - * Materials can now be marked up at higher prices -* Added Javascript's built-in Number object to Netscript -* Added getCharacterInformation(), getCompanyFavor(), and getFactionFavor() Netscript Singularity functions -* Rebalanced Singularity Function RAM Costs. They now cost x8 as much when outside of BN-4 (rather than x10). Also, many of the functions now use significantly less RAM -* Refactored Netscript Ports. You can now get a handle for a Netscript port using the getPortHandle() Netscript function. This allows you to access a port's underlying queue (which is just an array) and also makes several new functions available such as tryWrite(), full(), and empty(). -* Number of Netscript Ports increased from 10 to 20 -* Netscript assignments should now return proper values. i.e. i = 5 should return 5. -* Added throw statements to Netscript. It's not super useful since 'catch' isn't implemented, but it can be used to generate custom runtime error messages. -* Added import declaration to Netscript. With this, you are able to import functions (and only functions) from other files. Using export declarations is not necessary -* Most Netscript Runtime errors (the ones that cause your script to crash) should now include the line number where the error occured -* When working for a company, your current company reputation is now displayed -* Whenever you get a Faction Invite it will be immediately appended to your 'invited factions' list. Therefore the checkFactionInvitations() Singularity Function should now be properly useable since you no longer need to decline a Faction Invitation before it shows up in the result. -* Bug Fix: When purchasing servers, whitespace should now automatically be removed from the hostname -* Bug Fix: Can no longer have whitespace in the filename of text files created using write() -* Bug Fix: In Netscript, you can no longer assign a Hacknet Node handle (hacknetnodes[i]) to another value -* Bug Fix: If you are in the Factions tab when you accept an invitation from a Faction, the page will now properly 'refresh' -* Bug Fix: Scripts that run recursive functions should now be killed properly - - -v0.34.5 - 2/24/2018 -------------------- -* Corporation Management Changes: - * Market Research unlocks are now cheaper - * New 'VeChain' upgrade: displays useful statistics about Corporation - * Corporation cycles are processed 25% faster - * Corporation valuation was lowered by ~10% (this affects stock price and investments) - * Rebalanced the effects of advertising. Should now be more effective for every Industry - * Fixed several bugs/exploits involving selling and buying back stock shares - * You will now receive a Corporation Handbook (.lit file) when starting out BitNode-3. It contains a brief guide to help you get started. This same handbook can be viewed from the Corporation management screen - * Slightly decreased the amount by which a Product's sell price can be marked up - * Employees can now be assigned to a 'Training' task, during which they will slowly increase several of their stats -* Hopefully fixed an exploit with Array.forEach(). If there are any issues with using forEach, let me know -* Arguments passed into a script are now passed by value. This means modifying the 'args' array in a script should no longer cause issues -* Scripts executed programatically (via run(), exec(), etc.) will now fail if null/undefined is passed in as an argument -* Added peek() Netscript function -* killall() Netscript function now returns true if any scripts were killed, and false otherwise. -* hack() Netscript function now returns the amount of money gained for successful hacks, and 0 for failed hacks -* scp Terminal command and Netscript function now work for txt files -* Changes courtesy of Wraithan: - * Text files are now displayed using 'pre' rather than 'p' elements when using the 'cat' Terminal command. This means tabs are retained and lines don't automatically wrap - * ls() Netscript function now returns text files as well -* Removed round() Netscript function, since you can just use Math.round() instead -* Added disableLog() and enableLog() Netscript functions -* Removed the 'log' argument from sleep(), since you can now use the new disableLog function -* 'Netscript Documentation' button on script editor now points to new readthedocs documentation rather than wiki -* When working for a faction, your current faction reputation is now displayed -* Bug Fix: Hacking Missions should no longer break when dragging an existing connection to another Node -* Bug Fix: Fixed RAM usage of getNextHacknetNodeCost() (is not 1.5GB instead of 4GB) - - -v0.34.4 - 2/14/2018 -------------------- -* Added several new features to Gang UI to make it easier to manage your Gang. -* Changed the Gang Member upgrade mechanic. Now, rather than only being able to have one weapon/armor/vehicle/etc., you can purchase all the upgrades for each Gang member and their multipliers will stack. To balance this out, the effects (AKA multipliers) of each Gang member upgrade were reduced. -* Added a new script editor option: Max Error Count. This affects how many approximate lines the script editor will process (JSHint) for common errors. Increasing this option can affect negatively affect performance -* Game theme colors (set using 'theme' Terminal command) are now saved when re-opening the game -* 'download' Terminal command now works on scripts -* Added stopAction() Singularity function and the spawn() Netscript function -* The 'Purchase Augmentations' UI screen will now tell you if you need a certain prerequisite for Augmentations. -* Augmentations with prerequisites can now be purchased as long as their prerequisites are puchased (before, you had to actually install the prerequisites before being able to purchase) - -v0.34.3 - 1/31/2018 -------------------- -* Minor balance changes to Corporations: - * Upgrades are generally cheaper and/or have more powerful effects. - * You will receive more funding while your are a private company. - * Product demand decreases at a slower rate. - * Production multiplier for Industries (receives for owning real estate/hardware/robots/etc.) is slightly higher -* Accessing the hacknetnodes array in Netscript now costs 4.0GB of RAM (only counts against RAM usage once) -* Bug Fix: Corporation oustanding shares should now be numeric rather than a string -* Bug Fix: Corporation production now properly calculated for industries that dont produce materials. -* Bug Fix: Gangs should now properly reset when switching BitNodes -* Bug Fix: Corporation UI should now properly reset when you go public - -v0.34.2 - 1/27/2018 -------------------- -* Corporation Management Changes: - * Added advertising mechanics - * Added Industry-specific purchases - * Re-designed employee management UI - * Rebalancing: Made many upgrades/purchases cheaper. Receive more money from investors in early stage. Company valuation is higher after going public - * Multiple bug fixes -* Added rm() Netscript function -* Updated the way script RAM usage is calculated. Now, a function only increases RAM usage the first time it is called. i.e. even if you call hack() multiple times in a script, it only counts against RAM usage once. The same change applies for while/for loops and if conditionals. -* The RAM cost of the following were increased: - * If statements: increased by 0.05GB - * run() and exec(): increased by 0.2GB - * scp(): increased by 0.1GB - * purchaseServer(): increased by 0.25GB -* Note: You may need to re-save all of your scripts in order to re-calculate their RAM usages. Otherwise, it should automatically be re-calculated when you reset/prestige -* The cost to upgrade your home computer's RAM has been increased (both the base cost and the exponential upgrade multiplier) -* The cost of purchasing a server was increased by 10% (it is now $55k per RAM) -* Bug fix: (Hopefully) removed an exploit where you could avoid RAM usage for Netscript function calls by assigning functions to a variable (foo = hack(); foo('helios');) -* Bug fix: (Hopefully) removed an exploit where you could run arbitrary Javascript code using the constructor() method -* Thanks to Github user mateon1 and Reddit users havoc_mayhem and spaceglace for notifying me of the above exploits -* The fileExists() Netscript function now works on text files (.txt). Thanks to Github user devoidfury for this - - -v0.34.1 - 1/19/2018 -------------------- -* Updates to Corporation Management: - * Added a number of upgrades to various aspects of your Corporation - * Rebalanced the properties of Materials and the formula for determining the valuation of the Corporation - * Fixed a number of bugs -* 'Stats' page now shows information about current BitNode -* You should now be able to create Corporations in other BitNodes if you have Source-File 3 -* Added a new create-able program called b1t_flum3.exe. This program can be used to reset and switch BitNodes -* Added an option to adjust autosave interval -* Line feeds, newlines, and tabs will now work with the tprint() Netscript function -* Bug fix: 'check' Terminal command was broken -* Bug fix: 'theme' Terminal command was broken when manually specifying hex codes -* Bug fix: Incorrect promotion requirement for 'Business'-type jobs -* Bug fix: Settings input bars were incorrectly formatted when loading game - - -v0.34.0 - 12/6/2017 -------------------- -* Added clear() and exit() Netscript functions -* When starting out or prestiging, you will now receive a 'Hacking Starter Guide'. It provides tips/pointers for new players -* Doubled the amount of RAM on low-level servers (up to required hacking level 150) -* Slightly increased experience gain from Infiltration -* buyStock(), sellStock(), shortStock(), and sellShort() Netscript function now return the stock price at which the transaction occurred, rather than a boolean. If the function fails for some reason, 0 will be returned. -* Hacking Mission Changes: - * You can now select multiple Nodes of the same type by double clicking. This allows you to set the action of all of selected nodes at once (e.g. set all Transfer Nodes to Fortify). Creating connections does not work with this multi-select functionality yet - * Shield and Firewall Nodes can now fortify - * The effects of Fortifying are now ~5% lower - * Conquering a Spam Node now increases your time limit by 25 seconds instead of 15 - * Damage dealt by Attacking was slightly reduced - * The effect of Scanning was slightly reduced - * Enemy CPU Core Nodes start with slightly more attack. Misc Nodes start with slightly less defense -* Corporation Management changes: - * Added several upgrades that unlock new features - * Implemented Exporting mechanic - * Fixed many bugs - -v0.33.0 - 12/1/2017 -------------------- -* Added BitNode-3: Corporatocracy. In this BitNode you can start and manage your own corporation. This feature is incomplete. Much more will be added to it in the near future -* Minor bug fixes - -v0.32.1 - 11/2/2017 -------------------- -* Updated Netscript's 'interpreter/engine' to use the Bluebird promise library instead of native promises. It should now be faster and more memory-efficient. If this has broken any Netscript features please report it through Github or the subreddit (reddit.com/r/bitburner) -* Rebalanced stock market (adjusted parameters such as the volatility/trends/starting price of certain stocks) -* Added prompt() Netscript function -* Added 'Buy Max' and 'Sell All' functions to Stock Market UI -* Added 'Portfolio' Mode to Stock Market UI so you can only view stocks you have a position/order in -* Added a button to kill a script from its log display box - - -v0.32.0 - 10/25/2017 --------------------- -* Added BitNode-8: Ghost of Wall Street -* Re-designed Stock Market UI -* Minor bug fixes - -v0.31.0 - 10/15/2017 --------------------- -* Game now saves to IndexedDb (if your browser supports it). This means you should no longer have trouble saving the game when your save file gets too big (from running too many scripts). The game will still be saved to localStorage as well -* New file type: text files (.txt). You can read or write to text files using the read()/write() Netscript commands. You can view text files in Terminal using 'cat'. Eventually I will make it so you can edit them in the editor but that's not available yet. You can also download files to your real computer using the 'download' Terminal command -* Added a new Crime: Bond Forgery. This crime takes 5 minutes to attempt and gives $4,500,000 if successful. It is meant for mid game. -* Added commitCrime(), getCrimeChance(), isBusy(), and getStats() Singularity Functions. -* Removed getIntelligence() Netscript function -* Added sprintf and vsprintf to Netscript. See [https://github.com/alexei/sprintf.js this Github page for details] -* Increased the amount of money gained from Infiltration by 20%, and the amount of faction reputation by 12% -* Rebalanced BitNode-2 so that Crime and Infiltration are more profitable but hacking is less profitable. Infiltration also gives more faction rep -* Rebalanced BitNode-4 so that hacking is slightly less profitable -* Rebalanced BitNode-5 so that Infiltration is more profitable and gives more faction rep -* Rebalanced BitNode-11 so that Crime and Infiltration are more profitable. Infiltration also gives more faction rep. -* Fixed an annoying issue in Hacking Missions where sometimes you would click a Node but it wouldnt actually get selected -* Made the Hacking Mission gameplay a bit slower by lowering the effect of Scan and reducing Attack damage -* Slightly increased the base reputation gain rate for factions when doing Field Work and Security Work - -v0.30.0 - 10/9/2017 -------------------- -* Added getAugmentations() and getAugmentationsFromFaction() Netscript Singularity Functions -* Increased the rate of Intelligence exp gain -* Added a new upgrade for home computers: CPU Cores. Each CPU core on the home computer grants an additional starting Core Node in Hacking Missions. I may add in other benefits later. Like RAM upgrades, upgrading the CPU Core on your home computer persists until you enter a new BitNode. -* Added lscpu Terminal command to check number of CPU Cores -* Changed the effect of Source-File 11 and made BitNode-11 a little bit harder -* Fixed a bug with Netscript functions (the ones you create yourself) -* Hacking Missions officially released (they give reputation now). Notable changes in the last few updates: - * Misc Nodes slowly gain hp/defense over time - * Conquering a Misc Node will increase the defense of all remaining Misc Nodes that are not being targeted by a certain percentage - * Reputation reward for winning a Mission is now affected by faction favor and Player's faction rep multiplier - * Whenever a Node is conquered, its stats are reduced - -v0.29.3 - 10/3/2017 -------------------- -* Fixed bug for killing scripts and showing error messages when there are errors in a player-defined function -* Added function name autocompletion in Script Editor. Press Ctrl+space on a prefix to show autocompletion options. -* Minor rebalancing and bug fixes for Infiltration and Hacking Missions - -v0.29.2 - 10/1/2017 -------------------- -* installAugmentations() Singularity Function now takes a callback script as an argument. This is a script that gets ran automatically after Augmentations are installed. The script is run with no arguments and only a single thread, and must be found on your home computer. -* Added the ability to create your own functions in Netscript. See [[Netscript Functions|this link]] for details -* Added :q, :x, and :wq Vim Ex Commands when using the Vim script editor keybindings. :w, :x, and :wq will all save the script and return to Terminal. :q will quit (return to Terminal) WITHOUT saving. If anyone thinks theres an issue with this please let me know, I don't use Vim -* Added a new Augmentation: ADR-V2 Pheromone Gene -* In Hacking Missions, enemy nodes will now automatically target Nodes and perform actions. -* Re-balanced Hacking Missions through minor tweaking of many numbers -* The faction reputation reward for Hacking Missions was slightly increased - -v0.29.1 - 9/27/2017 -------------------- -* New gameplay feature that is currently in BETA: Hacking Missions. Hacking Missions is an active gameplay mechanic (its a minigame) that is meant to be used to earn faction reputation. However, since this is currently in beta, hacking missions will NOT grant reputation for the time being, since the feature likely has many bugs, balance problems, and other issues. If you have any feedback regarding the new feature, feel free to let me know -* CHANGED THE RETURN VALUE OF getScriptIncome() WHEN RAN WITH NO ARGUMENTS. It will now return an array of two values rather than a single value. This may break your scripts, so make sure to update them! -* Added continue statement for for/while loops -* Added getServerMinSecurityLevel(), getPurchasedServers(), and getTimeSinceLastAug() Netscript functions -* Netscript scp() function can now take an array as the first argument, and will try to copy every file specified in the array (it will just call scp() normally for every element in the array). If an array is passed in, then the scp() function returns true if at least one element from the array is successfully copied -* Added Javascript's Date module to Netscript. Since 'new' is not supported in Netscript yet, only the Date module's static methods will work (now(), UTC(), parse(), etc.). -* Failing a crime now gives half the experience it did before -* The forced repeated 'Find The-Cave' message after installing The Red Pill Augmentation now only happens if you've never destroyed a BitNode before, and will only popup every 15 minutes. If you have already destroyed a BitNode, the message will not pop up if you have messages suppressed (if you don't have messages suppressed it WILL still repeatedly popup) -* fileExists() function now works on literature files - -v0.29.0 - 9/19/2017 -------------------- -* Added BitNode-5: Artificial Intelligence -* Added getIp(), getIntelligence(), getHackingMultipliers(), and getBitNodeMultipliers() Netscript functions (requires Source-File 5) -* Updated scan() Netscript function so that you can choose to have it print IPs rather than hostnames -* Refactored scp() Netscript function so that it takes an optional 'source server' argument -* For Infiltration, decreased the percentage by which the security level increases by about 10% for every location -* Using :w in the script editor's Vim keybinding mode should now save and quit to Terminal -* Some minor optimizations that should reduce the size of the save file -* scan-analyze Terminal command will no longer show your purchased servers, unless you pass a '-a' flag into the command -* After installing the Red Pill augmentation from Daedalus, the message telling you to find 'The-Cave' will now repeatedly pop up regardless of whether or not you have messages suppressed -* Various bugfixes - -v0.28.6 - 9/15/2017 -------------------- -* Time required to create programs now scales better with hacking level, and should generally be much faster -* Added serverExists(hostname/ip) and getScriptExpGain(scriptname, ip, args...) Netscript functions -* Short circuiting && and || logical operators should now work -* Assigning to multidimensional arrays should now work -* Scripts will no longer wait for hack/grow/weaken functions to finish if they are killed. They will die immediately -* The script loop that checks whether any scripts need to be started/stopped now runs every 6 seconds rather than 10 (resulting in less delays when stopping/starting scripts) -* Fixed several bugs/exploits -* Added some description for BitNode-5 (not implemented yet, should be soon though) - -v0.28.5 - 9/13/2017 -------------------- -* The fl1ght.exe program that is received from jump3r is now sent very early on in the game, rather than at hacking level 1000 -* Hostname is now displayed in Terminal -* Syntax highlighting now works for all Netscript functions -* Export should now work on Edge/IE - -v0.28.4 - 9/11/2017 -------------------- -* Added getScriptIncome() Netscript function -* Added Javascript's math module to Netscript. See [https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math this link for details] -* Added several member variables for the Hacknet Node API that allow you to access info about their income -* All valid Netscript functions are now syntax highlighted as keywords in the editor. This means they will a different color than invalid netscript functions. The color will depend on your theme. Note that right now, this only applies for normal Netscript functions, not functions in the TIX API, Hacknet Node API, or Singularity Functions. -* Comments and operators no longer count towards RAM usage in scripts. -* Variety of bug fixes and updates to informational text in the game - -v0.28.3 - 9/7/2017 ------------------- -* Added ls() Netscript function -* Increased company wages by about ~10% across the board -* The scp() Netsction function and Terminal command now works for .lit files -* Increased the amount of RAM on many lower level servers (up to level 200 hacking level required). - -v0.28.2 - 9/4/2017 ------------------- -* Added several configuration options for script editor (key bindings, themes, etc.) -* Certain menu options will now be hidden until their relevant gameplay is unlocked. This includes the Factions, Augmentations, Create Program, Travel, and Job tabs. This will only affect newer players. -* Most unrecognize or un-implemented syntax errors in Netscript will now include the line number in the error message - -v0.28.1 - 9/1/2017 ------------------- -* The script editor now uses the open-source Ace editor, which provides a much better experience when coding! -* Added tprint() Netscript function - -v0.28.0 - 8/30/2017 -------------------- -* Added BitNode-4: The Singularity -* Added BitNode-11: The Big Crash -* Migrated the codebase to use webpack (doesn't affect any in game content, except maybe some slight performance improvements and there may be bugs that result from dependency errors - -v0.27.3 - 8/19/2017 -------------------- -* You can now purchase upgrades for Gang Members (BitNode 2 only) -* Decreased Gang respect gains and slightly increased wanted gains (BitNode 2 only) -* Other gangs will increase in power faster (BitNode 2 only) -* Added getHackTime(), getGrowTime(), and getWeakenTime() Netscript functions - -v0.27.2 - 8/18/2017 -------------------- -* Added getServerGrowth() Netscript function -* Added getNextHacknetNodeCost() Netscript function -* Added new 'literature' files (.lit extension) that are used to build lore for the game. These .lit files can be found in certain servers throughout the game. They can be viewed with the 'cat' Terminal command and copied over to other servers using the 'scp' command. These .lit files won't be found until you reset by installing Augmentations -* Fixed some bugs with Gang Territory(BitNode 2 only) - -v0.27.1 - 8/15/2017 -------------------- -* Changed the way Gang power was calculated to make it scale better late game (BitNode 2 only) -* Lowered the respect gain rate in Gangs (Bitnode 2 only) -* Added '| grep pattern' option for ls Terminal command. This allows you to only list files that contain a certain pattern -* Added break statement in Netscript -* Display for some numerical values is now done in shorthand (e.g 1.000m instead of 1,000,000) - -v0.27.0 - 8/13/2017 -------------------- -* Added secondary 'prestige' system - featuring Source Files and BitNodes -* MILD SPOILERS HERE: Installing 'The Red Pill' Augmentation from Daedalus will unlock a special server called w0r1d_d43m0n. Finding and manually hacking this server through Terminal will destroy the Player's current BitNode, and allow the player to enter a new one. When destroying a BitNode, the player loses everything except the scripts on his/her home computer. The player will then gain a powerful second-tier persistent upgrade called a Source File. The player can then enter a new BitNode to start the game over. Each BitNode has different characteristics, and many will have new content/mechanics as well. Right now there are only 2 BitNodes. Each BitNode grants its own unique Source File. Restarting and destroying a BitNode you already have a Source File for will upgrade your Source File up to a maximum level of 3. - -* Reputation gain with factions and companies is no longer a linear conversion, but an exponential one. It will be much easier to gain faction favor at first, but much harder later on. -* Significantly increased Infiltration exp gains -* Fixed a bug with company job requirement tooltips -* Added scriptRunning(), scriptKill(), and getScriptRam() Netscript functions. See documentation for details -* Fixed a bug with deleteServer() Netscript function - -v0.26.4 - 8/1/2017 ------------------- -* All of the 'low-level servers' in early game that have a required hacking level now have 8GB of RAM instead of 4GB -* Increased the amount of experience given at university -* Slightly increased the production of Hacknet Nodes and made them cheaper to upgrade -* Infiltration now gives slightly more EXP and faction reputation -* Added two new crimes. These crimes are viable to attempt early on in the game and are relatively passive (each take 60+ seconds to complete) -* Crimes give more exp and more money -* Max money available on a server decreased from 50x the server's starting money to 25x -* Significantly increased wages for all jobs - -v0.26.3 -------- -* Added support for large numbers using Decimal.js. Right now it only applies for the player's money -* Purchasing servers with the Netscript function purchaseServer() is no longer 2x as expensive as doing manually it now costs the same -* Early game servers have more starting money - -v0.26.2 -------- -* Major rebalancing and randomization of the amount of money that servers start with -* Significantly lowered hacking exp gain from hacking servers. The exp gain for higher-level servers was lowered more than that of low level servers. (~16% for lower level servers, up to ~25% for higher-level servers) -* Added deleteServer() Netscript function -* You can now purchase a maximum of 25 servers each run (Deleting a server will allow you to purchase a new one) -* Added autocompletion for './' Terminal command -* Darkweb prices now displayed properly using toLocaleString() -* Added NOT operator (!) and negation operator(-) in Netscript, so negative numbers should be functional now -* Rejected faction invitations will now show up as 'Outstanding Faction Invites' in the Factions page. These can be accepted at any point in the future -* Added a few more configurable game settings for suppressing messages and faction invitations -* Added tooltips for company job requirements - -v0.26.1 -------- -* Added autocompletion for aliases -* Added getServerRam() Netscript function() -* Added getLevelUpgradeCost(n), getRamUpgradeCost(), getCoreUpgradeCost() functions for Netscript Hacknet Node API -* Added some configurable settings (See Game Options menu) - - -v0.26.0 -------- -* Game now has a real ending, although it's not very interesting/satisfying right now. It sets up the framework for the secondary prestige system in the future -* Forgot to mention that since last update, comments now work in Netscript. Use // for single line comments or /* and */ for multiline comments just like in Javascript -* Added ports to Netscript. These ports are essentially serialized queues. You can use the write() Netscript function to write a value to a queue, and then you can use the read() Netscript function to read the value from the queue. Once you read a value from the queue it will be removed. There are only 10 queues (1-10), and each has a maximum capacity of 50 entries. If you try to write to a queue that is full, the the first value is removed. See wiki/Netscript documentation for more details -* You can now use the 'help' Terminal command for specific commands -* You can now use './' to run a script/program (./NUKE.exe). However, tab completion currently doesn't work for it (I'm working on it) -* Decreased the base growth rate of servers by ~25% -* Both the effect of weaken() and its time to execute were halved. In other words, calling weaken() on a server only lowers its security by 0.05 (was 0.1 before) but the time to execute the function is half of what it was before. Therefore, the effective rate of weaken() should be about the same -* Increased all Infiltration rewards by ~10%, and increased infiltration rep gains by an additional 20% (~32% total for rep gains) -* The rate at which the security level of a facility increases during Infiltration was decreased significantly (~33%) -* Getting treated at the Hospital is now 33% more expensive -* Slightly increased the amount of time it takes to hack a server -* Slightly decreased the amount of money gained when hacking a server (~6%) -* Slightly decreased the base cost for RAM on home computer, but increased the cost multiplier. This means that upgrading RAM on the home computer should be slightly cheaper at the start, but slightly more expensive later on -* Increased the required hacking level for many late game servers -* The sleep() Netscript function now takes an optional 'log' argument that specifies whether or not the 'Sleeping for N milliseconds' will be logged for the script -* Added clearLog() Netscript function -* Deleted a few stocks. Didn't see a reason for having so many, and it just affects performance. Won't take effect until you reset by installing Augmentations -* There was a typo with Zeus Medical's server hostname. It is now 'zeus-med' rather than 'zeud-med' -* Added keyboard shortcuts to quickly navigate between different menus. See wiki link (http://bitburner.wikia.com/wiki/Shortcuts) -* Changed the Navigation Menu UI - -v0.25.0 -------- -* Refactored Netscript to use the open-source Acorns Parser. This re-implementation was done by [https://github.com/MrNuggelz Github user MrNuggelz]. This has resulted in several changes in the Netscript language. Some scripts might break because of these changes. Changes listed below:  -* Arrays are now fully functional Javascript arrays. You no longer need to use the 'Array' keyword to declare them.  -* The length(), clear/clear(), insert(), and remove() functions no longer work for arrays.  -* All Javascript array methods are available (splice(), push(), pop(), join(), shift(), indexOf(), etc. See documentation) -* Variables assigned to arrays are now passed by value rather than reference - -* Incrementing/Decrementing are now available (i++, ++i) - -* You no longer need semicolons at the end of block statements - -* Elif is no longer valid. Use 'else if' instead - -* Netscript's Hacknet Node API functions no longer log anything -* Stock prices now update every ~6 seconds when the game is active (was 10 seconds before) -* Added a new mechanic that affects how stock prices change -* Script editor now has dynamic indicators for RAM Usage and Line number -* Augmentation Rebalancing - Many late game augmentations are now slightly more expensive. Several early game augmentations had their effects slightly decreased -* Increased the amount of rewards (both money and rep) you get from infiltration -* Purchasing servers is now slightly more expensive -* Calling the Netscript function getServerMoneyAvailable('home') now return's the player's money -* Added round(n) Netscript function - Rounds a number -* Added purchaseServer(hostname, ram) Netscript function -* Added the TIX API. This must be purchased in the WSE. It persists through resets. Access to the TIX API allows you to write scripts that perform automated algorithmic trading. See Netscript documentation -* Minor rebalancing in a lot of different areas -* Changed the format of IP Addresses so that they are smaller (will consist mostly of single digit numbers now). This will reduce the size of the game's save file. - -v0.24.1 -------- -* Adjusted cost of upgrading home computer RAM. Should be a little cheaper for the first few upgrades (up to ~64GB), and then will start being more expensive than before. High RAM upgrades should now be significantly more expensive than before. -* Slightly lowered the starting money available on most mid-game and end-game servers (servers with required hacking level greater than 200) by about 10-15% -* Rebalanced company/company position reputation gains and requirements -* Studying at a university now gives slightly more EXP and early jobs give slightly less EXP -* Studying at a university is now considerably more expensive -* Rebalanced stock market -* Significantly increased cost multiplier for purchasing additional Hacknet Nodes -* The rate at which facility security level increases during infiltration for each clearance level was lowered slightly for all companies -* Updated Faction descriptions -* Changed the way alias works. Normal aliases now only work at the start of a Terminal command (they will only replace the first word in the Terminal command). You can also create global aliases that work on any part of the command, like before. Declare global aliases by entering the optional -g flag: alias -g name="value" - [https://github.com/MrNuggelz Courtesy of Github user MrNuggelz] -* 'top' Terminal command implemented courtesy of [https://github.com/LTCNugget Github user LTCNugget]. Currently, the formatting gets screwed up if your script names are really long. - -v0.24.0 -------- -* Players now have HP, which is displayed in the top right. To regain HP, visit the hospital. Currently the only way to lose HP is through infiltration -* Infiltration - Attempt to infiltrate a company and steal their classified secrets. See 'Companies' documentation for more details -* Stock Market - Added the World Stock Exchange (WSE), a brokerage that lets you buy/sell stocks. To begin trading you must first purchase an account. A WSE account will persist even after resetting by installing Augmentations. How the stock market works should hopefully be self explanatory. There is no documentation about it currently, I will add some later. NOTE: Stock prices only change when the game is open. The Stock Market is reset when installing Augmentations, which means you will lose all your stocks -* Decreased money gained from hacking by ~12% -* Increased reputation required for all Augmentations by ~40% -* Cost increase when purchasing multiple augmentations increased from 75% to 90% -* Added basic variable runtime to Netscript operations. Basic commands run in 100ms. Any function incurs another 100ms in runtime (200ms total). Any function that starts with getServer incurs another 100ms runtime (300ms total). exec() and scp() require 400ms total.  -* Slightly reduced the amount of experience gained from hacking - -v0.23.1 -------- -* scan() Netscript function now takes a single argument representing the server from which to scan.  - -v0.23.0 -------- -* You can now purchase multiple Augmentations in a run. When you purchase an Augmentation you will lose money equal to the price and then the cost of purchasing another Augmentation during this run will be increased by 75%. You do not gain the benefits of your purchased Augmentations until you install them. This installation can be done through the 'Augmentation' tab. When you install your Augmentations, your game will reset like before.  -* Reputation needed to gain a favor from faction decreased from 7500 to 6500 -* Reputation needed to gain a favor from company increased from 5000 to 6000 -* Reputation cost of all Augmentations increased by 16% -* Higher positions at companies now grant slightly more reputation for working -* Added getServerMaxMoney() Netscript function -* Added scan() Netscript function -* Added getServerNumPortsRequired() Netscript function -* There is now no additional RAM cost incurred when multithreading a script - -v0.22.1 -------- -* You no longer lose progress on creating programs when cancelling your work. Your progress will be saved and you will pick up where you left off when you start working on it again -* Added two new programs: AutoLink.exe and ServerProfiler.exe -* Fixed bug with Faction Field work reputation gain - -v0.22.0 - Major rebalancing, optimization, and favor system ------------------------------------------------------------ -* Significantly nerfed most augmentations -* Almost every server with a required hacking level of 200 or more now has slightly randomized server parameters. This means that after every Augmentation purchase, the required hacking level, base security level, and growth factor of these servers will all be slightly different -* The hacking speed multiplier now increases rather than decreases. The hacking time is now divided by your hacking speed multiplier rather than multiplied. In other words, a higher hacking speed multiplier is better -* Servers now have a minimum server security, which is approximately one third of their starting ('base') server security -* If you do not steal any money from a server, then you gain hacking experience equal to the amount you would have gained had you failed the hack -* The effects of grow() were increased by 50% -* grow() and weaken() now give hacking experience based on the server's base security level, rather than a flat exp amount -* Slightly reduced amount of exp gained from hack(), weaken(), and grow() -* Rebalanced formulas that determine crime success -* Reduced RAM cost for multithreading a script. The RAM multiplier for each thread was reduced from 1.02 to 1.005 -* Optimized Script objects so they take less space in the save file -* Added getServerBaseSecurityLevel() Netscript function -* New favor system for companies and factions. Earning reputation at a company/faction will give you favor for that entity when you reset after installing an Augmentation. This favor persists through the rest of the game. The more favor you have, the faster you will earn reputation with that faction/company -* You can no longer donate to a faction for reputation until you have 150 favor with that faction -* Added unalias Terminal command -* Changed requirements for endgame Factions - -v0.21.1 -------- -* IF YOUR GAME BREAKS, DO THE FOLLOWING: Options -> Soft Reset -> Save Game -> Reload Page. Sorry about that!  -* Autocompletion for aliases - courtesy of [https://github.com/LTCNugget Github user LTCNugget] - -v0.21.0 -------- -* Added dynamic arrays. See Netscript documentation -* Added ability to pass arguments into scripts. See documentation -* The implementation/function signature of functions that deal with scripts have changed. Therefore, some old scripts might not work anymore. Some of these functions include run(), exec(), isRunning(), kill(), and some others I may have forgot about. Please check the updated Netscript documentation if you run into issues.-Note that scripts are now uniquely identified by the script name and their arguments. For example, you can run a script using:: - - run foodnstuff.script 1 - -and you can also run the same script with a different argument:: - - run foodnstuff.script 2 - -These will be considered two different scripts. To kill the first script you must run:: - - kill foodnstuff.script 1 - -and to kill the second you must run:: - - kill foodnstuff.script 2 - -Similar concepts apply for Terminal Commands such as tail, and Netscript commands such as run(), exec(), kill(), isRunning(), etc. - -* Added basic theme functionality using the 'theme' Terminal command - All credit goes to /u/0x726564646974 who implemented the awesome feature -* Optimized Script objects, which were causing save errors when the player had too many scripts -* Formula for determining exp gained from hacking was changed -* Fixed bug where you could purchase Darkweb items without TOR router -* Slightly increased cost multiplier for Home Computer RAM -* Fixed bug where you could hack too much money from a server (and bring its money available below zero) -* Changed tail command so that it brings up a display box with dynamic log contents. To get old functionality where the logs are printed to the Terminal, use the new 'check' command -* As a result of the change above, you can no longer call tail/check on scripts that are not running -* Added autocompletion for buying Programs in Darkweb - -v0.20.2 -------- -* Fixed several small bugs -* Added basic array functionality to Netscript -* Added ability to run scripts with multiple threads. Running a script with n threads will multiply the effects of all hack(), grow(), and weaken() commands by n. However, running a script with multiple threads has drawbacks in terms of RAM usage. A script's ram usage when it is 'multithreaded' is calculated as: base cost * numThreads * (1.02 ^ numThreads). A script can be run multithreaded using the 'run [script] -t n' Terminal command or by passing in an argument to the run() and exec() Netscript commands. See documentation. -* RAM is slightly (~10%) more expensive (affects purchasing server and upgrading RAM on home computer) -* NeuroFlux Governor augmentation cost multiplier decreased -* Netscript default operation runtime lowered to 200ms (was 500ms previously) - -v0.20.1 -------- -* Fixed bug where sometimes scripts would crash without showing the error -* Added Deepscan programs to Dark Web -* Declining a faction invite will stop you from receiving invitations from that faction for the rest of the run -* (BETA) Added functionality to export/import saves. WARNING This is only lightly tested. You cannot choose where to save your file it just goes to the default save location. Also I have no idea what will happen if you try to import a file that is not a valid save. I will address these in later updates - -v0.20.0 -------- -* Refactored Netscript Interpreter code. Operations in Netscript should now run significantly faster (Every operation such as a variable assignment, a function call, a binary operator, getting a variable's value, etc. used to take up to several seconds, now each one should only take ~500 milliseconds).  -* Percentage money stolen when hacking lowered to compensate for faster script speeds -* Hacking experience granted by grow() halved -* Weaken() is now ~11% faster, but only grants 3 base hacking exp upon completion instead of 5  -* Rebalancing of script RAM costs. Base RAM Cost for a script increased from 1GB to 1.5GB. Loops, hack(), grow() and weaken() all cost slightly less RAM than before  -* Added getServerRequiredHackingLevel(server) Netscript command.  -* Added fileExists(file, [server]) Netscript command, which is used to check if a script/program exists on a specified server -* Added isRunning(script, [server]) Netscript command, which is used to check if a script is running on the specified server -* Added killall Terminal command. Kills all running scripts on the current machine -* Added kill() and killall() Netscript commands. Used to kill scripts on specified machines. See Netscript documentation -* Re-designed 'Active Scripts' tab -* Hacknet Node base production rate lowered from 1.6 to 1.55 ($/second) -* Increased monetary cost of RAM (Upgrading home computer and purchasing servers will now be more expensive) -* NEW GROWTH MECHANICS - The rate of growth on a server now depends on a server's security level. A higher security level will result in lower growth on a server when using the grow() command. Furthermore, calling grow() on a server raises that server's security level by 0.004. For reference, if a server has a security level of 10 it will have approximately the same growth rate as before.  -* Server growth no longer happens naturally -* Servers now have a maximum limit to their money. This limit is 50 times it's starting money -* Hacking now grants 10% less hacking experience -* You can now edit scripts that are running -* Augmentations cost ~11% more money and 25% more faction reputation - -v0.19.7 -------- -* Added changelog to Options menu -* Bug fix with autocompletion (wasn't working properly for capitalized filenames/programs - -v0.19.6 -------- -* Script editor now saves its state even when you change tabs  -* scp() command in Terminal/script will now overwrite files at the destination  -* Terminal commands are no longer case-sensitive (only the commands themselves such as 'run' or 'nano'. Filenames are still case sensitive -* Tab automcompletion will now work on commands - -v0.19.0 -------- -* Hacknet Nodes have slightly higher base production, and slightly increased RAM multiplier. But they are also a bit more expensive at higher levels -* Calling grow() and weaken() in a script will now work offline, at slower rates than while online (The script now keeps track of the rate at which grow() and weaken() are called when the game is open. These calculated rates are used to determine how many times the calls would be made while the game is offline) -* Augmentations now cost 20% more reputation and 50% more money -* Changed the mechanic for getting invited to the hacking factions (CyberSec, NiteSec, The Black Hand, BitRunners) Now when you get to the required level to join these factions you will get a message giving you instructions on what to do in order to get invited. -* Added a bit of backstory/plot into the game. It's not fully fleshed out yet but it will be used in the future -* Made the effects of many Augmentations slightly more powerful -* Slightly increased company job wages across the board (~5-10% for each position) -* Gyms and classes are now significantly more expensive -* Doubled the amount by which a server's security increases when it is hacked. Now, it will increase by 0.002. Calling weaken() on a server will lower the security by 0.1. - -v0.18.0 -------- -* Major rebalancing (sorry didn't record specifics. But in general hacking gives more money and hacknet nodes give less) -* Server growth rate (both natural and manual using grow()) doubled -* Added option to Soft Reset -* Cancelling a full time job early now only results in halved gains for reputation. Exp and money earnings are gained in full -* Added exec() Netscript command, used to run scripts on other servers.  -* NEW HACKING MECHANICS: Whenever a server is hacked, its 'security level' is increased by a very small amount. The security level is denoted by a number between 1-100. A higher security level makes it harder to hack a server and also decreases the amount of money you steal from it. Two Netscript functions, weaken() and getServerSecurityLevel() level, were added. The weaken(server) function lowers a server's security level. See the Netscript documentation for more details -* When donating to factions, the base rate is now $1,000,000 for 1 reputation point. Before, it was $1,000 for 1 reputation point. -* Monetary costs for all Augmentations increased. They are now about ~3.3 - 3.75 times more expensive than before - -v0.17.1 -------- -* Fixed issue with purchasing Augmentations that are 'upgrades' and require previous Augmentations to be installed -* Increased the percentage of money stolen from servers when hacking - -v0.17.0 -------- -* Greatly increased amount of money gained for crimes (by about 400% for most crimes) -* Criminal factions require slightly less negative karma to get invited to -* Increased the percentage of money stolen from servers when hacking -* Increased the starting amount of money available on beginning servers (servers with <50 required hacking)) -* Increased the growth rate of servers (both naturally and manually when using the grow() command in a script) -* Added getHostname() command in Netscript that returns the hostname of the server a script is running on -* jQuery preventDefault() called when pressing ctrl+b in script editor -* The Neuroflux Governor augmentation (the one that can be repeatedly leveled up) now increases ALL multipliers by 1%. To balance it out, it's price multiplier when it levels up was increased -* Hacknet Node base production decreased from $1.75/s to $1.65/s -* Fixed issue with nested for loops in Netscript (stupid Javascript references) -* Added 'scp' command to Terminal and Netscript -* Slightly nerfed Hacknet Node Kernel DNI and Hacknet Node Core DNI Augmentations -* Increased TOR Router cost to $200k - -v0.16.0 -------- -* New Script Editor interface  -* Rebalanced hacknet node - Increased base production but halved the multiplier from additional cores. This should boost its early-game production but nerf its late-game production -* Player now starts with 8GB of RAM on home computer -* 'scan-analyze' terminal command displays RAM on servers -* Slightly buffed the amount of money the player steals when hacking servers (by about ~8%) -* Time to execute grow() now depends on hacking skill and server security, rather than taking a flat 2 minutes. -* Clicking outside of a pop-up dialog box will now close it -* BruteSSH.exe takes 33% less time to create -* 'iron-gym' and 'max-hardware' servers now have 2GB of RAM -* Buffed job salaries across the board -* Updated Tutorial -* Created a Hacknet Node API for Netscript that allows you to access and upgrade your Hacknet Nodes. See the Netscript documentation for more details. WARNING The old upgradeHacknetNode() and getNumHacknetNodes() functions waere removed so any script that has these will no longer work  - -v0.15.0 -------- -* Slightly reduced production multiplier for Hacknet Node RAM -* Faction pages now scroll -* Slightly increased amount of money gained from hacking -* Added 'alias' command -* Added 'scan-analyze' terminal command - used to get basic hacking info about all immediate network connections -* Fixed bugs with upgradeHacknetNode() and purchaseHacknetNode() commands -* Added getNumHacknetNodes() and hasRootAccess(hostname/ip) commands to Netscript -* Increased Cost of university classes/gym -* You can now see what an Augmentation does and its price even while its locked diff --git a/doc/build/html/_sources/index.rst.txt b/doc/build/html/_sources/index.rst.txt deleted file mode 100644 index f71bf236c..000000000 --- a/doc/build/html/_sources/index.rst.txt +++ /dev/null @@ -1,33 +0,0 @@ -.. Bitburner documentation master file, created by - sphinx-quickstart on Wed Oct 4 15:03:07 2017. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - -Welcome to Bitburner's documentation! -===================================== -Bitburner is a cyberpunk-themed `incremental game `_ that is currently in the -early beta stage of development. The game `can be played here `_. - -What is Bitburner? ------------------- -Bitburner is a cyberpunk-themed incremental RPG where you, the player, take the role of an unknown hacker in a dark, dystopian world. -When a mysterious hacker called jump3R messages you, he/she confirms your suspicions that there is something wrong with the world around you. -Now, aided by jump3R, you embark on a quest to gain money and power by any means necessary, in the hopes that this will lead to to uncover the -secrets that you've been searching for. - -.. toctree:: - :maxdepth: 5 - :caption: Contents: - - Netscript - Terminal - Keyboard Shortcuts - Changelog - - -Indices and tables -================== - -* :ref:`genindex` -* :ref:`modindex` -* :ref:`search` diff --git a/doc/build/html/_sources/netscript.rst.txt b/doc/build/html/_sources/netscript.rst.txt deleted file mode 100644 index 934e7f6c6..000000000 --- a/doc/build/html/_sources/netscript.rst.txt +++ /dev/null @@ -1,28 +0,0 @@ -Netscript Documentation -======================= -Netscript is the programming language used in the world of Bitburner. - -When you write scripts in Bitburner, they are written in the Netscript language. -Netscript is simply a tiny subset of Javascript. This means that Netscript's -syntax is almost idental to Javascript's, but it does not implement many of the -features that Javascript has. - -If you have any requests or suggestions to improve the Netscript language, feel free -to reach out to the developer! - -.. toctree:: - :maxdepth: 5 - :caption: Sections: - - NetscriptJS (Netscript 2.0) - Data Types and Variables - Operators - Loops and Conditionals - Script Arguments - Basic Functions - Advanced Functions - Hacknet Node API - Trade Information eXchange (TIX) API - Singularity Functions - Bladeburner API - Miscellaneous diff --git a/doc/build/html/_sources/netscriptadvancedfunctions.rst.txt b/doc/build/html/_sources/netscriptadvancedfunctions.rst.txt deleted file mode 100644 index e71ebd2b6..000000000 --- a/doc/build/html/_sources/netscriptadvancedfunctions.rst.txt +++ /dev/null @@ -1,45 +0,0 @@ -Netscript Advanced Functions -============================ - -These Netscript functions become relevant later on in the game. They are put on a separate page because -they contain spoilers for the game. - -getBitNodeMultipliers -^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getBitNodeMultipliers() - - Returns an object containing the current BitNode multipliers. This function requires Source-File 5 in order - to run. The multipliers are returned in integer forms (e.g. 1.5 instead of 150%). The multipliers represent - the difference between the current BitNode and the original BitNode (BitNode-1). For example, if the - *CrimeMoney* multiplier has a value of 0.1, then that means that committing crimes in the current BitNode - will only give 10% of the money you would have received in BitNode-1. The object has the following structure, - (subject to change in the future):: - - { - ServerMaxMoney: 1, - ServerStartingMoney: 1, - ServerGrowthRate: 1, - ServerWeakenRate: 1, - ServerStartingSecurity: 1, - ManualHackMoney: 1, - ScriptHackMoney: 1, - CompanyWorkMoney: 1, - CrimeMoney: 1, - HacknetNodeMoney: 1, - CompanyWorkExpGain: 1, - ClassGymExpGain: 1, - FactionWorkExpGain: 1, - HackExpGain: 1, - CrimeExpGain: 1, - FactionWorkRepGain: 1, - FactionPassiveRepGain: 1, - AugmentationRepCost: 1, - AugmentationMoneyCost: 1, - } - - Example:: - - mults = getBitNodeMultipliers(); - print(mults.ServerMaxMoney); - print(mults.HackExpGain); diff --git a/doc/build/html/_sources/netscriptbladeburnerapi.rst.txt b/doc/build/html/_sources/netscriptbladeburnerapi.rst.txt deleted file mode 100644 index 2faf8b12e..000000000 --- a/doc/build/html/_sources/netscriptbladeburnerapi.rst.txt +++ /dev/null @@ -1,460 +0,0 @@ -Netscript Bladeburner API -========================= - -Netscript provides the following API for interacting with the game's Bladeburner mechanic. - -The Bladeburner API is **not** immediately available to the palyer and must be unlocked -later in the game - -**WARNING: This page contains spoilers for the game** - -The Bladeburner API is unlocked in BitNode-7. If you are in BitNode-7, you will -automatically gain access to this API. Otherwise, you must have Source-File 7 in -order to use this API in other BitNodes - -**Bladeburner API functions must be accessed through the bladeburner namespace** - -In Netscript 1.0:: - - bladeburner.getContractNames(); - bladeburner.startAction("general", "Training"); - -In :ref:`netscriptjs`:: - - ns.bladeburner.getContractNames(); - ns.bladeburner.startAction("general", "Training"); - -.. _bladeburner_action_types: - -Bladeburner Action Types ------------------------- - -Several functions in the Bladeburner API require you to specify an action using -its type and name. The following are valid values when specifying the action's type: - -**Contracts** - * contract - * contracts - * contr - -**Operations** - * operation - * operations - * op - * ops - -**Black Ops** - * blackoperation - * black operation - * black operations - * black op - * black ops - * blackop - * blackops - -**General Actions (Training, Field Analysis, Recruitment)** - * general - * general action - * gen - -getContractNames ----------------- - -.. js:function:: getContractNames() - - Returns an array of strings containing the names of all Bladeburner contracts - -getOperationNames ------------------ - -.. js:function:: getOperationNames() - - Returns an array of strings containing the names of all Bladeburner operations - -getBlackOpNames ---------------- - -.. js:function:: getBlackOpNames() - - Returns an array of strings containing the names of all Bladeburner Black Ops - -getGeneralActionNames ---------------------- - -.. js:function:: getGeneralActionNames() - - Returns an array of strings containing the names of all general Bladeburner actions - -getSkillNames -------------- - -.. js:function:: getSkillNames() - - Returns an array of strings containing the names of all Bladeburner skills - -startAction ------------ - -.. js:function:: startAction(type, name) - - :param string type: Type of action. See :ref:`bladeburner_action_types` - :param string name: Name of action. Must be an exact match - - Attempts to start the specified Bladeburner action. Returns true if the action - was started successfully, and false otherwise. - -stopBladeburnerAction ---------------------- - -.. js:function:: stopBladeburnerAction() - - Stops the current Bladeburner action - -getActionTime -------------- - -.. js:function:: getActionTime(type, name) - - :param string type: Type of action. See :ref:`bladeburner_action_types` - :param string name: Name of action. Must be an exact match - - Returns the number of seconds it takes to complete the specified action - -getActionEstimatedSuccessChance -------------------------------- - -.. js:function:: getActionEstimatedSuccessChance(type, name) - - :param string type: Type of action. See :ref:`bladeburner_action_types` - :param string name: Name of action. Must be an exact match - - Returns the estimated success chance for the specified action - -getActionCountRemaining ------------------------ - -.. js:function:: getActionCountRemaining(type, name) - - :param string type: Type of action. See :ref:`bladeburner_action_types` - :param string name: Name of action. Must be an exact match - - Returns the remaining count of the specified action. - - Note that this is meant to be used for Contracts and Operations. - This function will return 'Infinity' for actions such as Training and Field Analysis. - -getRank -------- - -.. js:function:: getRank() - - Returns the player's Bladeburner Rank - -getSkillPoints --------------- - -.. js:function:: getSkillPoints() - - Returns the number of Bladeburner skill points you have - -getSkillLevel -------------- - -.. js:function:: getSkillLevel(skillName="") - - :param string skillName: Optional name of Skill. Empty string by default - - If no argument or an empty string is passed in, this function returns - an object with your level for all Bladeburner Skills (only for skills that - have at least one level). In the object, the name of the Bladeburner Skills - are the keys and your skill levels are the values. For example:: - - { - "Blade's Intuition": 10, - "Cloak": 5, - "Evasive System": 6 - } - - If the name of a skill is passed in as an argument, then this function - returns your level in the specified skill. - - The function returns -1 if an invalid skill name is passed in - -upgradeSkill ------------- - -.. js:function:: upgradeSkill(skillName) - - :param string skillName: Name of Skill to be upgraded. Must be an exact match - - Attempts to upgrade the specified Bladeburner skill. Returns true if the - skill is successfully upgraded, and false otherwise - -getTeamSize ------------ - -.. js:function:: getTeamSize(type, name) - - :param string type: Type of action. See :ref:`bladeburner_action_types` - :param string name: Name of action. Must be an exact match - - Returns the number of Bladeburner team members you have assigned to the - specified action. - - Setting a team is only applicable for Operations and BlackOps. This function - will return 0 for other action types. - -setTeamSize ------------ - -.. js:function:: setTeamSize(type, name, size) - - :param string type: Type of action. See :ref:`bladeburner_action_types` - :param string name: Name of action. Must be an exact match - :param int size: Number of team members to set. Will be converted using Math.round() - - Set the team size for the specified Bladeburner action. - - Returns the team size that was set, or -1 if the function failed. - -getCityEstimatedPopulation --------------------------- - -.. js:function:: getCityEstimatedPopulation(cityName) - - :param string cityName: Name of city. Case-sensitive - - Returns the estimated number of Synthoids in the specified city, or -1 - if an invalid city was specified. - -getCityEstimatedCommunities ---------------------------- - -.. js:function:: getCityEstimatedCommunities(cityName) - - :param string cityName: Name of city. Case-sensitive - - Returns the estimated number of Synthoid communities in the specified city, - or -1 if an invalid city was specified. - -getCityChaos ------------- - -.. js:function:: getCityChaos(cityName) - - :param string cityName: Name of city. Case-sensitive - - Returns the chaos in the specified city, or -1 if an invalid city was specified - -switchCity ----------- - -.. js:function:: switchCity(cityName) - - :param string cityName: Name of city - - Attempts to switch to the specified city (for Bladeburner only). - - Returns true if successful, and false otherwise - -getStamina ----------- - -.. js:function:: getStamina() - - Returns an array with two elements: - - [Current stamina, Max stamina] - - Example usage:: - - function getStaminaPercentage() { - let res = bladeburner.getStamina(); - return res[0] / res[1]; - } - -joinBladeburnerFaction ----------------------- - -.. js:function:: joinBladeburnerFaction() - - Attempts to join the Bladeburner faction. - - Returns true if you successfully join the Bladeburner faction, or if - you are already a member. - - Returns false otherwise. - -joinBladeburnerDivision ------------------------ - -.. js:function:: joinBladeburnerDivision() - - Attempts to join the Bladeburner division. - - Returns true if you successfully join the Bladeburner division, or if you - are already a member. - - Returns false otherwise - -Examples --------- - -**Basic example usage**:: - - tprint(bladeburner.getContractNames()); - tprint(bladeburner.getOperationNames()); - tprint(bladeburner.getBlackOpNames()); - tprint(bladeburner.getGeneralActionNames()); - tprint(bladeburner.getSkillNames()); - tprint(bladeburner.getActionTime("contract", "Tracking")); - tprint("Rank: " + bladeburner.getRank()); - tprint("Skill Points: " + bladeburner.getSkillPoints()); - tprint("Cloak Skill Level: " + bladeburner.getSkillLevel("Cloak")); - tprint("Trying to upgradeSkill: " + bladeburner.upgradeSkill("Cloak")); - tprint("Skill Points remaining: " + bladeburner.getSkillPoints()); - - tprint("Trying to switch to a nonexistent city: " + bladeburner.switchCity("lskgns")); - - var chongqing = "Chongqing"; - tprint("Trying to switch to Chongqing: " + bladeburner.switchCity(chongqing)); - tprint("Chongqing chaos: " + bladeburner.getCityChaos(chongqing)); - tprint("Chongqing estimated pop: " + bladeburner.getCityEstimatedPopulation(chongqing)); - tprint("Chonqging estimated communities: " + bladeburner.getCityEstimatedCommunities(chongqing)); - -**Bladeburner handler example**. Note that this avoids the need of using the *bladeburner* namespace -identifier by attaching the Bladeburner API functions to an object:: - - const FIELD_ANALYSIS_INTERVAL = 10; //Number of minutes between field analysis states - const FIELD_ANALYSIS_DURATION = 5; //Duration in minutes - - function BladeburnerHandler(ns, params) { - //Netscript environment becomes part of the instance - this.ns = ns; - - //Netscript bladeburner API becomes part of this instance - for (var bladeburnerFn in ns.bladeburner) { - this[bladeburnerFn] = ns.bladeburner[bladeburnerFn]; - } - - this.fieldAnalysis = { - inProgress: params.startFieldAnalysis ? true : false, - cyclesRemaining: params.startFieldAnalysis ? FIELD_ANALYSIS_DURATION : 0, - cyclesSince: params.startFieldAnalysis ? FIELD_ANALYSIS_INTERVAL : 0, - } - } - - - - BladeburnerHandler.prototype.getStaminaPercentage = function() { - var res = this.getStamina(); - return 100 * (res[0] / res[1]); - } - - BladeburnerHandler.prototype.hasSimulacrum = function() { - var augs = this.ns.getOwnedAugmentations(); - return augs.includes("The Blade's Simulacrum"); - } - - BladeburnerHandler.prototype.handle = function() { - //If we're doing something else manually (without Simlacrum), - //it overrides Bladeburner stuff - if (!this.hasSimulacrum() && this.ns.isBusy()) { - this.ns.print("Idling bc player is busy with some other action"); - return; - } - - if (this.fieldAnalysis.inProgress) { - --(this.fieldAnalysis.cyclesRemaining); - if (this.fieldAnalysis.cyclesRemaining < 0) { - this.fieldAnalysis.inProgress = false; - this.fieldAnalysis.cyclesSince = 0; - return this.handle(); - } else { - this.startAction("general", "Field Analysis"); - this.ns.print("handler is doing field analyis for " + - (this.fieldAnalysis.cyclesRemaining+1) + " more mins"); - return 31; //Field Analysis Time + 1 - } - } else { - ++(this.fieldAnalysis.cyclesSince); - if (this.fieldAnalysis.cyclesSince > FIELD_ANALYSIS_INTERVAL) { - this.fieldAnalysis.inProgress = true; - this.fieldAnalysis.cyclesRemaining = FIELD_ANALYSIS_DURATION; - return this.handle(); - } - } - - this.stopBladeburnerAction(); - - var staminaPerc = this.getStaminaPercentage(); - if (staminaPerc < 55) { - this.ns.print("handler is starting training due to low stamina percentage"); - this.startAction("general", "Training"); - return 31; //Training time + 1 - } else { - var action = this.chooseAction(); - this.ns.print("handler chose " + action.name + " " + action.type + " through chooseAction()"); - this.startAction(action.type, action.name); - return (this.getActionTime(action.type, action.name) + 1); - } - } - - BladeburnerHandler.prototype.chooseAction = function() { - //Array of all Operations - var ops = this.getOperationNames(); - - //Sort Operations in order of increasing success chance - ops.sort((a, b)=>{ - return this.getActionEstimatedSuccessChance("operation", a) - - this.getActionEstimatedSuccessChance("operation", b); - }); - - //Loop through until you find one with 99+% success chance - for (let i = 0; i < ops.length; ++i) { - let successChance = this.getActionEstimatedSuccessChance("operation", ops[i]); - let count = this.getActionCountRemaining("operation", ops[i]); - if (successChance >= 0.99 && count > 10) { - return {type: "operation", name: ops[i]}; - } - } - - //Repeat for Contracts - var contracts = this.getContractNames(); - contracts.sort((a, b)=>{ - return this.getActionEstimatedSuccessChance("contract", a) - - this.getActionEstimatedSuccessChance("contract", b); - }); - - for (let i = 0; i < contracts.length; ++i) { - let successChance = this.getActionEstimatedSuccessChance("contract", contracts[i]); - let count = this.getActionCountRemaining("contract", contracts[i]); - if (successChance >= 0.80 && count > 10) { - return {type: "contract", name: contracts[i]}; - } - } - - return {type:"general", name:"Training"}; - } - - - BladeburnerHandler.prototype.process = async function() { - await this.ns.sleep(this.handle() * 1000); - } - - export async function main(ns) { - //Check if Bladeburner is available. This'll throw a runtime error if it's not - ns.bladeburner.getContractNames(); - - var startFieldAnalysis = true; - if (ns.args.length >= 1 && ns.args[0] == "false") { - startFieldAnalysis = false; - } - - var handler = new BladeburnerHandler(ns, { - startFieldAnalysis: startFieldAnalysis - }); - while(true) { - await handler.process(); - } - } diff --git a/doc/build/html/_sources/netscriptdatatypes.rst.txt b/doc/build/html/_sources/netscriptdatatypes.rst.txt deleted file mode 100644 index a230fee0e..000000000 --- a/doc/build/html/_sources/netscriptdatatypes.rst.txt +++ /dev/null @@ -1,44 +0,0 @@ -Netscript Data Types and Variables -================================== - - -Data Types ----------- -Netscript supports three primitive data types: - -**Numbers** - Positive numerics, such as integers and floats. Examples: 6, 0, 10.5 - -**Strings** - A sequence of characters that represents text. The characters must be encapsulated by single or -double quotes. Example: "This is a string" or equivalently 'This is a string'. -*Strings are fully functional* `Javascript strings `_, -*which means that all of the member functions of Javascript strings such as toLowerCase() and includes() are also available in Netscript!* - -**Boolean** - true or false - -**Array** - An array is a special container object that is capable of holding many different values. Arrays are simply Javascript -arrays, and most Javascript array methods can be used in Netscript as well (join(), pop(), splice(), etc.). You can read more about -`Javascript arrays here `_ - -Variables ---------- - -Variables can be thought of as named containers. Their purpose is to label and store data. The data stored in the -variable can then be accessed and changed by referring to the variable's name. The name of a variable must start with -either a letter or an underscore. The rest of the variable name can contain any alphanumeric (letters and numbers), -as well as hyphens and underscores. - -The Netscript language is untyped, meaning that any variable can hold any of the data types above. The value type of a variable -can also change. For example, if a variable initially holds a number, it can later hold a string. - -The following shows how you can declare and initialize variables:: - - i = 1; - s = "This is a string"; - b = false; - -After declaring a variable, the values in variables can be used simply by referencing the name. For example:: - - j = i + 5; - s2 = s + " Adding more letters onto the string" - -The first command above will store the value 6 in the variable j. The second command will store the string "This is a string Adding more letters onto the string" into the variable s2. diff --git a/doc/build/html/_sources/netscriptfunctions.rst.txt b/doc/build/html/_sources/netscriptfunctions.rst.txt deleted file mode 100644 index d2443c0da..000000000 --- a/doc/build/html/_sources/netscriptfunctions.rst.txt +++ /dev/null @@ -1,1030 +0,0 @@ -Netscript Basic Functions -========================= - -This page contains the complete documentation for all functions that are available in Netscript. -This includes information such as function signatures, what they do, and their return values. - -At the end is also a section that describes how to define your own functions in Netscript. - -hack -^^^^ - -.. js:function:: hack(hostname/ip) - - :param string hostname/ip: IP or hostname of the target server to hack - :returns: The amount of money stolen if the hack is successful, and zero otherwise - - Function that is used to try and hack servers to steal money and gain hacking experience. The runtime for this command depends - on your hacking level and the target server's security level. In order to hack a server you must first gain root access - to that server and also have the required hacking level. - - A script can hack a server from anywhere. It does not need to be running on the same server to hack that server. For example, - you can create a script that hacks the 'foodnstuff' server and run that script on any server in the game. - - A successful hack() on a server will raise that server's security level by 0.002. - - Example:: - - hack("foodnstuff"); - hack("10.1.2.3"); - -grow -^^^^ - -.. js:function:: grow(hostname/ip) - - :param string hostname/ip: IP or hostname of the target server to grow - :returns: The number by which the money on the server was multiplied for the growth - - Use your hacking skills to increase the amount of money available on a server. The runtime for this command depends on your hacking - level and the target server's security level. When grow() completes, the money available on a target server will be increased by a - certain, fixed percentage. This percentage is determined by the target server's growth rate (which varies between servers) and security level. - Generally, higher-level servers have higher growth rates. The getServerGrowth() function can be used to obtain a server's growth rate. - - Like hack(), grow() can be called on any server, regardless of where the script is running. The grow() command requires - root access to the target server, but there is no required hacking level to run the command. It also raises the security level - of the target server by 0.004. - - Example:: - - grow("foodnstuff"); - -weaken -^^^^^^ - -.. js:function:: weaken(hostname/ip) - - :param string hostname.ip: IP or hostname of the target server to weaken - :returns: The amount by which the target server's security level was decreased. This is equivalent to 0.05 multiplied - by the number of script threads - - Use your hacking skills to attack a server's security, lowering the server's security level. The runtime for this command - depends on your hacking level and the target server's security level. This function lowers the security level of the target - server by 0.05. - - Like hack() and grow(), weaken() can be called on any server, regardless of where the script is running. This command requires - root access to the target server, but there is no required hacking level to run the command. - - Example:: - - weaken("foodnstuff"); - -sleep -^^^^^ - -.. js:function:: sleep(n) - - :param number n: Number of milliseconds to sleep - - Suspends the script for n milliseconds. - -print -^^^^^ - -.. js:function:: print(x) - - :param x: Value to be printed - - Prints a value or a variable to the script's logs. - -tprint -^^^^^^ - -.. js:function:: tprint(x) - - :param x: Value to be printed - - Prints a value or a variable to the Terminal - -clearLog -^^^^^^^^ - -.. js:function:: clearLog() - - Clears the script's logs - -disableLog -^^^^^^^^^^ - -.. js:function:: disableLog(fn) - - :param string fn: Name of function for which to disable logging - - Disables logging for the given function. Logging can be disabled for - all functions by passing 'ALL' as the argument. - - Note that this does not completely remove all logging functionality. - This only stops a function from logging - when the function is successful. If the function fails, it will still log the reason for failure. - - Notable functions that cannot have their logs disabled: run, exec, exit - -enableLog -^^^^^^^^^ - -.. js:function:: enableLog(fn) - - :param string fn: Name of function for which to enable logging - - Re-enables logging for the given function. If 'ALL' is passed into this function - as an argument, then it will revert the effects of disableLog('ALL') - -scan -^^^^ - -.. js:function:: scan(hostname/ip[, hostnames=true]) - - :param string hostname/ip: IP or hostname of the server to scan - :param boolean: Optional boolean specifying whether the function should output hostnames (if true) or IP addresses (if false) - - Returns an array containing the hostnames or IPs of all servers that are one node way from the specified target server. The - hostnames/IPs in the returned array are strings. - -nuke -^^^^ - -.. js:function:: nuke(hostname/ip) - - :param string hostname/ip: IP or hostname of the target server - - Runs the NUKE.exe program on the target server. NUKE.exe must exist on your home computer. - - Example:: - - nuke("foodnstuff"); - -brutessh -^^^^^^^^ - -.. js:function:: brutessh(hostname/ip) - - :param string hostname/ip: IP or hostname of the target server - - Runs the BruteSSH.exe program on the target server. BruteSSH.exe must exist on your home computer. - - Example:: - - brutessh("foodnstuff"); - -ftpcrack -^^^^^^^^ - -.. js:function:: ftpcrack(hostname/ip) - - :param string hostname/ip: IP or hostname of the target server - - Runs the FTPCrack.exe program on the target server. FTPCrack.exe must exist on your home computer. - - Example:: - - ftpcrack("foodnstuff"); - -relaysmtp -^^^^^^^^^ - -.. js:function:: relaysmtp(hostname/ip) - - :param string hostname/ip: IP or hostname of the target server - - Runs the relaySMTP.exe program on the target server. relaySMTP.exe must exist on your home computer. - - Example:: - - relaysmtp("foodnstuff"); - -httpworm -^^^^^^^^ - -.. js:function:: httpworm(hostname/ip) - - :param string hostname/ip: IP or hostname of the target server - - Runs the HTTPWorm.exe program on the target server. HTTPWorm.exe must exist on your home computer. - - Example:: - - httpworm("foodnstuff"); - -sqlinject -^^^^^^^^^ - -.. js:function:: sqlinject(hostname/ip) - - :param string hostname/ip: IP or hostname of the target server - - Runs the SQLInject.exe program on the target server. SQLInject.exe must exist on your home computer. - - Example:: - - sqlinject("foodnstuff"); - -run -^^^ - -.. js:function:: run(script, [numThreads=1], [args...]) - - :param string script: Filename of script to run - :param number numThreads: Optional thread count for new script. Set to 1 by default. Will be rounded to nearest integer - :param args...: - Additional arguments to pass into the new script that is being run. Note that if any arguments are being - passed into the new script, then the second argument *numThreads* must be filled in with a value. - - Run a script as a separate process. This function can only be used to run scripts located on the current server (the server - running the script that calls this function). - - Returns true if the script is successfully started, and false otherwise. Requires a significant amount of RAM to run this - command. - - The simplest way to use the *run* command is to call it with just the script name. The following example will run - 'foo.script' single-threaded with no arguments:: - - run("foo.script"); - - The following example will run 'foo.script' but with 5 threads instead of single-threaded:: - - run("foo.script", 5); - - This next example will run 'foo.script' single-threaded, and will pass the string 'foodnstuff' into the script - as an argument:: - - run("foo.script", 1, 'foodnstuff'); - -exec -^^^^ - -.. js:function:: exec(script, hostname/ip, [numThreads=1], [args...]) - - :param string script: Filename of script to execute - :param string hostname/ip: IP or hostname of the 'target server' on which to execute the script - :param number numThreads: Optional thread count for new script. Set to 1 by default. Will be rounded to nearest integer - :param args...: - Additional arguments to pass into the new script that is being run. Note that if any arguments are being - passed into the new script, then the third argument *numThreads* must be filled in with a value. - - Run a script as a separate process on a specified server. This is similar to the *run* function except - that it can be used to run a script on any server, instead of just the current server. - - Returns true if the script is successfully started, and false otherwise. - - The simplest way to use the *exec* command is to call it with just the script name and the target server. - The following example will try to run *generic-hack.script* on the *foodnstuff* server:: - - exec("generic-hack.script", "foodnstuff"); - - The following example will try to run the script *generic-hack.script* on the *joesguns* server with 10 threads:: - - exec("generic-hack.script", "joesguns", 10); - - This last example will try to run the script *foo.script* on the *foodnstuff* server with 5 threads. It will also pass - the number 1 and the string "test" in as arguments to the script:: - - exec("foo.script", "foodnstuff", 5, 1, "test"); - -spawn -^^^^^ - -.. js:function:: spawn(script, numThreads, [args...]) - - :param string script: Filename of script to execute - :param number numThreads: Number of threads to spawn new script with. Will be rounded to nearest integer - :param args...: - Additional arguments to pass into the new script that is being run. - - Terminates the current script, and then after a delay of about 20 seconds it will execute the newly-specified script. - The purpose of this function is to execute a new script without being constrained by the RAM usage of the current one. - This function can only be used to run scripts on the local server. - - Because this function immediately terminates the script, it does not have a return value. - - The following example will execute the script 'foo.script' with 10 threads and the arguments 'foodnstuff' and 90:: - - spawn('foo.script', 10, 'foodnstuff', 90); - -kill -^^^^ - -.. js:function:: kill(script, hostname/ip, [args...]) - - :param string script: Filename of the script to kill - :param string hostname/ip: IP or hostname of the server on which to kill the script - :param args...: Arguments to identify which script to kill - - Kills the script on the target server specified by the script's name and arguments. Remember that scripts - are uniquely identified by both their name and arguments. For example, if *foo.script* is run with the argument 1, then this - is not the same as *foo.script* run with the argument 2, even though they have the same code. - - If this function successfully kills the specified script, then it will return true. Otherwise, it will return false. - - Examples: - - The following example will try to kill a script named *foo.script* on the *foodnstuff* server that was ran with no arguments:: - - kill("foo.script", "foodnstuff"); - - The following will try to kill a script named *foo.script* on the current server that was ran with no arguments:: - - kill("foo.script", getHostname()); - - The following will try to kill a script named *foo.script* on the current server that was ran with the arguments 1 and "foodnstuff":: - - kill("foo.script", getHostname(), 1, "foodnstuff"); - -killall -^^^^^^^ - -.. js:function:: killall(hostname/ip) - - :param string hostname/ip: IP or hostname of the server on which to kill all scripts - - Kills all running scripts on the specified server. This function returns true if any scripts were killed, and - false otherwise. In other words, it will return true if there are any scripts running on the target server. - - -exit -^^^^ - -.. js:function:: exit() - - Terminates the current script immediately - -scp -^^^ - -.. js:function:: scp(files, [source], destination) - - :param string/array files: Filename or an array of filenames of script/literature files to copy - :param string source: - Hostname or IP of the source server, which is the server from which the file will be copied. - This argument is optional and if it's omitted the source will be the current server. - :param string destination: Hostname or IP of the destination server, which is the server to which the file will be copied. - - Copies a script or literature (.lit) file(s) to another server. The *files* argument can be either a string specifying a - single file to copy, or an array of strings specifying multiple files to copy. - - Returns true if the script/literature file is successfully copied over and false otherwise. If the *files* argument is an array - then this function will return true if at least one of the files in the array is successfully copied. - - Examples:: - - //Copies hack-template.script from the current server to foodnstuff - scp("hack-template.script", "foodnstuff"); - - //Copies foo.lit from the helios server to the home computer - scp("foo.lit", "helios", "home"); - - //Tries to copy three files from rothman-uni to home computer - files = ["foo1.lit", "foo2.script", "foo3.script"]; - scp(files, "rothman-uni", "home"); - -ls -^^ - -.. js:function:: ls(hostname/ip, [grep]) - - :param string hostname/ip: Hostname or IP of the target server - :param string grep: a substring to search for in the filename - - Returns an array with the filenames of all files on the specified server (as strings). The returned array - is sorted in alphabetic order - -ps -^^ - -.. js:function:: ps(hostname/ip=current ip) - - :param string ip: Hostname or IP address of the target server. - If not specified, it will be the current server's IP by default - - Returns an array with general information about all scripts running on the specified - target server. The information for each server is given in an object with - the following structure:: - - { - filename: Script name, - threads: Number of threads script is running with, - args: Script's arguments - } - - Example usage (using :doc:`netscriptjs`):: - - export async function main(ns) { - const ps = ns.ps("home"); - for (let i = 0; i < ps.length; ++i) { - ns.tprint(ps[i].filename + ' ' + ps[i].threads); - ns.tprint(ps[i].args); - } - } - -hasRootAccess -^^^^^^^^^^^^^ - -.. js:function:: hasRootAccess(hostname/ip) - - :param string hostname/ip: Hostname or IP of the target server - - Returns a boolean indicating whether or not the player has root access to the specified target server. - - Example:: - - if (hasRootAccess("foodnstuff") == false) { - nuke("foodnstuff"); - } - -getHostname -^^^^^^^^^^^ - -.. js:function:: getHostname() - - Returns a string with the hostname of the server that the script is running on - -getHackingLevel -^^^^^^^^^^^^^^^ - -.. js:function:: getHackingLevel() - - Returns the player's current hacking level - -getHackingMultipliers -^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getHackingMultipliers() - - Returns an object containing the Player's hacking related multipliers. These multipliers are - returned in fractional forms, not percentages (e.g. 1.5 instead of 150%). The object has the following structure:: - - { - chance: Player's hacking chance multiplier, - speed: Player's hacking speed multiplier, - money: Player's hacking money stolen multiplier, - growth: Player's hacking growth multiplier - } - - Example of how this can be used:: - - mults = getHackingMultipliers(); - print(mults.chance); - print(mults.growth); - -getHacknetMultipliers -^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getHacknetMultipliers() - - Returns an object containing the Player's hacknet related multipliers. These multipliers are - returned in fractional forms, not percentages (e.g. 1.5 instead of 150%). The object has the following structure:: - - { - production: Player's hacknet production multiplier, - purchaseCost: Player's hacknet purchase cost multiplier, - ramCost: Player's hacknet ram cost multiplier, - coreCost: Player's hacknet core cost multiplier, - levelCost: Player's hacknet level cost multiplier - } - - Example of how this can be used:: - - mults = getHacknetMultipliers(); - print(mults.production); - print(mults.purchaseCost); - - - -getServerMoneyAvailable -^^^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getServerMoneyAvailable(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the amount of money available on a server. **Running this function on the home computer will return - the player's money.** - - Example:: - - getServerMoneyAvailable("foodnstuff"); - getServerMoneyAvailable("home"); //Returns player's money - -getServerMaxMoney -^^^^^^^^^^^^^^^^^ - -.. js:function:: getServerMaxMoney(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the maximum amount of money that can be available on a server - -getServerGrowth -^^^^^^^^^^^^^^^ - -.. js:function:: getServerGrowth(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the server's instrinsic "growth parameter". This growth parameter is a number - between 1 and 100 that represents how quickly the server's money grows. This parameter affects the - percentage by which the server's money is increased when using the *grow()* function. A higher - growth parameter will result in a higher percentage increase from *grow()*. - -getServerSecurityLevel -^^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getServerSecurityLevel(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the security level of the target server. A server's security level is denoted by a number, typically - between 1 and 100 (but it can go above 100). - -getServerBaseSecurityLevel -^^^^^^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getServerBaseSecurityLevel(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the base security level of the target server. This is the security level that the server starts out with. - This is different than *getServerSecurityLevel()* because *getServerSecurityLevel()* returns the current - security level of a server, which can constantly change due to *hack()*, *grow()*, and *weaken()*, calls on that - server. The base security level will stay the same until you reset by installing an Augmentation(s). - -getServerMinSecurityLevel -^^^^^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getServerMinSecurityLevel(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the minimum security level of the target server - -getServerRequiredHackingLevel -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getServerRequiredHackingLevel(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the required hacking level of the target server - -getServerNumPortsRequired -^^^^^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getServerNumPortsRequired(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the number of open ports required to successfully run NUKE.exe on the specified server. - -getServerRam -^^^^^^^^^^^^ - -.. js:function:: getServerRam(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns an array with two elements that gives information about a server's memory (RAM). The first - element in the array is the amount of RAM that the server has total (in GB). The second element in - the array is the amount of RAM that is currently being used on the server (in GB). - - Example:: - - res = getServerRam("helios"); - totalRam = res[0]; - ramUsed = res[1]; - -serverExists -^^^^^^^^^^^^ - -.. js:function:: serverExists(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns a boolean denoting whether or not the specified server exists - -fileExists -^^^^^^^^^^ - -.. js:function:: fileExists(filename, [hostname/ip]) - - :param string filename: Filename of file to check - :param string hostname/ip: - Hostname or IP of target server. This is optional. If it is not specified then the - function will use the current server as the target server - - Returns a boolean indicating whether the specified file exists on the target server. The filename - for scripts is case-sensitive, but for other types of files it is not. For example, *fileExists("brutessh.exe")* - will work fine, even though the actual program is named "BruteSSH.exe". - - If the *hostname/ip* argument is omitted, then the function will search through the current server (the server - running the script that calls this function) for the file. - - Examples:: - - fileExists("foo.script", "foodnstuff"); - fileExists("ftpcrack.exe"); - - The first example above will return true if the script named *foo.script* exists on the *foodnstuff* server, and false otherwise. - The second example above will return true if the current server contains the *FTPCrack.exe* program, and false otherwise. - -isRunning -^^^^^^^^^ - -.. js:function:: isRunning(filename, hostname/ip, [args...]) - - :param string filename: Filename of script to check. This is case-sensitive. - :param string hostname/ip: Hostname or IP of target server - :param args...: Arguments to specify/identify which scripts to search for - - Returns a boolean indicating whether the specified script is running on the target server. Remember that a script is - uniquely identified by both its name and its arguments. - - **Examples:** - - In this first example below, the function call will return true if there is a script named *foo.script* with no arguments - running on the *foodnstuff* server, and false otherwise:: - - isRunning("foo.script", "foodnstuff"); - - In this second example below, the function call will return true if there is a script named *foo.script* with no arguments - running on the current server, and false otherwise:: - - isRunning("foo.script", getHostname()); - - In this next example below, the function call will return true if there is a script named *foo.script* running with the arguments - 1, 5, and "test" (in that order) on the *joesguns* server, and false otherwise:: - - isRunning("foo.script", "joesguns", 1, 5, "test"); - -getNextHacknetNodeCost -^^^^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getNextHacknetNodeCost() - - Returns the cost of purchasing a new Hacknet Node - -purchaseHacknetNode -^^^^^^^^^^^^^^^^^^^ - -.. js:function:: purchaseHacknetNode() - - Purchases a new Hacknet Node. Returns a number with the index of the Hacknet Node. This index is equivalent to the number at the - end of the Hacknet Node's name (e.g The Hacknet Node named 'hacknet-node-4' will have an index of 4). If the player cannot afford - to purchase a new Hacknet Node then the function will return false. - -purchaseServer -^^^^^^^^^^^^^^ - -.. js:function:: purchaseServer(hostname, ram) - - :param string hostname: Hostname of the purchased server - :param number ram: Amount of RAM of the purchased server. Must be a power of 2 (2, 4, 8, 16, etc.). Maximum value of 1048576 (2^20) - - Purchased a server with the specified hostname and amount of RAM. - - The *hostname* argument can be any data type, but it will be converted to a string and have whitespace removed. Anything that resolves to an empty string will - cause the function to fail. If there is already a server with the specified hostname, then the function will automatically append - a number at the end of the *hostname* argument value until it finds a unique hostname. For example, if the script calls - *purchaseServer("foo", 4)* but a server named "foo" already exists, the it will automatically change the hostname to "foo-0". If there is already - a server with the hostname "foo-0", then it will change the hostname to "foo-1", and so on. - - Note that there is a maximum limit to the amount of servers you can purchase. - - Returns the hostname of the newly purchased server as a string. If the function fails to purchase a server, then it will return an - empty string. The function will fail if the arguments passed in are invalid, if the player does not have enough money to purchase - the specified server, or if the player has exceeded the maximum amount of servers. - - Example:: - - ram = 64; - hn = "pserv-"; - for (i = 0; i < 5; ++i) { - purchaseServer(hn + i, ram); - } - -deleteServer -^^^^^^^^^^^^ - -.. js:function:: deleteServer(hostname) - - :param string hostname: Hostname of the server to delete - - Deletes one of your purchased servers, which is specified by its hostname. - - The *hostname* argument can be any data type, but it will be converted to a string. Whitespace is automatically removed from - the string. This function will not delete a server that still has scripts running on it. - - Returns true if successful, and false otherwise. - -getPurchasedServers -^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getPurchasedServers([hostname=true]) - - :param boolean hostname: - Specifies whether hostnames or IP addresses should be returned. If it's true then hostnames will be returned, and if false - then IPs will be returned. If this argument is omitted then it is true by default - - Returns an array with either the hostnames or IPs of all of the servers you have purchased. - -write -^^^^^ - -.. js:function:: write(port/fn, data="", mode="a") - - :param string/number port/fn: Port or text file that will be written to - :param string data: Data to write - :param string mode: Defines the write mode. Only valid when writing to text files. - - This function can be used to either write data to a port or to a text file (.txt). - - If the first argument is a number between 1 and 10, then it specifies a port and this function will write *data* to that port. Read - about how `Netscript Ports work here `_. The third argument, *mode*, is not used - when writing to a port. - - If the first argument is a string, then it specifies the name of a text file (.txt) and this function will write *data* to that text file. If the - specified text file does not exist, then it will be created. The third argument *mode, defines how the data will be written to the text file. If *mode* - is set to "w", then the data is written in "write" mode which means that it will overwrite all existing data on the text file. If *mode* is set to - any other value then the data will be written in "append" mode which means that the data will be added at the end of the text file. - -read -^^^^ - -.. js:function:: read(port/fn) - - :param string/number port/fn: Port or text file to read from - - This function is used to read data from a port or from a text file (.txt). - - If the argument *port/fn* is a number between 1 and 10, then it specifies a port and it will read data from that port. Read - about how `Netscript Ports work here `_. A port is a serialized queue. This function - will remove the first element from that queue and return it. If the queue is empty, then the string "NULL PORT DATA" will be returned. - - If the argument *port/fn* is a string, then it specifies the name of a text file (.txt) and this function will return the data in the specified text file. If - the text file does not exist, an empty string will be returned. - -peek -^^^^ - -.. js:function:: peek(port) - - :param number port: Port to peek. Must be an integer between 1 and 10 - - This function is used to peek at the data from a port. It returns the first element in the specified port - without removing that element. If the port is empty, the string "NULL PORT DATA" will be returned. - - Read about how `Netscript Ports work here `_. - -clear -^^^^^ - -.. js:function:: clear(port/fn) - - :param string/number port/fn: Port or text file to clear - - This function is used to clear data in a `Netscript Ports `_ or a text file. - - If the *port/fn* argument is a number between 1 and 10, then it specifies a port and will clear it (deleting all data from the underlying queue). - - If the *port/fn* argument is a string, then it specifies the name of a text file (.txt) and will delete all data from that text file. - -rm -^^ - -.. js:function:: rm(fn) - - :param string fn: Filename of file to remove. Must include the extension - :returns: True if it successfully deletes the file, and false otherwise - - Removes the specified file from the current server. This function works for every file type except message (.msg) files. - -scriptRunning -^^^^^^^^^^^^^ - -.. js:function:: scriptRunning(scriptname, hostname/ip) - - :param string scriptname: Filename of script to check. This is case-sensitive. - :param string hostname/ip: Hostname or IP of target server - - Returns a boolean indicating whether any instance of the specified script is running on the target server, regardless of - its arguments. - - This is different than the *isRunning()* function because it does not try to identify a specific instance of a running script - by its arguments. - - **Examples:** - - The example below will return true if there is any script named *foo.script* running on the *foodnstuff* server, and false otherwise:: - - scriptRunning("foo.script", "foodnstuff"); - - The example below will return true if there is any script named "foo.script" running on the current server, and false otherwise:: - - scriptRunning("foo.script", getHostname()); - -scriptKill -^^^^^^^^^^ - -.. js:function:: scriptKill(scriptname, hostname/ip) - - :param string scriptname: Filename of script to kill. This is case-sensitive. - :param string hostname/ip: Hostname or IP of target server - - Kills all scripts with the specified filename on the target server specified by *hostname/ip*, regardless of arguments. Returns - true if one or more scripts were successfully killed, and false if none were. - -getScriptName -^^^^^^^^^^^^^ - -.. js:function:: getScriptName() - - Returns the current script name - -getScriptRam -^^^^^^^^^^^^ - -.. js:function:: getScriptRam(scriptname[, hostname/ip]) - - :param string scriptname: Filename of script. This is case-sensitive. - :param string hostname/ip: Hostname or IP of target server the script is located on. This is optional, If it is not specified then the function will se the current server as the target server. - - Returns the amount of RAM required to run the specified script on the target server. Returns - 0 if the script does not exist. - -getHackTime -^^^^^^^^^^^ - -.. js:function:: getHackTime(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the amount of time in seconds it takes to execute the *hack()* Netscript function on the target server. - -getGrowTime -^^^^^^^^^^^ - -.. js:function:: getGrowTime(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the amount of time in seconds it takes to execute the *grow()* Netscript function on the target server. - -getWeakenTime -^^^^^^^^^^^^^ - -.. js:function:: getWeakenTime(hostname/ip) - - :param string hostname/ip: Hostname or IP of target server - - Returns the amount of time in seconds it takes to execute the *weaken()* Netscript function on the target server. - -getScriptIncome -^^^^^^^^^^^^^^^ - -.. js:function:: getScriptIncome([scriptname], [hostname/ip], [args...]) - - :param string scriptname: Filename of script - :param string hostname/ip: Server on which script is running - :param args...: Arguments that the script is running with - - Returns the amount of income the specified script generates while online (when the game is open, does not apply for offline income). - Remember that a script is uniquely identified by both its name and its arguments. So for example if you ran a script with the arguments - "foodnstuff" and "5" then in order to use this function to get that script's income you must specify those same arguments in the same order - in this function call. - - This function can also be called with no arguments. If called with no arguments, then this function will return an array of two values. The - first value is the total income ($ / second) of all of your active scripts (scripts that are currently running on any server). The second value - is the total income ($ / second) that you've earned from scripts since you last installed Augmentations. - -getScriptExpGain -^^^^^^^^^^^^^^^^ - -.. js:function:: getScriptExpGain([scriptname], [hostname/ip], [args...]) - - :param string scriptname: Filename of script - :param string hostname/ip: Server on which script is running - :param args...: Arguments that the script is running with - - Returns the amount of hacking experience the specified script generates while online (when the game is open, does not apply for offline experience gains). - Remember that a script is uniquely identified by both its name and its arguments. - - This function can also return the total experience gain rate of all of your active scripts by running the function with no arguments. - -getTimeSinceLastAug -^^^^^^^^^^^^^^^^^^^ - -.. js:function:: getTimeSinceLastAug() - - Returns the amount of time in milliseconds that have passed since you last installed Augmentations - -sprintf -^^^^^^^ - -.. js:function:: sprintf() - - See `this link `_ for details. - -vsprintf -^^^^^^^^ - -.. js:function:: vsprintf() - - See `this link `_ for details. - -prompt -^^^^^^ - -.. js:function:: prompt(txt) - - :param string txt: Text to appear in the prompt dialog box - - Prompts the player with a dialog box with two options: "Yes" and "No". This function will return true if the player click "Yes" and - false if the player clicks "No". The script's execution is halted until the player selects one of the options. - - -Defining your own Functions ---------------------------- - -Note that the following information is only applicable for Netscript 1.0. -:doc:`netscriptjs` allows you to define your functions using native Javascript -techniques. - -You can define your own functions in Netscript 1.0 using the following syntax:: - - function name(args...) { - function code here... - return some_value - } - -Functions should have some return value. Here is an example of defining and using a function:: - - function sum(values) { - res = 0; - for (i = 0; i < values.length; ++i) { - res += values[i]; - } - return res; - } - - print(sum([1, 2, 3, 4, 5])); //Prints 15 - print(sum([1, 10])); //Prints 11 - -For those with experience in other languages, especially Javascript, it may be important to note that -function declarations are not hoisted and must be declared BEFORE you use them. -For example, the following will cause an error saying `variable hello not defined`:: - - print(hello()); - - function hello() { - return "world"; - } - -The following will work fine:: - - function hello() { - return "world"; - } - - print(hello()); //Prints out "world" - -**Note about variable scope in functions:** - -Functions can access "global" variables declared outside of the function's scope. However, they cannot change the value of any "global" variables. -Any changes to "global" variables will only be applied locally to the function. - -The following example shows that any change to a "global" variable -from inside a function only applies in the function's local scope:: - - function foo() { - i = 5; - return "foo"; - } - - i = 0; - print(i); //Prints 0 - foo(); - print(i); //Prints 0 - -Furthermore, this also means that any variable that is first defined inside a -function will NOT be accessible outside of the function as shown in the following example:: - - function sum(values) { - res = 0; - for (i = 0; i < values.length; ++i) { - res += values[i]; - } - return res; - } - print(res); - -results in the following runtime error:: - - Script runtime error: - Server Ip: 75.7.4.1 - Script name: test.script - Args:[] - variable res not defined - - -**Other Notes about creating your own functions:** - -Defining a function does not create a Javascript function object in the underlying game code. This means that you cannot use any function -you create in functions such as `Array.sort() `_ (not yet at least, I'll try to make it work in the future). diff --git a/doc/build/html/_sources/netscripthacknetnodeapi.rst.txt b/doc/build/html/_sources/netscripthacknetnodeapi.rst.txt deleted file mode 100644 index 34ac33cf8..000000000 --- a/doc/build/html/_sources/netscripthacknetnodeapi.rst.txt +++ /dev/null @@ -1,171 +0,0 @@ -Netscript Hacknet Node API -========================== - -Netscript provides the following API for accessing and upgrading your Hacknet Nodes -through scripts. - -Note that none of these functions will write to the script's logs. If you want -to see what your script is doing you will have to print to the logs yourself. - -hacknetnodes -^^^^^^^^^^^^ - - *hacknetnodes* is a special variable. It is an array that maps to the player's - Hacknet Nodes. The Hacknet Nodes are accessed through indexed. These indexes - correspond to the number at the end of the name of the Hacknet Node. For example, - the first Hacknet Node you purchase will have the name "hacknet-node-0" and can be - accessed using *hacknetnodes[0]*. The fourth Hacknet Node you purchase will have the name - "hacknet-node-3" and can be accessed using *hacknetnodes[3]*. - -Purchasing Hacknet Nodes -^^^^^^^^^^^^^^^^^^^^^^^^ - -The following is a list of supported functions for purchasing Hacknet Nodes. - -.. js:function:: getNextHacknetNodeCost() - - Returns the cost of purchasing a new Hacknet Node - -.. js:function:: purchaseHacknetNode() - - Purchases a new Hacknet Node. Returns a number with the index of the Hacknet Node. This index is equivalent to the number at the - end of the Hacknet Node's name (e.g The Hacknet Node named 'hacknet-node-4' will have an index of 4). If the player cannot afford - to purchase a new Hacknet Node then the function will return false. - - -Hacknet Node Member Variables -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -The following is a list of member variables for a Hacknet Node object. These variables are read-only, which means you cannot assign -a value to these. - -Note that these must be called on an element inside the *hacknetnodes* array, not the array itself. - -.. js:attribute:: hacknetnodes[i].name - - Returns the name of the corresponding Hacknet Node - - -.. js:attribute:: hacknetnodes[i].level - - Returns the level of the corresponding Hacknet Node - -.. js:attribute:: hacknetnodes[i].ram - - Returns the amount of RAM on the corresponding Hacknet Node - -.. js:attribute:: hacknetnodes[i].cores - - Returns the number of cores on the corresponding Hacknet Node - -.. js:attribute:: hacknetnodes[i].totalMoneyGenerated - - Returns the total amount of money that the corresponding Hacknet Node has earned - -.. js:attribute:: hacknetnodes[i].onlineTimeSeconds - - Returns the total amount of time (in seconds) that the corresponding Hacknet Node has existed - -.. js:attribute:: hacknetnodes[i].moneyGainRatePerSecond - - Returns the amount of income that the corresponding Hacknet Node earns - -Hacknet Node Methods -^^^^^^^^^^^^^^^^^^^^ - -The following is a list of supported functions/methods for a Hacknet Node object. - -Note that these must be called on an element inside the *hacknetnodes* array, not the -array itself. - -.. js:method:: hacknetnodes[i].upgradeLevel(n) - - :param number n: Number of levels to upgrade. Must be positive. Rounded to nearest integer - - Tries to upgrade the level of the corresponding Hacknet Node *n* times. Returns true if the - Hacknet Node's level is successfully upgraded *n* times or up to the max level (200), and false - otherwise. - -.. js:method:: hacknetnodes[i].upgradeRam() - - Tries to upgrade the amount of RAM on the corresponding Hacknet Node. Returns true if the RAM is - successfully upgraded and false otherwise. - -.. js:method:: hacknetnodes[i].upgradeCore() - - Tries to purchase an additional core for the corresponding Hacknet Node. Returns true if the - additional core is successfully purchased, and false otherwise. - -.. js:method:: hacknetnodes[i].getLevelUpgradeCost(n) - - :param number n: Number of levels to upgrade. Must be positive. Rounded to nearest integer - - Returns the cost of upgrading the specified Hacknet Node by *n* levels - -.. js:method:: hacknetnodes[i].getRamUpgradeCost() - - Returns the cost of upgrading the RAM of the specified Hacknet Node. Upgrading a Node's RAM doubles it. - -.. js:method:: hacknetnodes[i].getCoreUpgradeCost() - - Returns the cost of upgrading the number of cores of the specified Hacknet Node. Upgrading a Node's - number of cores adds one additional core. - -Utils -^^^^^ - -.. js:function:: getHacknetMultipliers() - - Returns an object containing the Player's hacknet related multipliers. These multipliers are - returned in integer forms, not percentages (e.g. 1.5 instead of 150%). The object has the following structure:: - - { - production: Player's hacknet production multiplier, - purchaseCost: Player's hacknet purchase cost multiplier, - ramCost: Player's hacknet ram cost multiplier, - coreCost: Player's hacknet core cost multiplier, - levelCost: Player's hacknet level cost multiplier - } - - Example of how this can be used:: - - mults = getHacknetMultipliers(); - print(mults.production); - print(mults.purchaseCost); - - -Example(s) -^^^^^^^^^^ - -The following is an example of one way a script can be used to automate the purchasing and upgrading of Hacknet Nodes. -This script purchases new Hacknet Nodes until the player has four. Then, it iteratively upgrades each of those four Hacknet -Nodes to a level of at least 75, RAM to at least 8GB, and number of cores to at least 2:: - - //Purchase 4 Hacknet Nodes - while(hacknetnodes.length < 4) { - purchaseHacknetNode(); - } - - //Upgrade all 4 Hacknet Nodes to at least level 75 - for (i = 0; i < 4; i = i++) { - while (hacknetnodes[i].level <= 75) { - hacknetnodes[i].upgradeLevel(5); - sleep(10000); - } - } - - //Upgrade RAM on all Hacknet Nodes to 8GB - for (i = 0; i < 4; i = i++) { - while (hacknetnodes[i].ram < 8) { - hacknetnodes[i].upgradeRam(); - sleep(10000); - } - } - - //Upgrade cores on all Hacknet Nodes to 2 - for (i = 0; i < 4; i = i++) { - while (hacknetnodes[i].cores < 2) { - hacknetnodes[i].upgradeCore(); - sleep(10000); - } - } diff --git a/doc/build/html/_sources/netscriptixapi.rst.txt b/doc/build/html/_sources/netscriptixapi.rst.txt deleted file mode 100644 index 8f34f99ae..000000000 --- a/doc/build/html/_sources/netscriptixapi.rst.txt +++ /dev/null @@ -1,174 +0,0 @@ -Netscript Trade Information eXchange (TIX) API -============================================== - -The Trade Information eXchange (TIX) is the communications protocol supported by the World Stock Exchange (WSE). -The WESE provides an API that allows you to automatically communicate with the -`Stock Market `_. This API lets you write code using Netscript -to build automated trading systems and create your own algorithmic trading strategies. Access to this -TIX API can be purchased by visiting the World Stock Exchange in-game. - -Access to the TIX API currently costs $5 billion. After you purchase it, you will retain this -access even after you 'reset' by installing Augmentations - -getStockPrice -------------- - -.. js:function:: getStockPrice(sym) - - :param string sym: Stock symbol - - Returns the price of a stock, given its symbol (NOT the company name). The symbol is a sequence - of two to four capital letters. - - Example:: - - getStockPrice("FISG"); - -getStockPosition ----------------- - -.. js:function:: getStockPosition(sym) - - :param string sym: Stock symbol - - Returns an array of four elements that represents the player's position in a stock. - - The first element is the returned array is the number of shares the player owns of the stock in the - `Long position `_. The second - element in the array is the average price of the player's shares in the Long position. - - The third element in the array is the number of shares the player owns of the stock in the - `Short position `_. The fourth - element in the array is the average price of the player's Short position. - - All elements in the returned array are numeric. - - Example:: - - pos = getStockPosition("ECP"); - shares = pos[0]; - avgPx = pos[1]; - sharesShort = pos[2]; - avgPxShort = pos[3]; - -buyStock --------- - -.. js:function:: buyStock(sym, shares) - - :param string sym: Symbol of stock to purchase - :param number shares: Number of shares to purchased. Must be positive. Will be rounded to nearest integer - - Attempts to purchase shares of a stock using a `Market Order `_. - - If the player does not have enough money to purchase the specified number of shares, then no shares will be purchased. Remember - that every transaction on the stock exchange costs a certain commission fee. - - If this function successfully purchases the shares, it will return the stock price at which each share was purchased. Otherwise, - it will return 0. - -sellStock ---------- - -.. js:function:: sellStock(sym, shares) - - :param string sym: Symbol of stock to sell - :param number shares: Number of shares to sell. Must be positive. Will be rounded to nearest integer - - Attempts to sell shares of a stock using a `Market Order `_. - - If the specified number of shares in the function exceeds the amount that the player actually owns, then this function will - sell all owned shares. Remember that every transaction on the stock exchange costs a certain commission fee. - - The net profit made from selling stocks with this function is reflected in the script's statistics. - This net profit is calculated as:: - - shares * (sell price - average price of purchased shares) - - If the sale is successful, this function will return the stock price at which each share was sold. Otherwise, it will return 0. - -shortStock ----------- - -.. js:function:: shortStock(sym, shares) - - :param string sym: Symbol of stock to short - :param number shares: Number of shares to short. Must be positive. Will be rounded to nearest integer - - Attempts to purchase a `short `_ position of a stock - using a `Market Order `_. - - The ability to short a stock is **not** immediately available to the player and must be unlocked later on in the game. - - If the player does not have enough money to purchase the specified number of shares, then no shares will be purchased. - Remember that every transaction on the stock exchange costs a certain commission fee. - - If the purchase is successful, this function will return the stock price at which each share was purchased. Otherwise, it will return 0. - -sellShort ---------- - -.. js:function:: sellShort(sym, shares) - - :param string sym: Symbol of stock to sell - :param number shares: Number of shares to sell. Must be positive. Will be rounded to nearest integer - - Attempts to sell a `short `_ position of a stock - using a `Market Order `_. - - The ability to short a stock is **not** immediately available to the player and must be unlocked later on in the game. - - If the specified number of shares exceeds the amount that the player actually owns, then this function will sell all owned - shares. Remember that every transaction on the stock exchange costs a certain commission fee. - - If the sale is successful, this function will return the stock price at which each share was sold. Otherwise it will return 0. - -placeOrder ----------- - -.. js:function:: placeOrder(sym, shares, price, type, pos) - - :param string sym: Symbol of stock to player order for - :param number shares: Number of shares for order. Must be positive. Will be rounded to nearest integer - :param number price: Execution price for the order - :param string type: Type of order. It must specify "limit" or "stop", and must also specify "buy" or "sell". This is NOT - case-sensitive. Here are four examples that will work: - - * limitbuy - * limitsell - * stopbuy - * stopsell - - :param string pos: - Specifies whether the order is a "Long" or "Short" position. The Values "L" or "S" can also be used. This is - NOT case-sensitive. - - Places an order on the stock market. This function only works for `Limit and Stop Orders `_. - - The ability to place limit and stop orders is **not** immediately available to the player and must be unlocked later on in the game. - - Returns true if the order is successfully placed, and false otherwise. - -cancelOrder ------------ - -.. js:function:: cancelOrder(sym, shares, price, type, pos) - - :param string sym: Symbol of stock to player order for - :param number shares: Number of shares for order. Must be positive. Will be rounded to nearest integer - :param number price: Execution price for the order - :param string type: Type of order. It must specify "limit" or "stop", and must also specify "buy" or "sell". This is NOT - case-sensitive. Here are four examples that will work: - - * limitbuy - * limitsell - * stopbuy - * stopsell - - :param string pos: - Specifies whether the order is a "Long" or "Short" position. The Values "L" or "S" can also be used. This is - NOT case-sensitive. - - Cancels an oustanding Limit or Stop order on the stock market. - - The ability to use limit and stop orders is **not** immediately available to the player and must be unlocked later on in the game. diff --git a/doc/build/html/_sources/netscriptjs.rst.txt b/doc/build/html/_sources/netscriptjs.rst.txt deleted file mode 100644 index 2508d686d..000000000 --- a/doc/build/html/_sources/netscriptjs.rst.txt +++ /dev/null @@ -1,206 +0,0 @@ -.. _netscriptjs: - -NetscriptJS (Netscript 2.0) -=========================== -Netscript 2.0, or Netscript JS, is the new and improved version of Netscript that -allows users to write (almost) full-fledged Javascript code in their scripts, while -still being able to access the Netscript functions. - -NetscriptJS was developed primarily by `Github user jaguilar `_ - -On top of having almost all of the features and capabilities of Javascript, NetscriptJS is also -significantly faster than Netscript 1.0. - -This documentation will not go over any of the additional features of NetscriptJS, since -there is plenty of documentation on Javascript available on the web. - -NetscriptJS in Mozilla Firefox ------------------------------- -As of the time of writing this, the Mozilla Firefox browser does not support -dynamic import functionality and therefore cannot run NetscriptJS scripts. - -(This may be some option/method for enabling this in Firefox, but I don't know -what is it) - -How to use NetscriptJS ----------------------- -Working with NetscriptJS scripts is the same as Netscript 1.0 scripts. The only difference -is that NetscriptJS scripts use the ".ns" or ".js" extension rather than ".script". E.g.:: - - $ nano foo.ns - $ run foo.ns -t 100 arg1 arg2 arg3 - exec("foo.ns", "purchasedServer1", "100", "randomArg"); - -The caveat when using NetscriptJS to write scripts is that your code must be -asynchronous. Furthermore, instead of using the global scope and executing your code -sequentially, NetscriptJS uses a :code:`main()` function as an entry point. - -Furthermore, the "Netscript environment" must be passed into a NetscriptJS script through -the main function. This environment includes all of the pre-defined Netscript functions -(:code:`hack()`, :code:`exec`, etc.) as well as the arguments you pass to the script. - -Therefore, the signature of the :code:`main()` function must be:: - - export async function main(ns) { - ns.print("Starting script here"); - await ns.hack("foodnstuff"); //Use Netscript hack function - ns.print(ns.args); //The script arguments must be prefaced with ns as well - } - -Here is a summary of all rules you need to follow when writing Netscript JS code: - -* Write :code:`await` before any call to the following Netscript functions: - - * hack - * grow - * weaken - * sleep - * run - * exec - * prompt - -* Any function that contains :code:`await` must be declared as :code:`async` - -* Always :code:`await` any function that is marked as :code:`async` - -* Any functions that you want to be visible from other scripts must be marked with :code:`export`. - -* **Do not write any infinite loops without using a** :code:`sleep` **or one of the timed Netscript functions like** :code:`hack`. Doing so will crash your game. - -* Any global variable declared in a NetscriptJS script is shared between all instances of that - script. For example, assume you write a script *foo.ns* and declared a global variable like so:: - - //foo.ns - let globalVariable; - - export async function main(ns) { - globalVariable = ns.args.length; - while(true) { - ns.tprint(globalVariable); - await ns.sleep(3000); - } - } - - Then, you ran multiple instances of *foo.ns*:: - - $ run foo.ns 1 - $ run foo.ns 1 2 3 - $ run foo.ns 1 2 3 4 5 - - Then all three instances of foo.ns will share the same instance of :code:`globalVariable`. - (In this example, the value of :code:`globalVariable` will be set to 5 because the - last instance of *foo.ns* to run has 5 arguments. This means that all three instances of - the script will repeatedly print the value 5). - - These global variables can be thought of as `C++ static class members `_, - where a NetscriptJS script is a class and a global variable is a static member within that class. - -Warnings --------- -The NetscriptJS evaluation engine works by converting your code into a blob URL and then -using a dynamic import to load your code as a module. Every unique NetscriptJS script -is loaded as its own module. This means that -making a small edit to a NetscriptJS script results in a new module being generated. - -At this point, we have been unable to find a method for deleting modules from browsers so that -they get garbage collected. - -The result is that these modules from NetscriptJS scripts accumulate in your browser, -using memory that never gets released. Over time, this results in a memory-leak type -situation that can slow down your computer. - -Therefore, there are two recommendations for those who decide to use NetscriptJS: - -1. Every now and then, close and re-open the game. This will clear all of the modules. -To be safe, I recommend **completely** closing the game's tab and then re-opening it. -Depending on your browser, a refresh or page reload does not always clear the modules. - -2. Only use NetscriptJS scripts when needed. It is very unlikely that NetscriptJS -is needed for very simple scripts. By doing this, you will reduce the number of modules -that are loaded. - -Examples --------- - -**DOM Manipulation (tprintColored.ns)** - -Directly alter the game's terminal and print colored text:: - - export function tprintColored(txt, color) { - let terminalInput = document.getElementById("terminal-input"); - let rowElement = document.createElement("tr"); - let cellElement = document.createElement("td"); - - rowElement.classList.add("posted"); - cellElement.classList.add("terminal-line"); - cellElement.style.color = color; - cellElement.innerText = txt; - - rowElement.appendChild(cellElement); - terminalInput.before(rowElement); - } - - export async function main(ns) { - tprintColored("Red Text!", "red"); - tprintColored("Blue Text!", "blue"); - tprintColored("Use Hex Codes!", "#3087E3"); - } - -**Script Scheduler (scriptScheduler.ns)** - -This script shows some of the new functionality that is available in NetscriptJS, -including objects and object constructors, changing an object's prototype, and -importing other NetscriptJS scripts:: - - import {tprintColored} from "tprintColored.ns"; //Importing from other NetscriptJS scripts works! - - function ScriptJob(params) { - if (params.fn == null) { - throw new Error("No Filename (fn) passed into ScriptJob ctor"); - } - - this.fn = params.fn; - this.threads = params.threads ? params.threads : 1; - this.args = params.args ? params.args : []; - } - - ScriptJob.prototype.run = async function(ns) { - let runArgs = [this.fn, this.threads].concat(this.args); - await ns.run.apply(this, runArgs); - tprintColored("Running " + this.fn + " on " + ns.getHostname(), "blue"); - } - - ScriptJob.prototype.exec = async function(ns, target) { - ns.scp(this.fn, target); - - let execArgs = [this.fn, target, this.threads].concat(this.args); - await ns.exec.apply(this, execArgs); - - tprintColored("Executing " + this.fn + " on " + target, "blue"); - } - - export async function main(ns) { - tprintColored("Starting scriptScheduler.ns", "red"); - try { - let job = new ScriptJob({ - fn: "test.js", - threads: 1, - args: ["foodnstuff"] - }); - await job.run(ns); - await job.exec(ns, "foodnstuff"); - } catch (e) { - ns.tprint("Exception thrown in scriptScheduler.ns: " + e); - } - } - -Final Note ----------- -NetscriptJS opens up a lot of possibilities when scripting. I look forward to seeing -the scripts that people come up with. Just remember that the power and capabilities of -NetscriptJS come with risks. Please backup your save if you're going to experiment with -NetscriptJS and report any serious exploits. - -With great power comes great responsibility - -Happy hacking diff --git a/doc/build/html/_sources/netscriptloopsandconditionals.rst.txt b/doc/build/html/_sources/netscriptloopsandconditionals.rst.txt deleted file mode 100644 index e47e16fd9..000000000 --- a/doc/build/html/_sources/netscriptloopsandconditionals.rst.txt +++ /dev/null @@ -1,39 +0,0 @@ -Netscript Loops and Conditionals -================================ - - -Netscript loops and conditionals are the same as Javascript. However, the one caveat is that when declaring variables such as the -iterator for traversing a loop, you should not use the 'var' or 'let' keyword. For reference, you can see the Javascript -documentation for loops/conditionals here: - -`While loops `_ - -`For loops `_ - -`Conditionals (If/Else statements) `_ - -Here are some simple code examples that show the use of loops and conditionals in Netscript. - -The following is a while loop that runs the hack() Netscript function ten times:: - - i = 0; - while (i < 10) { - hack('foodnstuff'); - i = i + 1; - } - -The following is a for loop that runs the hack() Netscript function ten times:: - - for (i = 0; i < 10; ++i) { - hack("foodnstuff"); - } - -The following is a conditional that uses the getServerMoneyAvailable() Netscript function to check how much money -exists on the 'foodnstuff' server. If there is more than $200,000 on the server, then the server will be hacked. -Otherwise, the money available on the server will be grown using the grow() Netscript function:: - - if (getServerMoneyAvailable('foodnstuff') > 200000) { - hack("foodnstuff"); - } else { - grow("foodnstuff"); - } diff --git a/doc/build/html/_sources/netscriptmisc.rst.txt b/doc/build/html/_sources/netscriptmisc.rst.txt deleted file mode 100644 index ad32469b2..000000000 --- a/doc/build/html/_sources/netscriptmisc.rst.txt +++ /dev/null @@ -1,238 +0,0 @@ -Netscript Miscellaneous -======================= - -Netscript Ports ---------------- -Netscript ports are endpoints that can be used to communicate between scripts. -A port is implemented as a sort of serialized queue, where you can only write -and read one element at a time from the port. When you read data from a port, -the element that is read is removed from the port. - -The :js:func:`read`, :js:func:`write`, :js:func:`clear`, and :js:func:`peek` -Netscript functions can be used to interact with ports. - -Right now, there are only 20 ports for Netscript, denoted by the number 1 -through 20. When using the functions above, the ports are specified -by passing the number as the first argument. - -IMPORTANT: The data inside ports are not saved! This means if you close and -re-open the game, or reload the page then you will lose all of the data in -the ports! - -**Example Usage** - -Here's a brief example of how ports work. For the sake of simplicity we'll only deal with port 1. - -Let's assume Port 1 starts out empty (no data inside). We'll represent the port as such:: - - [] - -Now assume we ran the following simple script:: - - for (i = 0; i < 10; ++i) { - write(1, i); //Writes the value of i to port 1 - } - -After this script executes, our script will contain every number from 0 through 9, as so:: - - [0, 1, 2, 3, 4, 5, 6, 7 , 8, 9] - -Then, assume we run the following script:: - - for (i = 0; i < 3; ++i) { - print(read(1)); //Reads a value from port 1 and then prints it - } - -This script above will read the first three values from port 1 and then print them to the script's log. The log will end up looking like:: - - 0 - 1 - 2 - -And the data in port 1 will look like:: - - [3, 4, 5, 6, 7, 8, 9] - -**Port Handles** - -The :js:func:`getPortHandle` Netscript function can be used to get a handle to a Netscript Port. -This handle allows you to access several new port-related functions and the -port's underlying data structure, which is just a Javascript array. The functions are: - -.. js:method:: NetscriptPort.write(data) - - :param data: Data to write to the port - :returns: If the port is full, the item that is removed from the port is returned. - Otherwise, null is returned. - - Writes `data` to the port. Works the same as the Netscript function `write`. - -.. js:method:: NetscriptPort.tryWrite(data) - - :param data: Data to try to write to the port - :returns: True if the data is successfully written to the port, and false otherwise. - - Attempts to write `data` to the Netscript port. If the port is full, the data will - not be written. Otherwise, the data will be written normally. - -.. js::method:: NetscriptPort.read() - - :returns: The data read from the port. If the port is empty, "NULL PORT DATA" is returned - - Removes and returns the first element from the port. - Works the same as the Netscript function `read` - -.. js::method:: NetscriptPort.peek() - - :returns: The first element in the port, or "NULL PORT DATA" if the port is empty. - - Returns the first element in the port, but does not remove it. - Works the same as the Netscript function `peek` - -.. js:method:: NetscriptPort.full() - - :returns: True if the Netscript Port is full, and false otherwise - -.. js:method:: NetscriptPort.empty() - - :returns: True if the Netscript Port is empty, and false otherwise - -.. js:method:: NetscriptPort.clear() - - Clears all data from the port. Works the same as the Netscript function `clear` - -.. js:attribute:: NetscriptPort.data - - The Netscript port underlying data structure, which is just a Javascript array. All - valid Javascript Array methods can be called on this. - -Port Handle Example:: - - port = getPortHandle(5); - back = port.data.pop(); //Get and remove last element in port - - //Remove an element from the port - i = port.data.findIndex("foo"); - if (i != -1) { - port.data.slice(i, 1); - } - - //Wait for port data before reading - while(port.empty()) { - sleep(10000); - } - res = port.read(); - - //Wait for there to be room in a port before writing - while (!port.tryWrite(5)) { - sleep(5000); - } - - //Successfully wrote to port! - - -Comments --------- -Netscript supports comments using the same syntax as `Javascript comments `_. -Comments are not evaluated as code, and can be used to document and/or explain code:: - - //This is a comment and will not get executed even though its in the code - /* Multi - * line - * comment */ - print("This code will actually get executed"); - -Importing Functions -------------------- - -In Netscript you can import functions that are declared in other scripts. -The script will incur the RAM usage of all imported functions. -There are two ways of doing this:: - - import * as namespace from "script filename"; //Import all functions from script - import {fn1, fn2, ...} from "script filename"; //Import specific functions from script - -Suppose you have a library script called *testlibrary.script*:: - - function foo1(args) { - //function definition... - } - - function foo2(args) { - //function definition... - } - - function foo3(args) { - //function definition... - } - - function foo4(args) { - //function definition... - } - -Then, if you wanted to use these functions in another script, you can import them like so:: - - import * as testlib from "testlibrary.script"; - - values = [1,2,3]; - - //The imported functions must be specified using the namespace - someVal1 = testlib.foo3(values); - someVal2 = testlib.foo1(values); - if (someVal1 > someVal2) { - //... - } else { - //... - } - -If you only wanted to import certain functions, you can do so without needing -to specify a namespace for the import:: - - import {foo1, foo3} from "testlibrary.script"; //Saves RAM since not all functions are imported! - - values = [1,2,3]; - - //No namespace needed - someVal1 = foo3(values); - someVal2 = foo1(values); - if (someVal1 > someVal2) { - //... - } else { - //... - } - -Note that exporting functions is not required. - - -Javascript Math Module ----------------------- - -The `Javascript Math Module `_ is -supported in Netscript and is used in the same way:: - - numThreads = Math.floor(getServerRam("foodnstuff")[1] / 3.4); - -Javascript Date Module ----------------------- - -The `Javascript Date Module `_ is supported in Netscript. -However, since the 'new' operator does not work in Netscript, only the Date module's static functions can be used: - -* now() -* UTC() -* Parse() -* Maybe some others I don't know about - -Example:: - - time = Date.now(); - -Javascript Number Module ------------------------- - -The `Javascript Number module `_ is supported in Netscript. - -Example:: - - tprint(Number.isInteger(1)); //True - tprint(Number.isInteger(1.534059)); //False diff --git a/doc/build/html/_sources/netscriptoperators.rst.txt b/doc/build/html/_sources/netscriptoperators.rst.txt deleted file mode 100644 index 84ca09f3c..000000000 --- a/doc/build/html/_sources/netscriptoperators.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -Netscript Operators -=================== - -Operators ---------- - -Binary Operators -^^^^^^^^^^^^^^^^ - -Binary operators require two operands and produce a result based on their values. In general, binary -operators do not change the value of the operands. - -=========== =========================== ============================================================== -Operator Name Example/Comments -=========== =========================== ============================================================== -= Assignment i = 5 would assign the value 5 to the variable i -\+ Addition 5 + 12 would return 17 -\- Subtraction 20 - 8 would return 12 -\* Multiplication 4 * 5 would return 20 -\/ Division 50 / 10 would return 5 -% Modulo 50 % 9 would return 5 -&& Logical AND true && false would return false -|| Logical OR true || false would return true -< Less than 4 < 5 would return true -> Greater than 4 > 5 would return false -<= Less than or equal to 5 <= 5 would return true ->= Greater than or equal to 5 >= 4 would return true -== Equality 1 == 1 would return true -!= Inequality 4 != 5 would return true -=== Strict equality 1 === "1" would return false -!== Strict inequality 1 !== "1" would return true -=========== =========================== ============================================================== - -Unary Operators -^^^^^^^^^^^^^^^ - -Unary operators require only a single operand and produce a result based on their values. Some unary operators will -change the value of their operands. For example:: - - i = 0; - ++i; - -Running the pre-increment unary operator (++) in the code above changes the value of the variable i. - - -=============== =========================== ============================================================================================== -Operator Name Example/comments -=============== =========================== ============================================================================================== -! Logical NOT operator !true would return false, and !false would return true. Does not change operand's value -\- Negation Negates a number. Only works for numerics. Does not change operand's value -++ Pre-increment ++i or i++. WARNING: This only pre-increments, even if you put i++. Changes operand's value --- Pre-decrement --i or i--. WARNING: This only pre-decrements, even if you put i--. Changes operand's value -=============== =========================== ============================================================================================== diff --git a/doc/build/html/_sources/netscriptscriptarguments.rst.txt b/doc/build/html/_sources/netscriptscriptarguments.rst.txt deleted file mode 100644 index b52403d28..000000000 --- a/doc/build/html/_sources/netscriptscriptarguments.rst.txt +++ /dev/null @@ -1,17 +0,0 @@ -Netscript Script Arguments -========================== - -Arguments passed into a script can be accessed in Netscript using a special array called *args*. The arguments can be -accessed using a normal array using the [] operator (args[0], args[1], etc...). - -For example, let's say we want to make a generic script 'generic-run.script' and we plan to pass two arguments into that script. -The first argument will be the name of another script, and the second argument will be a number. This generic script will run the -script specified in the first argument with the amount of threads specified in the second element. The code would look like:: - - run(args[0], args[1]); - -It is also possible to get the number of arguments that was passed into a script using:: - - args.length - -WARNING: Do not try to modify the args array. This will break the game. I will do my best to prevent players from doing this. diff --git a/doc/build/html/_sources/netscriptsingularityfunctions.rst.txt b/doc/build/html/_sources/netscriptsingularityfunctions.rst.txt deleted file mode 100644 index 9d687b230..000000000 --- a/doc/build/html/_sources/netscriptsingularityfunctions.rst.txt +++ /dev/null @@ -1,537 +0,0 @@ -Netscript Singularity Functions -=============================== - -The Singularity Functions are a special set of Netscript functions. These functions allow you to control -many additional aspects of the game through scripts, such as working for factions/companies, purchasing/installing Augmentations, -and creating programs. - -The Singularity Functions are **not** immediately available to the player and must be unlocked later in the game. - -**WARNING: This page contains spoilers for the game**. - -The Singularity Functions are unlocked in BitNode-4. If you are in BitNode-4, then you will automatically have access to all of these functions. -You can use the Singularity Functions in other BitNodes if and only if you have the Source-File for BitNode-4 (aka Source-File 4). Each level of -Source-File 4 will open up additional Singularity Functions that you can use in other BitNodes. If your Source-File 4 is upgraded all the way to -level 3, then you will be able to access all of the Singularity Functions. - -Note that Singularity Functions require a lot of RAM outside of BitNode-4 (their RAM costs are multiplied by 10 if you are not in BitNode-4) - -universityCourse ----------------- - -.. js:function:: universityCourse(universityName, courseName) - - :param string universityName: - Name of university. Not case-sensitive. You must be in the correct city for whatever university you specify. - - * Summit University - * Rothman University - * ZB Institute Of Technology - :param string courseName: - Name of course. Not case-sensitive. - - * Study Computer Science - * Data Strucures - * Networks - * Algorithms - * Management - * Leadership - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to use this function. - - This function will automatically set you to start taking a course at a university. If you are already in the middle of some - "working" action (such as working at a company, for a faction, or on a program), then running this function will automatically - cancel that action and give you your earnings. - - The cost and experience gains for all of these universities and classes are the same as if you were to manually visit and take these classes. - - This function will return true if you successfully start taking the course, and false otherwise. - -gymWorkout ----------- - -.. js:function:: gymWorkout(gymName, stat) - - :param string gymName: - Name of gym. Not case-sensitive. You must be in the correct city for whatever gym you specify. - - * Crush Fitness Gym - * Snap Fitness Gym - * Iron Gym - * Powerhouse Gym - * Millenium Fitness Gym - :param string stat: - The stat you want to train. Not case-sensitive. - - * strength OR str - * defense OR def - * dexterity OR dex - * agility OR agi - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to use this function. - - This function will automatically set you to start working out at a gym to train a particular stat. If you are - already in the middle of some "working" action (such as working at a company, for a faction, or on a program), - then running this function will automatically cancel that action and give you your earnings. - - The cost and experience gains for all of these gyms are the same as if you were to manually visit these gyms and train - - This function will return true if you successfully start working out at the gym, and false otherwise. - -travelToCity ------------- - -.. js:function:: travelToCity(cityName) - - :param string cityName: - City to travel to. CASE-SENSITIVE. - - * Aevum - * Chongqing - * Sector-12 - * New Tokyo - * Ishima - * Volhaven - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to use this function. - - This function allows the player to travel to any city. The cost for using this function is the same as the cost for traveling through the Travel Agency. - - This function will return true if you successfully travel to the specified city and false otherwise. - -purchaseTor ------------ - -.. js:function:: purchaseTor() - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to use this function. - - This function allows you to automatically purchase a TOR router. The cost for purchasing a TOR router using this - function is the same as if you were to manually purchase one. - - This function will return true if it successfully purchase a TOR router and false otherwise. - -purchaseProgram ---------------- - -.. js:function:: purchaseProgram(programName) - - :param string programName: Name of program to purchase. Must include '.exe' extension. Not case-sensitive. - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to use this function. - - This function allows you to automatically purchase programs. You MUST have a TOR router in order to use this function. - The cost of purchasing programs using this function is the same as if you were purchasing them through the Dark Web using the - Terminal *buy* command. - - Example:: - - purchaseProgram("brutessh.exe"); - - This function will return true if the specified program is purchased, and false otherwise. - -getStats --------- - -.. js:function:: getStats() - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to run this function. - - Returns an object with the Player's stats. The object has the following properties:: - - { - hacking - strength - defense - dexterity - agility - charisma - intelligence - } - - Example:: - - res = getStats(); - print('My charisma level is: ' + res.charisma); - -getCharacterInformation ------------------------ - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to run this function. - - Returns an object with various information about your character. The object has the following properties:: - - { - bitnode: Current BitNode number - company: Name of company - jobTitle: Name of job - city: Name of city you are currently in - factions: Array of factions you are currently a member of - tor: Boolean indicating whether or not you have a tor router - - //The following apply to when the character is performing - //some type of working action, such as working for a company/faction - timeWorked: Timed worked in ms - workHackExpGain: Hacking experience earned so far from work - workStrExpGain: Str experience earned so far from work - workDefExpGain: Def experience earned so far from work - workDexExpGain: Dex experience earned so far from work - workAgiExpGain: Agi experience earned so far from work - workChaExpGain: Cha experience earned so far from work - workRepGain: Reputation earned so far from work, if applicable - workMoneyGain: Money earned so far from work, if applicable - } - -isBusy ------- - -.. js:function:: isBusy() - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to run this function. - - Returns a boolean indicating whether or not the player is currently performing an 'action'. These actions include - working for a company/faction, studying at a univeristy, working out at a gym, creating a program, or committing a crime. - -stopAction ----------- - -.. js:function:: stopAction() - - If you are not in BitNode-4, then you must have Level 1 of Source-File 4 in order to run this function. - This function is used to end whatever 'action' the player is currently performing. The player - will receive whatever money/experience/etc. he has earned from that action. - - The actions that can be stopped with this function are: - - * Studying at a university - * Working for a company/faction - * Creating a program - * Committing a Crime - - This function will return true if the player's action was ended. It will return false if the player was not - performing an action when this function was called. - -upgradeHomeRam --------------- - -.. js:function:: upgradeHomeRam() - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function will upgrade amount of RAM on the player's home computer. The cost is the same as if you were to do it manually. - - This function will return true if the player's home computer RAM is successfully upgraded, and false otherwise. - -getUpgradeHomeRamCost ---------------------- - -.. js:function:: getUpgradeHomeRamCost() - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - Returns the cost of upgrading the player's home computer RAM. - -workForCompany --------------- - -.. js:function:: workForCompany() - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function will automatically set you to start working at the company at which you are employed. - If you are already in the middle of some "working" action (such as working for a faction, training at - a gym, or creating a program), then running this function will automatically cancel that action and give you your earnings. - - This function will return true if the player starts working, and false otherwise. - - Note that when you are working for a company, you will not actually receive your earnings - (reputation, money, experience) until you FINISH the action. This can be an issue if, for example, - you only want to work until you get 100,000 company reputation. One small hack to get around this is to - continuously restart the action to receive your earnings:: - - while (getCompanyRep(COMPANY HERE) < VALUE) { - workForCompany(); - sleep(60000); - } - - This way, your company reputation will be updated every minute. - -applyToCompany --------------- - -.. js:function:: applyToCompany(companyName, field) - - :param string companyName: Name of company to apply to. CASE-SENSITIVE. - :param string field: - Field to which you want to apply. Not case-sensitive - - * software - * software consultant - * it - * security engineer - * network engineer - * business - * business consultant - * security - * agent - * employee - * part-time employee - * waiter - * part-time waiter - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function will automatically try to apply to the specified company for a position in the specified - field. This function can also be used to apply for promotions by specifying the company and field you - are already employed at. - - This function will return true if you successfully get a job/promotion, and false otherwise. Note that - if you are trying to use this function to apply for a promotion and you don't get one, it will return false. - -getCompanyRep -------------- - -.. js:function:: getCompanyRep(companyName) - - :param string companyName: Name of the company. CASE-SENSITIVE - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function will return the amount of reputation you have at the specified company. - If the company passed in as an argument is invalid, -1 will be returned. - -getCompanyFavor ---------------- - -.. js:function:: getCompanyFavor(companyName) - - :param string companyName: Name of the company. CASE-SENSITIVE - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function will return the amount of favor you have at the specified company. - If the company passed in as an argument is invalid, -1 will be returned. - -checkFactionInvitations ------------------------ - -.. js:function:: checkFactionInvitations() - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - Returns an array with the name of all Factions you currently have oustanding invitations from. - -joinFaction ------------ - -.. js:function:: joinFaction(name) - - :param string name: Name of faction to join. CASE-SENSITIVE - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function will automatically accept an invitation from a faction and join it. - -workForFaction --------------- - -.. js:function:: workForFaction(factionName, workType) - - :param string factionName: Name of faction to work for. CASE-SENSITIVE - :param string workType: - Type of work to perform for the faction - - * hacking/hacking contracts/hackingcontracts - * field/fieldwork/field work - * security/securitywork/security work - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function will automatically set you to start working for the specified faction. - Obviously, you must be a member of the faction or else this function will fail. If you are already in - the middle of some "working" action (such as working for a company, training at a gym, or creating a program), - then running this function will automatically cancel that action and give you your earnings. - - This function will return true if you successfully start working for the specified faction, and false otherwise. - - Note that when you are working for a faction, you will not actually receive your earnings (reputation, experience) - until you FINISH the action. This can be an issue if, for example, you only want to work until you get 100,000 faction - reputation. One small hack to get around this is to continuously restart the action to receive your earnings:: - - while (getFactionRep(FACTION NAME) < VALUE) { - workForFaction(FACNAME, WORKTYPE); - sleep(60000); - } - - This way, your faction reputation will be updated every minute. - -getFactionRep -------------- - -.. js:function:: getFactionRep(factionName) - - :param string factionName: Name of faction. CASE-SENSITIVE - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function returns the amount of reputation you have for the specified faction. - -getFactionFavor ---------------- - -.. js:function:: getFactionFavor(factionName) - - :param string factionName: Name of faction. CASE-SENSITIVE - - If you are not in BitNode-4, then you must have Level 2 of Source-File 4 in order to use this function. - - This function returns the amount of favor you have for the specified faction. - -createProgram -------------- - -.. js:function:: createProgram(programName) - - :param string programName: Name of program to create. Not case-sensitive - - If you are not in BitNode-4, then you must have Level 3 of Source-File 4 in order to use this function. - - This function will automatically set you to start working on creating the specified program. If you are - already in the middle of some "working" action (such as working for a company, training at a gym, or taking a course), - then running this function will automatically cancel that action and give you your earnings. - - Example: - - createProgram("relaysmtp.exe"); - - Note that creating a program using this function has the same hacking level requirements as it normally would. These level requirements are: - - * BruteSSH.exe: 50 - * FTPCrack.exe: 100 - * relaySMTP.exe: 250 - * HTTPWorm.exe: 500 - * SQLInject.exe: 750 - * DeepscanV1.exe: 75 - * DeepscanV2.exe: 400 - * ServerProfiler.exe: 75 - * AutoLink.exe: 25 - - This function returns true if you successfully start working on the specified program, and false otherwise. - -commitCrime ------------ - -.. js:function:: commitCrime(crime) - - :param string crime: - Name of crime to attempt. Not case-sensitive. This argument is fairly lenient in terms of what inputs it accepts. - Here is a list of valid inputs for all of the crimes: - - * shoplift - * rob store - * mug - * larceny - * deal drugs - * bond forgery - * traffick arms - * homicide - * grand theft auto - * kidnap - * assassinate - * heist - - If you are not in BitNode-4, then you must have Level 3 of Source-File 4 in order to use this function. - - This function is used to automatically attempt to commit crimes. If you are already in the middle of some 'working' action - (such as working for a company or training at a gym), then running this function will automatically cancel that action and give you your earnings. - - Note that crimes committed using this function will have all of their earnings halved (this applied for both money and experience!) - - This function returns the number of seconds it takes to attempt the specified crime (e.g It takes 60 seconds to attempt the 'Rob Store' crime, - so running *commitCrime('rob store')* will return 60). - - Warning: I do not recommend using the time returned from this function to try and schedule your crime attempts. - Instead, I would use the isBusy() Singularity function to check whether you have finished attempting a crime. - This is because although the game sets a certain crime to be X amount of seconds, there is no guarantee that your - browser will follow that time limit. - -getCrimeChance --------------- - -.. js:function:: getCrimeChance(crime) - - :param string crime: - Name of crime. Not case-sensitive. This argument is fairlyn lenient in terms of what inputs it accepts. - Check the documentation for the *commitCrime()* function for a list of example inputs. - - If you are not in BitNode-4, then you must have Level 3 of Source-File 4 in order to use this function. - - This function returns your chance of success at commiting the specified crime. The chance is returned as a decimal (i.e. 60% would be returned as 0.6). - -getOwnedAugmentations ---------------------- - -.. js:function:: getOwnedAugmentations(purchased=false) - - :param boolean purchase: - Specifies whether the returned array should include Augmentations you have purchased but not yet installed. - By default, this argument is false which means that the return value will NOT have the purchased Augmentations. - - If you are not in BitNode-4, then you must have Level 3 of Source-File 4 in order to use this function. - - This function returns an array containing the names (as strings) of all Augmentations you have. - -getAugmentationsFromFaction ---------------------------- - -.. js:function:: getAugmentationsFromFaction(facName) - - :param string facName: Name of faction. CASE-SENSITIVE - - If you are not in BitNode-4, then you must have Level 3 of Source-File 4 in order to use this function. - - Returns an array containing the names (as strings) of all Augmentations that are available from the specified faction. - -getAugmentationCost -------------------- - -.. js:function:: getAugmentationCost(augName) - - :param string augName: Name of Augmentation. CASE-SENSITIVE - - If you are not in BitNode-4, then you must have Level 3 of Source-File 4 in order to use this function. - - This function returns an array with two elements that gives the cost for the specified Augmentation. - The first element in the returned array is the reputation requirement of the Augmentation, and the second element is the money cost. - - If an invalid Augmentation name is passed in for the *augName* argument, this function will return the array [-1, -1]. - -purchaseAugmentation --------------------- - -.. js:function:: purchaseAugmentation(factionName, augName) - - :param string factionName: Name of faction to purchase Augmentation from. CASE-SENSITIVE - :param string augName: Name of Augmentation to purchase. CASE-SENSITIVE - - - If you are not in BitNode-4, then you must have Level 3 of Source-File 4 in order to use this function. - - This function will try to purchase the specified Augmentation through the given Faction. - - This function will return true if the Augmentation is successfully purchased, and false otherwise. - -installAugmentations --------------------- - -.. js:function:: installAugmentations(cbScript) - - :param string cbScript: - Optional callback script. This is a script that will automatically be run after Augmentations are installed (after the reset). - This script will be run with no arguments and 1 thread. It must be located on your home computer. - - If you are not in BitNode-4, then you must have Level 3 of Source-File 4 in order to use this function. - - This function will automatically install your Augmentations, resetting the game as usual. - - It will return true if successful, and false otherwise. diff --git a/doc/build/html/_sources/shortcuts.rst.txt b/doc/build/html/_sources/shortcuts.rst.txt deleted file mode 100644 index ffb19eb6b..000000000 --- a/doc/build/html/_sources/shortcuts.rst.txt +++ /dev/null @@ -1,101 +0,0 @@ -.. _shortcuts: - -Keyboard Shortcuts -================== -This page documents the various keyboard shortcuts that can be used in the game. - -Game Navigation ---------------- -These are used to switch between the different menus/tabs in the game. -These shortcuts are almost always available. Exceptions include: - -* Working at a company or for a faction -* Creating a program -* Taking a university class -* Training at a gym -* Active Mission (aka Hacking Mission) - -========== =========================================================================== -Shortcut Action -========== =========================================================================== -Alt + t Switch to :doc:`terminal` -Alt + c Switch to 'Stats' page -Alt + e Switch to Script Editor. Will open up the last-edited file or a new file -Alt + s Switch to 'Active Scripts' page -Alt + h Switch to 'Hacknet Nodes' page -Alt + w Switch to 'City' page -Alt + j Go to the company where you are employed ('Job' page on navigation menu) -Alt + r Go to Travel Agency in current City ('Travel' page on navigation menu) -Alt + p Switch to 'Create Program' page -Alt + f Switch to 'Factions' page -Alt + a Switch to 'Augmentations' page -Alt + u Switch to 'Tutorial' page -Alt + o Switch to 'Options' page -========== =========================================================================== - -Script Editor -------------- -These shortcuts are available only in the Script Editor - -============= =========================================================================== -Shortcut Action -============= =========================================================================== -Ctrl + b Save script and return to :doc:`terminal` -Ctrl + space Function autocompletion -============= =========================================================================== - -In the Script Editor you can configure your key binding mode to three preset options: - -* `Ace `_ -* Vim -* Emacs - -Terminal Shortcuts ------------------- -These shortcuts are available only in the :doc:`terminal` - -============= =========================================================================== -Shortcut Action -============= =========================================================================== -Up/Down arrow Cycle through previous commands -Ctrl + c Cancel a hack/analyze action -Ctrl + l Clear screen -Tab Autocomplete command -============= =========================================================================== - -Terminal Bash Shortcuts ------------------------ -These shortcuts were implemented to better emulate a bash shell. They must be enabled -in your :doc:`terminal`'s *.fconf* file. This can be done be entering the Terminal command:: - - nano .fconf - -and then setting the *ENABLE_BASH_HOTKEYS* option to 1. - -**Note that these Bash shortcuts override any other shortcuts defined in the game (unless otherwise noted), -as well as your browser's shortcuts** - -**Also note that more Bash-like shortcuts will be implemented in the future** - -============= =========================================================================== -Shortcut Action -============= =========================================================================== -Ctrl + c Clears current Terminal input (does NOT override default Ctrl + c command) -Ctrl + p Same as Up Arrow -Ctrl + m Same as Down Arrow -Ctrl + a Move cursor to beginning of line (same as 'Home' key) -Ctrl + e Move cursor to end of line (same as 'End' key) -Ctrl + b Move cursor to previous character -Alt + b Move cursor to previous word -Ctrl + f Move cursor to next character -Alt + f Move cursor to next word -Ctrl + h/d Delete previous character ('Backspace') -============= =========================================================================== - -Misc Shortcuts --------------- -============= =========================================================================== -Shortcut Action -============= =========================================================================== -Esc Close a script's log window -============= =========================================================================== diff --git a/doc/build/html/_sources/terminal.rst.txt b/doc/build/html/_sources/terminal.rst.txt deleted file mode 100644 index dcdd0a9c7..000000000 --- a/doc/build/html/_sources/terminal.rst.txt +++ /dev/null @@ -1,414 +0,0 @@ -.. _terminal: - -Terminal -======== -The Terminal is a console emulator program that lets you interface with all of the -Servers in the game. The Terminal can be accessed by clicking the 'Terminal' tab -on the navigation menu on the left-hand side of the game (you may need to expand -the 'Hacking' header in order to see the 'Terminal' tab). Alternatively, the keyboard -shortcut Alt + t can be used to open the Terminal. - -Configuration -------------- - -The terminal has a configuration file called .fconf. To edit this file, go to -the terminal and enter:: - - nano .fconf - -Commands --------- - -alias -^^^^^ - - $ alias [-g] [name="value"] - -Create or display aliases. An alias enables a replacement of a word with another -string. It can be used to abbreviate a commonly used command, or commonly used -parts of a command. The NAME of an alias defines the word that will be -replaced, while the VALUE defines what it will be replaced by. For example, -you could create the alias 'nuke' for the Terminal command 'run NUKE.exe' -using the following:: - - $ alias nuke="run NUKE.exe" - -Then, to run the NUKE.exe program you would just have to enter 'nuke' in -Terminal rather than the full command. It is important to note that 'default' -aliases will only be substituted for the first word of a Terminal command. For -example, if the following alias was set:: - - $ alias worm="HTTPWorm.exe" - -and then you tried to run the following terminal command:: - - $ run worm - -This would fail because the worm alias is not the first word of a Terminal -command. To allow an alias to be substituted anywhere in a Terminal command, -rather than just the first word, you must set it to be a global alias using the -g flag:: - - $ alias -g worm="HTTPWorm.exe" - -Now, the 'worm' alias will be substituted anytime it shows up as an individual word in -a Terminal command. - -Entering just the command 'alias' without any arguments prints the list of all -defined aliases in the reusable form 'alias NAME=VALUE' on the Terminal. - -The :ref:`unalias_terminal_command` Terminal command can be used to remove aliases. - -analyze -^^^^^^^ - -Prints details and statistics about the current server. The information that is -printed includes basic server details such as the hostname, whether the player -has root access, what ports are opened/closed, and also hacking-related information -such as an estimated chance to successfully hack, an estimate of how much money is -available on the server, etc. - -buy -^^^ - - $ buy [-l/program] - -Purchase a program through the Dark Web. Requires a TOR Router to use. - -If this command is ran with the '-l' flag, it will display a list of all programs -that can be purchased through the Dark Web, as well as their costs. - -Otherwise, the name of the program must be passed in as a parameter. This name -is NOT case-sensitive:: - - $ buy brutessh.exe - -Note that you do not need to be connected to the actual dark web server in order -to run this command. You can use this command at any time on the Terminal. - -cat -^^^ - - $ cat [filename] - -Display a message (.msg), literature (.lit), or text (.txt) file:: - - $ cat j1.msg - $ cat foo.lit - $ cat servers.txt - -check -^^^^^ - - $ check [script name] [args...] - -Print the logs of the script specified by the script name and arguments to the Terminal. -Each argument must be separated by a space. -**Remember that a running script is uniquely identified both by its name and the arguments that are used to start it**. So, -if a script was ran with the following arguments:: - - $ run foo.script 1 2 foodnstuff - -Then to run the 'check' command on this script you would have to pass the same arguments in:: - - $ check foo.script 1 2 foodnstuff - -clear/cls -^^^^^^^^^ - - -Clear the Terminal screen, deleting all of the text. Note that this does not -delete the user's command history, so using the up and down arrow keys is -still valid. Also note that this is permanent and there is no way to undo this. -Both 'clear' and 'cls' do the same thing:: - - $ clear - $ cls - -connect -^^^^^^^ - - $ connect [hostname/ip] - -Connect to a remote server. The hostname or IP address of the remote server must -be given as the argument to this command. Note that only servers that are immediately -adjacent to the current server in the network can be connected to. To see which -servers can be connected to, use the 'scan' command. - -download -^^^^^^^^ - -Downloads a script or text file to your computer (your real-life computer):: - - $ download masterScript.script - $ download importantInfo.txt - -You can also download all of your scripts/text files as a zip file using the following -Terminal commands:: - - $ download * - $ download *.script - $ download *.txt - -free -^^^^ - -Display's the memory usage on the current machine. Print the amount of RAM that -is available on the current server as well as how much of it is being used. - -hack -^^^^ - -Attempt to hack the current server. Requires root access in order to be run. - -Related: Hacking Mechanics (TODO Add link here when page gets made) - -help -^^^^ - - $ help [command] - -Display Terminal help information. Without arguments, 'help' prints a list of all -valid Terminal commands and a brief description of their functionality. You can -also pass the name of a Terminal command as an argument to 'help' to print more -detailed information about the Terminal command. Examples:: - - $ help alias - $ help scan-analyze - - -home -^^^^ - -Connect to your home computer. This will work no matter what server you are currently connected to. - -hostname -^^^^^^^^ - -Prints the hostname of the server you are currently connected to. - -ifconfig -^^^^^^^^ - -Prints the IP address of the server you are currently connected to. - -kill -^^^^ - - $ kill [script name] [args...] - -Kill the script specified by the script name and arguments. Each argument must -be separated by a space. Remember that a running script is uniquely identified -by both its name and the arguments that are used to start it. So, if a script -was ran with the following arguments:: - - $ run foo.script 50e3 sigma-cosmetics - -Then to kill this script the same arguments would have to be used:: - - $ kill foo.script 50e3 sigma-cosmetics - -Note that after issuing the 'kill' command for a script, it may take a few seconds for -the script to actually stop running. - -killall -^^^^^^^ - -Kills all scripts on the current server. - -ls -^^ - - $ ls [| grep pattern] - -Prints files on the current server to the Terminal screen. - -If this command is run with no arguments, then it prints all files on the current -server to the Terminal screen. The files will be displayed in alphabetical -order. - -The '| grep pattern' is an optional parameter that can be used to only display files -whose filenames match the specified pattern. For example, if you wanted to only display -files with the .script extension, you could use:: - - $ ls | grep .script - -Alternatively, if you wanted to display all files with the word *purchase* in the filename, -you could use:: - - $ ls | grep purchase - - -lscpu -^^^^^ - -Prints the number of CPU cores the current server has. - -mem -^^^ - - $ mem [script name] [-t] [num threads] - -Displays the amount of RAM needed to run the specified script with a single -thread. The command can also be used to print the amount of RAM needed to run -a script with multiple threads using the '-t' flag. If the '-t' flag is -specified, then an argument for the number of threads must be passed in -afterwards. Examples:: - - $ mem foo.script - $ mem foo.script -t 50 - -The first example above will print the amount of RAM needed to run 'foo.script' -with a single thread. The second example above will print the amount of RAM needed -to run 'foo.script' with 50 threads. - -nano -^^^^ - - $ nano [filename] - -Opens up the specified file in the Text Editor. Only scripts (.script, .ns, .js) and -text files (.txt) can be edited. If the file does not already exist, then a new -empty file will be created. - -ps -^^ - -Prints all scripts that are currently running on the current server. - -rm -^^ - - $ rm [filename] - -Removes the specified file from the current server. This works for every file type -except literature files (.lit). - -**WARNING: This is permanent and cannot be undone** - -run -^^^ - - $ run [file name] [-t] [num threads] [args...] - -Execute a program or a script. - -The '[-t]', '[num threads]', and '[args...]' arguments are only valid when -running a script. The '-t' flag is used to indicate that the script should -be run with the specified number of threads. If the flag is omitted, then -the script will be run with a single thread by default. If the '-t' flag is -used, then it MUST come immediately after the script name, and the -[num threads] argument MUST come immediately afterwards. - -[args...] represents a variable number of arguments that will be passed into -the script. See the documentation about script arguments. Each specified -argument must be separated by a space. - -**Examples** - -Run a program: - - run BruteSSH.exe - -Run *foo.script* with 50 threads and the arguments [1e3, 0.5, foodnstuff]:: - - run foo.script -t 50 1e3 0.5 foodnstuff - -scan -^^^^ - -Prints all immediately-available network connections. This will print a list -of all servers that you can currently connect to using the 'connect' Terminal command. - -scan-analyze -^^^^^^^^^^^^ - - $ scan-analyze [depth] - -Prints detailed information about all servers up to *[depth]* nodes away on the -network. Calling 'scan-analyze 1' will display information for the same servers -that are shown by the 'scan' Terminal command. This command also shows the -relative paths to reach each server. - -By default, the maximum depth that can be specified for 'scan-analyze' is 3. -However, once you have the *DeepscanV1.exe* and *DeepscanV2.exe* programs, you can -execute 'scan-analyze' with a depth up to 5 and 10, respectively. - -The information 'scan-analyze' displays about each server includes whether or -not you have root access to it, its required hacking level, the number of open -ports required to run NUKE.exe on it, and how much RAM it has. - -scp -^^^ - - $ scp [script name] [target server] - -Copies the specified script from the current server to the target server. -The second argument passed in must be the hostname or IP of the target server. - -sudov -^^^^^ - -Prints whether or not you have root access to the current server. - -tail -^^^^ - - $ tail [script name] [args...] - -Displays dynamic logs for the script specified by the script name and arguments. -Each argument must be separated by a space. Remember that a running script is -uniquely identified by both its name and the arguments that were used to run -it. So, if a script was ran with the following arguments:: - - $ run foo.script 10 50000 - -Then in order to check its logs with 'tail' the same arguments must be used:: - - $ tail foo.script 10 50000 - -theme -^^^^^ - - $ theme [preset] | [#background #text #highlight] - -Change the color of the game's user interface - -This command can be called with a preset theme. Currently, the supported presets are: - -* default -* muted -* solarized - -However, you can also specify your own color scheme using hex values. -To do so, you must specify three hex color values for the background -color, the text color, and the highlight color. These hex values must -be preceded by a pound sign (#) and must be either 3 or 6 digits. Example:: - - $ theme #ffffff #385 #235012 - -A color picker such as Google's can be used to get your desired hex color values - -top -^^^ - -Prints a list of all scripts running on the current server as well as their -thread count and how much RAM they are using in total. - -.. _unalias_terminal_command: - -unalias -^^^^^^^ - - $ unalias "[alias name]" - -Deletes the specified alias. Note that the double quotation marks are required. - -As an example, if an alias was declared using:: - - $ alias r="run" - -Then it could be removed using:: - - $ unalias "r" - -It is not necessary to differentiate between global and non-global aliases when using 'unalias' diff --git a/doc/build/html/_static/agogo.css b/doc/build/html/_static/agogo.css deleted file mode 100644 index 3ff9bd04b..000000000 --- a/doc/build/html/_static/agogo.css +++ /dev/null @@ -1,541 +0,0 @@ -/* - * agogo.css_t - * ~~~~~~~~~~~ - * - * Sphinx stylesheet -- agogo theme. - * - * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -* { - margin: 0px; - padding: 0px; -} - -body { - font-family: "Verdana", Arial, sans-serif; - line-height: 1.4em; - color: black; - background-color: #eeeeec; -} - - -/* Page layout */ - -div.header, div.content, div.footer { - width: 70em; - margin-left: auto; - margin-right: auto; -} - -div.header-wrapper { - background: #555573 url(bgtop.png) top left repeat-x; - border-bottom: 3px solid #2e3436; -} - - -/* Default body styles */ -a { - color: #ce5c00; -} - -div.bodywrapper a, div.footer a { - text-decoration: underline; -} - -.clearer { - clear: both; -} - -.left { - float: left; -} - -.right { - float: right; -} - -.line-block { - display: block; - margin-top: 1em; - margin-bottom: 1em; -} - -.line-block .line-block { - margin-top: 0; - margin-bottom: 0; - margin-left: 1.5em; -} - -h1, h2, h3, h4 { - font-family: "Georgia", "Times New Roman", serif; - font-weight: normal; - color: #3465a4; - margin-bottom: .8em; -} - -h1 { - color: #204a87; -} - -h2 { - padding-bottom: .5em; - border-bottom: 1px solid #3465a4; -} - -a.headerlink { - visibility: hidden; - color: #dddddd; - padding-left: .3em; -} - -h1:hover > a.headerlink, -h2:hover > a.headerlink, -h3:hover > a.headerlink, -h4:hover > a.headerlink, -h5:hover > a.headerlink, -h6:hover > a.headerlink, -dt:hover > a.headerlink, -caption:hover > a.headerlink, -p.caption:hover > a.headerlink, -div.code-block-caption:hover > a.headerlink { - visibility: visible; -} - -img { - border: 0; -} - -div.admonition { - margin-top: 10px; - margin-bottom: 10px; - padding: 2px 7px 1px 7px; - border-left: 0.2em solid black; -} - -p.admonition-title { - margin: 0px 10px 5px 0px; - font-weight: bold; -} - -dt:target, .highlighted { - background-color: #fbe54e; -} - -/* Header */ - -div.header { - padding-top: 10px; - padding-bottom: 10px; -} - -div.header .headertitle { - font-family: "Georgia", "Times New Roman", serif; - font-weight: normal; - font-size: 180%; - letter-spacing: .08em; - margin-bottom: .8em; -} - -div.header .headertitle a { - color: white; -} - -div.header div.rel { - margin-top: 1em; -} - -div.header div.rel a { - color: #fcaf3e; - letter-spacing: .1em; - text-transform: uppercase; -} - -p.logo { - float: right; -} - -img.logo { - border: 0; -} - - -/* Content */ -div.content-wrapper { - background-color: white; - padding-top: 20px; - padding-bottom: 20px; -} - -div.document { - width: 50em; - float: left; -} - -div.body { - padding-right: 2em; - text-align: justify; -} - -div.document h1 { - line-height: 120%; -} - -div.document ul { - margin: 1.5em; - list-style-type: square; -} - -div.document dd { - margin-left: 1.2em; - margin-top: .4em; - margin-bottom: 1em; -} - -div.document .section { - margin-top: 1.7em; -} -div.document .section:first-child { - margin-top: 0px; -} - -div.document div.highlight { - padding: 3px; - background-color: #eeeeec; - border-top: 2px solid #dddddd; - border-bottom: 2px solid #dddddd; - margin-top: .8em; - margin-bottom: .8em; -} - -div.document div.literal-block-wrapper { - margin-top: .8em; - margin-bottom: .8em; -} - -div.document div.literal-block-wrapper div.highlight { - margin: 0; -} - -div.document div.code-block-caption span.caption-number { - padding: 0.1em 0.3em; - font-style: italic; -} - -div.document div.code-block-caption span.caption-text { -} - -div.document h2 { - margin-top: .7em; -} - -div.document p { - margin-bottom: .5em; -} - -div.document li.toctree-l1 { - margin-bottom: 1em; -} - -div.document .descname { - font-weight: bold; -} - -div.document .sig-paren { - font-size: larger; -} - -div.document .docutils.literal { - background-color: #eeeeec; - padding: 1px; -} - -div.document .docutils.xref.literal { - background-color: transparent; - padding: 0px; -} - -div.document blockquote { - margin: 1em; -} - -div.document ol { - margin: 1.5em; -} - - -/* Sidebar */ - -div.sidebar { - width: 20em; - position:fixed; - right: 10%; - height:75%; - font-size: .9em; - overflow-y:auto; -} -/* -div.sidebar { - width: 20em; - float: right; - font-size: .9em; -} -*/ - -div.sidebar a, div.header a { - text-decoration: none; -} - -div.sidebar a:hover, div.header a:hover { - text-decoration: underline; -} - -div.sidebar h3 { - color: #2e3436; - text-transform: uppercase; - font-size: 130%; - letter-spacing: .1em; -} - -div.sidebar ul { - list-style-type: none; -} - -div.sidebar li.toctree-l1 a { - display: block; - padding: 1px; - border: 1px solid #dddddd; - background-color: #eeeeec; - margin-bottom: .4em; - padding-left: 3px; - color: #2e3436; -} - -div.sidebar li.toctree-l2 a { - background-color: transparent; - border: none; - margin-left: 1em; - border-bottom: 1px solid #dddddd; -} - -div.sidebar li.toctree-l3 a { - background-color: transparent; - border: none; - margin-left: 2em; - border-bottom: 1px solid #dddddd; -} - -div.sidebar li.toctree-l2:last-child a { - border-bottom: none; -} - -div.sidebar li.toctree-l1.current a { - border-right: 5px solid #fcaf3e; -} - -div.sidebar li.toctree-l1.current li.toctree-l2 a { - border-right: none; -} - -div.sidebar input[type="text"] { - width: 170px; -} - -div.sidebar input[type="submit"] { - width: 30px; -} - - -/* Footer */ - -div.footer-wrapper { - background: url(bgfooter.png) top left repeat-x; - border-top: 4px solid #babdb6; - padding-top: 10px; - padding-bottom: 10px; - min-height: 80px; -} - -div.footer, div.footer a { - color: #888a85; -} - -div.footer .right { - text-align: right; -} - -div.footer .left { - text-transform: uppercase; -} - - -/* Styles copied from basic theme */ - -img.align-left, .figure.align-left, object.align-left { - clear: left; - float: left; - margin-right: 1em; -} - -img.align-right, .figure.align-right, object.align-right { - clear: right; - float: right; - margin-left: 1em; -} - -img.align-center, .figure.align-center, object.align-center { - display: block; - margin-left: auto; - margin-right: auto; -} - -.align-left { - text-align: left; -} - -.align-center { - text-align: center; -} - -.align-right { - text-align: right; -} - -table caption span.caption-number { - font-style: italic; -} - -table caption span.caption-text { -} - -div.figure p.caption span.caption-number { - font-style: italic; -} - -div.figure p.caption span.caption-text { -} - -/* -- search page ----------------------------------------------------------- */ - -ul.search { - margin: 10px 0 0 20px; - padding: 0; -} - -ul.search li { - padding: 5px 0 5px 20px; - background-image: url(file.png); - background-repeat: no-repeat; - background-position: 0 7px; -} - -ul.search li a { - font-weight: bold; -} - -ul.search li div.context { - color: #888; - margin: 2px 0 0 30px; - text-align: left; -} - -ul.keywordmatches li.goodmatch a { - font-weight: bold; -} - -/* -- index page ------------------------------------------------------------ */ - -table.contentstable { - width: 90%; -} - -table.contentstable p.biglink { - line-height: 150%; -} - -a.biglink { - font-size: 1.3em; -} - -span.linkdescr { - font-style: italic; - padding-top: 5px; - font-size: 90%; -} - -/* -- general index --------------------------------------------------------- */ - -table.indextable td { - text-align: left; - vertical-align: top; -} - -table.indextable ul { - margin-top: 0; - margin-bottom: 0; - list-style-type: none; -} - -table.indextable > tbody > tr > td > ul { - padding-left: 0em; -} - -table.indextable tr.pcap { - height: 10px; -} - -table.indextable tr.cap { - margin-top: 10px; - background-color: #f2f2f2; -} - -img.toggler { - margin-right: 3px; - margin-top: 3px; - cursor: pointer; -} - -/* -- domain module index --------------------------------------------------- */ - -table.modindextable td { - padding: 2px; - border-collapse: collapse; -} - -/* -- viewcode extension ---------------------------------------------------- */ - -.viewcode-link { - float: right; -} - -.viewcode-back { - float: right; - font-family:: "Verdana", Arial, sans-serif; -} - -div.viewcode-block:target { - margin: -1px -3px; - padding: 0 3px; - background-color: #f4debf; - border-top: 1px solid #ac9; - border-bottom: 1px solid #ac9; -} - -div.code-block-caption { - background-color: #ddd; - color: #333; - padding: 2px 5px; - font-size: small; -} - -/* -- math display ---------------------------------------------------------- */ - -div.body div.math p { - text-align: center; -} - -span.eqno { - float: right; -} diff --git a/doc/build/html/_static/ajax-loader.gif b/doc/build/html/_static/ajax-loader.gif deleted file mode 100644 index 61faf8cab23993bd3e1560bff0668bd628642330..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 673 zcmZ?wbhEHb6krfw_{6~Q|Nno%(3)e{?)x>&1u}A`t?OF7Z|1gRivOgXi&7IyQd1Pl zGfOfQ60;I3a`F>X^fL3(@);C=vM_KlFfb_o=k{|A33hf2a5d61U}gjg=>Rd%XaNQW zW@Cw{|b%Y*pl8F?4B9 zlo4Fz*0kZGJabY|>}Okf0}CCg{u4`zEPY^pV?j2@h+|igy0+Kz6p;@SpM4s6)XEMg z#3Y4GX>Hjlml5ftdH$4x0JGdn8~MX(U~_^d!Hi)=HU{V%g+mi8#UGbE-*ao8f#h+S z2a0-5+vc7MU$e-NhmBjLIC1v|)9+Im8x1yacJ7{^tLX(ZhYi^rpmXm0`@ku9b53aN zEXH@Y3JaztblgpxbJt{AtE1ad1Ca>{v$rwwvK(>{m~Gf_=-Ro7Fk{#;i~+{{>QtvI yb2P8Zac~?~=sRA>$6{!(^3;ZP0TPFR(G_-UDU(8Jl0?(IXu$~#4A!880|o%~Al1tN diff --git a/doc/build/html/_static/basic.css b/doc/build/html/_static/basic.css deleted file mode 100644 index 90acfde50..000000000 --- a/doc/build/html/_static/basic.css +++ /dev/null @@ -1,639 +0,0 @@ -/* - * basic.css - * ~~~~~~~~~ - * - * Sphinx stylesheet -- basic theme. - * - * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/* -- main layout ----------------------------------------------------------- */ - -div.clearer { - clear: both; -} - -/* -- relbar ---------------------------------------------------------------- */ - -div.related { - width: 100%; - font-size: 90%; -} - -div.related h3 { - display: none; -} - -div.related ul { - margin: 0; - padding: 0 0 0 10px; - list-style: none; -} - -div.related li { - display: inline; -} - -div.related li.right { - float: right; - margin-right: 5px; -} - -/* -- sidebar --------------------------------------------------------------- */ - -div.sphinxsidebarwrapper { - padding: 10px 5px 0 10px; -} - -div.sphinxsidebar { - float: left; - width: 0px; - margin-left: -100%; - font-size: 90%; - word-wrap: break-word; - overflow-wrap : break-word; -} - -div.sphinxsidebar ul { - list-style: none; -} - -div.sphinxsidebar ul ul, -div.sphinxsidebar ul.want-points { - margin-left: 20px; - list-style: square; -} - -div.sphinxsidebar ul ul { - margin-top: 0; - margin-bottom: 0; -} - -div.sphinxsidebar form { - margin-top: 10px; -} - -div.sphinxsidebar input { - border: 1px solid #98dbcc; - font-family: sans-serif; - font-size: 1em; -} - -div.sphinxsidebar #searchbox input[type="text"] { - width: 170px; -} - -img { - border: 0; - max-width: 100%; -} - -/* -- search page ----------------------------------------------------------- */ - -ul.search { - margin: 10px 0 0 20px; - padding: 0; -} - -ul.search li { - padding: 5px 0 5px 20px; - background-image: url(file.png); - background-repeat: no-repeat; - background-position: 0 7px; -} - -ul.search li a { - font-weight: bold; -} - -ul.search li div.context { - color: #888; - margin: 2px 0 0 30px; - text-align: left; -} - -ul.keywordmatches li.goodmatch a { - font-weight: bold; -} - -/* -- index page ------------------------------------------------------------ */ - -table.contentstable { - width: 90%; - margin-left: auto; - margin-right: auto; -} - -table.contentstable p.biglink { - line-height: 150%; -} - -a.biglink { - font-size: 1.3em; -} - -span.linkdescr { - font-style: italic; - padding-top: 5px; - font-size: 90%; -} - -/* -- general index --------------------------------------------------------- */ - -table.indextable { - width: 100%; -} - -table.indextable td { - text-align: left; - vertical-align: top; -} - -table.indextable ul { - margin-top: 0; - margin-bottom: 0; - list-style-type: none; -} - -table.indextable > tbody > tr > td > ul { - padding-left: 0em; -} - -table.indextable tr.pcap { - height: 10px; -} - -table.indextable tr.cap { - margin-top: 10px; - background-color: #f2f2f2; -} - -img.toggler { - margin-right: 3px; - margin-top: 3px; - cursor: pointer; -} - -div.modindex-jumpbox { - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 1em 0 1em 0; - padding: 0.4em; -} - -div.genindex-jumpbox { - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 1em 0 1em 0; - padding: 0.4em; -} - -/* -- domain module index --------------------------------------------------- */ - -table.modindextable td { - padding: 2px; - border-collapse: collapse; -} - -/* -- general body styles --------------------------------------------------- */ - -div.body p, div.body dd, div.body li, div.body blockquote { - -moz-hyphens: auto; - -ms-hyphens: auto; - -webkit-hyphens: auto; - hyphens: auto; -} - -a.headerlink { - visibility: hidden; -} - -h1:hover > a.headerlink, -h2:hover > a.headerlink, -h3:hover > a.headerlink, -h4:hover > a.headerlink, -h5:hover > a.headerlink, -h6:hover > a.headerlink, -dt:hover > a.headerlink, -caption:hover > a.headerlink, -p.caption:hover > a.headerlink, -div.code-block-caption:hover > a.headerlink { - visibility: visible; -} - -div.body p.caption { - text-align: inherit; -} - -div.body td { - text-align: left; -} - -.first { - margin-top: 0 !important; -} - -p.rubric { - margin-top: 30px; - font-weight: bold; -} - -img.align-left, .figure.align-left, object.align-left { - clear: left; - float: left; - margin-right: 1em; -} - -img.align-right, .figure.align-right, object.align-right { - clear: right; - float: right; - margin-left: 1em; -} - -img.align-center, .figure.align-center, object.align-center { - display: block; - margin-left: auto; - margin-right: auto; -} - -.align-left { - text-align: left; -} - -.align-center { - text-align: center; -} - -.align-right { - text-align: right; -} - -/* -- sidebars -------------------------------------------------------------- */ - -div.sidebar { - margin: 0 0 0.5em 1em; - border: 1px solid #ddb; - padding: 7px 7px 0 7px; - background-color: #ffe; - width: 40%; - float: right; -} - -p.sidebar-title { - font-weight: bold; -} - -/* -- topics ---------------------------------------------------------------- */ - -div.topic { - border: 1px solid #ccc; - padding: 7px 7px 0 7px; - margin: 10px 0 10px 0; -} - -p.topic-title { - font-size: 1.1em; - font-weight: bold; - margin-top: 10px; -} - -/* -- admonitions ----------------------------------------------------------- */ - -div.admonition { - margin-top: 10px; - margin-bottom: 10px; - padding: 7px; -} - -div.admonition dt { - font-weight: bold; -} - -div.admonition dl { - margin-bottom: 0; -} - -p.admonition-title { - margin: 0px 10px 5px 0px; - font-weight: bold; -} - -div.body p.centered { - text-align: center; - margin-top: 25px; -} - -/* -- tables ---------------------------------------------------------------- */ - -table.docutils { - border: 0; - border-collapse: collapse; -} - -table caption span.caption-number { - font-style: italic; -} - -table caption span.caption-text { -} - -table.docutils td, table.docutils th { - padding: 1px 8px 1px 5px; - border-top: 0; - border-left: 0; - border-right: 0; - border-bottom: 1px solid #aaa; -} - -table.footnote td, table.footnote th { - border: 0 !important; -} - -th { - text-align: left; - padding-right: 5px; -} - -table.citation { - border-left: solid 1px gray; - margin-left: 1px; -} - -table.citation td { - border-bottom: none; -} - -/* -- figures --------------------------------------------------------------- */ - -div.figure { - margin: 0.5em; - padding: 0.5em; -} - -div.figure p.caption { - padding: 0.3em; -} - -div.figure p.caption span.caption-number { - font-style: italic; -} - -div.figure p.caption span.caption-text { -} - -/* -- field list styles ----------------------------------------------------- */ - -table.field-list td, table.field-list th { - border: 0 !important; -} - -.field-list ul { - margin: 0; - padding-left: 1em; -} - -.field-list p { - margin: 0; -} - -.field-name { - -moz-hyphens: manual; - -ms-hyphens: manual; - -webkit-hyphens: manual; - hyphens: manual; -} - -/* -- other body styles ----------------------------------------------------- */ - -ol.arabic { - list-style: decimal; -} - -ol.loweralpha { - list-style: lower-alpha; -} - -ol.upperalpha { - list-style: upper-alpha; -} - -ol.lowerroman { - list-style: lower-roman; -} - -ol.upperroman { - list-style: upper-roman; -} - -dl { - margin-bottom: 15px; -} - -dd p { - margin-top: 0px; -} - -dd ul, dd table { - margin-bottom: 10px; -} - -dd { - margin-top: 3px; - margin-bottom: 10px; - margin-left: 30px; -} - -dt:target, .highlighted { - background-color: #fbe54e; -} - -dl.glossary dt { - font-weight: bold; - font-size: 1.1em; -} - -.optional { - font-size: 1.3em; -} - -.sig-paren { - font-size: larger; -} - -.versionmodified { - font-style: italic; -} - -.system-message { - background-color: #fda; - padding: 5px; - border: 3px solid red; -} - -.footnote:target { - background-color: #ffa; -} - -.line-block { - display: block; - margin-top: 1em; - margin-bottom: 1em; -} - -.line-block .line-block { - margin-top: 0; - margin-bottom: 0; - margin-left: 1.5em; -} - -.guilabel, .menuselection { - font-family: sans-serif; -} - -.accelerator { - text-decoration: underline; -} - -.classifier { - font-style: oblique; -} - -abbr, acronym { - border-bottom: dotted 1px; - cursor: help; -} - -/* -- code displays --------------------------------------------------------- */ - -pre { - overflow: auto; - overflow-y: hidden; /* fixes display issues on Chrome browsers */ -} - -span.pre { - -moz-hyphens: none; - -ms-hyphens: none; - -webkit-hyphens: none; - hyphens: none; -} - -td.linenos pre { - padding: 5px 0px; - border: 0; - background-color: transparent; - color: #aaa; -} - -table.highlighttable { - margin-left: 0.5em; -} - -table.highlighttable td { - padding: 0 0.5em 0 0.5em; -} - -div.code-block-caption { - padding: 2px 5px; - font-size: small; -} - -div.code-block-caption code { - background-color: transparent; -} - -div.code-block-caption + div > div.highlight > pre { - margin-top: 0; -} - -div.code-block-caption span.caption-number { - padding: 0.1em 0.3em; - font-style: italic; -} - -div.code-block-caption span.caption-text { -} - -div.literal-block-wrapper { - padding: 1em 1em 0; -} - -div.literal-block-wrapper div.highlight { - margin: 0; -} - -code.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -code.descclassname { - background-color: transparent; -} - -code.xref, a code { - background-color: transparent; - font-weight: bold; -} - -h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { - background-color: transparent; -} - -.viewcode-link { - float: right; -} - -.viewcode-back { - float: right; - font-family: sans-serif; -} - -div.viewcode-block:target { - margin: -1px -10px; - padding: 0 10px; -} - -/* -- math display ---------------------------------------------------------- */ - -img.math { - vertical-align: middle; -} - -div.body div.math p { - text-align: center; -} - -span.eqno { - float: right; -} - -span.eqno a.headerlink { - position: relative; - left: 0px; - z-index: 1; -} - -div.math:hover a.headerlink { - visibility: visible; -} - -/* -- printout stylesheet --------------------------------------------------- */ - -@media print { - div.document, - div.documentwrapper, - div.bodywrapper { - margin: 0 !important; - width: 100%; - } - - div.sphinxsidebar, - div.related, - div.footer, - #top-link { - display: none; - } -} \ No newline at end of file diff --git a/doc/build/html/_static/bgfooter.png b/doc/build/html/_static/bgfooter.png deleted file mode 100644 index b7c7cadd4e6978aa7081fe672fcf5afc97516bda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 276 zcmV+v0qg#WP)qvnR6EfsQ*t~7O=UY2%BZy- zs#7>Lw$#|1-#yb5jZ8}CcXenmE?Bb?+emvZy3eu4G&!aT9i`%Ot1U0%(#mRx?NNc)^t8TJHA0R4$Di^IIL4X9&MVm&N-9#bE;?}xqq}wTrc0WUU#YK z#2JfT+O{=ipwX3&j4H~AegD$wD(9Ee_Le?vx(rq^B%Dj?^+nzae0J!bK00|W&N)Yz aUi|<^NiO;Hz(H~V0000P0IhA`JcOe?|*M3M!YD+&^mI=Y=U~-8S>8l1XAJ*3?jZZ Q8UO$Q07*qoM6N<$f;!4|TmS$7 diff --git a/doc/build/html/_static/comment-bright.png b/doc/build/html/_static/comment-bright.png deleted file mode 100644 index 15e27edb12ac25701ac0ac21b97b52bb4e45415e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 756 zcmVgfIX78 z$8Pzv({A~p%??+>KickCb#0FM1rYN=mBmQ&Nwp<#JXUhU;{|)}%&s>suq6lXw*~s{ zvHx}3C%<;wE5CH!BR{p5@ml9ws}y)=QN-kL2?#`S5d*6j zk`h<}j1>tD$b?4D^N9w}-k)bxXxFg>+#kme^xx#qg6FI-%iv2U{0h(Y)cs%5a|m%Pn_K3X_bDJ>EH#(Fb73Z zfUt2Q3B>N+ot3qb*DqbTZpFIn4a!#_R-}{?-~Hs=xSS6p&$sZ-k1zDdtqU`Y@`#qL z&zv-~)Q#JCU(dI)Hf;$CEnK=6CK50}q7~wdbI->?E07bJ0R;!GSQTs5Am`#;*WHjvHRvY?&$Lm-vq1a_BzocI^ULXV!lbMd%|^B#fY;XX)n<&R^L z=84u1e_3ziq;Hz-*k5~zwY3*oDKt0;bM@M@@89;@m*4RFgvvM_4;5LB!@OB@^WbVT zjl{t;a8_>od-~P4 m{5|DvB&z#xT;*OnJqG}gk~_7HcNkCr0000W zanA~u9RIXo;n7c96&U)YLgs-FGlx~*_c{Jgvesu1E5(8YEf&5wF=YFPcRe@1=MJmi zag(L*xc2r0(slpcN!vC5CUju;vHJkHc*&70_n2OZsK%O~A=!+YIw z7zLLl7~Z+~RgWOQ=MI6$#0pvpu$Q43 zP@36QAmu6!_9NPM?o<1_!+stoVRRZbW9#SPe!n;#A_6m8f}|xN1;H{`0RoXQ2LM47 zt(g;iZ6|pCb@h2xk&(}S3=EVBUO0e90m2Lp5CB<(SPIaB;n4))3JB87Or#XPOPcum z?<^(g+m9}VNn4Y&B`g8h{t_$+RB1%HKRY6fjtd-<7&EsU;vs0GM(Lmbhi%Gwcfs0FTF}T zL{_M6Go&E0Eg8FuB*(Yn+Z*RVTBE@10eIOb3El^MhO`GabDll(V0&FlJi2k^;q8af zkENdk2}x2)_KVp`5OAwXZM;dG0?M-S)xE1IKDi6BY@5%Or?#aZ9$gcX)dPZ&wA1a< z$rFXHPn|TBf`e?>Are8sKtKrKcjF$i^lp!zkL?C|y^vlHr1HXeVJd;1I~g&Ob-q)& z(fn7s-KI}G{wnKzg_U5G(V%bX6uk zIa+<@>rdmZYd!9Y=C0cuchrbIjuRB_Wq{-RXlic?flu1*_ux}x%(HDH&nT`k^xCeC ziHi1!ChH*sQ6|UqJpTTzX$aw8e(UfcS^f;6yBWd+(1-70zU(rtxtqR%j z-lsH|CKQJXqD{+F7V0OTv8@{~(wp(`oIP^ZykMWgR>&|RsklFMCnOo&Bd{le} zV5F6424Qzl;o2G%oVvmHgRDP9!=rK8fy^!yV8y*4p=??uIRrrr0?>O!(z*g5AvL2!4z0{sq%vhG*Po}`a<6%kTK5TNhtC8}rXNu&h^QH4A&Sk~Autm*s~45(H7+0bi^MraaRVzr05hQ3iK?j` zR#U@^i0WhkIHTg29u~|ypU?sXCQEQgXfObPW;+0YAF;|5XyaMAEM0sQ@4-xCZe=0e z7r$ofiAxn@O5#RodD8rh5D@nKQ;?lcf@tg4o+Wp44aMl~c47azN_(im0N)7OqdPBC zGw;353_o$DqGRDhuhU$Eaj!@m000000NkvXXu0mjfjZ7Z_ diff --git a/doc/build/html/_static/doctools.js b/doc/build/html/_static/doctools.js deleted file mode 100644 index 565497723..000000000 --- a/doc/build/html/_static/doctools.js +++ /dev/null @@ -1,287 +0,0 @@ -/* - * doctools.js - * ~~~~~~~~~~~ - * - * Sphinx JavaScript utilities for all documentation. - * - * :copyright: Copyright 2007-2017 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/** - * select a different prefix for underscore - */ -$u = _.noConflict(); - -/** - * make the code below compatible with browsers without - * an installed firebug like debugger -if (!window.console || !console.firebug) { - var names = ["log", "debug", "info", "warn", "error", "assert", "dir", - "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", - "profile", "profileEnd"]; - window.console = {}; - for (var i = 0; i < names.length; ++i) - window.console[names[i]] = function() {}; -} - */ - -/** - * small helper function to urldecode strings - */ -jQuery.urldecode = function(x) { - return decodeURIComponent(x).replace(/\+/g, ' '); -}; - -/** - * small helper function to urlencode strings - */ -jQuery.urlencode = encodeURIComponent; - -/** - * This function returns the parsed url parameters of the - * current request. Multiple values per key are supported, - * it will always return arrays of strings for the value parts. - */ -jQuery.getQueryParameters = function(s) { - if (typeof s == 'undefined') - s = document.location.search; - var parts = s.substr(s.indexOf('?') + 1).split('&'); - var result = {}; - for (var i = 0; i < parts.length; i++) { - var tmp = parts[i].split('=', 2); - var key = jQuery.urldecode(tmp[0]); - var value = jQuery.urldecode(tmp[1]); - if (key in result) - result[key].push(value); - else - result[key] = [value]; - } - return result; -}; - -/** - * highlight a given string on a jquery object by wrapping it in - * span elements with the given class name. - */ -jQuery.fn.highlightText = function(text, className) { - function highlight(node) { - if (node.nodeType == 3) { - var val = node.nodeValue; - var pos = val.toLowerCase().indexOf(text); - if (pos >= 0 && !jQuery(node.parentNode).hasClass(className)) { - var span = document.createElement("span"); - span.className = className; - span.appendChild(document.createTextNode(val.substr(pos, text.length))); - node.parentNode.insertBefore(span, node.parentNode.insertBefore( - document.createTextNode(val.substr(pos + text.length)), - node.nextSibling)); - node.nodeValue = val.substr(0, pos); - } - } - else if (!jQuery(node).is("button, select, textarea")) { - jQuery.each(node.childNodes, function() { - highlight(this); - }); - } - } - return this.each(function() { - highlight(this); - }); -}; - -/* - * backward compatibility for jQuery.browser - * This will be supported until firefox bug is fixed. - */ -if (!jQuery.browser) { - jQuery.uaMatch = function(ua) { - ua = ua.toLowerCase(); - - var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || - /(webkit)[ \/]([\w.]+)/.exec(ua) || - /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || - /(msie) ([\w.]+)/.exec(ua) || - ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || - []; - - return { - browser: match[ 1 ] || "", - version: match[ 2 ] || "0" - }; - }; - jQuery.browser = {}; - jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; -} - -/** - * Small JavaScript module for the documentation. - */ -var Documentation = { - - init : function() { - this.fixFirefoxAnchorBug(); - this.highlightSearchWords(); - this.initIndexTable(); - - }, - - /** - * i18n support - */ - TRANSLATIONS : {}, - PLURAL_EXPR : function(n) { return n == 1 ? 0 : 1; }, - LOCALE : 'unknown', - - // gettext and ngettext don't access this so that the functions - // can safely bound to a different name (_ = Documentation.gettext) - gettext : function(string) { - var translated = Documentation.TRANSLATIONS[string]; - if (typeof translated == 'undefined') - return string; - return (typeof translated == 'string') ? translated : translated[0]; - }, - - ngettext : function(singular, plural, n) { - var translated = Documentation.TRANSLATIONS[singular]; - if (typeof translated == 'undefined') - return (n == 1) ? singular : plural; - return translated[Documentation.PLURALEXPR(n)]; - }, - - addTranslations : function(catalog) { - for (var key in catalog.messages) - this.TRANSLATIONS[key] = catalog.messages[key]; - this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); - this.LOCALE = catalog.locale; - }, - - /** - * add context elements like header anchor links - */ - addContextElements : function() { - $('div[id] > :header:first').each(function() { - $('\u00B6'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this headline')). - appendTo(this); - }); - $('dt[id]').each(function() { - $('\u00B6'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this definition')). - appendTo(this); - }); - }, - - /** - * workaround a firefox stupidity - * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075 - */ - fixFirefoxAnchorBug : function() { - if (document.location.hash) - window.setTimeout(function() { - document.location.href += ''; - }, 10); - }, - - /** - * highlight the search words provided in the url in the text - */ - highlightSearchWords : function() { - var params = $.getQueryParameters(); - var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; - if (terms.length) { - var body = $('div.body'); - if (!body.length) { - body = $('body'); - } - window.setTimeout(function() { - $.each(terms, function() { - body.highlightText(this.toLowerCase(), 'highlighted'); - }); - }, 10); - $('