- Added lag protection to various function critical buttons. This will prevent all potential dupe exploits.
    - Fixed being able to sell eggs.
    - Fixed pricing adding new copies of itself on restart, eventually making a gargantuan file.
    - If pricing resolves to -1 for something, that thing will now be unlistable/unauctionable.
    - Added options to setup max STS value per STS period. By default, the period is set to a day, so this limits how much a player can sell to STS in terms of value per day. STS UI tells you your limit, and how close you are to reaching it.
    - Fixed null/-1 prices not showing up as N/A properly. May need a reset of your text.json.

    - Fixed trade request listings causing the listings data to explode.
    - New listing creation now defaults to the max possible duration.

    - Vastly improved performance of the integrated Atlantis.
    - Added new splash screen.
    - Fixed some interfaces still using old UIElement sprite paths.
    - Interfaces now all have descriptive secondary titles in place of the vanilla "Inventory" text.

    - Fix tax being 100 times bigger than what it should be.

    - Fix tax, properly this time.
    - Fix GTS eating untaxed money.
    - Maintenance mode now freezes the timer of listings.
    - Tax is now shown in the log.

    - Add hidden ability indicator to the ability placeholder.

    - Bid refunds due to being outbid are now cached like other GTS payments.
    - GTS payments are now differentiated between the different types in the GTS log.
    - Listings and auctions can no longer ever go below 0 seconds remaining.
    - Pricing of active listings is now cached. This will improve performance a lot.
    - Item NBT can now be used in place of item IDs in ui.json. To use this, set the item to "nbt:{your item NBT goes here}".
    - Fixed tax.
    - Fixed cascading item pricing causing watchdog crashes.
    - Fixed cascading pricing sometimes picking the wrong block to use, especially in the case of wildcards.

    - Now sends new listing messages to those who make the listings too.
    - Messages to players now use the species name and form name if applicable, rather than display name (this could have been nickname, which was undesirable).
    - Added forms to the default webhook text.
    - Added new webhook sprite URLs for Pokémon with forms.
    - Added config setting for which forms use the new webhook URLs. Default Alolan and Galarian.

    - Fix error in STS due to assumption made in the new logging.

    - Added separate GTS logs to ./logs/aquagts.
    - These logs are exported every configurable number of lines (default 250), or on use of admin command /gts exportlog, or on server shutdown. Exported logs are stored in zip files.
    - Listing movements, bank movements, and money changes are all added to the log. They're all timestamped, and provide full details of the linked listing, Pokémon, item, etc.
    - Added config option to output these logs to console too.

    - Most button operations are now done async. This should resolve lag that can manifest if a lot of people are using GTS, or if one person is spamming it. Given the nature of this, this is the change that will require tests to be done on Sponge and Spigot, as they like to have a go under certain circumstances if you do something like this.
    - Added Pokémon NBT tag placeholder, <tags>. Default value in config is setup for AquaAuras auras.
    - Added nickname placeholder, <nickname>.

    - Minimum price and duration is now set properly when using a shortcut command.

    - Added various shortcut commands, with configurable aliases. Use without slot to target currently held item, otherwise targets party slot.
    -- /gts sell [slot]
    -- /gts list [slot]
    -- /gts auc [slot]
    -- /gts sts [slot]
    -- /sell [slot]
    -- /auc [slot]
    -- /sts [slot]
    - Money earned from listings while offline is now given when that player is next online, instead of trying there and then.
    - Fixed offline queued messages not displaying.
    - ui.json now has versioning, and so will correct itself if it is wrong.
    - Trimmed down the internal Atlantis version to the bare minimum.
    - Added alternate URL for shiny Pokémon images.
    - Custom texture now appears in the stats block even if not registered with AquaGTS.
    - Changed default configuration to use new HA spec.
    - Fixed maintenance error message just saying null.

    - Added announcement messages when new listings are created. These can be hovered and clicked on.
    - Added settings menu for players to turn off said announcements. Can be accessed via new button on the main menu, or /gts settings.
    - Added new Pokémon placeholder, <extras>. Shows ExtraStats information if applicable.
    - Added ha:true and ha:false specs.
    - Webhook Pokémon sprite now replaces gender symbol with m and f.
    - Fixed Sponge warning spam.
    - Auction win messages now show the winning bid amount.
    - Auction win webhooks are now cyan, like GTS buy.

    - It'd be a really good idea to actually have it check untradeable rather than just display it as so.

    - Fixed auction wins giving the start amount, not the final amount.
    - Fixed order by price comparators being inverted.
    - Added update JSON, ready for sidemodification.
    - Fixed watch win message being wrong.