From db452842bf4e3b4623e92bcb248eaa4dfb72027a Mon Sep 17 00:00:00 2001 From: Batrachophreno Date: Tue, 2 Dec 2025 05:53:54 -0500 Subject: [PATCH] Greimorian Egg Cluster Implantation Refactor (#21554) Fixes https://github.com/Aurorastation/Aurora.3/issues/21509 **Summary:** Cleans up a lot of old Greimorian egg implantation code- rewrote the actual worker injection behavior to use the organ/internal/parasite code we have, instead of creating effects with their loc set to the organ itself. This largely means that not only is Greimorian implantation able to be treated pharmaceutically (as you'd expect, with them being parasitic and medicine including antiparasitics), but it also means that 'greimorian eggs' also get the same treatment as nerve flukes, etc. That is to say, antags can now purchase Greimorian Clade Kits from the uplink and inject people or monkeys with them to cause Unhappy Tidings. This code is also fairly easy to modify, if one wanted to create more implantable parasites that burst out of people, unrelated to Greimorians. **Changes:** - refactor: "Refactors the egg injection of Greimorian Workers to use parasite code; it can now be treated with anti-parasitic medicines in addition to amputation of the affected limb. Works on all playable species, and monkeys." - rscadd: "New reagent 'Greimorian Eggs' creates an egg cluster parasite in a random organ when metabolized in the bloodstream. It also has very mild soporific effects." - balance: "Greimorian Workers and playable Greimorian Servants/Queen now inject Greimorian Eggs instead of Soporific." - rscadd: "Greimorian Clade Kit now available in Uplink under Bioweapons section (Greimorians now able to be introduced to ship by egg cluster or injectable reagent)." - balance: "All parasite kit bioweapons have had their vial reagent count increased from 2 -> 5." - balance: "Helmizole no longer treats K'ois Mycosis, Black K'ois Mycosis, Zombification, or Tumors (Benign or Malignant)." - code_imp: "Updates a lot of code documentation to dmdocs." --- aurorastation.dme | 1 + code/__DEFINES/mobs.dm | 1 + code/__HELPERS/unsorted.dm | 96 +++++++------ code/datums/uplink/bioweapons.dm | 10 +- code/game/objects/effects/spiders.dm | 106 ++++---------- code/game/objects/items/contraband.dm | 15 +- .../items/weapons/storage/uplink_kits.dm | 5 + .../mob/living/carbon/carbon_defines.dm | 47 ++++--- .../mob/living/carbon/human/human_organs.dm | 2 +- .../simple_animal/hostile/giant_spider.dm | 21 +-- code/modules/mob/mob.dm | 6 +- code/modules/organs/internal/_internal.dm | 25 ++-- code/modules/organs/organ.dm | 1 + code/modules/organs/organ_external.dm | 5 + .../organs/subtypes/parasite/_parasite.dm | 8 ++ .../organs/subtypes/parasite/greim_eggs.dm | 131 ++++++++++++++++++ .../Chemistry-Reagents-Medicine.dm | 13 +- .../Chemistry-Reagents-Toxins.dm | 38 +++++ html/changelogs/Bat-GreimorianEggs.yml | 19 +++ tgui/public/tgui.bundle.js | 2 +- 20 files changed, 376 insertions(+), 176 deletions(-) create mode 100644 code/modules/organs/subtypes/parasite/greim_eggs.dm create mode 100644 html/changelogs/Bat-GreimorianEggs.yml diff --git a/aurorastation.dme b/aurorastation.dme index 747bb10d9c4..53b6bc79e71 100644 --- a/aurorastation.dme +++ b/aurorastation.dme @@ -3129,6 +3129,7 @@ #include "code\modules\organs\subtypes\augment\augments\zengu_plate.dm" #include "code\modules\organs\subtypes\parasite\_parasite.dm" #include "code\modules\organs\subtypes\parasite\black_kois.dm" +#include "code\modules\organs\subtypes\parasite\greim_eggs.dm" #include "code\modules\organs\subtypes\parasite\heart_fluke.dm" #include "code\modules\organs\subtypes\parasite\kois.dm" #include "code\modules\organs\subtypes\parasite\tumours.dm" diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index d34e7abb0a7..735ae87c745 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -148,6 +148,7 @@ #define BP_WORM_NERVE "nerve fluke" #define BP_TUMOUR_NONSPREADING "benign tumour" #define BP_TUMOUR_SPREADING "malignant tumour" +#define BP_GREIMORIAN_EGGCLUSTER "greimorian egg cluster" //Augment organs #define BP_AUG_ACC_CORDS "modified synthetic vocal cords" diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 33eb5a1ddbd..aaa5d38140e 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -5,8 +5,8 @@ //Checks if all high bits in req_mask are set in bitfield #define BIT_TEST_ALL(bitfield, req_mask) ((~(bitfield) & (req_mask)) == 0) -//Inverts the colour of an HTML string -/proc/invertHTML(HTMLstring) +/// Inverts the colour of an HTML string +/proc/htmlInvertColor(HTMLstring) if (!( istext(HTMLstring) )) CRASH("Given non-text argument!") @@ -30,7 +30,7 @@ textr = "0[textb]" return "#[textr][textg][textb]" -//Returns the middle-most value +/// Returns the middle-most value /proc/dd_range(var/low, var/high, var/num) return max(low,min(high,num)) @@ -95,7 +95,7 @@ ty += AM.step_y return SIMPLIFY_DEGREES(arctan(ty - sy, tx - sx)) -//Returns location. Returns null if no location was found. +/// Returns location. Returns null if no location was found. /proc/get_teleport_loc(turf/location,mob/target,distance = 1, density = 0, errorx = 0, errory = 0, eoffsetx = 0, eoffsety = 0) /* Location where the teleport begins, target that will teleport, distance to go, density checking 0/1(yes/no). @@ -227,19 +227,27 @@ Turf and target are seperate in case you want to teleport some distance from a t return 1 return 0 -/proc/getline(atom/M,atom/N)//Ultra-Fast Bresenham Line-Drawing Algorithm - var/px=M.x //starting x +/// Ultra-Fast Bresenham Line-Drawing Algorithm +/proc/getline(atom/M,atom/N) + /// starting x + var/px=M.x var/py=M.y var/line[] = list(locate(px,py,M.z)) - var/dx=N.x-px //x distance + /// x distance + var/dx=N.x-px var/dy=N.y-py - var/dxabs=abs(dx)//Absolute value of x distance + /// Absolute value of x distance + var/dxabs=abs(dx) var/dyabs=abs(dy) - var/sdx=SIGN(dx) //Sign of x distance (+ or -) + /// Sign of x distance (+ or -) + var/sdx=SIGN(dx) var/sdy=SIGN(dy) - var/x=dxabs>>1 //Counters for steps taken, setting to distance/2 - var/y=dyabs>>1 //Bit-shifting makes me l33t. It also makes getline() unnessecarrily fast. - var/j //Generic integer for counting + /// Counters for steps taken, setting to distance/2 + var/x=dxabs>>1 + var/y=dyabs>>1 + /// Generic integer for counting + var/j + if(dxabs>=dyabs) //x distance is greater than y for(j=0;j1 || !rsq) return sigma*y*sqrt(-2*log(rsq)/rsq) -///Step-towards method of determining whether one atom can see another. Similar to viewers() +/// Step-towards method of determining whether one atom can see another. Similar to viewers() /proc/can_see(var/atom/source, var/atom/target, var/length=5) // I couldn't be arsed to do actual raycasting :I This is horribly inaccurate. var/turf/current = get_turf(source) var/turf/target_turf = get_turf(target) @@ -769,8 +778,10 @@ Turf and target are seperate in case you want to teleport some distance from a t return FALSE return TRUE -//Takes: Anything that could possibly have variables and a varname to check. -//Returns: 1 if found, 0 if not. +/** + * Takes: Anything that could possibly have variables and a varname to check. + * Returns: 1 if found, 0 if not. + */ /proc/hasvar(var/datum/A, var/varname) if(A.vars.Find(lowertext(varname))) return 1 else return 0 @@ -798,7 +809,8 @@ Turf and target are seperate in case you want to teleport some distance from a t var/dy = abs(B.y - A.y) return get_dir(A, B) & (rand() * (dx+dy) < dy ? 3 : 12) -/proc/get_compass_dir(atom/start, atom/end) //get_dir() only considers an object to be north/south/east/west if there is zero deviation. This uses rounding instead. // Ported from CM-SS13 +/// get_dir() only considers an object to be north/south/east/west if there is zero deviation. This uses rounding instead. +/proc/get_compass_dir(atom/start, atom/end) if(!start || !end) return 0 if(!start.z || !end.z) @@ -892,7 +904,7 @@ Turf and target are seperate in case you want to teleport some distance from a t return get_turf(location) -//Quick type checks for some tools ~ BRAH wtf is this shit that's not how one should do this +/// Quick type checks for some tools ~ BRAH wtf is this shit that's not how one should do this GLOBAL_LIST_INIT(common_tools, list( /obj/item/stack/cable_coil, /obj/item/wrench, @@ -942,7 +954,7 @@ GLOBAL_LIST_INIT(common_tools, list( if(istype(W, /obj/item/melee/energy)) return 3500 -//Whether or not the given item counts as sharp in terms of dealing damage +/// Whether or not the given item counts as sharp in terms of dealing damage /proc/is_sharp(obj/O) if (!O) return 0 @@ -952,7 +964,7 @@ GLOBAL_LIST_INIT(common_tools, list( return 1 return 0 -//Whether or not the given item counts as cutting with an edge in terms of removing limbs +/// Whether or not the given item counts as cutting with an edge in terms of removing limbs /proc/has_edge(obj/O) if (!O) return 0 @@ -966,7 +978,7 @@ GLOBAL_LIST_INIT(common_tools, list( /proc/is_borg_item(obj/item/W) return W && W.loc && isrobot(W.loc) -//check if mob is lying down on something we can operate him on. +/// Check if mob is lying down on something we can operate him on. /proc/can_operate(mob/living/carbon/M) //If it's 2, commence surgery, if it's 1, fail surgery, if it's 0, attack var/surgery_attempt = SURGERY_IGNORE var/located = FALSE @@ -989,9 +1001,7 @@ GLOBAL_LIST_INIT(common_tools, list( surgery_attempt = SURGERY_IGNORE //hit yourself if you're not lying return surgery_attempt -/* -Checks if that loc and dir has a item on the wall -*/ +/// Checks if that loc and dir has a item on the wall GLOBAL_LIST_INIT(wall_items, typecacheof(list( /obj/machinery/power/apc, /obj/machinery/alarm, @@ -1044,9 +1054,11 @@ GLOBAL_LIST_INIT(wall_items, typecacheof(list( return 1 return 0 -// Returns a variable type as string, optionally with some details: -// Objects (datums) get their type, paths get the type name, scalars show length (text) and value (numbers), lists show length. -// Also attempts some detection of otherwise undetectable types using ref IDs +/** + * Returns a variable type as string, optionally with some details: + * Objects (datums) get their type, paths get the type name, scalars show length (text) and value (numbers), lists show length. + * Also attempts some detection of otherwise undetectable types using ref IDs + */ /proc/get_debug_type(var/V, var/details = TRUE, var/print_numbers = TRUE, var/path_names = TRUE, var/text_lengths = TRUE, var/list_lengths = TRUE, var/show_useless_subtypes = TRUE) // scalars / basic types if(isnull(V)) @@ -1150,11 +1162,11 @@ GLOBAL_LIST_INIT(wall_items, typecacheof(list( colour += temp_col return "#[colour]" -// call to generate a stack trace and print to runtime logs +/// Call to generate a stack trace and print to runtime logs /proc/crash_with(msg) CRASH(msg) -//similar function to RANGE_TURFS(), but will search spiralling outwards from the center (like the above, but only turfs) +/// Similar function to RANGE_TURFS(), but will search spiraling outwards from the center (like the above, but only turfs) /proc/spiral_range_turfs(dist=0, center=usr, orange=0) if(!dist) if(!orange) diff --git a/code/datums/uplink/bioweapons.dm b/code/datums/uplink/bioweapons.dm index d2e900338fc..260be2a1045 100644 --- a/code/datums/uplink/bioweapons.dm +++ b/code/datums/uplink/bioweapons.dm @@ -20,8 +20,14 @@ telecrystal_cost = 5 path = /obj/item/storage/box/syndie_kit/heartworms -/datum/uplink_item/item/bioweapons/greimorian_eggs - name = "Greimorian Eggs" +/datum/uplink_item/item/bioweapons/greimorians_kit + name = "Parasitic Eggs Kit - Greimorian Clade" + desc = "Contains the eggs of a Greimorian clade. Semi-lethal and incapacitating. Compatible with most sapient bipedal species (including Earth monkeys)." + telecrystal_cost = 4 + path = /obj/item/storage/box/syndie_kit/greimorians + +/datum/uplink_item/item/bioweapons/greimorian_eggcluster + name = "Greimorian Egg Cluster" desc = "A cluster of greimorian eggs. (They will be planted at your feet on-purchase and CANNOT be moved, so make sure you're where you want them to be)" telecrystal_cost = 4 path = /obj/effect/spider/eggcluster diff --git a/code/game/objects/effects/spiders.dm b/code/game/objects/effects/spiders.dm index 10971f6820a..fbcf8d4e8df 100644 --- a/code/game/objects/effects/spiders.dm +++ b/code/game/objects/effects/spiders.dm @@ -84,13 +84,13 @@ return prob(30) return TRUE +/// The effect/spider/eggcluster is only for egg clusters spawned in-world, not implanted by a worker. /obj/effect/spider/eggcluster name = "egg cluster" desc = "They seem to pulse slightly with an inner life." icon_state = "eggs" health = 10 var/amount_grown = 0 - var/last_itch = 0 /obj/effect/spider/eggcluster/Initialize(var/mapload, var/atom/parent) . = ..(mapload) @@ -112,29 +112,16 @@ /obj/effect/spider/eggcluster/process() amount_grown += rand(0, 2) - var/obj/item/organ/external/O = null - if(isorgan(loc)) - O = loc - if(amount_grown >= 100) var/num = rand(6,24) for(var/i = 0, i < num, i++) - var/spiderling = new /obj/effect/spider/spiderling(src.loc, src, 0.75) - if(O) - O.implants += spiderling + new /obj/effect/spider/spiderling(src.loc, src, 0.75) qdel(src) - else if (O && O.owner && prob(1)) - if(world.time > last_itch + 30 SECONDS) - last_itch = world.time - to_chat(O.owner, SPAN_NOTICE("Your [O.name] itches.")) /obj/effect/spider/eggcluster/proc/take_damage(var/damage) health -= damage if(health <= 0) - var/obj/item/organ/external/O = loc - if(istype(O) && O.owner) - to_chat(O.owner, SPAN_WARNING("You feel something dissolve in your [O.name]...")) qdel(src) /obj/effect/spider/spiderling @@ -144,29 +131,41 @@ They originate from the Badlands planet Greima, once covered in crystalized phoron. A decaying orbit led to its combustion from proximity to its sun, and its dominant inhabitants \ managed to survive in orbit. Countless years later, they prove to be a menace across the galaxy, having carried themselves within the hulls of Human vessels to spread wildly." icon_state = "spiderling" - anchored = 0 - layer = 2.7 + anchored = FALSE + layer = OPEN_DOOR_LAYER // 2.7 health = 3 var/last_itch = 0 - var/amount_grown = -1 + /// % chance that the spiderling will eventually turn into a fully-grown greimorian. + var/can_mature_chance = 50 + var/can_mature = FALSE + /// Multiplier to growth gained per tick. var/growth_rate = 1 + /// Their current growth, from 0-100. + var/growth_level = 0 var/obj/machinery/atmospherics/unary/vent_pump/entry_vent var/travelling_in_vent = 0 - var/list/possible_offspring + /// Possible creatures the larva can mature into. + var/list/possible_offspring = list( + /mob/living/simple_animal/hostile/giant_spider, + /mob/living/simple_animal/hostile/giant_spider/nurse, + /mob/living/simple_animal/hostile/giant_spider/emp, + /mob/living/simple_animal/hostile/giant_spider/hunter, + /mob/living/simple_animal/hostile/giant_spider/bombardier + ) -/obj/effect/spider/spiderling/Initialize(var/mapload, var/atom/parent, var/new_rate = 1, var/list/spawns = list(/mob/living/simple_animal/hostile/giant_spider, /mob/living/simple_animal/hostile/giant_spider/nurse, /mob/living/simple_animal/hostile/giant_spider/emp, /mob/living/simple_animal/hostile/giant_spider/hunter, /mob/living/simple_animal/hostile/giant_spider/bombardier)) +/obj/effect/spider/spiderling/Initialize(var/mapload, var/atom/parent, var/new_growth_rate = 1, var/list/new_possible_offspring = possible_offspring) . = ..(mapload) pixel_x = rand(6,-6) pixel_y = rand(6,-6) START_PROCESSING(SSprocessing, src) //50% chance to grow up - if(prob(50)) - amount_grown = 1 + if(prob(can_mature_chance)) + can_mature = TRUE - growth_rate = new_rate + growth_rate = new_growth_rate - possible_offspring = spawns + possible_offspring = new_possible_offspring get_light_and_color(parent) @@ -247,32 +246,16 @@ GLOB.move_manager.move_to(src, entry_vent, 0, 5) break - if(isturf(loc) && amount_grown >= 100) + if(isturf(loc) && growth_level >= 100) var/spawn_type = pick(possible_offspring) new spawn_type(src.loc, src) qdel(src) - else if(isorgan(loc)) - var/obj/item/organ/external/O = loc - if(amount_grown > 70) - burst_out(O) - if (O.owner) - if(amount_grown > 40 && prob(1)) - O.owner.apply_damage(1, DAMAGE_TOXIN, O.limb_name) - if(world.time > last_itch + 30 SECONDS) - last_itch = world.time - O.owner.visible_message( - SPAN_WARNING("You think you see something moving around in \the [O.owner]'s [O.name]."), - SPAN_WARNING("You [prob(25) ? "see" : "feel"] something large move around in your [O.name]!")) - else if (prob(1)) - if(world.time > last_itch + 30 SECONDS) - last_itch = world.time - to_chat(O.owner, SPAN_WARNING("You feel something large move around in your [O.name]!")) else if(prob(1)) src.visible_message(SPAN_NOTICE("\The [src] skitters.")) - if (amount_grown > -1) - amount_grown += (rand(0, 1) * growth_rate) + if(can_mature) + growth_level += (rand(0, 1) * growth_rate) /obj/effect/spider/spiderling/attack_hand(mob/living/user) user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN) @@ -294,43 +277,6 @@ die() return TRUE -/** - * Makes the organ spew out all of the spiderlings it has. It's triggered at the point - * of the first spiderling reaching 80% of more amount grown. This stops them from growing - * to full size inside a human. - * - * The proc also drops the limb if it's on a human, or gibs it if it's on the floor. For - * maximum drama, of course! - * - * @param O The organ/external limb the src is located inside of. - */ -/obj/effect/spider/spiderling/proc/burst_out(obj/item/organ/external/O = src.loc) - if (!istype(O)) - return - - if (O.owner) - O.owner.visible_message( - SPAN_DANGER("A group of [src] burst out of [O.owner]'s [O]!"), - SPAN_DANGER("A group of [src] burst out of your [O]!")) - O.owner.emote("scream") - else - O.visible_message(SPAN_DANGER("A group of [src] burst out of \the [O]!")) - - var/target_loc = O.owner ? O.owner.loc : O.loc - - // Swarm all of the spiders out so we can gib the limb. - for (var/obj/effect/spider/spiderling/S in O.implants) - O.implants -= S - S.forceMove(target_loc) - - // if owner, dismember the shit out of it. - if (O.owner) - O.droplimb(0, DROPLIMB_BLUNT) - else - O.visible_message(SPAN_DANGER("\The [O] explodes into a pile of gore!")) - gibs(target_loc) - qdel(O) - /obj/effect/decal/cleanable/spiderling_remains name = "greimorian larva remains" desc = "Green squishy mess." diff --git a/code/game/objects/items/contraband.dm b/code/game/objects/items/contraband.dm index 88f70a3026c..2ce52b48287 100644 --- a/code/game/objects/items/contraband.dm +++ b/code/game/objects/items/contraband.dm @@ -98,7 +98,7 @@ . = ..() if(is_open_container()) atom_flags ^= ATOM_FLAG_OPEN_CONTAINER - reagents.add_reagent(/singleton/reagent/toxin/nerveworm_eggs, 2) + reagents.add_reagent(/singleton/reagent/toxin/nerveworm_eggs, 5) desc = "BIOHAZARDOUS! - Nerve Fluke eggs. Purchased from SciSupply Eridani, recently incorporated into Zeng-Hu Pharmaceuticals' Keiretsu!" update_icon() @@ -109,10 +109,21 @@ . = ..() if(is_open_container()) atom_flags ^= ATOM_FLAG_OPEN_CONTAINER - reagents.add_reagent(/singleton/reagent/toxin/heartworm_eggs, 2) + reagents.add_reagent(/singleton/reagent/toxin/heartworm_eggs, 5) desc = "BIOHAZARDOUS! - Heart Fluke eggs. Purchased from SciSupply Eridani, recently incorporated into Zeng-Hu Pharmaceuticals' Keiretsu!" update_icon() +/obj/item/reagent_containers/glass/beaker/vial/greimorian_eggs + atom_flags = 0 + +/obj/item/reagent_containers/glass/beaker/vial/greimorian_eggs/Initialize() + . = ..() + if(is_open_container()) + atom_flags ^= ATOM_FLAG_OPEN_CONTAINER + reagents.add_reagent(/singleton/reagent/toxin/greimorian_eggs, 5) + desc = "BIOHAZARDOUS! - Greimorian eggs. Purchased from SciSupply Eridani, recently incorporated into Zeng-Hu Pharmaceuticals' Keiretsu!" + update_icon() + /obj/item/reagent_containers/powder name = "chemical powder" desc = "A powdered form of... something." diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index ddef9f7cecc..e710aef7c80 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -220,6 +220,11 @@ desc = "Contains the eggs of a Heart Fluke (lethal)." starts_with = list(/obj/item/reagent_containers/glass/beaker/vial/heartworm_eggs = 1, /obj/item/reagent_containers/syringe = 1, /obj/item/reagent_containers/pill/antiparasitic = 1, /obj/item/reagent_containers/pill/asinodryl = 1) +/obj/item/storage/box/syndie_kit/greimorians + name = "greimorian clade kit" + desc = "Contains the eggs of greimorian clade (semi-lethal, incapacitating)." + starts_with = list(/obj/item/reagent_containers/glass/beaker/vial/greimorian_eggs = 1, /obj/item/reagent_containers/syringe = 1, /obj/item/reagent_containers/pill/antiparasitic = 1, /obj/item/reagent_containers/pill/asinodryl = 1) + /obj/item/storage/box/syndie_kit/radsuit name = "radiation suit kit" desc = "Contains a radiation suit and geiger counter to protect you from radiation." diff --git a/code/modules/mob/living/carbon/carbon_defines.dm b/code/modules/mob/living/carbon/carbon_defines.dm index f400a7b35cf..9f1bca3f34b 100644 --- a/code/modules/mob/living/carbon/carbon_defines.dm +++ b/code/modules/mob/living/carbon/carbon_defines.dm @@ -2,46 +2,55 @@ gender = MALE accent = ACCENT_CETI blocks_emissive = EMISSIVE_BLOCK_UNIQUE - var/datum/species/species //Contains icon generation and language information, set during New(). - //stomach contents redefined at mob/living level, removed from here - - var/analgesic = 0 // when this is set, the mob isn't affected by shock or pain - // life should decrease this by 1 every tick - // total amount of wounds on mob, used to spread out healing and the like over all wounds + /// Contains icon generation and language information, set during New(). + var/datum/species/species + /// When this is set, the mob isn't affected by shock or pain. + var/analgesic = 0 + /// life should decrease this by 1 every tick (??? -batra) + /// total amount of wounds on mob, used to spread out healing and the like over all wounds (??? -batra) var/number_wounds = 0 - var/obj/item/handcuffed = null //Whether or not the mob is handcuffed - var/obj/item/legcuffed = null //Same as handcuffs but for legs. Bear traps use this. - //Surgery info + /// Whether or not the mob is handcuffed. + var/obj/item/handcuffed = null + /// Same as handcuffs but for legs. Bear traps use this. + var/obj/item/legcuffed = null + /// Surgery info var/datum/surgery_status/op_stage = new/datum/surgery_status - //Active emote/pose + /// Active emote/pose var/pose = null var/list/chem_effects = list() var/list/chem_doses = list() - /// For keeping count of misc values (amount of damage, number of ticks, etc) + /// For keeping count of misc values (amount of damage, number of ticks, etc). var/list/chem_tracking = list() var/intoxication = 0//Units of alcohol in their system var/datum/reagents/metabolism/bloodstr = null var/datum/reagents/metabolism/touching = null var/datum/reagents/metabolism/breathing = null - //these two help govern taste. The first is the last time a taste message was shown to the plaer. - //the second is the message in question. + /// These two help govern taste. The first is the last time a taste message was shown to the player. + /// The second is the message in question. var/last_taste_time = 0 var/last_taste_text = "" var/last_smell_time = 0 var/last_smell_text = "" - var/coughedtime = null // should only be useful for carbons as the only thing using it has a carbon arg. + /// Should only be useful for carbons as the only thing using it has a carbon arg. + var/coughedtime = null var/willfully_sleeping = FALSE - var/consume_nutrition_from_air = FALSE // used by Diona + /// Used by Diona. + var/consume_nutrition_from_air = FALSE - var/help_up_offer = 0 //if they have their hand out to offer someone up from the ground. + /// If they have their hand out to offer someone up from the ground. + var/help_up_offer = 0 - var/list/organs_by_name = list() // map organ names to organs - var/list/internal_organs_by_name = list() // so internal organs have less ickiness too + /// Map organ names to organs. + var/list/organs_by_name = list() + /// So internal organs have less ickiness too. + var/list/internal_organs_by_name = list() var/list/stasis_sources = list() var/stasis_value - var/pain_immune = FALSE //for special cases where something permanently removes a mob's ability to feel pain + /// For special cases where something permanently removes a mob's ability to feel pain. + var/pain_immune = FALSE + diff --git a/code/modules/mob/living/carbon/human/human_organs.dm b/code/modules/mob/living/carbon/human/human_organs.dm index e37e4a1b16f..9ab808eb906 100644 --- a/code/modules/mob/living/carbon/human/human_organs.dm +++ b/code/modules/mob/living/carbon/human/human_organs.dm @@ -172,7 +172,7 @@ spark(src, 5) -//Handles chem traces +/// Handles chem traces /mob/living/carbon/human/proc/handle_trace_chems() //New are added for reagents to random organs. for(var/_A in reagents.reagent_volumes) diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index ba7f1e9a272..aa3469a94f6 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -64,9 +64,9 @@ melee_damage_lower = 5 melee_damage_upper = 10 armor_penetration = 20 - venom_per_bite = 10 + venom_per_bite = 4 var/atom/cocoon_target - venom_type = /singleton/reagent/soporific + venom_type = /singleton/reagent/toxin/greimorian_eggs var/fed = 0 sample_data = list("Genetic markers identified as being linked with stem cell differentiaton", "Cellular structures indicative of high offspring production") @@ -82,9 +82,9 @@ melee_damage_lower = 15 melee_damage_upper = 20 armor_penetration = 30 - venom_per_bite = 10 + venom_per_bite = 1 speed = -2 - venom_type = /singleton/reagent/soporific + venom_type = /singleton/reagent/toxin/greimorian_eggs fed = 1 var/playable = TRUE sample_data = list("Genetic markers identified as being linked with stem cell differentiaton", "Cellular structures indicative of high offspring production", "Tissue sample contains high neural cell content") @@ -190,16 +190,17 @@ for(var/armor in armors) var/datum/component/armor/armor_datum = armor inject_probability -= armor_datum.armor_values[MELEE] * 1.8 - if(prob(inject_probability)) + if(prob(inject_probability) && !BP_IS_ROBOTIC(limb)) to_chat(target, SPAN_WARNING("You feel a tiny prick.")) target.reagents.add_reagent(venom_type, venom_per_bite) -/mob/living/simple_animal/hostile/giant_spider/nurse/on_attack_mob(var/mob/hit_mob, var/obj/item/organ/external/limb) +/mob/living/simple_animal/hostile/giant_spider/nurse/on_attack_mob(var/mob/living/carbon/human/hit_mob, var/obj/item/organ/external/limb) . = ..() - if(ishuman(hit_mob) && istype(limb) && !BP_IS_ROBOTIC(limb) && prob(venom_per_bite)) - var/eggs = new /obj/effect/spider/eggcluster(limb, src) - limb.implants += eggs - to_chat(hit_mob, SPAN_WARNING("\The [src] injects something into your [limb.name]!")) + if(istype(limb)) + if(BP_IS_ROBOTIC(limb)) + to_chat(hit_mob, SPAN_WARNING("\The [src] tries to inject something into your [limb.name], but fortunately it finds no living flesh!")) + else + to_chat(hit_mob, SPAN_WARNING("\The [src] injects something into your [limb.name]!")) /mob/living/simple_animal/hostile/giant_spider/emp/on_attack_mob(var/mob/hit_mob, var/obj/item/organ/external/limb) . = ..() diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 93a78353f8f..8c70242835b 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -854,11 +854,11 @@ if(transforming) return 0 return 1 -// Not sure what to call this. Used to check if humans are wearing an AI-controlled exosuit and hence don't need to fall over yet. +/// Not sure what to call this. Used to check if humans are wearing an AI-controlled exosuit and hence don't need to fall over yet. /mob/proc/can_stand_overridden() return 0 -//Updates canmove, lying and icons. Could perhaps do with a rename but I can't think of anything to describe it. +/// Updates canmove, lying and icons. Could perhaps do with a rename but I can't think of anything to describe it. /mob/proc/update_canmove() if(in_neck_grab()) lying = FALSE @@ -976,7 +976,7 @@ return facedir(client.client_dir(SOUTH)) -//This might need a rename but it should replace the can this mob use things check +/// This might need a rename but it should replace the can this mob use things check /mob/proc/IsAdvancedToolUser() return 0 diff --git a/code/modules/organs/internal/_internal.dm b/code/modules/organs/internal/_internal.dm index 4318d875160..33a27977066 100644 --- a/code/modules/organs/internal/_internal.dm +++ b/code/modules/organs/internal/_internal.dm @@ -2,23 +2,29 @@ INTERNAL ORGANS DEFINES ****************************************************/ /obj/item/organ/internal - var/dead_icon // Icon to use when the organ has died. - var/damage_reduction = 0.5 //modifier for internal organ injury - var/unknown_pain_location = TRUE // if TRUE, pain messages will point to the parent organ, otherwise it will print the organ name + /// Icon to use when the organ has died. + var/dead_icon + /// Modifier for internal organ injury. + var/damage_reduction = 0.5 + /// If TRUE, pain messages will point to the parent organ, otherwise it will print the organ name. + var/unknown_pain_location = TRUE var/toxin_type = "undefined" - var/relative_size = 25 //Used for size calcs - /// The icon state to overlay on the mob + /// Used for size calcs. + var/relative_size = 25 + /// The icon state to overlay on the mob. var/on_mob_icon - /// If the icon state has an active overlay + /// If the icon state has an active overlay. var/active_overlay = FALSE - /// If the icon state has an active emissive overlay + /// If the icon state has an active emissive overlay. var/active_emissive = FALSE - var/list/possible_modifications = list("Normal","Assisted","Mechanical") //this is used in the character setup + /// Used in character setup. + var/list/possible_modifications = list("Normal","Assisted","Mechanical") /// The amount all organs heal themselves by per second when not being affected by chems. var/organ_self_heal_per_second = 0.2 - min_broken_damage = 10 //Internal organs are frail, man. + /// Internal organs are frail, man. + min_broken_damage = 10 /obj/item/organ/internal/Destroy() if(owner) @@ -31,6 +37,7 @@ if(istype(E)) E.internal_organs -= src return ..() +/// Sets the internal organ as belonging to the targeted external organ, and matches the target's species/robotness. Also updates all organ lists belonging to the owner. /obj/item/organ/internal/replaced(var/mob/living/carbon/human/target, var/obj/item/organ/external/affected) if(!istype(target)) return 0 diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index 9f77304aa22..a1ba9a9fb83 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -459,6 +459,7 @@ INITIALIZE_IMMEDIATE(/obj/item/organ) owner.update_action_buttons() owner = null +/// Sets the organ's owner to the proc's target, and ensures its forceMoved into that target. /obj/item/organ/proc/replaced(var/mob/living/carbon/human/target, var/obj/item/organ/external/affected) owner = target action_button_name = initial(action_button_name) diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm index 371ae130874..18f83cc3362 100644 --- a/code/modules/organs/organ_external.dm +++ b/code/modules/organs/organ_external.dm @@ -1135,10 +1135,15 @@ Note that amputating the affected organ does in fact remove the infection from t if(victim.get_blood_color()) gore.basecolor = victim.get_blood_color() gore.update_icon() + // Tiny amount of blood and not impacted by anything like coagulants, etc- we just want it for effect. + victim.blood_squirt(2, loc, rand(2,5)) + add_blood(victim) + INVOKE_ASYNC(gore, TYPE_PROC_REF(/atom/movable, throw_at), get_edge_target_turf(src, pick(GLOB.alldirs)), rand(1,3), 4) for(var/obj/item/organ/I in internal_organs) I.removed() + victim.blood_squirt(2, loc, rand(2,5)) if(istype(loc,/turf)) INVOKE_ASYNC(I, TYPE_PROC_REF(/atom/movable, throw_at), get_edge_target_turf(src, pick(GLOB.alldirs)), rand(1,3), 4) diff --git a/code/modules/organs/subtypes/parasite/_parasite.dm b/code/modules/organs/subtypes/parasite/_parasite.dm index 0a5f7dabc63..12274deac82 100644 --- a/code/modules/organs/subtypes/parasite/_parasite.dm +++ b/code/modules/organs/subtypes/parasite/_parasite.dm @@ -38,6 +38,7 @@ /obj/item/organ/internal/parasite/process() ..() if(!owner) + qdel(src) return if(owner.chem_effects[CE_ANTIPARASITE] && !drug_resistance) @@ -74,6 +75,13 @@ /obj/item/organ/internal/parasite/proc/stage_effect() return +/// Removes the parasite on next process(). +/obj/item/organ/internal/parasite/proc/remove_parasite() + recession = 1000 + stage = 1 + stage_ticker = 0 + drug_resistance = FALSE + /mob/living/carbon/human/proc/infest_with_parasite(var/mob/living/carbon/victim, var/parasite_type, var/obj/item/organ/external/organ_to_infest, var/chance_to_infest = 100, var/parasite_limit = 3) if(ishuman(victim)) var/mob/living/carbon/human/H = victim diff --git a/code/modules/organs/subtypes/parasite/greim_eggs.dm b/code/modules/organs/subtypes/parasite/greim_eggs.dm new file mode 100644 index 00000000000..b827a0b6300 --- /dev/null +++ b/code/modules/organs/subtypes/parasite/greim_eggs.dm @@ -0,0 +1,131 @@ +/obj/item/organ/internal/parasite/greimorian_eggcluster + name = "cluster of greimorian eggs" + icon = 'icons/effects/effects.dmi' + icon_state = "eggs" + dead_icon = "eggs" + + organ_tag = BP_GREIMORIAN_EGGCLUSTER + parent_organ = BP_CHEST + subtle = 1 + + /// ~2 minutes/stage (at two seconds/tick) + stage_interval = 60 + + max_stage = 5 + + origin_tech = list(TECH_BIO = 4) + + egg = /singleton/reagent/toxin/greimorian_eggs + + /// Everyone's favorite-named variable + var/gestating_spiderlings = 0 + + var/last_crawling_msg = 0 + + /// True when it has ruptured; end additional behavior. + var/ruptured = FALSE + +/obj/item/organ/internal/parasite/greimorian_eggcluster/process() + ..() + + if(!owner && gestating_spiderlings) + return + + if(ruptured) + return + + var/obj/item/organ/external/affecting_organ = owner.organs_by_name[parent_organ] + + if(prob(8)) + gestating_spiderlings += 1 + + if(prob(5)) + to_chat(affecting_organ.owner, SPAN_NOTICE("Your [affecting_organ.name] itches.")) + + if(prob(33)) + owner.adjustNutritionLoss(3) + + if(stage >= 2) //after ~2.5 minutes + if(prob(8)) + gestating_spiderlings += rand(1,2) + + if(prob(33)) + owner.adjustNutritionLoss(4) + if(prob(5)) + owner.emote("whimper") + if(prob(3)) + to_chat(owner, SPAN_WARNING(pick("You feel nauseous and hungry at the same time.", "You feel a burning pain in your [parent_organ].", "Your sense of balance seems broken."))) + + if(stage >= 3) //after ~5 minutes + if(prob(8)) + gestating_spiderlings += rand(1,3) + + if(prob(33)) + owner.adjustNutritionLoss(5) + if(prob(10)) + affecting_organ.take_damage(rand(1,3)) + owner.adjustHalLoss(8) + if(world.time > last_crawling_msg + 15 SECONDS) + last_crawling_msg = world.time + owner.visible_message( + SPAN_WARNING("You think you see something moving around in \the [owner.name]'s [affecting_organ.name]."), + SPAN_WARNING("You [prob(25) ? "see" : "feel"] something large move around in your [affecting_organ.name]!")) + if(prob(1)) + owner.seizure(0.4) + + if(stage >= 4) //after ~7.5 minutes + if(prob(8)) + gestating_spiderlings += rand(1,4) + + if(prob(5)) + owner.reagents.add_reagent(/singleton/reagent/toxin/greimorian_eggs, (gestating_spiderlings / 3)) + owner.adjustHalLoss(12) + to_chat(owner, SPAN_WARNING(pick("A sharp, caustic pain boils out from your [affecting_organ.name]!", "You can feel the flesh of your [affecting_organ.name] beginning to bulge!", "It's going to burst! Your [affecting_organ.name] is going to burst!"))) + if(prob(5)) + owner.seizure(0.5) + + if(stage >= 5) //after ~9 minutes + if(prob(8)) + gestating_spiderlings += rand(1,5) + + if(prob(10)) + owner.seizure(0.6) + if(prob(5)) + ruptured = TRUE + owner.adjustHalLoss(75) + owner.seizure() + src.owner.emote("scream") + owner.visible_message( + SPAN_DANGER("You can see the flesh of [owner.name]'s [affecting_organ.name] begin rippling violently!"), + SPAN_DANGER("An extreme, nauseating pain erupts from your [affecting_organ.name]; you feel something burst inside it. The flesh begins to ripple violently!")) + addtimer(CALLBACK(src, PROC_REF(rupture)), rand(30, 50)) + +/obj/item/organ/internal/parasite/greimorian_eggcluster/Destroy() + var/obj/item/organ/external/affecting_organ = owner.organs_by_name[parent_organ] + to_chat(src.owner, SPAN_WARNING("Mercifully, you feel something finally dissolve in your [affecting_organ.name]...")) + ..() + +/** + * Makes the victim spew out all of the spiderlings it has. It's triggered at the point + * of the parasite hitting stage 5 of its growth. + * + * The proc also drops the limb if it's on a human, or gibs it if it's on the floor. For + * maximum drama, of course! + */ +/obj/item/organ/internal/parasite/greimorian_eggcluster/proc/rupture() + var/obj/item/organ/external/victim_external_organ = owner.organs_by_name[parent_organ] + if(src.owner) + src.owner.visible_message( + SPAN_DANGER("A group of [src] burst out of [owner]'s [victim_external_organ.name]!"), + SPAN_DANGER("A group of [src] burst out of your [victim_external_organ.name]!")) + src.owner.emote("scream") + + var/target_loc = src.owner ? src.owner.loc : src.loc + for(var/i = 0 to gestating_spiderlings) + // For details on the spiderlings, check out 'code\game\objects\effects\spiders.dm' + new /obj/effect/spider/spiderling(target_loc, src, 3) + + if(victim_external_organ.owner) + victim_external_organ.droplimb(0, DROPLIMB_BLUNT) + + remove_parasite() diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm index f04193c8ade..ffc50d52875 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm @@ -2015,13 +2015,12 @@ M.add_chemical_effect(CE_EMETIC, M.chem_doses[type]/2) /singleton/reagent/antiparasitic/overdose(mob/living/carbon/M, alien, removed, scale, datum/reagents/holder) - if(istype(M,/mob/living/carbon/human)) - var/mob/living/carbon/human/H = M - - for(var/obj/item/organ/internal/parasite/P in H.internal_organs) - if(P) - if(P.drug_resistance == 0) - P.drug_resistance = 1 + M.dizziness = max(50, M.dizziness) + M.make_dizzy(5) + M.adjustHydrationLoss(2*removed) + M.adjustNutritionLoss(8*removed) + M.adjustHalLoss(5) + to_chat(M, SPAN_WARNING(pick("You feel flushed and woozy.", "Your guts feel like they're crawling."))) /singleton/reagent/antibodies name = "Hylemnomil-Zeta Antibodies" diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm index e6711509f7d..5d509022bb1 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -1029,6 +1029,44 @@ var/obj/item/organ/internal/parasite/heartworm/infest = new() infest.replaced(H, affected) +/// Functions as a weaker version of soporific and also infests the victim with eggs. +/singleton/reagent/toxin/greimorian_eggs + name = "Greimorian Eggs" + description = "The eggs of a greimorian clade. They are highly opportunistic, capable of infesting almost any organism, and are feared for the relatively swift speed with which they gestate. Immediate surgical removal or pharmaceutical intervention is a vital necessity." + reagent_state = SOLID + color = "#5f683f" + metabolism = REM*2 + ingest_met = REM*2 + touch_met = REM*5 + taste_description = "something noxious" + taste_mult = 0.25 + strength = 0 + +/singleton/reagent/toxin/greimorian_eggs/affect_blood(mob/living/carbon/mob, alien, removed, datum/reagents/holder) + ..() + if(istype(mob,/mob/living/carbon/human)) + var/mob/living/carbon/human/victim = mob + + victim.add_chemical_effect(CE_PULSE, -2) + var/dose = victim.chem_doses[type] + if(dose > 2) + if(ishuman(victim) && (dose == metabolism * 2 || prob(3))) + victim.emote("yawn") + if(dose > 20) + victim.eye_blurry = max(victim.eye_blurry, 10) + if(dose > 40) + victim.Weaken(1) + victim.drowsiness = max(victim.drowsiness, 20) + + if(victim.chem_effects[CE_ANTIPARASITE]) + return + + if(!victim.internal_organs_by_name[BP_GREIMORIAN_EGGCLUSTER]) + var/obj/item/organ/external/affected = pick(victim.organs) + var/obj/item/organ/internal/parasite/greimorian_eggcluster/infest = new() + infest.parent_organ = affected.limb_name + infest.replaced(victim, affected) + /singleton/reagent/toxin/malignant_tumour_cells name = "Malignant Tumour Cells" description = "Cells of a malignant tumour which have broken off and entered the circulatory and/or lymphatic system to spread to other regions of the body." diff --git a/html/changelogs/Bat-GreimorianEggs.yml b/html/changelogs/Bat-GreimorianEggs.yml new file mode 100644 index 00000000000..909bda2e455 --- /dev/null +++ b/html/changelogs/Bat-GreimorianEggs.yml @@ -0,0 +1,19 @@ +# Your name. +author: Batrachophrenoboocosmomachia + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - refactor: "Refactors the egg injection of Greimorian Workers to use parasite code; it can now be treated with anti-parasitic medicines in addition to amputation of the affected limb. Works on all playable species, and monkeys." + - rscadd: "New reagent 'Greimorian Eggs' creates an egg cluster parasite in a random organ when metabolized in the bloodstream. It also has very mild soporific effects." + - balance: "Greimorian Workers and playable Greimorian Servants/Queen now inject Greimorian Eggs instead of Soporific." + - rscadd: "Greimorian Clade Kit now available in Uplink under Bioweapons section (Greimorians now able to be introduced to ship by egg cluster or injectable reagent)." + - balance: "All parasite kit bioweapons have had their vial reagent count increased from 2 -> 5." + - balance: "Helmizole no longer treats K'ois Mycosis, Black K'ois Mycosis, Zombification, or Tumors (Benign or Malignant)." + - code_imp: "Updates a lot of code documentation to dmdocs." diff --git a/tgui/public/tgui.bundle.js b/tgui/public/tgui.bundle.js index 338f27a0025..472ff7cebff 100644 --- a/tgui/public/tgui.bundle.js +++ b/tgui/public/tgui.bundle.js @@ -1 +1 @@ -!function(){var e={36997:function(e,t,n){"use strict";t.__esModule=!0,t.popperGenerator=h,t.createPopper=void 0;var o=p(n(65811)),r=p(n(62408)),a=p(n(39662)),i=p(n(95111)),c=(p(n(25462)),p(n(23967))),l=p(n(17850)),u=(p(n(23849)),p(n(6559)),p(n(91561)),p(n(13043))),d=p(n(63308));t.detectOverflow=d["default"];var s=n(1316);n(61797);function p(e){return e&&e.__esModule?e:{"default":e}}var m={placement:"bottom",modifiers:[],strategy:"absolute"};function f(){for(var e=arguments.length,t=new Array(e),n=0;n=0&&(0,d.isHTMLElement)(e)?(0,c["default"])(e):e;if(!(0,d.isElement)(n))return[];return t.filter((function(e){return(0,d.isElement)(e)&&(0,m["default"])(e,n)&&"body"!==(0,f["default"])(e)}))}(e):[].concat(t),r=[].concat(o,[n]),a=r[0],l=r.reduce((function(t,n){var o=b(e,n);return t.top=(0,C.max)(o.top,t.top),t.right=(0,C.min)(o.right,t.right),t.bottom=(0,C.min)(o.bottom,t.bottom),t.left=(0,C.max)(o.left,t.left),t}),b(e,a));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l};var o=n(61797),r=g(n(68056)),a=g(n(52779)),i=g(n(39662)),c=g(n(95111)),l=g(n(67977)),u=g(n(25462)),d=n(1316),s=g(n(93529)),p=g(n(62576)),m=g(n(63171)),f=g(n(22999)),h=g(n(24955)),C=n(36083);function g(e){return e&&e.__esModule?e:{"default":e}}function b(e,t){return t===o.viewport?(0,h["default"])((0,r["default"])(e)):(0,d.isHTMLElement)(t)?function(e){var t=(0,s["default"])(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}(t):(0,h["default"])((0,a["default"])((0,l["default"])(e)))}},65811:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t,n){void 0===n&&(n=!1);var d=(0,i.isHTMLElement)(t),s=(0,i.isHTMLElement)(t)&&function(e){var t=e.getBoundingClientRect(),n=t.width/e.offsetWidth||1,o=t.height/e.offsetHeight||1;return 1!==n||1!==o}(t),p=(0,l["default"])(t),m=(0,o["default"])(e,s),f={scrollLeft:0,scrollTop:0},h={x:0,y:0};(d||!d&&!n)&&(("body"!==(0,a["default"])(t)||(0,u["default"])(p))&&(f=(0,r["default"])(t)),(0,i.isHTMLElement)(t)?((h=(0,o["default"])(t,!0)).x+=t.clientLeft,h.y+=t.clientTop):p&&(h.x=(0,c["default"])(p)));return{x:m.left+f.scrollLeft-h.x,y:m.top+f.scrollTop-h.y,width:m.width,height:m.height}};var o=d(n(93529)),r=d(n(62317)),a=d(n(22999)),i=n(1316),c=d(n(54418)),l=d(n(67977)),u=d(n(63383));function d(e){return e&&e.__esModule?e:{"default":e}}},25462:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(0,r["default"])(e).getComputedStyle(e)};var o,r=(o=n(83808))&&o.__esModule?o:{"default":o}},67977:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(((0,o.isElement)(e)?e.ownerDocument:e.document)||window.document).documentElement};var o=n(1316)},52779:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t,n=(0,o["default"])(e),l=(0,i["default"])(e),u=null==(t=e.ownerDocument)?void 0:t.body,d=(0,c.max)(n.scrollWidth,n.clientWidth,u?u.scrollWidth:0,u?u.clientWidth:0),s=(0,c.max)(n.scrollHeight,n.clientHeight,u?u.scrollHeight:0,u?u.clientHeight:0),p=-l.scrollLeft+(0,a["default"])(e),m=-l.scrollTop;"rtl"===(0,r["default"])(u||n).direction&&(p+=(0,c.max)(n.clientWidth,u?u.clientWidth:0)-d);return{width:d,height:s,x:p,y:m}};var o=l(n(67977)),r=l(n(25462)),a=l(n(54418)),i=l(n(43581)),c=n(36083);function l(e){return e&&e.__esModule?e:{"default":e}}},66860:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}},62408:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,r["default"])(e),n=e.offsetWidth,o=e.offsetHeight;Math.abs(t.width-n)<=1&&(n=t.width);Math.abs(t.height-o)<=1&&(o=t.height);return{x:e.offsetLeft,y:e.offsetTop,width:n,height:o}};var o,r=(o=n(93529))&&o.__esModule?o:{"default":o}},22999:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e?(e.nodeName||"").toLowerCase():null}},62317:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return e!==(0,r["default"])(e)&&(0,a.isHTMLElement)(e)?(0,i["default"])(e):(0,o["default"])(e)};var o=c(n(43581)),r=c(n(83808)),a=n(1316),i=c(n(66860));function c(e){return e&&e.__esModule?e:{"default":e}}},95111:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,o["default"])(e),n=d(e);for(;n&&(0,c["default"])(n)&&"static"===(0,a["default"])(n).position;)n=d(n);if(n&&("html"===(0,r["default"])(n)||"body"===(0,r["default"])(n)&&"static"===(0,a["default"])(n).position))return t;return n||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&(0,i.isHTMLElement)(e)){if("fixed"===(0,a["default"])(e).position)return null}var n=(0,l["default"])(e);for(;(0,i.isHTMLElement)(n)&&["html","body"].indexOf((0,r["default"])(n))<0;){var o=(0,a["default"])(n);if("none"!==o.transform||"none"!==o.perspective||"paint"===o.contain||-1!==["transform","perspective"].indexOf(o.willChange)||t&&"filter"===o.willChange||t&&o.filter&&"none"!==o.filter)return n;n=n.parentNode}return null}(e)||t};var o=u(n(83808)),r=u(n(22999)),a=u(n(25462)),i=n(1316),c=u(n(45574)),l=u(n(62576));function u(e){return e&&e.__esModule?e:{"default":e}}function d(e){return(0,i.isHTMLElement)(e)&&"fixed"!==(0,a["default"])(e).position?e.offsetParent:null}},62576:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){if("html"===(0,o["default"])(e))return e;return e.assignedSlot||e.parentNode||((0,a.isShadowRoot)(e)?e.host:null)||(0,r["default"])(e)};var o=i(n(22999)),r=i(n(67977)),a=n(1316);function i(e){return e&&e.__esModule?e:{"default":e}}},99597:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function l(e){if(["html","body","#document"].indexOf((0,a["default"])(e))>=0)return e.ownerDocument.body;if((0,i.isHTMLElement)(e)&&(0,r["default"])(e))return e;return l((0,o["default"])(e))};var o=c(n(62576)),r=c(n(63383)),a=c(n(22999)),i=n(1316);function c(e){return e&&e.__esModule?e:{"default":e}}},68056:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,o["default"])(e),n=(0,r["default"])(e),i=t.visualViewport,c=n.clientWidth,l=n.clientHeight,u=0,d=0;i&&(c=i.width,l=i.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(u=i.offsetLeft,d=i.offsetTop));return{width:c,height:l,x:u+(0,a["default"])(e),y:d}};var o=i(n(83808)),r=i(n(67977)),a=i(n(54418));function i(e){return e&&e.__esModule?e:{"default":e}}},83808:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}},43581:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,r["default"])(e),n=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:n,scrollTop:o}};var o,r=(o=n(83808))&&o.__esModule?o:{"default":o}},54418:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(0,o["default"])((0,r["default"])(e)).left+(0,a["default"])(e).scrollLeft};var o=i(n(93529)),r=i(n(67977)),a=i(n(43581));function i(e){return e&&e.__esModule?e:{"default":e}}},1316:function(e,t,n){"use strict";t.__esModule=!0,t.isElement=function(e){var t=(0,r["default"])(e).Element;return e instanceof t||e instanceof Element},t.isHTMLElement=function(e){var t=(0,r["default"])(e).HTMLElement;return e instanceof t||e instanceof HTMLElement},t.isShadowRoot=function(e){if("undefined"==typeof ShadowRoot)return!1;var t=(0,r["default"])(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot};var o,r=(o=n(83808))&&o.__esModule?o:{"default":o}},63383:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,r["default"])(e),n=t.overflow,o=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+a+o)};var o,r=(o=n(25462))&&o.__esModule?o:{"default":o}},45574:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return["table","td","th"].indexOf((0,r["default"])(e))>=0};var o,r=(o=n(22999))&&o.__esModule?o:{"default":o}},39662:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function l(e,t){var n;void 0===t&&(t=[]);var c=(0,o["default"])(e),u=c===(null==(n=e.ownerDocument)?void 0:n.body),d=(0,a["default"])(c),s=u?[d].concat(d.visualViewport||[],(0,i["default"])(c)?c:[]):c,p=t.concat(s);return u?p:p.concat(l((0,r["default"])(s)))};var o=c(n(99597)),r=c(n(62576)),a=c(n(83808)),i=c(n(63383));function c(e){return e&&e.__esModule?e:{"default":e}}},61797:function(e,t){"use strict";t.__esModule=!0,t.modifierPhases=t.afterWrite=t.write=t.beforeWrite=t.afterMain=t.main=t.beforeMain=t.afterRead=t.read=t.beforeRead=t.placements=t.variationPlacements=t.reference=t.popper=t.viewport=t.clippingParents=t.end=t.start=t.basePlacements=t.auto=t.left=t.right=t.bottom=t.top=void 0;t.top="top";var n="bottom";t.bottom=n;var o="right";t.right=o;var r="left";t.left=r;var a="auto";t.auto=a;var i=["top",n,o,r];t.basePlacements=i;var c="start";t.start=c;var l="end";t.end=l;t.clippingParents="clippingParents";t.viewport="viewport";t.popper="popper";t.reference="reference";var u=i.reduce((function(e,t){return e.concat([t+"-"+c,t+"-"+l])}),[]);t.variationPlacements=u;var d=[].concat(i,[a]).reduce((function(e,t){return e.concat([t,t+"-"+c,t+"-"+l])}),[]);t.placements=d;var s="beforeRead";t.beforeRead=s;var p="read";t.read=p;var m="afterRead";t.afterRead=m;var f="beforeMain";t.beforeMain=f;var h="main";t.main=h;var C="afterMain";t.afterMain=C;var g="beforeWrite";t.beforeWrite=g;var b="write";t.write=b;var v="afterWrite";t.afterWrite=v;var N=[s,p,m,f,h,C,g,b,v];t.modifierPhases=N},84195:function(e,t,n){"use strict";t.__esModule=!0;var o={popperGenerator:!0,detectOverflow:!0,createPopperBase:!0,createPopper:!0,createPopperLite:!0};t.createPopperLite=t.createPopper=t.createPopperBase=t.detectOverflow=t.popperGenerator=void 0;var r=n(61797);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===r[e]||(t[e]=r[e]))}));var a=n(16850);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===a[e]||(t[e]=a[e]))}));var i=n(36997);t.popperGenerator=i.popperGenerator,t.detectOverflow=i.detectOverflow,t.createPopperBase=i.createPopper;var c=n(38385);t.createPopper=c.createPopper;var l=n(97126);t.createPopperLite=l.createPopper},59028:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var o,r=(o=n(22999))&&o.__esModule?o:{"default":o},a=n(1316);var i={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},o=t.attributes[e]||{},i=t.elements[e];(0,a.isHTMLElement)(i)&&(0,r["default"])(i)&&(Object.assign(i.style,n),Object.keys(o).forEach((function(e){var t=o[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var o=t.elements[e],i=t.attributes[e]||{},c=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});(0,a.isHTMLElement)(o)&&(0,r["default"])(o)&&(Object.assign(o.style,c),Object.keys(i).forEach((function(e){o.removeAttribute(e)})))}))}},requires:["computeStyles"]};t["default"]=i},25615:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var o=p(n(91561)),r=p(n(62408)),a=p(n(63171)),i=p(n(95111)),c=p(n(19398)),l=p(n(83158)),u=p(n(2595)),d=p(n(1724)),s=n(61797);n(1316);function p(e){return e&&e.__esModule?e:{"default":e}}var m=function(e,t){return e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e,(0,u["default"])("number"!=typeof e?e:(0,d["default"])(e,s.basePlacements))};var f={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,a=e.name,u=e.options,d=n.elements.arrow,p=n.modifiersData.popperOffsets,f=(0,o["default"])(n.placement),h=(0,c["default"])(f),C=[s.left,s.right].indexOf(f)>=0?"height":"width";if(d&&p){var g=m(u.padding,n),b=(0,r["default"])(d),v="y"===h?s.top:s.left,N="y"===h?s.bottom:s.right,V=n.rects.reference[C]+n.rects.reference[h]-p[h]-n.rects.popper[C],y=p[h]-n.rects.reference[h],_=(0,i["default"])(d),w=_?"y"===h?_.clientHeight||0:_.clientWidth||0:0,k=V/2-y/2,S=g[v],x=w-b[C]-g[N],B=w/2-b[C]/2+k,A=(0,l["default"])(S,B,x),L=h;n.modifiersData[a]=((t={})[L]=A,t.centerOffset=A-B,t)}},effect:function(e){var t=e.state,n=e.options.element,o=void 0===n?"[data-popper-arrow]":n;null!=o&&("string"!=typeof o||(o=t.elements.popper.querySelector(o)))&&(0,a["default"])(t.elements.popper,o)&&(t.elements.arrow=o)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};t["default"]=f},21481:function(e,t,n){"use strict";t.__esModule=!0,t.mapToStyles=p,t["default"]=void 0;var o=n(61797),r=d(n(95111)),a=d(n(83808)),i=d(n(67977)),c=d(n(25462)),l=d(n(91561)),u=n(36083);function d(e){return e&&e.__esModule?e:{"default":e}}var s={top:"auto",right:"auto",bottom:"auto",left:"auto"};function p(e){var t,n=e.popper,l=e.popperRect,d=e.placement,p=e.offsets,m=e.position,f=e.gpuAcceleration,h=e.adaptive,C=e.roundOffsets,g=!0===C?function(e){var t=e.x,n=e.y,o=window.devicePixelRatio||1;return{x:(0,u.round)((0,u.round)(t*o)/o)||0,y:(0,u.round)((0,u.round)(n*o)/o)||0}}(p):"function"==typeof C?C(p):p,b=g.x,v=void 0===b?0:b,N=g.y,V=void 0===N?0:N,y=p.hasOwnProperty("x"),_=p.hasOwnProperty("y"),w=o.left,k=o.top,S=window;if(h){var x=(0,r["default"])(n),B="clientHeight",A="clientWidth";x===(0,a["default"])(n)&&(x=(0,i["default"])(n),"static"!==(0,c["default"])(x).position&&(B="scrollHeight",A="scrollWidth")),d===o.top&&(k=o.bottom,V-=x[B]-l.height,V*=f?1:-1),d===o.left&&(w=o.right,v-=x[A]-l.width,v*=f?1:-1)}var L,D=Object.assign({position:m},h&&s);return f?Object.assign({},D,((L={})[k]=_?"0":"",L[w]=y?"0":"",L.transform=(S.devicePixelRatio||1)<2?"translate("+v+"px, "+V+"px)":"translate3d("+v+"px, "+V+"px, 0)",L)):Object.assign({},D,((t={})[k]=_?V+"px":"",t[w]=y?v+"px":"",t.transform="",t))}var m={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,o=n.gpuAcceleration,r=void 0===o||o,a=n.adaptive,i=void 0===a||a,c=n.roundOffsets,u=void 0===c||c,d={placement:(0,l["default"])(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,p(Object.assign({},d,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:i,roundOffsets:u})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,p(Object.assign({},d,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};t["default"]=m},42325:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var o,r=(o=n(83808))&&o.__esModule?o:{"default":o};var a={passive:!0};var i={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,o=e.options,i=o.scroll,c=void 0===i||i,l=o.resize,u=void 0===l||l,d=(0,r["default"])(t.elements.popper),s=[].concat(t.scrollParents.reference,t.scrollParents.popper);return c&&s.forEach((function(e){e.addEventListener("scroll",n.update,a)})),u&&d.addEventListener("resize",n.update,a),function(){c&&s.forEach((function(e){e.removeEventListener("scroll",n.update,a)})),u&&d.removeEventListener("resize",n.update,a)}},data:{}};t["default"]=i},56159:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var o=d(n(86141)),r=d(n(91561)),a=d(n(10404)),i=d(n(63308)),c=d(n(97396)),l=n(61797),u=d(n(26992));function d(e){return e&&e.__esModule?e:{"default":e}}var s={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,d=e.name;if(!t.modifiersData[d]._skip){for(var s=n.mainAxis,p=void 0===s||s,m=n.altAxis,f=void 0===m||m,h=n.fallbackPlacements,C=n.padding,g=n.boundary,b=n.rootBoundary,v=n.altBoundary,N=n.flipVariations,V=void 0===N||N,y=n.allowedAutoPlacements,_=t.options.placement,w=(0,r["default"])(_),k=h||(w===_||!V?[(0,o["default"])(_)]:function(e){if((0,r["default"])(e)===l.auto)return[];var t=(0,o["default"])(e);return[(0,a["default"])(e),t,(0,a["default"])(t)]}(_)),S=[_].concat(k).reduce((function(e,n){return e.concat((0,r["default"])(n)===l.auto?(0,c["default"])(t,{placement:n,boundary:g,rootBoundary:b,padding:C,flipVariations:V,allowedAutoPlacements:y}):n)}),[]),x=t.rects.reference,B=t.rects.popper,A=new Map,L=!0,D=S[0],E=0;E=0,M=O?"width":"height",P=(0,i["default"])(t,{placement:T,boundary:g,rootBoundary:b,altBoundary:v,padding:C}),R=O?F?l.right:l.left:F?l.bottom:l.top;x[M]>B[M]&&(R=(0,o["default"])(R));var j=(0,o["default"])(R),W=[];if(p&&W.push(P[I]<=0),f&&W.push(P[R]<=0,P[j]<=0),W.every((function(e){return e}))){D=T,L=!1;break}A.set(T,W)}if(L)for(var z=function(e){var t=S.find((function(t){var n=A.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return D=t,"break"},U=V?3:1;U>0;U--){if("break"===z(U))break}t.placement!==D&&(t.modifiersData[d]._skip=!0,t.placement=D,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};t["default"]=s},408:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var o,r=n(61797),a=(o=n(63308))&&o.__esModule?o:{"default":o};function i(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function c(e){return[r.top,r.right,r.bottom,r.left].some((function(t){return e[t]>=0}))}var l={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,o=t.rects.reference,r=t.rects.popper,l=t.modifiersData.preventOverflow,u=(0,a["default"])(t,{elementContext:"reference"}),d=(0,a["default"])(t,{altBoundary:!0}),s=i(u,o),p=i(d,r,l),m=c(s),f=c(p);t.modifiersData[n]={referenceClippingOffsets:s,popperEscapeOffsets:p,isReferenceHidden:m,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":m,"data-popper-escaped":f})}};t["default"]=l},16850:function(e,t,n){"use strict";t.__esModule=!0,t.preventOverflow=t.popperOffsets=t.offset=t.hide=t.flip=t.eventListeners=t.computeStyles=t.arrow=t.applyStyles=void 0;var o=p(n(59028));t.applyStyles=o["default"];var r=p(n(25615));t.arrow=r["default"];var a=p(n(21481));t.computeStyles=a["default"];var i=p(n(42325));t.eventListeners=i["default"];var c=p(n(56159));t.flip=c["default"];var l=p(n(408));t.hide=l["default"];var u=p(n(62167));t.offset=u["default"];var d=p(n(56496));t.popperOffsets=d["default"];var s=p(n(458));function p(e){return e&&e.__esModule?e:{"default":e}}t.preventOverflow=s["default"]},62167:function(e,t,n){"use strict";t.__esModule=!0,t.distanceAndSkiddingToXY=i,t["default"]=void 0;var o,r=(o=n(91561))&&o.__esModule?o:{"default":o},a=n(61797);function i(e,t,n){var o=(0,r["default"])(e),i=[a.left,a.top].indexOf(o)>=0?-1:1,c="function"==typeof n?n(Object.assign({},t,{placement:e})):n,l=c[0],u=c[1];return l=l||0,u=(u||0)*i,[a.left,a.right].indexOf(o)>=0?{x:u,y:l}:{x:l,y:u}}var c={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,o=e.name,r=n.offset,c=void 0===r?[0,0]:r,l=a.placements.reduce((function(e,n){return e[n]=i(n,t.rects,c),e}),{}),u=l[t.placement],d=u.x,s=u.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=s),t.modifiersData[o]=l}};t["default"]=c},56496:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var o,r=(o=n(38138))&&o.__esModule?o:{"default":o};var a={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=(0,r["default"])({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};t["default"]=a},458:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var o=n(61797),r=f(n(91561)),a=f(n(19398)),i=f(n(81367)),c=f(n(83158)),l=f(n(62408)),u=f(n(95111)),d=f(n(63308)),s=f(n(26992)),p=f(n(15565)),m=n(36083);function f(e){return e&&e.__esModule?e:{"default":e}}var h={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,f=e.name,h=n.mainAxis,C=void 0===h||h,g=n.altAxis,b=void 0!==g&&g,v=n.boundary,N=n.rootBoundary,V=n.altBoundary,y=n.padding,_=n.tether,w=void 0===_||_,k=n.tetherOffset,S=void 0===k?0:k,x=(0,d["default"])(t,{boundary:v,rootBoundary:N,padding:y,altBoundary:V}),B=(0,r["default"])(t.placement),A=(0,s["default"])(t.placement),L=!A,D=(0,a["default"])(B),E=(0,i["default"])(D),T=t.modifiersData.popperOffsets,I=t.rects.reference,F=t.rects.popper,O="function"==typeof S?S(Object.assign({},t.rects,{placement:t.placement})):S,M={x:0,y:0};if(T){if(C||b){var P="y"===D?o.top:o.left,R="y"===D?o.bottom:o.right,j="y"===D?"height":"width",W=T[D],z=T[D]+x[P],U=T[D]-x[R],K=w?-F[j]/2:0,H=A===o.start?I[j]:F[j],G=A===o.start?-F[j]:-I[j],Y=t.elements.arrow,q=w&&Y?(0,l["default"])(Y):{width:0,height:0},$=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:(0,p["default"])(),Q=$[P],J=$[R],Z=(0,c["default"])(0,I[j],q[j]),X=L?I[j]/2-K-Z-Q-O:H-Z-Q-O,ee=L?-I[j]/2+K+Z+J+O:G+Z+J+O,te=t.elements.arrow&&(0,u["default"])(t.elements.arrow),ne=te?"y"===D?te.clientTop||0:te.clientLeft||0:0,oe=t.modifiersData.offset?t.modifiersData.offset[t.placement][D]:0,re=T[D]+X-oe-ne,ae=T[D]+ee-oe;if(C){var ie=(0,c["default"])(w?(0,m.min)(z,re):z,W,w?(0,m.max)(U,ae):U);T[D]=ie,M[D]=ie-W}if(b){var ce="x"===D?o.top:o.left,le="x"===D?o.bottom:o.right,ue=T[E],de=ue+x[ce],se=ue-x[le],pe=(0,c["default"])(w?(0,m.min)(de,re):de,ue,w?(0,m.max)(se,ae):se);T[E]=pe,M[E]=pe-ue}}t.modifiersData[f]=M}},requiresIfExists:["offset"]};t["default"]=h},97126:function(e,t,n){"use strict";t.__esModule=!0,t.defaultModifiers=t.createPopper=void 0;var o=n(36997);t.popperGenerator=o.popperGenerator,t.detectOverflow=o.detectOverflow;var r=l(n(42325)),a=l(n(56496)),i=l(n(21481)),c=l(n(59028));function l(e){return e&&e.__esModule?e:{"default":e}}var u=[r["default"],a["default"],i["default"],c["default"]];t.defaultModifiers=u;var d=(0,o.popperGenerator)({defaultModifiers:u});t.createPopper=d},38385:function(e,t,n){"use strict";t.__esModule=!0;var o={createPopper:!0,createPopperLite:!0,defaultModifiers:!0,popperGenerator:!0,detectOverflow:!0};t.defaultModifiers=t.createPopperLite=t.createPopper=void 0;var r=n(36997);t.popperGenerator=r.popperGenerator,t.detectOverflow=r.detectOverflow;var a=C(n(42325)),i=C(n(56496)),c=C(n(21481)),l=C(n(59028)),u=C(n(62167)),d=C(n(56159)),s=C(n(458)),p=C(n(25615)),m=C(n(408)),f=n(97126);t.createPopperLite=f.createPopper;var h=n(16850);function C(e){return e&&e.__esModule?e:{"default":e}}Object.keys(h).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||e in t&&t[e]===h[e]||(t[e]=h[e]))}));var g=[a["default"],i["default"],c["default"],l["default"],u["default"],d["default"],s["default"],p["default"],m["default"]];t.defaultModifiers=g;var b=(0,r.popperGenerator)({defaultModifiers:g});t.createPopperLite=t.createPopper=b},97396:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t){void 0===t&&(t={});var n=t,c=n.placement,l=n.boundary,u=n.rootBoundary,d=n.padding,s=n.flipVariations,p=n.allowedAutoPlacements,m=void 0===p?r.placements:p,f=(0,o["default"])(c),h=f?s?r.variationPlacements:r.variationPlacements.filter((function(e){return(0,o["default"])(e)===f})):r.basePlacements,C=h.filter((function(e){return m.indexOf(e)>=0}));0===C.length&&(C=h);var g=C.reduce((function(t,n){return t[n]=(0,a["default"])(e,{placement:n,boundary:l,rootBoundary:u,padding:d})[(0,i["default"])(n)],t}),{});return Object.keys(g).sort((function(e,t){return g[e]-g[t]}))};var o=c(n(26992)),r=n(61797),a=c(n(63308)),i=c(n(91561));function c(e){return e&&e.__esModule?e:{"default":e}}},38138:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t,n=e.reference,c=e.element,l=e.placement,u=l?(0,o["default"])(l):null,d=l?(0,r["default"])(l):null,s=n.x+n.width/2-c.width/2,p=n.y+n.height/2-c.height/2;switch(u){case i.top:t={x:s,y:n.y-c.height};break;case i.bottom:t={x:s,y:n.y+n.height};break;case i.right:t={x:n.x+n.width,y:p};break;case i.left:t={x:n.x-c.width,y:p};break;default:t={x:n.x,y:n.y}}var m=u?(0,a["default"])(u):null;if(null!=m){var f="y"===m?"height":"width";switch(d){case i.start:t[m]=t[m]-(n[f]/2-c[f]/2);break;case i.end:t[m]=t[m]+(n[f]/2-c[f]/2)}}return t};var o=c(n(91561)),r=c(n(26992)),a=c(n(19398)),i=n(61797);function c(e){return e&&e.__esModule?e:{"default":e}}},17850:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){var t;return function(){return t||(t=new Promise((function(n){Promise.resolve().then((function(){t=undefined,n(e())}))}))),t}}},63308:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t){void 0===t&&(t={});var n=t,p=n.placement,m=void 0===p?e.placement:p,f=n.boundary,h=void 0===f?l.clippingParents:f,C=n.rootBoundary,g=void 0===C?l.viewport:C,b=n.elementContext,v=void 0===b?l.popper:b,N=n.altBoundary,V=void 0!==N&&N,y=n.padding,_=void 0===y?0:y,w=(0,d["default"])("number"!=typeof _?_:(0,s["default"])(_,l.basePlacements)),k=v===l.popper?l.reference:l.popper,S=e.elements.reference,x=e.rects.popper,B=e.elements[V?k:v],A=(0,r["default"])((0,u.isElement)(B)?B:B.contextElement||(0,a["default"])(e.elements.popper),h,g),L=(0,o["default"])(S),D=(0,i["default"])({reference:L,element:x,strategy:"absolute",placement:m}),E=(0,c["default"])(Object.assign({},x,D)),T=v===l.popper?E:L,I={top:A.top-T.top+w.top,bottom:T.bottom-A.bottom+w.bottom,left:A.left-T.left+w.left,right:T.right-A.right+w.right},F=e.modifiersData.offset;if(v===l.popper&&F){var O=F[m];Object.keys(I).forEach((function(e){var t=[l.right,l.bottom].indexOf(e)>=0?1:-1,n=[l.top,l.bottom].indexOf(e)>=0?"y":"x";I[e]+=O[n]*t}))}return I};var o=p(n(93529)),r=p(n(76416)),a=p(n(67977)),i=p(n(38138)),c=p(n(24955)),l=n(61797),u=n(1316),d=p(n(2595)),s=p(n(1724));function p(e){return e&&e.__esModule?e:{"default":e}}},1724:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}},62630:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o=0?"x":"y"}},86141:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.replace(/left|right|bottom|top/g,(function(e){return n[e]}))};var n={left:"right",right:"left",bottom:"top",top:"bottom"}},10404:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.replace(/start|end/g,(function(e){return n[e]}))};var n={start:"end",end:"start"}},26992:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.split("-")[1]}},36083:function(e,t){"use strict";t.__esModule=!0,t.round=t.min=t.max=void 0;var n=Math.max;t.max=n;var o=Math.min;t.min=o;var r=Math.round;t.round=r},13043:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){var t=e.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{});return Object.keys(t).map((function(e){return t[e]}))}},2595:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return Object.assign({},(0,r["default"])(),e)};var o,r=(o=n(15565))&&o.__esModule?o:{"default":o}},23967:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=function(e){var t=new Map,n=new Set,o=[];function r(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var o=t.get(e);o&&r(o)}})),o.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||r(e)})),o}(e);return o.modifierPhases.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])};var o=n(61797)},24955:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}},6559:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e,t){var n=new Set;return e.filter((function(e){var o=t(e);if(!n.has(o))return n.add(o),!0}))}},23849:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){e.forEach((function(t){Object.keys(t).forEach((function(n){switch(n){case"name":t.name;break;case"enabled":t.enabled;case"phase":r.modifierPhases.indexOf(t.phase);break;case"fn":t.fn;break;case"effect":t.effect;break;case"requires":Array.isArray(t.requires);break;case"requiresIfExists":Array.isArray(t.requiresIfExists)}t.requires&&t.requires.forEach((function(t){e.find((function(e){return e.name===t}))}))}))}))};(o=n(62630))&&o.__esModule;var o,r=n(61797)},83158:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t,n){return(0,o.max)(e,(0,o.min)(t,n))};var o=n(36083)},52726:function(e){"use strict";e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},91254:function(e,t,n){"use strict";var o=n(81662);e.exports=function(e){if(!o(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},26817:function(e,t,n){"use strict";var o=n(20839),r=n(49500),a=n(81965),i=o("unscopables"),c=Array.prototype;c[i]==undefined&&a.f(c,i,{configurable:!0,value:r(null)}),e.exports=function(e){c[i][e]=!0}},84249:function(e,t,n){"use strict";var o=n(70219).charAt;e.exports=function(e,t,n){return t+(n?o(e,t).length:1)}},62147:function(e){"use strict";e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},90155:function(e,t,n){"use strict";var o=n(81662);e.exports=function(e){if(!o(e))throw TypeError(String(e)+" is not an object");return e}},38536:function(e){"use strict";e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},46024:function(e,t,n){"use strict";var o,r,a,i=n(38536),c=n(54408),l=n(29071),u=n(81662),d=n(83122),s=n(42287),p=n(95479),m=n(51414),f=n(81965).f,h=n(87263),C=n(99099),g=n(20839),b=n(58060),v=l.Int8Array,N=v&&v.prototype,V=l.Uint8ClampedArray,y=V&&V.prototype,_=v&&h(v),w=N&&h(N),k=Object.prototype,S=k.isPrototypeOf,x=g("toStringTag"),B=b("TYPED_ARRAY_TAG"),A=b("TYPED_ARRAY_CONSTRUCTOR"),L=i&&!!C&&"Opera"!==s(l.opera),D=!1,E={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},T={BigInt64Array:8,BigUint64Array:8},I=function(e){if(!u(e))return!1;var t=s(e);return"DataView"===t||d(E,t)||d(T,t)},F=function(e){if(!u(e))return!1;var t=s(e);return d(E,t)||d(T,t)};for(o in E)(a=(r=l[o])&&r.prototype)?p(a,A,r):L=!1;for(o in T)(a=(r=l[o])&&r.prototype)&&p(a,A,r);if((!L||"function"!=typeof _||_===Function.prototype)&&(_=function(){throw TypeError("Incorrect invocation")},L))for(o in E)l[o]&&C(l[o],_);if((!L||!w||w===k)&&(w=_.prototype,L))for(o in E)l[o]&&C(l[o].prototype,w);if(L&&h(y)!==w&&C(y,w),c&&!d(w,x))for(o in D=!0,f(w,x,{get:function(){return u(this)?this[B]:undefined}}),E)l[o]&&p(l[o],B,o);e.exports={NATIVE_ARRAY_BUFFER_VIEWS:L,TYPED_ARRAY_CONSTRUCTOR:A,TYPED_ARRAY_TAG:D&&B,aTypedArray:function(e){if(F(e))return e;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(e){if(C&&!S.call(_,e))throw TypeError("Target is not a typed array constructor");return e},exportTypedArrayMethod:function(e,t,n){if(c){if(n)for(var o in E){var r=l[o];if(r&&d(r.prototype,e))try{delete r.prototype[e]}catch(a){}}w[e]&&!n||m(w,e,n?t:L&&N[e]||t)}},exportTypedArrayStaticMethod:function(e,t,n){var o,r;if(c){if(C){if(n)for(o in E)if((r=l[o])&&d(r,e))try{delete r[e]}catch(a){}if(_[e]&&!n)return;try{return m(_,e,n?t:L&&_[e]||t)}catch(a){}}for(o in E)!(r=l[o])||r[e]&&!n||m(r,e,t)}},isView:I,isTypedArray:F,TypedArray:_,TypedArrayPrototype:w}},14374:function(e,t,n){"use strict";var o=n(29071),r=n(54408),a=n(38536),i=n(95479),c=n(46360),l=n(46203),u=n(62147),d=n(54026),s=n(46330),p=n(21332),m=n(33830),f=n(87263),h=n(99099),C=n(6628).f,g=n(81965).f,b=n(21657),v=n(72843),N=n(48441),V=N.get,y=N.set,_="ArrayBuffer",w="DataView",k="Wrong index",S=o.ArrayBuffer,x=S,B=o.DataView,A=B&&B.prototype,L=Object.prototype,D=o.RangeError,E=m.pack,T=m.unpack,I=function(e){return[255&e]},F=function(e){return[255&e,e>>8&255]},O=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},M=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},P=function(e){return E(e,23,4)},R=function(e){return E(e,52,8)},j=function(e,t){g(e.prototype,t,{get:function(){return V(this)[t]}})},W=function(e,t,n,o){var r=p(n),a=V(e);if(r+t>a.byteLength)throw D(k);var i=V(a.buffer).bytes,c=r+a.byteOffset,l=i.slice(c,c+t);return o?l:l.reverse()},z=function(e,t,n,o,r,a){var i=p(n),c=V(e);if(i+t>c.byteLength)throw D(k);for(var l=V(c.buffer).bytes,u=i+c.byteOffset,d=o(+r),s=0;sG;)(U=H[G++])in x||i(x,U,S[U]);K.constructor=x}h&&f(A)!==L&&h(A,L);var Y=new B(new x(2)),q=A.setInt8;Y.setInt8(0,2147483648),Y.setInt8(1,2147483649),!Y.getInt8(0)&&Y.getInt8(1)||c(A,{setInt8:function(e,t){q.call(this,e,t<<24>>24)},setUint8:function(e,t){q.call(this,e,t<<24>>24)}},{unsafe:!0})}else x=function(e){u(this,x,_);var t=p(e);y(this,{bytes:b.call(new Array(t),0),byteLength:t}),r||(this.byteLength=t)},B=function(e,t,n){u(this,B,w),u(e,x,w);var o=V(e).byteLength,a=d(t);if(a<0||a>o)throw D("Wrong offset");if(a+(n=n===undefined?o-a:s(n))>o)throw D("Wrong length");y(this,{buffer:e,byteLength:n,byteOffset:a}),r||(this.buffer=e,this.byteLength=n,this.byteOffset=a)},r&&(j(x,"byteLength"),j(B,"buffer"),j(B,"byteLength"),j(B,"byteOffset")),c(B.prototype,{getInt8:function(e){return W(this,1,e)[0]<<24>>24},getUint8:function(e){return W(this,1,e)[0]},getInt16:function(e){var t=W(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=W(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return M(W(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return M(W(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return T(W(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return T(W(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){z(this,1,e,I,t)},setUint8:function(e,t){z(this,1,e,I,t)},setInt16:function(e,t){z(this,2,e,F,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){z(this,2,e,F,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){z(this,4,e,O,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){z(this,4,e,O,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){z(this,4,e,P,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){z(this,8,e,R,t,arguments.length>2?arguments[2]:undefined)}});v(x,_),v(B,w),e.exports={ArrayBuffer:x,DataView:B}},84705:function(e,t,n){"use strict";var o=n(45009),r=n(97094),a=n(46330),i=Math.min;e.exports=[].copyWithin||function(e,t){var n=o(this),c=a(n.length),l=r(e,c),u=r(t,c),d=arguments.length>2?arguments[2]:undefined,s=i((d===undefined?c:r(d,c))-u,c-l),p=1;for(u0;)u in n?n[l]=n[u]:delete n[l],l+=p,u+=p;return n}},21657:function(e,t,n){"use strict";var o=n(45009),r=n(97094),a=n(46330);e.exports=function(e){for(var t=o(this),n=a(t.length),i=arguments.length,c=r(i>1?arguments[1]:undefined,n),l=i>2?arguments[2]:undefined,u=l===undefined?n:r(l,n);u>c;)t[c++]=e;return t}},49751:function(e,t,n){"use strict";var o=n(78969).forEach,r=n(57978)("forEach");e.exports=r?[].forEach:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}},15886:function(e){"use strict";e.exports=function(e,t){for(var n=0,o=t.length,r=new e(o);o>n;)r[n]=t[n++];return r}},34192:function(e,t,n){"use strict";var o=n(77348),r=n(45009),a=n(32603),i=n(64453),c=n(46330),l=n(18996),u=n(39423);e.exports=function(e){var t,n,d,s,p,m,f=r(e),h="function"==typeof this?this:Array,C=arguments.length,g=C>1?arguments[1]:undefined,b=g!==undefined,v=u(f),N=0;if(b&&(g=o(g,C>2?arguments[2]:undefined,2)),v==undefined||h==Array&&i(v))for(n=new h(t=c(f.length));t>N;N++)m=b?g(f[N],N):f[N],l(n,N,m);else for(p=(s=v.call(f)).next,n=new h;!(d=p.call(s)).done;N++)m=b?a(s,g,[d.value,N],!0):d.value,l(n,N,m);return n.length=N,n}},35957:function(e,t,n){"use strict";var o=n(10961),r=n(46330),a=n(97094),i=function(e){return function(t,n,i){var c,l=o(t),u=r(l.length),d=a(i,u);if(e&&n!=n){for(;u>d;)if((c=l[d++])!=c)return!0}else for(;u>d;d++)if((e||d in l)&&l[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:i(!0),indexOf:i(!1)}},78969:function(e,t,n){"use strict";var o=n(77348),r=n(27371),a=n(45009),i=n(46330),c=n(87257),l=[].push,u=function(e){var t=1==e,n=2==e,u=3==e,d=4==e,s=6==e,p=7==e,m=5==e||s;return function(f,h,C,g){for(var b,v,N=a(f),V=r(N),y=o(h,C,3),_=i(V.length),w=0,k=g||c,S=t?k(f,_):n||p?k(f,0):undefined;_>w;w++)if((m||w in V)&&(v=y(b=V[w],w,N),e))if(t)S[w]=v;else if(v)switch(e){case 3:return!0;case 5:return b;case 6:return w;case 2:l.call(S,b)}else switch(e){case 4:return!1;case 7:l.call(S,b)}return s?-1:u||d?d:S}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterReject:u(7)}},65975:function(e,t,n){"use strict";var o=n(10961),r=n(54026),a=n(46330),i=n(57978),c=Math.min,l=[].lastIndexOf,u=!!l&&1/[1].lastIndexOf(1,-0)<0,d=i("lastIndexOf"),s=u||!d;e.exports=s?function(e){if(u)return l.apply(this,arguments)||0;var t=o(this),n=a(t.length),i=n-1;for(arguments.length>1&&(i=c(i,r(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}:l},71721:function(e,t,n){"use strict";var o=n(46203),r=n(20839),a=n(95336),i=r("species");e.exports=function(e){return a>=51||!o((function(){var t=[];return(t.constructor={})[i]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},57978:function(e,t,n){"use strict";var o=n(46203);e.exports=function(e,t){var n=[][e];return!!n&&o((function(){n.call(null,t||function(){throw 1},1)}))}},97402:function(e,t,n){"use strict";var o=n(52726),r=n(45009),a=n(27371),i=n(46330),c=function(e){return function(t,n,c,l){o(n);var u=r(t),d=a(u),s=i(u.length),p=e?s-1:0,m=e?-1:1;if(c<2)for(;;){if(p in d){l=d[p],p+=m;break}if(p+=m,e?p<0:s<=p)throw TypeError("Reduce of empty array with no initial value")}for(;e?p>=0:s>p;p+=m)p in d&&(l=n(l,d[p],p,u));return l}};e.exports={left:c(!1),right:c(!0)}},85492:function(e){"use strict";var t=Math.floor,n=function(e,t){for(var n,o,r=e.length,a=1;a0;)e[o]=e[--o];o!==a++&&(e[o]=n)}return e},o=function(e,t,n){for(var o=e.length,r=t.length,a=0,i=0,c=[];a1?arguments[1]:undefined,3);t=t?t.next:n.first;)for(o(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!g(this,e)}}),a(d.prototype,n?{get:function(e){var t=g(this,e);return t&&t.value},set:function(e,t){return C(this,0===e?0:e,t)}}:{add:function(e){return C(this,e=0===e?0:e,e)}}),s&&o(d.prototype,"size",{get:function(){return m(this).size}}),d},setStrong:function(e,t,n){var o=t+" Iterator",r=h(t),a=h(o);u(e,t,(function(e,t){f(this,{type:o,target:e,state:r(e),kind:t,last:undefined})}),(function(){for(var e=a(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=undefined,{value:undefined,done:!0})}),n?"entries":"values",!n,!0),d(t)}}},6789:function(e,t,n){"use strict";var o=n(46360),r=n(88511).getWeakData,a=n(90155),i=n(81662),c=n(62147),l=n(1464),u=n(78969),d=n(83122),s=n(48441),p=s.set,m=s.getterFor,f=u.find,h=u.findIndex,C=0,g=function(e){return e.frozen||(e.frozen=new b)},b=function(){this.entries=[]},v=function(e,t){return f(e.entries,(function(e){return e[0]===t}))};b.prototype={get:function(e){var t=v(this,e);if(t)return t[1]},has:function(e){return!!v(this,e)},set:function(e,t){var n=v(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=h(this.entries,(function(t){return t[0]===e}));return~t&&this.entries.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,u){var s=e((function(e,o){c(e,s,t),p(e,{type:t,id:C++,frozen:undefined}),o!=undefined&&l(o,e[u],{that:e,AS_ENTRIES:n})})),f=m(t),h=function(e,t,n){var o=f(e),i=r(a(t),!0);return!0===i?g(o).set(t,n):i[o.id]=n,e};return o(s.prototype,{"delete":function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t)["delete"](e):n&&d(n,t.id)&&delete n[t.id]},has:function(e){var t=f(this);if(!i(e))return!1;var n=r(e);return!0===n?g(t).has(e):n&&d(n,t.id)}}),o(s.prototype,n?{get:function(e){var t=f(this);if(i(e)){var n=r(e);return!0===n?g(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return h(this,e,t)}}:{add:function(e){return h(this,e,!0)}}),s}}},37488:function(e,t,n){"use strict";var o=n(70850),r=n(29071),a=n(17600),i=n(51414),c=n(88511),l=n(1464),u=n(62147),d=n(81662),s=n(46203),p=n(61504),m=n(72843),f=n(50843);e.exports=function(e,t,n){var h=-1!==e.indexOf("Map"),C=-1!==e.indexOf("Weak"),g=h?"set":"add",b=r[e],v=b&&b.prototype,N=b,V={},y=function(e){var t=v[e];i(v,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(C&&!d(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return C&&!d(e)?undefined:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(C&&!d(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(a(e,"function"!=typeof b||!(C||v.forEach&&!s((function(){(new b).entries().next()})))))N=n.getConstructor(t,e,h,g),c.enable();else if(a(e,!0)){var _=new N,w=_[g](C?{}:-0,1)!=_,k=s((function(){_.has(1)})),S=p((function(e){new b(e)})),x=!C&&s((function(){for(var e=new b,t=5;t--;)e[g](t,t);return!e.has(-0)}));S||((N=t((function(t,n){u(t,N,e);var o=f(new b,t,N);return n!=undefined&&l(n,o[g],{that:o,AS_ENTRIES:h}),o}))).prototype=v,v.constructor=N),(k||x)&&(y("delete"),y("has"),h&&y("get")),(x||w)&&y(g),C&&v.clear&&delete v.clear}return V[e]=N,o({global:!0,forced:N!=b},V),m(N,e),C||n.setStrong(N,e,h),N}},9088:function(e,t,n){"use strict";var o=n(83122),r=n(11475),a=n(77415),i=n(81965);e.exports=function(e,t){for(var n=r(t),c=i.f,l=a.f,u=0;u"+c+""}},89750:function(e,t,n){"use strict";var o=n(53637).IteratorPrototype,r=n(49500),a=n(66856),i=n(72843),c=n(63913),l=function(){return this};e.exports=function(e,t,n){var u=t+" Iterator";return e.prototype=r(o,{next:a(1,n)}),i(e,u,!1,!0),c[u]=l,e}},95479:function(e,t,n){"use strict";var o=n(54408),r=n(81965),a=n(66856);e.exports=o?function(e,t,n){return r.f(e,t,a(1,n))}:function(e,t,n){return e[t]=n,e}},66856:function(e){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},18996:function(e,t,n){"use strict";var o=n(86997),r=n(81965),a=n(66856);e.exports=function(e,t,n){var i=o(t);i in e?r.f(e,i,a(0,n)):e[i]=n}},11216:function(e,t,n){"use strict";var o=n(46203),r=n(77169).start,a=Math.abs,i=Date.prototype,c=i.getTime,l=i.toISOString;e.exports=o((function(){return"0385-07-25T07:06:39.999Z"!=l.call(new Date(-50000000000001))}))||!o((function(){l.call(new Date(NaN))}))?function(){if(!isFinite(c.call(this)))throw RangeError("Invalid time value");var e=this,t=e.getUTCFullYear(),n=e.getUTCMilliseconds(),o=t<0?"-":t>9999?"+":"";return o+r(a(t),o?6:4,0)+"-"+r(e.getUTCMonth()+1,2,0)+"-"+r(e.getUTCDate(),2,0)+"T"+r(e.getUTCHours(),2,0)+":"+r(e.getUTCMinutes(),2,0)+":"+r(e.getUTCSeconds(),2,0)+"."+r(n,3,0)+"Z"}:l},62812:function(e,t,n){"use strict";var o=n(90155),r=n(17762);e.exports=function(e){if(o(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw TypeError("Incorrect hint");return r(this,e)}},54934:function(e,t,n){"use strict";var o=n(70850),r=n(89750),a=n(87263),i=n(99099),c=n(72843),l=n(95479),u=n(51414),d=n(20839),s=n(80591),p=n(63913),m=n(53637),f=m.IteratorPrototype,h=m.BUGGY_SAFARI_ITERATORS,C=d("iterator"),g="keys",b="values",v="entries",N=function(){return this};e.exports=function(e,t,n,d,m,V,y){r(n,t,d);var _,w,k,S=function(e){if(e===m&&D)return D;if(!h&&e in A)return A[e];switch(e){case g:case b:case v:return function(){return new n(this,e)}}return function(){return new n(this)}},x=t+" Iterator",B=!1,A=e.prototype,L=A[C]||A["@@iterator"]||m&&A[m],D=!h&&L||S(m),E="Array"==t&&A.entries||L;if(E&&(_=a(E.call(new e)),f!==Object.prototype&&_.next&&(s||a(_)===f||(i?i(_,f):"function"!=typeof _[C]&&l(_,C,N)),c(_,x,!0,!0),s&&(p[x]=N))),m==b&&L&&L.name!==b&&(B=!0,D=function(){return L.call(this)}),s&&!y||A[C]===D||l(A,C,D),p[t]=D,m)if(w={values:S(b),keys:V?D:S(g),entries:S(v)},y)for(k in w)(h||B||!(k in A))&&u(A,k,w[k]);else o({target:t,proto:!0,forced:h||B},w);return w}},34899:function(e,t,n){"use strict";var o=n(82155),r=n(83122),a=n(78131),i=n(81965).f;e.exports=function(e){var t=o.Symbol||(o.Symbol={});r(t,e)||i(t,e,{value:a.f(e)})}},54408:function(e,t,n){"use strict";var o=n(46203);e.exports=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},939:function(e,t,n){"use strict";var o=n(29071),r=n(81662),a=o.document,i=r(a)&&r(a.createElement);e.exports=function(e){return i?a.createElement(e):{}}},69238:function(e,t,n){"use strict";var o=n(68548).match(/firefox\/(\d+)/i);e.exports=!!o&&+o[1]},45158:function(e){"use strict";e.exports="object"==typeof window},85342:function(e,t,n){"use strict";var o=n(68548);e.exports=/MSIE|Trident/.test(o)},10064:function(e,t,n){"use strict";var o=n(68548),r=n(29071);e.exports=/iphone|ipod|ipad/i.test(o)&&r.Pebble!==undefined},33459:function(e,t,n){"use strict";var o=n(68548);e.exports=/(?:iphone|ipod|ipad).*applewebkit/i.test(o)},12396:function(e,t,n){"use strict";var o=n(87684),r=n(29071);e.exports="process"==o(r.process)},45521:function(e,t,n){"use strict";var o=n(68548);e.exports=/web0s(?!.*chrome)/i.test(o)},68548:function(e,t,n){"use strict";var o=n(54883);e.exports=o("navigator","userAgent")||""},95336:function(e,t,n){"use strict";var o,r,a=n(29071),i=n(68548),c=a.process,l=a.Deno,u=c&&c.versions||l&&l.version,d=u&&u.v8;d?r=(o=d.split("."))[0]<4?1:o[0]+o[1]:i&&(!(o=i.match(/Edge\/(\d+)/))||o[1]>=74)&&(o=i.match(/Chrome\/(\d+)/))&&(r=o[1]),e.exports=r&&+r},5556:function(e,t,n){"use strict";var o=n(68548).match(/AppleWebKit\/(\d+)\./);e.exports=!!o&&+o[1]},17195:function(e){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},70850:function(e,t,n){"use strict";var o=n(29071),r=n(77415).f,a=n(95479),i=n(51414),c=n(97952),l=n(9088),u=n(17600);e.exports=function(e,t){var n,d,s,p,m,f=e.target,h=e.global,C=e.stat;if(n=h?o:C?o[f]||c(f,{}):(o[f]||{}).prototype)for(d in t){if(p=t[d],s=e.noTargetGet?(m=r(n,d))&&m.value:n[d],!u(h?d:f+(C?".":"#")+d,e.forced)&&s!==undefined){if(typeof p==typeof s)continue;l(p,s)}(e.sham||s&&s.sham)&&a(p,"sham",!0),i(n,d,p,e)}}},46203:function(e){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},96504:function(e,t,n){"use strict";n(69811);var o=n(51414),r=n(10199),a=n(46203),i=n(20839),c=n(95479),l=i("species"),u=RegExp.prototype;e.exports=function(e,t,n,d){var s=i(e),p=!a((function(){var t={};return t[s]=function(){return 7},7!=""[e](t)})),m=p&&!a((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[s]=/./[s]),n.exec=function(){return t=!0,null},n[s](""),!t}));if(!p||!m||n){var f=/./[s],h=t(s,""[e],(function(e,t,n,o,a){var i=t.exec;return i===r||i===u.exec?p&&!a?{done:!0,value:f.call(t,n,o)}:{done:!0,value:e.call(n,t,o)}:{done:!1}}));o(String.prototype,e,h[0]),o(u,s,h[1])}d&&c(u[s],"sham",!0)}},46927:function(e,t,n){"use strict";var o=n(32420),r=n(46330),a=n(77348);e.exports=function i(e,t,n,c,l,u,d,s){for(var p,m=l,f=0,h=!!d&&a(d,s,3);f0&&o(p))m=i(e,t,p,r(p.length),m,u-1)-1;else{if(m>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[m]=p}m++}f++}return m}},90452:function(e,t,n){"use strict";var o=n(46203);e.exports=!o((function(){return Object.isExtensible(Object.preventExtensions({}))}))},77348:function(e,t,n){"use strict";var o=n(52726);e.exports=function(e,t,n){if(o(e),t===undefined)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,o){return e.call(t,n,o)};case 3:return function(n,o,r){return e.call(t,n,o,r)}}return function(){return e.apply(t,arguments)}}},18602:function(e,t,n){"use strict";var o=n(52726),r=n(81662),a=[].slice,i={},c=function(e,t,n){if(!(t in i)){for(var o=[],r=0;r]*>)/g,c=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,t,n,l,u,d){var s=n+e.length,p=l.length,m=c;return u!==undefined&&(u=o(u),m=i),a.call(d,m,(function(o,a){var i;switch(a.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(s);case"<":i=u[a.slice(1,-1)];break;default:var c=+a;if(0===c)return o;if(c>p){var d=r(c/10);return 0===d?o:d<=p?l[d-1]===undefined?a.charAt(1):l[d-1]+a.charAt(1):o}i=l[c-1]}return i===undefined?"":i}))}},29071:function(e,t,n){"use strict";var o=function(e){return e&&e.Math==Math&&e};e.exports=o("object"==typeof globalThis&&globalThis)||o("object"==typeof window&&window)||o("object"==typeof self&&self)||o("object"==typeof n.g&&n.g)||function(){return this}()||Function("return this")()},83122:function(e,t,n){"use strict";var o=n(45009),r={}.hasOwnProperty;e.exports=Object.hasOwn||function(e,t){return r.call(o(e),t)}},18609:function(e){"use strict";e.exports={}},40753:function(e,t,n){"use strict";var o=n(29071);e.exports=function(e,t){var n=o.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},21929:function(e,t,n){"use strict";var o=n(54883);e.exports=o("document","documentElement")},72825:function(e,t,n){"use strict";var o=n(54408),r=n(46203),a=n(939);e.exports=!o&&!r((function(){return 7!=Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},33830:function(e){"use strict";var t=Math.abs,n=Math.pow,o=Math.floor,r=Math.log,a=Math.LN2;e.exports={pack:function(e,i,c){var l,u,d,s=new Array(c),p=8*c-i-1,m=(1<>1,h=23===i?n(2,-24)-n(2,-77):0,C=e<0||0===e&&1/e<0?1:0,g=0;for((e=t(e))!=e||e===Infinity?(u=e!=e?1:0,l=m):(l=o(r(e)/a),e*(d=n(2,-l))<1&&(l--,d*=2),(e+=l+f>=1?h/d:h*n(2,1-f))*d>=2&&(l++,d/=2),l+f>=m?(u=0,l=m):l+f>=1?(u=(e*d-1)*n(2,i),l+=f):(u=e*n(2,f-1)*n(2,i),l=0));i>=8;s[g++]=255&u,u/=256,i-=8);for(l=l<0;s[g++]=255&l,l/=256,p-=8);return s[--g]|=128*C,s},unpack:function(e,t){var o,r=e.length,a=8*r-t-1,i=(1<>1,l=a-7,u=r-1,d=e[u--],s=127&d;for(d>>=7;l>0;s=256*s+e[u],u--,l-=8);for(o=s&(1<<-l)-1,s>>=-l,l+=t;l>0;o=256*o+e[u],u--,l-=8);if(0===s)s=1-c;else{if(s===i)return o?NaN:d?-Infinity:Infinity;o+=n(2,t),s-=c}return(d?-1:1)*o*n(2,s-t)}}},27371:function(e,t,n){"use strict";var o=n(46203),r=n(87684),a="".split;e.exports=o((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==r(e)?a.call(e,""):Object(e)}:Object},50843:function(e,t,n){"use strict";var o=n(81662),r=n(99099);e.exports=function(e,t,n){var a,i;return r&&"function"==typeof(a=t.constructor)&&a!==n&&o(i=a.prototype)&&i!==n.prototype&&r(e,i),e}},69718:function(e,t,n){"use strict";var o=n(41537),r=Function.toString;"function"!=typeof o.inspectSource&&(o.inspectSource=function(e){return r.call(e)}),e.exports=o.inspectSource},88511:function(e,t,n){"use strict";var o=n(70850),r=n(18609),a=n(81662),i=n(83122),c=n(81965).f,l=n(6628),u=n(18118),d=n(58060),s=n(90452),p=!1,m=d("meta"),f=0,h=Object.isExtensible||function(){return!0},C=function(e){c(e,m,{value:{objectID:"O"+f++,weakData:{}}})},g=e.exports={enable:function(){g.enable=function(){},p=!0;var e=l.f,t=[].splice,n={};n[m]=1,e(n).length&&(l.f=function(n){for(var o=e(n),r=0,a=o.length;rp;p++)if((f=_(e[p]))&&f instanceof u)return f;return new u(!1)}d=s.call(e)}for(h=d.next;!(C=h.call(d)).done;){try{f=_(C.value)}catch(w){throw l(d),w}if("object"==typeof f&&f&&f instanceof u)return f}return new u(!1)}},151:function(e,t,n){"use strict";var o=n(90155);e.exports=function(e){var t=e["return"];if(t!==undefined)return o(t.call(e)).value}},53637:function(e,t,n){"use strict";var o,r,a,i=n(46203),c=n(87263),l=n(95479),u=n(83122),d=n(20839),s=n(80591),p=d("iterator"),m=!1;[].keys&&("next"in(a=[].keys())?(r=c(c(a)))!==Object.prototype&&(o=r):m=!0);var f=o==undefined||i((function(){var e={};return o[p].call(e)!==e}));f&&(o={}),s&&!f||u(o,p)||l(o,p,(function(){return this})),e.exports={IteratorPrototype:o,BUGGY_SAFARI_ITERATORS:m}},63913:function(e){"use strict";e.exports={}},49294:function(e){"use strict";var t=Math.expm1,n=Math.exp;e.exports=!t||t(10)>22025.465794806718||t(10)<22025.465794806718||-2e-17!=t(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:n(e)-1}:t},23965:function(e,t,n){"use strict";var o=n(84250),r=Math.abs,a=Math.pow,i=a(2,-52),c=a(2,-23),l=a(2,127)*(2-c),u=a(2,-126);e.exports=Math.fround||function(e){var t,n,a=r(e),d=o(e);return al||n!=n?d*Infinity:d*n}},82544:function(e){"use strict";var t=Math.log;e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:t(1+e)}},84250:function(e){"use strict";e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},83639:function(e,t,n){"use strict";var o,r,a,i,c,l,u,d,s=n(29071),p=n(77415).f,m=n(37189).set,f=n(33459),h=n(10064),C=n(45521),g=n(12396),b=s.MutationObserver||s.WebKitMutationObserver,v=s.document,N=s.process,V=s.Promise,y=p(s,"queueMicrotask"),_=y&&y.value;_||(o=function(){var e,t;for(g&&(e=N.domain)&&e.exit();r;){t=r.fn,r=r.next;try{t()}catch(n){throw r?i():a=undefined,n}}a=undefined,e&&e.enter()},f||g||C||!b||!v?!h&&V&&V.resolve?((u=V.resolve(undefined)).constructor=V,d=u.then,i=function(){d.call(u,o)}):i=g?function(){N.nextTick(o)}:function(){m.call(s,o)}:(c=!0,l=v.createTextNode(""),new b(o).observe(l,{characterData:!0}),i=function(){l.data=c=!c})),e.exports=_||function(e){var t={fn:e,next:undefined};a&&(a.next=t),r||(r=t,i()),a=t}},86514:function(e,t,n){"use strict";var o=n(29071);e.exports=o.Promise},82156:function(e,t,n){"use strict";var o=n(95336),r=n(46203);e.exports=!!Object.getOwnPropertySymbols&&!r((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&o&&o<41}))},63059:function(e,t,n){"use strict";var o=n(29071),r=n(69718),a=o.WeakMap;e.exports="function"==typeof a&&/native code/.test(r(a))},24735:function(e,t,n){"use strict";var o=n(52726),r=function(e){var t,n;this.promise=new e((function(e,o){if(t!==undefined||n!==undefined)throw TypeError("Bad Promise constructor");t=e,n=o})),this.resolve=o(t),this.reject=o(n)};e.exports.f=function(e){return new r(e)}},2019:function(e,t,n){"use strict";var o=n(94384);e.exports=function(e){if(o(e))throw TypeError("The method doesn't accept regular expressions");return e}},19548:function(e,t,n){"use strict";var o=n(29071).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&o(e)}},14236:function(e,t,n){"use strict";var o=n(29071),r=n(1435),a=n(8182).trim,i=n(89384),c=o.parseFloat,l=1/c(i+"-0")!=-Infinity;e.exports=l?function(e){var t=a(r(e)),n=c(t);return 0===n&&"-"==t.charAt(0)?-0:n}:c},40731:function(e,t,n){"use strict";var o=n(29071),r=n(1435),a=n(8182).trim,i=n(89384),c=o.parseInt,l=/^[+-]?0[Xx]/,u=8!==c(i+"08")||22!==c(i+"0x16");e.exports=u?function(e,t){var n=a(r(e));return c(n,t>>>0||(l.test(n)?16:10))}:c},81217:function(e,t,n){"use strict";var o=n(54408),r=n(46203),a=n(45044),i=n(37881),c=n(96177),l=n(45009),u=n(27371),d=Object.assign,s=Object.defineProperty;e.exports=!d||r((function(){if(o&&1!==d({b:1},d(s({},"a",{enumerable:!0,get:function(){s(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),r="abcdefghijklmnopqrst";return e[n]=7,r.split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||a(d({},t)).join("")!=r}))?function(e,t){for(var n=l(e),r=arguments.length,d=1,s=i.f,p=c.f;r>d;)for(var m,f=u(arguments[d++]),h=s?a(f).concat(s(f)):a(f),C=h.length,g=0;C>g;)m=h[g++],o&&!p.call(f,m)||(n[m]=f[m]);return n}:d},49500:function(e,t,n){"use strict";var o,r=n(90155),a=n(61685),i=n(17195),c=n(18609),l=n(21929),u=n(939),d=n(15595),s=d("IE_PROTO"),p=function(){},m=function(e){return"