diff --git a/code/modules/station_goals/bluespace_tap.dm b/code/modules/station_goals/bluespace_tap.dm index 1f027e36fee..60a37770ef5 100644 --- a/code/modules/station_goals/bluespace_tap.dm +++ b/code/modules/station_goals/bluespace_tap.dm @@ -174,7 +174,9 @@ /obj/item/food/sliceable/xenomeatbread //maybe add some dangerous/special food here, ie robobuger? ) -#define BASE_ENERGY_CONVERSION 4e-6 +/// Points generated per cycle for each Watt of power consumption +#define POINTS_PER_W 4e-6 +/// Amount of points generated per cycle per 50KW for the first 500KW #define BASE_POINTS 2 /** @@ -199,13 +201,6 @@ interact_offline = TRUE luminosity = 1 - /// Correspond to power required for a mining level, first entry for level 1, etc. - var/list/power_needs = list(1 KW, 2 KW, 5 KW, 10 KW, 15 KW, - 25 KW, 50 KW, 100 KW, 250 KW, 500 KW, - 1 MW, 2 MW, 5 MW, 10 MW, 15 MW, - 20 MW, 25 MW, 30 MW, 40 MW, 50 MW, - 60 MW, 70 MW, 80 MW, 90 MW, 100 MW) - /// list of possible products var/static/product_list = list( new /datum/data/bluespace_tap_product("Unknown Exotic Hat", /obj/effect/spawner/lootdrop/bluespace_tap/hat, 5000), @@ -214,37 +209,31 @@ new /datum/data/bluespace_tap_product("Unknown Biological Artifact", /obj/effect/spawner/lootdrop/bluespace_tap/organic, 20000) ) - /// The level the machine is currently mining at. 0 means off - var/input_level = 0 - /// The machine you WANT the machine to mine at. It will try to match this. - var/desired_level = 0 + /// The amount of power being used for mining at the moment (Watts) + var/mining_power = 0 + /// The power you WANT the machine to use for mining. It will try to match this. (Watts) + var/desired_mining_power = 0 + /// Points mined this cycle + var/mined_points = 0 /// Available mining points var/points = 0 /// The total points earned by this machine so far, for tracking station goal and highscore var/total_points = 0 - /// How much power the machine needs per processing tick at the current level. - var/actual_power_usage = 0 // Tweak these and active_power_consumption to balance power generation - /// Max power input level, I don't expect this to be ever reached. It has been reached. - var/max_level = 25 - /// amount of points generated per level for the first 10 levels - var/base_points = BASE_POINTS - /// amount of points generated per process cycle per unit of energy consumed - var/conversion_ratio = BASE_ENERGY_CONVERSION - /// How high the machine can be run before it starts having a chance for dimension breaches. - var/safe_levels = 15 /// Whether or not auto shutdown will engage when portals open var/auto_shutdown = TRUE /// Whether or not stabilizers will engage to prevent or reduce the chance of portals opening var/stabilizers = TRUE - /// Amount of power the stabilizers consume + /// Amount of power the stabilizers consume (Watts) var/stabilizer_power = 0 - /// Amount of overhead in levels. Each level of overhead allows stabilizing 15+overhead. - var/overhead = 0 + /// Whether or not mining power will be prevented from exceedingn stabilizer power + var/stabilizer_priority = TRUE /// When event triggers this will hold references to all portals so we can fix the sprite after they're broken var/list/active_nether_portals = list() + /// The amount of portals waiting to be spawned. Used mostly for UI and icon stuff. + var/spawning = 0 /obj/machinery/power/bluespace_tap/Initialize(mapload) . = ..() @@ -280,7 +269,7 @@ underlays.Cut() - if(length(active_nether_portals)) + if(length(active_nether_portals) || spawning) . += "cascade" set_light(15, 5, "#ff0000") return @@ -296,19 +285,19 @@ underlays += emissive_appearance(icon, "light_mask") /obj/machinery/power/bluespace_tap/proc/get_icon_state_number() - switch(input_level) - if(0) - return 0 - if(1 to 3) + switch(mining_power) + if(50 KW to 3 MW) return 1 - if(4 to 8) + if(3 MW to 8 MW) return 2 - if(9 to 11) + if(8 MW to 11 MW) return 3 - if(12 to 15) + if(11 MW to 15 MW) return 4 - if(16 to INFINITY) + if(15 MW to INFINITY) return 5 + else + return 0 /obj/machinery/power/bluespace_tap/power_change() . = ..() @@ -331,99 +320,96 @@ update_icon() /** - * Increases the desired mining level + * Sets the desired mining power (Watts) * - * Increases the desired mining level, that + * Sets the desired mining power, that * the machine tries to reach if there * is enough power for it. Note that it does - * NOT increase the actual mining level directly. - */ -/obj/machinery/power/bluespace_tap/proc/increase_level() - if(desired_level < max_level) - desired_level++ -/** - * Decreases the desired mining level - * - * Decreases the desired mining level, that - * the machine tries to reach if there - * is enough power for it. Note that it does - * NOT decrease the actual mining level directly. - */ -/obj/machinery/power/bluespace_tap/proc/decrease_level() - if(desired_level > 0) - desired_level-- - -/** - * Sets the desired mining level - * - * Sets the desired mining level, that - * the machine tries to reach if there - * is enough power for it. Note that it does - * NOT change the actual mining level directly. + * NOT change the actual mining power directly. * Arguments: - * * t_level - The level we try to set it at, between 0 and max_level + * * t_power - The power we try to set it at, between 0 and max_level */ -/obj/machinery/power/bluespace_tap/proc/set_level(t_level) - if(t_level < 0) - return - if(t_level > max_level) - return - desired_level = t_level -/** - * Gets the amount of power at a set input level - * - * Gets the amount of power (in W) a set input level needs. - * Note that this is not necessarily the current power use. - * * i_level - The hypothetical input level for which we want to know the power use. - */ -/obj/machinery/power/bluespace_tap/proc/get_power_use(i_level) - if(!i_level) - return 0 - return power_needs[i_level] +/obj/machinery/power/bluespace_tap/proc/set_power(t_power) + desired_mining_power = max(t_power, 0) + // Round down to nearest MW if above 1 MW + if(desired_mining_power > 1 MW) + desired_mining_power = desired_mining_power - (desired_mining_power % (1 MW)) /obj/machinery/power/bluespace_tap/process() - actual_power_usage = get_power_use(input_level) - if(get_surplus() < actual_power_usage) //not enough power, so turn down a level - input_level-- - update_icon() - return // and no mining gets done - if(actual_power_usage) - consume_direct_power(actual_power_usage) - //2 points per level up to level 10 and 4 points per MW (or 5 when emmaged). - var/points_to_add = min(base_points * 10, base_points * input_level) + actual_power_usage * (conversion_ratio + emagged * 1e-6) - points += points_to_add // point generation, emagging gets you 'free' points at the cost of higher anomaly chance - total_points += points_to_add - // Between levels 15 and 18 get one level of overhead per 5MW of surplus power. Above level 18 get 1 level per 10MW of surplus power. - overhead = input_level >= 18 ? get_surplus() * 1e-7 : get_surplus() * 2e-7 - stabilizer_power = stabilizers && input_level > 15 ? input_level >= 18 ? min(get_surplus() , (input_level - 15) * 1e7) : min(get_surplus() , (input_level - 15) * 0.5e7) : 0 - consume_direct_power(stabilizer_power) - // actual input level changes slowly - // holy shit every proccess this - if(input_level < desired_level && (get_surplus() + get_power_use(input_level) + stabilizer_power >= get_power_use(input_level + 1))) - input_level++ - update_icon() - else if(input_level > desired_level) - input_level-- - update_icon() - // Stabilizers reduce the chance of portals. prob with values less than 0 treat it as 0. - if(prob(input_level - (safe_levels + stabilizers * overhead) + (emagged * 5))) + // Power we could mine with (Watts) + mining_power = get_surplus() + + // Round down to the nearest MW if above a MW + if(mining_power > 1 MW) + mining_power = mining_power - mining_power % (1 MW) + + // Always try to use all available power for mining if emagged + if(emagged) + desired_mining_power = mining_power + + /* + * Stabilizers activate above 15MW of mining power + * Stabilizers consume up to 1MW for each 1MW of mining power, consuming less between 15 and 30MW of mining power + * If stabilizers have priority they will always consume enough power to stabilize the BSH, limiting mining + * Emagging disables stabilizers + */ + if(stabilizer_priority) + // stabilizer power is what we need to stabilize the current mining level, but no more than half the available power. + stabilizer_power = \ + clamp(\ + desired_mining_power - clamp(30 MW - desired_mining_power, 0, 15 MW), \ + 0, \ + mining_power / 2) \ + * (stabilizers && !emagged) + else + // stabilizer power is however much power we have left, but no more than we need to stabilize our desired mining power. + stabilizer_power = \ + clamp(mining_power - desired_mining_power, \ + 0, \ + desired_mining_power - clamp(30 MW - desired_mining_power, 0, 15 MW)) \ + * (stabilizers && !emagged) + + // Actual mining power is what the desired mining power we set, unless we don't have enough power to satisfty that. + mining_power = min(desired_mining_power, mining_power - stabilizer_power) + + consume_direct_power(mining_power + stabilizer_power) + + // 2 points per 50 KW up to 20 and 4 points per MW (or 5 when emmaged). + mined_points = min(BASE_POINTS * (mining_power / (50 KW)) , 20) + mining_power * (POINTS_PER_W + emagged / (1 MW)) + points += mined_points + total_points += mined_points + update_icon() + /* + * Portal chance is 0.1% per cycle per difference of 1MW between the stabilizer and mining power + * This should translate to portals spawning every 33:20 minutes for 1 difference of 1MW + * And about every 3:20 minutes for a 10MW difference + * Emagging guarantees a chance of at least 5% + * Prob treats values less than 0 as 0. + * Emagging garuantees a chance of at least 5%. + * Prob treats values less than 0 as 0. + */ + + if(prob((mining_power - clamp(30 MW - mining_power, 0, 15 MW) - stabilizer_power) / (10 MW)) + (emagged * 5)) var/area/our_area = get_area(src) - if(!length(active_nether_portals)) + if((!spawning || !length(active_nether_portals))) GLOB.major_announcement.Announce("Unexpected power spike during Bluespace Harvester Operation. Extra-dimensional intruder alert. Expected location: [our_area.name]. [emagged ? "DANGER: Emergency shutdown failed! Please proceed with manual shutdown." : auto_shutdown ? "Emergency shutdown initiated." : "Automatic shutdown disabled."]", "Bluespace Harvester Malfunction", 'sound/AI/harvester.ogg') if(!emagged && auto_shutdown) - input_level = 0 //emergency shutdown unless it is disabled - desired_level = 0 - start_nether_portaling(rand(1 , 3) + max((level - 15 - overhead) / 3 , 0)) + desired_mining_power = 0 //emergency shutdown unless it is disabled + // An extra portal for each 30MW above 15 + start_nether_portaling(rand(1 , 3) + round(max((mining_power - 15 MW) / (30 MW) , 0)), TRUE) -/obj/machinery/power/bluespace_tap/proc/start_nether_portaling(amount) +/obj/machinery/power/bluespace_tap/proc/start_nether_portaling(amount, new_incursion = FALSE) + if(new_incursion) + spawning += amount var/turf/location = locate(x + rand(-5, 5), y + rand(-5, 5), z) var/obj/structure/spawner/nether/bluespace_tap/P = new /obj/structure/spawner/nether/bluespace_tap(location) amount-- + spawning-- active_nether_portals += P P.linked_source_object = src - // 1 Extra mob for each 2 levels above 15. - P.max_mobs = 5 + max((input_level - 15) / 2, 0) + // 1 Extra mob for each 20 MW of mining power above 15MW. + P.max_mobs = 5 + max((mining_power - 15 MW) / (20 MW), 0) update_icon() if(amount) addtimer(CALLBACK(src, PROC_REF(start_nether_portaling), amount), rand(3, 5) SECONDS) @@ -431,20 +417,18 @@ /obj/machinery/power/bluespace_tap/ui_data(mob/user) var/list/data = list() - data["desiredLevel"] = desired_level - data["inputLevel"] = input_level + data["desiredMiningPower"] = desired_mining_power + data["miningPower"] = mining_power data["points"] = points data["totalPoints"] = total_points - data["powerUse"] = actual_power_usage + stabilizer_power + data["powerUse"] = mining_power + stabilizer_power data["availablePower"] = get_surplus() - data["maxLevel"] = max_level data["emagged"] = emagged - data["safeLevels"] = safe_levels - data["nextLevelPower"] = get_power_use(input_level + 1) data["autoShutown"] = auto_shutdown - data["overhead"] = overhead data["stabilizers"] = stabilizers data["stabilizerPower"] = stabilizer_power + data["stabilizerPriority"] = stabilizer_priority + data["portaling"] = (length(active_nether_portals) || spawning) /// A list of lists, each inner list equals a datum var/list/listed_items = list() @@ -460,18 +444,12 @@ /obj/machinery/power/bluespace_tap/attack_hand(mob/user) add_fingerprint(user) - if(length(active_nether_portals)) //this would be cool if we made unique TGUI for this - to_chat(user, "UNKNOWN INTERFERENCE ... UNRESPONSIVE") - return ui_interact(user) /obj/machinery/power/bluespace_tap/attack_ghost(mob/user) ui_interact(user) -/obj/machinery/power/bluespace_tap/attack_ai(mob/user) - if(length(active_nether_portals)) //this would be cool if we made unique TGUI for this - to_chat(user, "UNKNOWN INTERFERENCE ... UNRESPONSIVE") - return +/obj/machinery/power/bluespace_tap/attack_ai(mob/user) //this would be cool if we made unique TGUI for this ui_interact(user) /** @@ -499,12 +477,8 @@ return . = TRUE // we want to refresh in all the cases below switch(action) - if("decrease") - decrease_level() - if("increase") - increase_level() if("set") - set_level(text2num(params["set_level"])) + set_power(text2num(params["set_power"])) if("vend")//it's not really vending as producing, but eh var/key = text2num(params["target"]) produce(key) @@ -512,6 +486,8 @@ auto_shutdown = !auto_shutdown if("stabilizers") stabilizers = !stabilizers + if("stabilizer_priority") + stabilizer_priority = !stabilizer_priority /obj/machinery/power/bluespace_tap/ui_state(mob/user) return GLOB.default_state @@ -527,7 +503,6 @@ if(emagged) return emagged = TRUE - desired_level = max_level do_sparks(5, FALSE, src) if(user) user.visible_message("[user] disables the [src]'s safeties'.", "You disable the [src]'s safeties'.") @@ -568,5 +543,6 @@
Device highly experimental. Not for sale. Do not operate near small children or vital NT assets. Do not tamper with machine. In case of existential dread, stop machine immediately. \ Please document any and all extradimensional incursions. In case of imminent death, please leave said documentation in plain sight for clean-up teams to recover.
" -#undef BASE_ENERGY_CONVERSION +#undef POINTS_PER_W #undef BASE_POINTS +ER_W diff --git a/tgui/packages/tgui/interfaces/BluespaceTap.js b/tgui/packages/tgui/interfaces/BluespaceTap.js index a0433fd65d8..c96c663b23b 100644 --- a/tgui/packages/tgui/interfaces/BluespaceTap.js +++ b/tgui/packages/tgui/interfaces/BluespaceTap.js @@ -1,30 +1,68 @@ import { useBackend } from '../backend'; -import { Button, Collapsible, Stack, LabeledList, NoticeBox, Section, Slider, Box } from '../components'; +import { + Button, + Collapsible, + Stack, + LabeledList, + NoticeBox, + Section, + Slider, + Box, + NumberInput, + Dimmer, + Flex, + Icon, + Blink, +} from '../components'; import { Window } from '../layouts'; import { formatPower } from '../format'; +export const Incursion = (props, context) => { + const { data } = useBackend(context); + const { portaling } = data; + if (portaling) { + return ( +m;)d[m]=i[m++];return d}return S}(),k)},88739:function(T,r,n){"use strict";var e=n(4246),a=n(22603).some,t=e.aTypedArray,o=e.exportTypedArrayMethod;o("some",function(){function f(b){return a(t(this),b,arguments.length>1?arguments[1]:void 0)}return f}())},60415:function(T,r,n){"use strict";var e=n(74685),a=n(71138),t=n(40033),o=n(10320),f=n(90274),b=n(4246),k=n(652),S=n(19228),y=n(5026),h=n(9342),i=b.aTypedArray,c=b.exportTypedArrayMethod,m=e.Uint16Array,u=m&&a(m.prototype.sort),d=!!u&&!(t(function(){u(new m(2),null)})&&t(function(){u(new m(2),{})})),s=!!u&&!t(function(){if(y)return y<74;if(k)return k<67;if(S)return!0;if(h)return h<602;var C=new m(516),N=Array(516),v,p;for(v=0;v<516;v++)p=v%4,C[v]=515-v,N[v]=v-2*p+3;for(u(C,function(g,V){return(g/4|0)-(V/4|0)}),v=0;v<516;v++)if(C[v]!==N[v])return!0}),l=function(N){return function(v,p){return N!==void 0?+N(v,p)||0:p!==p?-1:v!==v?1:v===0&&p===0?1/v>0&&1/p<0?1:-1:v>p}};c("sort",function(){function C(N){return N!==void 0&&o(N),s?u(this,N):f(i(this),l(N))}return C}(),!s||d)},72532:function(T,r,n){"use strict";var e=n(4246),a=n(10188),t=n(13912),o=n(31082),f=e.aTypedArray,b=e.exportTypedArrayMethod;b("subarray",function(){function k(S,y){var h=f(this),i=h.length,c=t(S,i),m=o(h);return new m(h.buffer,h.byteOffset+c*h.BYTES_PER_ELEMENT,a((y===void 0?i:t(y,i))-c))}return k}())},62207:function(T,r,n){"use strict";var e=n(74685),a=n(61267),t=n(4246),o=n(40033),f=n(54602),b=e.Int8Array,k=t.aTypedArray,S=t.exportTypedArrayMethod,y=[].toLocaleString,h=!!b&&o(function(){y.call(new b(1))}),i=o(function(){return[1,2].toLocaleString()!==new b([1,2]).toLocaleString()})||!o(function(){b.prototype.toLocaleString.call([1,2])});S("toLocaleString",function(){function c(){return a(y,h?f(k(this)):k(this),f(arguments))}return c}(),i)},906:function(T,r,n){"use strict";var e=n(4246).exportTypedArrayMethod,a=n(40033),t=n(74685),o=n(67250),f=t.Uint8Array,b=f&&f.prototype||{},k=[].toString,S=o([].join);a(function(){k.call({})})&&(k=function(){function h(){return S(this)}return h}());var y=b.toString!==k;e("toString",k,y)},78824:function(T,r,n){"use strict";var e=n(80185);e("Uint16",function(a){return function(){function t(o,f,b){return a(this,o,f,b)}return t}()})},72846:function(T,r,n){"use strict";var e=n(80185);e("Uint32",function(a){return function(){function t(o,f,b){return a(this,o,f,b)}return t}()})},24575:function(T,r,n){"use strict";var e=n(80185);e("Uint8",function(a){return function(){function t(o,f,b){return a(this,o,f,b)}return t}()})},71968:function(T,r,n){"use strict";var e=n(80185);e("Uint8",function(a){return function(){function t(o,f,b){return a(this,o,f,b)}return t}()},!0)},80040:function(T,r,n){"use strict";var e=n(50730),a=n(74685),t=n(67250),o=n(30145),f=n(81969),b=n(45150),k=n(39895),S=n(77568),y=n(5419).enforce,h=n(40033),i=n(21820),c=Object,m=Array.isArray,u=c.isExtensible,d=c.isFrozen,s=c.isSealed,l=c.freeze,C=c.seal,N=!a.ActiveXObject&&"ActiveXObject"in a,v,p=function(E){return function(){function P(){return E(this,arguments.length?arguments[0]:void 0)}return P}()},g=b("WeakMap",p,k),V=g.prototype,B=t(V.set),I=function(){return e&&h(function(){var E=l([]);return B(new g,E,1),!d(E)})};if(i)if(N){v=k.getConstructor(p,"WeakMap",!0),f.enable();var L=t(V.delete),w=t(V.has),A=t(V.get);o(V,{delete:function(){function x(E){if(S(E)&&!u(E)){var P=y(this);return P.frozen||(P.frozen=new v),L(this,E)||P.frozen.delete(E)}return L(this,E)}return x}(),has:function(){function x(E){if(S(E)&&!u(E)){var P=y(this);return P.frozen||(P.frozen=new v),w(this,E)||P.frozen.has(E)}return w(this,E)}return x}(),get:function(){function x(E){if(S(E)&&!u(E)){var P=y(this);return P.frozen||(P.frozen=new v),w(this,E)?A(this,E):P.frozen.get(E)}return A(this,E)}return x}(),set:function(){function x(E,P){if(S(E)&&!u(E)){var j=y(this);j.frozen||(j.frozen=new v),w(this,E)?B(this,E,P):j.frozen.set(E,P)}else B(this,E,P);return this}return x}()})}else I()&&o(V,{set:function(){function x(E,P){var j;return m(E)&&(d(E)?j=l:s(E)&&(j=C)),B(this,E,P),j&&j(E),this}return x}()})},90846:function(T,r,n){"use strict";n(80040)},67042:function(T,r,n){"use strict";var e=n(45150),a=n(39895);e("WeakSet",function(t){return function(){function o(){return t(this,arguments.length?arguments[0]:void 0)}return o}()},a)},40348:function(T,r,n){"use strict";n(67042)},5606:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(60375).clear;e({global:!0,bind:!0,enumerable:!0,forced:a.clearImmediate!==t},{clearImmediate:t})},83006:function(T,r,n){"use strict";n(5606),n(27807)},25764:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(37713),o=n(10320),f=n(24986),b=n(40033),k=n(58310),S=b(function(){return k&&Object.getOwnPropertyDescriptor(a,"queueMicrotask").value.length!==1});e({global:!0,enumerable:!0,dontCallGetSet:!0,forced:S},{queueMicrotask:function(){function y(h){f(arguments.length,1),t(o(h))}return y}()})},27807:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(60375).set,o=n(78362),f=a.setImmediate?o(t,!1):t;e({global:!0,bind:!0,enumerable:!0,forced:a.setImmediate!==f},{setImmediate:f})},45569:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(78362),o=t(a.setInterval,!0);e({global:!0,bind:!0,forced:a.setInterval!==o},{setInterval:o})},5213:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(78362),o=t(a.setTimeout,!0);e({global:!0,bind:!0,forced:a.setTimeout!==o},{setTimeout:o})},69401:function(T,r,n){"use strict";n(45569),n(5213)},7435:function(T){"use strict";/**
+ */var t=r.BoxWithSampleText=function(){function o(f){return(0,e.normalizeProps)((0,e.createComponentVNode)(2,a.Box,Object.assign({},f,{children:[(0,e.createComponentVNode)(2,a.Box,{italic:!0,children:"Jackdaws love my big sphinx of quartz."}),(0,e.createComponentVNode)(2,a.Box,{mt:1,bold:!0,children:"The wide electrification of the southern provinces will give a powerful impetus to the growth of agriculture."})]})))}return o}()},67160:function(){},23542:function(){},30386:function(){},98996:function(){},50578:function(){},4444:function(){},77870:function(){},23632:function(){},56492:function(){},39108:function(){},11714:function(){},73492:function(){},49641:function(){},17570:function(){},61858:function(){},32882:function(){},70752:function(T,r,n){var e={"./pai_atmosphere.js":80818,"./pai_bioscan.js":23903,"./pai_directives.js":64988,"./pai_doorjack.js":13813,"./pai_main_menu.js":66025,"./pai_manifest.js":2983,"./pai_medrecords.js":40758,"./pai_messenger.js":98599,"./pai_radio.js":50775,"./pai_secrecords.js":48623,"./pai_signaler.js":47297};function a(o){var f=t(o);return n(f)}function t(o){if(!n.o(e,o)){var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}return e[o]}a.keys=function(){return Object.keys(e)},a.resolve=t,T.exports=a,a.id=70752},59395:function(T,r,n){var e={"./pda_atmos_scan.js":78532,"./pda_janitor.js":40253,"./pda_main_menu.js":58293,"./pda_manifest.js":58059,"./pda_medical.js":18147,"./pda_messenger.js":77595,"./pda_mule.js":24635,"./pda_nanobank.js":23734,"./pda_notes.js":97085,"./pda_power.js":57513,"./pda_secbot.js":99808,"./pda_security.js":77168,"./pda_signaler.js":21773,"./pda_status_display.js":81857,"./pda_supplyrecords.js":70287};function a(o){var f=t(o);return n(f)}function t(o){if(!n.o(e,o)){var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}return e[o]}a.keys=function(){return Object.keys(e)},a.resolve=t,T.exports=a,a.id=59395},32054:function(T,r,n){var e={"./AICard":1090,"./AICard.js":1090,"./AIFixer":39454,"./AIFixer.js":39454,"./APC":88422,"./APC.js":88422,"./ATM":99660,"./ATM.js":99660,"./AccountsUplinkTerminal":86423,"./AccountsUplinkTerminal.js":86423,"./AiAirlock":56793,"./AiAirlock.js":56793,"./AirAlarm":72475,"./AirAlarm.js":72475,"./AirlockAccessController":12333,"./AirlockAccessController.js":12333,"./AirlockElectronics":28736,"./AirlockElectronics.js":28736,"./AlertModal":47365,"./AlertModal.tsx":47365,"./AppearanceChanger":71824,"./AppearanceChanger.js":71824,"./AtmosAlertConsole":72285,"./AtmosAlertConsole.js":72285,"./AtmosControl":65805,"./AtmosControl.js":65805,"./AtmosFilter":87816,"./AtmosFilter.js":87816,"./AtmosMixer":52977,"./AtmosMixer.js":52977,"./AtmosPump":11748,"./AtmosPump.js":11748,"./AtmosTankControl":69321,"./AtmosTankControl.js":69321,"./Autolathe":59179,"./Autolathe.js":59179,"./BioChipPad":5147,"./BioChipPad.js":5147,"./Biogenerator":64273,"./Biogenerator.js":64273,"./BloomEdit":47823,"./BloomEdit.js":47823,"./BlueSpaceArtilleryControl":18621,"./BlueSpaceArtilleryControl.js":18621,"./BluespaceTap":27629,"./BluespaceTap.js":27629,"./BodyScanner":33758,"./BodyScanner.js":33758,"./BookBinder":67963,"./BookBinder.js":67963,"./BotCall":61925,"./BotCall.js":61925,"./BotClean":20464,"./BotClean.js":20464,"./BotFloor":69479,"./BotFloor.js":69479,"./BotHonk":59887,"./BotHonk.js":59887,"./BotMed":80063,"./BotMed.js":80063,"./BotSecurity":74439,"./BotSecurity.js":74439,"./BrigCells":10833,"./BrigCells.js":10833,"./BrigTimer":45761,"./BrigTimer.js":45761,"./CameraConsole":26300,"./CameraConsole.js":26300,"./Canister":52927,"./Canister.js":52927,"./CardComputer":51793,"./CardComputer.js":51793,"./CargoConsole":64083,"./CargoConsole.js":64083,"./ChangelogView":87331,"./ChangelogView.js":87331,"./ChemDispenser":36108,"./ChemDispenser.js":36108,"./ChemHeater":13146,"./ChemHeater.js":13146,"./ChemMaster":56541,"./ChemMaster.tsx":56541,"./CloningConsole":37173,"./CloningConsole.js":37173,"./CloningPod":98723,"./CloningPod.js":98723,"./CoinMint":18259,"./CoinMint.tsx":18259,"./ColourMatrixTester":8444,"./ColourMatrixTester.js":8444,"./CommunicationsComputer":63818,"./CommunicationsComputer.js":63818,"./CompostBin":20562,"./CompostBin.js":20562,"./Contractor":21813,"./Contractor.js":21813,"./ConveyorSwitch":54151,"./ConveyorSwitch.js":54151,"./CrewMonitor":73169,"./CrewMonitor.js":73169,"./Cryo":63987,"./Cryo.js":63987,"./CryopodConsole":86099,"./CryopodConsole.js":86099,"./DNAModifier":12692,"./DNAModifier.js":12692,"./DestinationTagger":41074,"./DestinationTagger.js":41074,"./DisposalBin":46500,"./DisposalBin.js":46500,"./DnaVault":33233,"./DnaVault.js":33233,"./DroneConsole":33681,"./DroneConsole.js":33681,"./EFTPOS":17263,"./EFTPOS.js":17263,"./ERTManager":76382,"./ERTManager.js":76382,"./EconomyManager":90217,"./EconomyManager.js":90217,"./Electropack":82565,"./Electropack.js":82565,"./Emojipedia":11243,"./Emojipedia.tsx":11243,"./EvolutionMenu":36730,"./EvolutionMenu.js":36730,"./ExosuitFabricator":17370,"./ExosuitFabricator.js":17370,"./ExperimentConsole":59128,"./ExperimentConsole.js":59128,"./ExternalAirlockController":97086,"./ExternalAirlockController.js":97086,"./FaxMachine":96142,"./FaxMachine.js":96142,"./FilingCabinet":74123,"./FilingCabinet.js":74123,"./FloorPainter":83767,"./FloorPainter.js":83767,"./GPS":53424,"./GPS.js":53424,"./GeneModder":89124,"./GeneModder.js":89124,"./GenericCrewManifest":73053,"./GenericCrewManifest.js":73053,"./GhostHudPanel":42914,"./GhostHudPanel.js":42914,"./GlandDispenser":25825,"./GlandDispenser.js":25825,"./GravityGen":10270,"./GravityGen.js":10270,"./GuestPass":48657,"./GuestPass.js":48657,"./HandheldChemDispenser":67834,"./HandheldChemDispenser.js":67834,"./HealthSensor":46098,"./HealthSensor.js":46098,"./Holodeck":36771,"./Holodeck.js":36771,"./Instrument":25471,"./Instrument.js":25471,"./KeyComboModal":13618,"./KeyComboModal.tsx":13618,"./KeycardAuth":35655,"./KeycardAuth.js":35655,"./KitchenMachine":62955,"./KitchenMachine.js":62955,"./LawManager":9525,"./LawManager.js":9525,"./LibraryComputer":85066,"./LibraryComputer.js":85066,"./LibraryManager":9516,"./LibraryManager.js":9516,"./ListInputModal":90447,"./ListInputModal.tsx":90447,"./MODsuit":77613,"./MODsuit.js":77613,"./MagnetController":78624,"./MagnetController.js":78624,"./MechBayConsole":72106,"./MechBayConsole.js":72106,"./MechaControlConsole":7466,"./MechaControlConsole.js":7466,"./MedicalRecords":79625,"./MedicalRecords.js":79625,"./MerchVendor":54989,"./MerchVendor.js":54989,"./MiningVendor":87684,"./MiningVendor.js":87684,"./NTRecruiter":59783,"./NTRecruiter.js":59783,"./Newscaster":64713,"./Newscaster.js":64713,"./Noticeboard":48286,"./Noticeboard.tsx":48286,"./NuclearBomb":41166,"./NuclearBomb.js":41166,"./NumberInputModal":52416,"./NumberInputModal.tsx":52416,"./OperatingComputer":1218,"./OperatingComputer.js":1218,"./Orbit":46892,"./Orbit.js":46892,"./OreRedemption":15421,"./OreRedemption.js":15421,"./PAI":52754,"./PAI.js":52754,"./PDA":85175,"./PDA.js":85175,"./Pacman":68654,"./Pacman.js":68654,"./PanDEMIC":1701,"./PanDEMIC.tsx":1701,"./ParticleAccelerator":67921,"./ParticleAccelerator.js":67921,"./PdaPainter":71432,"./PdaPainter.js":71432,"./PersonalCrafting":33388,"./PersonalCrafting.js":33388,"./Photocopier":56150,"./Photocopier.js":56150,"./PoolController":84676,"./PoolController.js":84676,"./PortablePump":57003,"./PortablePump.js":57003,"./PortableScrubber":70069,"./PortableScrubber.js":70069,"./PortableTurret":59955,"./PortableTurret.js":59955,"./PowerMonitor":61631,"./PowerMonitor.js":61631,"./PrisonerImplantManager":50992,"./PrisonerImplantManager.js":50992,"./PrisonerShuttleConsole":53952,"./PrisonerShuttleConsole.js":53952,"./PrizeCounter":97852,"./PrizeCounter.tsx":97852,"./RCD":94813,"./RCD.js":94813,"./RPD":18738,"./RPD.js":18738,"./Radio":80299,"./Radio.js":80299,"./ReagentGrinder":48125,"./ReagentGrinder.js":48125,"./ReagentsEditor":58262,"./ReagentsEditor.tsx":58262,"./RemoteSignaler":30207,"./RemoteSignaler.js":30207,"./RequestConsole":25472,"./RequestConsole.js":25472,"./RndBackupConsole":9861,"./RndBackupConsole.js":9861,"./RndConsole":12644,"./RndConsole/":12644,"./RndConsole/DataDiskMenu":37556,"./RndConsole/DataDiskMenu.js":37556,"./RndConsole/DeconstructionMenu":58147,"./RndConsole/DeconstructionMenu.js":58147,"./RndConsole/LatheCategory":16830,"./RndConsole/LatheCategory.js":16830,"./RndConsole/LatheChemicalStorage":70497,"./RndConsole/LatheChemicalStorage.js":70497,"./RndConsole/LatheMainMenu":70864,"./RndConsole/LatheMainMenu.js":70864,"./RndConsole/LatheMaterialStorage":42878,"./RndConsole/LatheMaterialStorage.js":42878,"./RndConsole/LatheMaterials":52662,"./RndConsole/LatheMaterials.js":52662,"./RndConsole/LatheMenu":9681,"./RndConsole/LatheMenu.js":9681,"./RndConsole/LatheSearch":68198,"./RndConsole/LatheSearch.js":68198,"./RndConsole/LinkMenu":81421,"./RndConsole/LinkMenu.js":81421,"./RndConsole/SettingsMenu":6256,"./RndConsole/SettingsMenu.js":6256,"./RndConsole/index":12644,"./RndConsole/index.js":12644,"./RndNetController":29205,"./RndNetController.js":29205,"./RndServer":63315,"./RndServer.js":63315,"./RobotSelfDiagnosis":26109,"./RobotSelfDiagnosis.js":26109,"./RoboticsControlConsole":97997,"./RoboticsControlConsole.js":97997,"./Safe":54431,"./Safe.js":54431,"./SatelliteControl":29740,"./SatelliteControl.js":29740,"./SecureStorage":44162,"./SecureStorage.js":44162,"./SecurityRecords":6272,"./SecurityRecords.js":6272,"./SeedExtractor":5099,"./SeedExtractor.js":5099,"./ShuttleConsole":2916,"./ShuttleConsole.js":2916,"./ShuttleManipulator":39401,"./ShuttleManipulator.js":39401,"./Sleeper":88284,"./Sleeper.js":88284,"./SlotMachine":21597,"./SlotMachine.js":21597,"./Smartfridge":46348,"./Smartfridge.js":46348,"./Smes":86162,"./Smes.js":86162,"./SolarControl":63584,"./SolarControl.js":63584,"./SpawnersMenu":38096,"./SpawnersMenu.js":38096,"./SpecMenu":30586,"./SpecMenu.js":30586,"./StackCraft":95152,"./StackCraft.js":95152,"./StationAlertConsole":38307,"./StationAlertConsole.js":38307,"./StationTraitsPanel":96091,"./StationTraitsPanel.tsx":96091,"./StripMenu":39409,"./StripMenu.tsx":39409,"./SuitStorage":69514,"./SuitStorage.js":69514,"./SupermatterMonitor":15022,"./SupermatterMonitor.js":15022,"./SyndicateComputerSimple":46029,"./SyndicateComputerSimple.js":46029,"./TEG":36372,"./TEG.js":36372,"./TachyonArray":56441,"./TachyonArray.js":56441,"./Tank":1754,"./Tank.js":1754,"./TankDispenser":7579,"./TankDispenser.js":7579,"./TcommsCore":16136,"./TcommsCore.js":16136,"./TcommsRelay":88046,"./TcommsRelay.js":88046,"./Teleporter":20802,"./Teleporter.js":20802,"./TelescienceConsole":48517,"./TelescienceConsole.js":48517,"./TempGun":21800,"./TempGun.js":21800,"./TextInputModal":24410,"./TextInputModal.tsx":24410,"./ThermoMachine":25036,"./ThermoMachine.js":25036,"./TransferValve":20035,"./TransferValve.js":20035,"./TurbineComputer":78166,"./TurbineComputer.js":78166,"./Uplink":52847,"./Uplink.js":52847,"./Vending":12261,"./Vending.js":12261,"./VolumeMixer":68971,"./VolumeMixer.js":68971,"./VotePanel":2510,"./VotePanel.js":2510,"./Wires":30138,"./Wires.js":30138,"./WizardApprenticeContract":21400,"./WizardApprenticeContract.js":21400,"./common/AccessList":49148,"./common/AccessList.js":49148,"./common/AtmosScan":26991,"./common/AtmosScan.js":26991,"./common/BeakerContents":85870,"./common/BeakerContents.js":85870,"./common/BotStatus":92963,"./common/BotStatus.js":92963,"./common/ComplexModal":3939,"./common/ComplexModal.js":3939,"./common/CrewManifest":41874,"./common/CrewManifest.js":41874,"./common/InputButtons":19203,"./common/InputButtons.tsx":19203,"./common/InterfaceLockNoticeBox":195,"./common/InterfaceLockNoticeBox.js":195,"./common/Loader":51057,"./common/Loader.tsx":51057,"./common/LoginInfo":321,"./common/LoginInfo.js":321,"./common/LoginScreen":5485,"./common/LoginScreen.js":5485,"./common/Operating":62411,"./common/Operating.js":62411,"./common/Signaler":13545,"./common/Signaler.js":13545,"./common/SimpleRecords":41984,"./common/SimpleRecords.js":41984,"./common/TemporaryNotice":22091,"./common/TemporaryNotice.js":22091,"./pai/pai_atmosphere":80818,"./pai/pai_atmosphere.js":80818,"./pai/pai_bioscan":23903,"./pai/pai_bioscan.js":23903,"./pai/pai_directives":64988,"./pai/pai_directives.js":64988,"./pai/pai_doorjack":13813,"./pai/pai_doorjack.js":13813,"./pai/pai_main_menu":66025,"./pai/pai_main_menu.js":66025,"./pai/pai_manifest":2983,"./pai/pai_manifest.js":2983,"./pai/pai_medrecords":40758,"./pai/pai_medrecords.js":40758,"./pai/pai_messenger":98599,"./pai/pai_messenger.js":98599,"./pai/pai_radio":50775,"./pai/pai_radio.js":50775,"./pai/pai_secrecords":48623,"./pai/pai_secrecords.js":48623,"./pai/pai_signaler":47297,"./pai/pai_signaler.js":47297,"./pda/pda_atmos_scan":78532,"./pda/pda_atmos_scan.js":78532,"./pda/pda_janitor":40253,"./pda/pda_janitor.js":40253,"./pda/pda_main_menu":58293,"./pda/pda_main_menu.js":58293,"./pda/pda_manifest":58059,"./pda/pda_manifest.js":58059,"./pda/pda_medical":18147,"./pda/pda_medical.js":18147,"./pda/pda_messenger":77595,"./pda/pda_messenger.js":77595,"./pda/pda_mule":24635,"./pda/pda_mule.js":24635,"./pda/pda_nanobank":23734,"./pda/pda_nanobank.js":23734,"./pda/pda_notes":97085,"./pda/pda_notes.js":97085,"./pda/pda_power":57513,"./pda/pda_power.js":57513,"./pda/pda_secbot":99808,"./pda/pda_secbot.js":99808,"./pda/pda_security":77168,"./pda/pda_security.js":77168,"./pda/pda_signaler":21773,"./pda/pda_signaler.js":21773,"./pda/pda_status_display":81857,"./pda/pda_status_display.js":81857,"./pda/pda_supplyrecords":70287,"./pda/pda_supplyrecords.js":70287};function a(o){var f=t(o);return n(f)}function t(o){if(!n.o(e,o)){var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}return e[o]}a.keys=function(){return Object.keys(e)},a.resolve=t,T.exports=a,a.id=32054},4085:function(T,r,n){var e={"./Blink.stories.js":51364,"./BlockQuote.stories.js":32453,"./Box.stories.js":83531,"./Button.stories.js":74198,"./ByondUi.stories.js":51956,"./Collapsible.stories.js":17466,"./Flex.stories.js":89241,"./ImageButton.stories.js":48779,"./Input.stories.js":21394,"./Popper.stories.js":43932,"./ProgressBar.stories.js":33270,"./Stack.stories.js":77766,"./Storage.stories.js":30187,"./Tabs.stories.js":46554,"./Themes.stories.js":53276,"./Tooltip.stories.js":28717};function a(o){var f=t(o);return n(f)}function t(o){if(!n.o(e,o)){var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}return e[o]}a.keys=function(){return Object.keys(e)},a.resolve=t,T.exports=a,a.id=4085},10320:function(T,r,n){"use strict";var e=n(55747),a=n(89393),t=TypeError;T.exports=function(o){if(e(o))return o;throw new t(a(o)+" is not a function")}},32606:function(T,r,n){"use strict";var e=n(1031),a=n(89393),t=TypeError;T.exports=function(o){if(e(o))return o;throw new t(a(o)+" is not a constructor")}},35908:function(T,r,n){"use strict";var e=n(45015),a=String,t=TypeError;T.exports=function(o){if(e(o))return o;throw new t("Can't set "+a(o)+" as a prototype")}},80575:function(T,r,n){"use strict";var e=n(24697),a=n(80674),t=n(74595).f,o=e("unscopables"),f=Array.prototype;f[o]===void 0&&t(f,o,{configurable:!0,value:a(null)}),T.exports=function(b){f[o][b]=!0}},35483:function(T,r,n){"use strict";var e=n(50233).charAt;T.exports=function(a,t,o){return t+(o?e(a,t).length:1)}},60077:function(T,r,n){"use strict";var e=n(21287),a=TypeError;T.exports=function(t,o){if(e(o,t))return t;throw new a("Incorrect invocation")}},30365:function(T,r,n){"use strict";var e=n(77568),a=String,t=TypeError;T.exports=function(o){if(e(o))return o;throw new t(a(o)+" is not an object")}},70377:function(T){"use strict";T.exports=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"},3782:function(T,r,n){"use strict";var e=n(40033);T.exports=e(function(){if(typeof ArrayBuffer=="function"){var a=new ArrayBuffer(8);Object.isExtensible(a)&&Object.defineProperty(a,"a",{value:8})}})},4246:function(T,r,n){"use strict";var e=n(70377),a=n(58310),t=n(74685),o=n(55747),f=n(77568),b=n(45299),k=n(2281),S=n(89393),y=n(37909),h=n(55938),i=n(73936),c=n(21287),m=n(36917),d=n(76649),u=n(24697),s=n(16738),l=n(5419),C=l.enforce,N=l.get,v=t.Int8Array,p=v&&v.prototype,g=t.Uint8ClampedArray,V=g&&g.prototype,B=v&&m(v),I=p&&m(p),L=Object.prototype,w=t.TypeError,A=u("toStringTag"),x=s("TYPED_ARRAY_TAG"),E="TypedArrayConstructor",P=e&&!!d&&k(t.opera)!=="Opera",j=!1,M,R,D,_={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},W={BigInt64Array:8,BigUint64Array:8},U=function(){function le(he){if(!f(he))return!1;var q=k(he);return q==="DataView"||b(_,q)||b(W,q)}return le}(),K=function le(he){var q=m(he);if(f(q)){var re=N(q);return re&&b(re,E)?re[E]:le(q)}},G=function(he){if(!f(he))return!1;var q=k(he);return b(_,q)||b(W,q)},$=function(he){if(G(he))return he;throw new w("Target is not a typed array")},Q=function(he){if(o(he)&&(!d||c(B,he)))return he;throw new w(S(he)+" is not a typed array constructor")},J=function(he,q,re,ae){if(a){if(re)for(var ie in _){var Z=t[ie];if(Z&&b(Z.prototype,he))try{delete Z.prototype[he]}catch(ne){try{Z.prototype[he]=q}catch(te){}}}(!I[he]||re)&&h(I,he,re?q:P&&p[he]||q,ae)}},se=function(he,q,re){var ae,ie;if(a){if(d){if(re){for(ae in _)if(ie=t[ae],ie&&b(ie,he))try{delete ie[he]}catch(Z){}}if(!B[he]||re)try{return h(B,he,re?q:P&&B[he]||q)}catch(Z){}else return}for(ae in _)ie=t[ae],ie&&(!ie[he]||re)&&h(ie,he,q)}};for(M in _)R=t[M],D=R&&R.prototype,D?C(D)[E]=R:P=!1;for(M in W)R=t[M],D=R&&R.prototype,D&&(C(D)[E]=R);if((!P||!o(B)||B===Function.prototype)&&(B=function(){function le(){throw new w("Incorrect invocation")}return le}(),P))for(M in _)t[M]&&d(t[M],B);if((!P||!I||I===L)&&(I=B.prototype,P))for(M in _)t[M]&&d(t[M].prototype,I);if(P&&m(V)!==I&&d(V,I),a&&!b(I,A)){j=!0,i(I,A,{configurable:!0,get:function(){function le(){return f(this)?this[x]:void 0}return le}()});for(M in _)t[M]&&y(t[M],x,M)}T.exports={NATIVE_ARRAY_BUFFER_VIEWS:P,TYPED_ARRAY_TAG:j&&x,aTypedArray:$,aTypedArrayConstructor:Q,exportTypedArrayMethod:J,exportTypedArrayStaticMethod:se,getTypedArrayConstructor:K,isView:U,isTypedArray:G,TypedArray:B,TypedArrayPrototype:I}},37336:function(T,r,n){"use strict";var e=n(74685),a=n(67250),t=n(58310),o=n(70377),f=n(70520),b=n(37909),k=n(73936),S=n(30145),y=n(40033),h=n(60077),i=n(61365),c=n(10188),m=n(43806),d=n(95867),u=n(91784),s=n(36917),l=n(76649),C=n(88471),N=n(54602),v=n(5781),p=n(5774),g=n(84925),V=n(5419),B=f.PROPER,I=f.CONFIGURABLE,L="ArrayBuffer",w="DataView",A="prototype",x="Wrong length",E="Wrong index",P=V.getterFor(L),j=V.getterFor(w),M=V.set,R=e[L],D=R,_=D&&D[A],W=e[w],U=W&&W[A],K=Object.prototype,G=e.Array,$=e.RangeError,Q=a(C),J=a([].reverse),se=u.pack,le=u.unpack,he=function(Ne){return[Ne&255]},q=function(Ne){return[Ne&255,Ne>>8&255]},re=function(Ne){return[Ne&255,Ne>>8&255,Ne>>16&255,Ne>>24&255]},ae=function(Ne){return Ne[3]<<24|Ne[2]<<16|Ne[1]<<8|Ne[0]},ie=function(Ne){return se(d(Ne),23,4)},Z=function(Ne){return se(Ne,52,8)},ne=function(Ne,Be,be){k(Ne[A],Be,{configurable:!0,get:function(){function Le(){return be(this)[Be]}return Le}()})},te=function(Ne,Be,be,Le){var we=j(Ne),xe=m(be),Re=!!Le;if(xe+Be>we.byteLength)throw new $(E);var ze=we.bytes,ke=xe+we.byteOffset,de=N(ze,ke,ke+Be);return Re?de:J(de)},fe=function(Ne,Be,be,Le,we,xe){var Re=j(Ne),ze=m(be),ke=Le(+we),de=!!xe;if(ze+Be>Re.byteLength)throw new $(E);for(var pe=Re.bytes,ye=ze+Re.byteOffset,ve=0;ve m;)u[m]=i[m++];return u}return S}(),k)},88739:function(T,r,n){"use strict";var e=n(4246),a=n(22603).some,t=e.aTypedArray,o=e.exportTypedArrayMethod;o("some",function(){function f(b){return a(t(this),b,arguments.length>1?arguments[1]:void 0)}return f}())},60415:function(T,r,n){"use strict";var e=n(74685),a=n(71138),t=n(40033),o=n(10320),f=n(90274),b=n(4246),k=n(652),S=n(19228),y=n(5026),h=n(9342),i=b.aTypedArray,c=b.exportTypedArrayMethod,m=e.Uint16Array,d=m&&a(m.prototype.sort),u=!!d&&!(t(function(){d(new m(2),null)})&&t(function(){d(new m(2),{})})),s=!!d&&!t(function(){if(y)return y<74;if(k)return k<67;if(S)return!0;if(h)return h<602;var C=new m(516),N=Array(516),v,p;for(v=0;v<516;v++)p=v%4,C[v]=515-v,N[v]=v-2*p+3;for(d(C,function(g,V){return(g/4|0)-(V/4|0)}),v=0;v<516;v++)if(C[v]!==N[v])return!0}),l=function(N){return function(v,p){return N!==void 0?+N(v,p)||0:p!==p?-1:v!==v?1:v===0&&p===0?1/v>0&&1/p<0?1:-1:v>p}};c("sort",function(){function C(N){return N!==void 0&&o(N),s?d(this,N):f(i(this),l(N))}return C}(),!s||u)},72532:function(T,r,n){"use strict";var e=n(4246),a=n(10188),t=n(13912),o=n(31082),f=e.aTypedArray,b=e.exportTypedArrayMethod;b("subarray",function(){function k(S,y){var h=f(this),i=h.length,c=t(S,i),m=o(h);return new m(h.buffer,h.byteOffset+c*h.BYTES_PER_ELEMENT,a((y===void 0?i:t(y,i))-c))}return k}())},62207:function(T,r,n){"use strict";var e=n(74685),a=n(61267),t=n(4246),o=n(40033),f=n(54602),b=e.Int8Array,k=t.aTypedArray,S=t.exportTypedArrayMethod,y=[].toLocaleString,h=!!b&&o(function(){y.call(new b(1))}),i=o(function(){return[1,2].toLocaleString()!==new b([1,2]).toLocaleString()})||!o(function(){b.prototype.toLocaleString.call([1,2])});S("toLocaleString",function(){function c(){return a(y,h?f(k(this)):k(this),f(arguments))}return c}(),i)},906:function(T,r,n){"use strict";var e=n(4246).exportTypedArrayMethod,a=n(40033),t=n(74685),o=n(67250),f=t.Uint8Array,b=f&&f.prototype||{},k=[].toString,S=o([].join);a(function(){k.call({})})&&(k=function(){function h(){return S(this)}return h}());var y=b.toString!==k;e("toString",k,y)},78824:function(T,r,n){"use strict";var e=n(80185);e("Uint16",function(a){return function(){function t(o,f,b){return a(this,o,f,b)}return t}()})},72846:function(T,r,n){"use strict";var e=n(80185);e("Uint32",function(a){return function(){function t(o,f,b){return a(this,o,f,b)}return t}()})},24575:function(T,r,n){"use strict";var e=n(80185);e("Uint8",function(a){return function(){function t(o,f,b){return a(this,o,f,b)}return t}()})},71968:function(T,r,n){"use strict";var e=n(80185);e("Uint8",function(a){return function(){function t(o,f,b){return a(this,o,f,b)}return t}()},!0)},80040:function(T,r,n){"use strict";var e=n(50730),a=n(74685),t=n(67250),o=n(30145),f=n(81969),b=n(45150),k=n(39895),S=n(77568),y=n(5419).enforce,h=n(40033),i=n(21820),c=Object,m=Array.isArray,d=c.isExtensible,u=c.isFrozen,s=c.isSealed,l=c.freeze,C=c.seal,N=!a.ActiveXObject&&"ActiveXObject"in a,v,p=function(E){return function(){function P(){return E(this,arguments.length?arguments[0]:void 0)}return P}()},g=b("WeakMap",p,k),V=g.prototype,B=t(V.set),I=function(){return e&&h(function(){var E=l([]);return B(new g,E,1),!u(E)})};if(i)if(N){v=k.getConstructor(p,"WeakMap",!0),f.enable();var L=t(V.delete),w=t(V.has),A=t(V.get);o(V,{delete:function(){function x(E){if(S(E)&&!d(E)){var P=y(this);return P.frozen||(P.frozen=new v),L(this,E)||P.frozen.delete(E)}return L(this,E)}return x}(),has:function(){function x(E){if(S(E)&&!d(E)){var P=y(this);return P.frozen||(P.frozen=new v),w(this,E)||P.frozen.has(E)}return w(this,E)}return x}(),get:function(){function x(E){if(S(E)&&!d(E)){var P=y(this);return P.frozen||(P.frozen=new v),w(this,E)?A(this,E):P.frozen.get(E)}return A(this,E)}return x}(),set:function(){function x(E,P){if(S(E)&&!d(E)){var j=y(this);j.frozen||(j.frozen=new v),w(this,E)?B(this,E,P):j.frozen.set(E,P)}else B(this,E,P);return this}return x}()})}else I()&&o(V,{set:function(){function x(E,P){var j;return m(E)&&(u(E)?j=l:s(E)&&(j=C)),B(this,E,P),j&&j(E),this}return x}()})},90846:function(T,r,n){"use strict";n(80040)},67042:function(T,r,n){"use strict";var e=n(45150),a=n(39895);e("WeakSet",function(t){return function(){function o(){return t(this,arguments.length?arguments[0]:void 0)}return o}()},a)},40348:function(T,r,n){"use strict";n(67042)},5606:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(60375).clear;e({global:!0,bind:!0,enumerable:!0,forced:a.clearImmediate!==t},{clearImmediate:t})},83006:function(T,r,n){"use strict";n(5606),n(27807)},25764:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(37713),o=n(10320),f=n(24986),b=n(40033),k=n(58310),S=b(function(){return k&&Object.getOwnPropertyDescriptor(a,"queueMicrotask").value.length!==1});e({global:!0,enumerable:!0,dontCallGetSet:!0,forced:S},{queueMicrotask:function(){function y(h){f(arguments.length,1),t(o(h))}return y}()})},27807:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(60375).set,o=n(78362),f=a.setImmediate?o(t,!1):t;e({global:!0,bind:!0,enumerable:!0,forced:a.setImmediate!==f},{setImmediate:f})},45569:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(78362),o=t(a.setInterval,!0);e({global:!0,bind:!0,forced:a.setInterval!==o},{setInterval:o})},5213:function(T,r,n){"use strict";var e=n(63964),a=n(74685),t=n(78362),o=t(a.setTimeout,!0);e({global:!0,bind:!0,forced:a.setTimeout!==o},{setTimeout:o})},69401:function(T,r,n){"use strict";n(45569),n(5213)},7435:function(T){"use strict";/**
* @file
* @copyright 2020 Aleksej Komarov
* @license MIT
- */var r,n=[],e=[],a=function(){if(0)var y;window.onunload=function(){return r&&r.close()}},t=function(y){return e.push(y)},o=function(y){var h=[],i=function(d){return typeof d=="number"&&!Number.isFinite(d)?{__number__:String(d)}:typeof d=="undefined"?{__undefined__:!0}:d},c=function(d,s){if(typeof s=="object"){if(s===null)return s;if(h.includes(s))return"[circular ref]";h.push(s);var l=s instanceof Error||s.code&&s.message&&s.message.includes("Error");return l?{__error__:!0,string:String(s),stack:s.stack}:Array.isArray(s)?s.map(i):s}return i(s)},m=JSON.stringify(y,c);return h=null,m},f=function(y){if(0)var h,i,c},b=function(y,h){if(0)var i,c,m},k=function(){};T.exports={subscribe:t,sendMessage:f,sendLogEntry:b,setupHotReloading:k}}},yt={};function Y(T){var r=yt[T];if(r!==void 0)return r.exports;var n=yt[T]={exports:{}};return Qt[T](n,n.exports,Y),n.exports}(function(){Y.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(T){if(typeof window=="object")return window}}()})(),function(){Y.o=function(T,r){return Object.prototype.hasOwnProperty.call(T,r)}}();var Rn={};(function(){"use strict";Y(33313),Y(10933),Y(79250),Y(53795),Y(87806),Y(64677),Y(48058),Y(51583),Y(82403),Y(34265),Y(3295),Y(1078),Y(63207),Y(80520),Y(39600),Y(93237),Y(32057),Y(68933),Y(47830),Y(13455),Y(64094),Y(61915),Y(32384),Y(25579),Y(63532),Y(33425),Y(43894),Y(99636),Y(34570),Y(94432),Y(24683),Y(69984),Y(32089),Y(60206),Y(29645),Y(4788),Y(58672),Y(19356),Y(48968),Y(49852),Y(2712),Y(864),Y(54243),Y(75621),Y(26267),Y(50095),Y(33451),Y(74587),Y(25082),Y(47421),Y(32122),Y(6306),Y(90216),Y(84663),Y(92332),Y(98329),Y(9631),Y(47091),Y(59660),Y(15383),Y(92866),Y(86107),Y(29248),Y(52540),Y(79007),Y(77199),Y(6522),Y(95542),Y(2966),Y(20997),Y(57400),Y(45571),Y(54800),Y(15709),Y(76059),Y(96614),Y(324),Y(90426),Y(95443),Y(87968),Y(55007),Y(55323),Y(13521),Y(5006),Y(99009),Y(85770),Y(23532),Y(87119),Y(78618),Y(27129),Y(31943),Y(3579),Y(97397),Y(85028),Y(8225),Y(43331),Y(62289),Y(56196),Y(2950),Y(44205),Y(76882),Y(83186),Y(76065),Y(13411),Y(26634),Y(53118),Y(42514),Y(84353),Y(62987),Y(48993),Y(52917),Y(4972),Y(28913),Y(36382),Y(53092),Y(69861),Y(29674),Y(81543),Y(9373),Y(45093),Y(63074),Y(5815),Y(88527),Y(66390),Y(7784),Y(50551),Y(76483),Y(92046),Y(63915),Y(51454),Y(79669),Y(23057),Y(57983),Y(17953),Y(30442),Y(6403),Y(9867),Y(43673),Y(12354),Y(22515),Y(5143),Y(93514),Y(5416),Y(11619),Y(44590),Y(63272),Y(39930),Y(4038),Y(8448),Y(70604),Y(34965),Y(95309),Y(82256),Y(49484),Y(38931),Y(39308),Y(91550),Y(75008),Y(56027),Y(50340),Y(34325),Y(74498),Y(15812),Y(57726),Y(80756),Y(70567),Y(66756),Y(60037),Y(44195),Y(24575),Y(71968),Y(78824),Y(72846),Y(99872),Y(73364),Y(58166),Y(23793),Y(43820),Y(13917),Y(19852),Y(40379),Y(92770),Y(81069),Y(63689),Y(5659),Y(25014),Y(32189),Y(23030),Y(24309),Y(49110),Y(56445),Y(30939),Y(48321),Y(88739),Y(60415),Y(72532),Y(62207),Y(906),Y(90846),Y(40348),Y(83006),Y(25764),Y(69401),Y(95012),Y(30236)})(),function(){"use strict";var T=Y(89005);Y(67160),Y(23542),Y(30386),Y(98996),Y(50578),Y(4444),Y(77870),Y(39108),Y(11714),Y(73492),Y(49641),Y(17570),Y(61858),Y(32882),Y(23632),Y(56492);var r=Y(85822),n=Y(7435),e=Y(56518),a=Y(26427),t=Y(18498),o=Y(49060),f=Y(72178),b=Y(24826),k;/**
+ */var r,n=[],e=[],a=function(){if(0)var y;window.onunload=function(){return r&&r.close()}},t=function(y){return e.push(y)},o=function(y){var h=[],i=function(u){return typeof u=="number"&&!Number.isFinite(u)?{__number__:String(u)}:typeof u=="undefined"?{__undefined__:!0}:u},c=function(u,s){if(typeof s=="object"){if(s===null)return s;if(h.includes(s))return"[circular ref]";h.push(s);var l=s instanceof Error||s.code&&s.message&&s.message.includes("Error");return l?{__error__:!0,string:String(s),stack:s.stack}:Array.isArray(s)?s.map(i):s}return i(s)},m=JSON.stringify(y,c);return h=null,m},f=function(y){if(0)var h,i,c},b=function(y,h){if(0)var i,c,m},k=function(){};T.exports={subscribe:t,sendMessage:f,sendLogEntry:b,setupHotReloading:k}}},yt={};function Y(T){var r=yt[T];if(r!==void 0)return r.exports;var n=yt[T]={exports:{}};return Qt[T](n,n.exports,Y),n.exports}(function(){Y.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(T){if(typeof window=="object")return window}}()})(),function(){Y.o=function(T,r){return Object.prototype.hasOwnProperty.call(T,r)}}();var Rn={};(function(){"use strict";Y(33313),Y(10933),Y(79250),Y(53795),Y(87806),Y(64677),Y(48058),Y(51583),Y(82403),Y(34265),Y(3295),Y(1078),Y(63207),Y(80520),Y(39600),Y(93237),Y(32057),Y(68933),Y(47830),Y(13455),Y(64094),Y(61915),Y(32384),Y(25579),Y(63532),Y(33425),Y(43894),Y(99636),Y(34570),Y(94432),Y(24683),Y(69984),Y(32089),Y(60206),Y(29645),Y(4788),Y(58672),Y(19356),Y(48968),Y(49852),Y(2712),Y(864),Y(54243),Y(75621),Y(26267),Y(50095),Y(33451),Y(74587),Y(25082),Y(47421),Y(32122),Y(6306),Y(90216),Y(84663),Y(92332),Y(98329),Y(9631),Y(47091),Y(59660),Y(15383),Y(92866),Y(86107),Y(29248),Y(52540),Y(79007),Y(77199),Y(6522),Y(95542),Y(2966),Y(20997),Y(57400),Y(45571),Y(54800),Y(15709),Y(76059),Y(96614),Y(324),Y(90426),Y(95443),Y(87968),Y(55007),Y(55323),Y(13521),Y(5006),Y(99009),Y(85770),Y(23532),Y(87119),Y(78618),Y(27129),Y(31943),Y(3579),Y(97397),Y(85028),Y(8225),Y(43331),Y(62289),Y(56196),Y(2950),Y(44205),Y(76882),Y(83186),Y(76065),Y(13411),Y(26634),Y(53118),Y(42514),Y(84353),Y(62987),Y(48993),Y(52917),Y(4972),Y(28913),Y(36382),Y(53092),Y(69861),Y(29674),Y(81543),Y(9373),Y(45093),Y(63074),Y(5815),Y(88527),Y(66390),Y(7784),Y(50551),Y(76483),Y(92046),Y(63915),Y(51454),Y(79669),Y(23057),Y(57983),Y(17953),Y(30442),Y(6403),Y(9867),Y(43673),Y(12354),Y(22515),Y(5143),Y(93514),Y(5416),Y(11619),Y(44590),Y(63272),Y(39930),Y(4038),Y(8448),Y(70604),Y(34965),Y(95309),Y(82256),Y(49484),Y(38931),Y(39308),Y(91550),Y(75008),Y(56027),Y(50340),Y(34325),Y(74498),Y(15812),Y(57726),Y(80756),Y(70567),Y(66756),Y(60037),Y(44195),Y(24575),Y(71968),Y(78824),Y(72846),Y(99872),Y(73364),Y(58166),Y(23793),Y(43820),Y(13917),Y(19852),Y(40379),Y(92770),Y(81069),Y(63689),Y(5659),Y(25014),Y(32189),Y(23030),Y(24309),Y(49110),Y(56445),Y(30939),Y(48321),Y(88739),Y(60415),Y(72532),Y(62207),Y(906),Y(90846),Y(40348),Y(83006),Y(25764),Y(69401),Y(95012),Y(30236)})(),function(){"use strict";var T=Y(89005);Y(67160),Y(23542),Y(30386),Y(98996),Y(50578),Y(4444),Y(77870),Y(39108),Y(11714),Y(73492),Y(49641),Y(17570),Y(61858),Y(32882),Y(23632),Y(56492);var r=Y(85822),n=Y(7435),e=Y(56518),a=Y(26427),t=Y(18498),o=Y(49060),f=Y(72178),b=Y(24826),k;/**
* @file
* @copyright 2020 Aleksej Komarov
* @license MIT
1?arguments[1]:void 0,1),N=b(l);if(d)return a(i,this,N,C);var v=this.length,p=o(N),g=0;if(p+C>v)throw new S("Wrong length");for(;g