`,body_url:null,published:"2025-04-06T20:44:46.135468Z",updated:"2025-08-03T19:47:43.586068Z",approved:"2025-04-16T20:10:07.229019Z",queued:"2025-04-12T23:15:28.014684Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:3898,followers:3,categories:["utility"],additional_categories:[],loaders:["fabric"],versions:["HKRlqUb3","Tft7G7IS","c8QieiQk","n5ZqNuPv","Qf8fjO8Z","FEVriM17","UDrzJvMd","SZ8cgVoB","Owlh2Itg","xArzhaAt","h9557IW6","h9Hh1RT5","SbPMhOQz","4ezvvyQb","Eostiy1x","hYrOwTjM","jrDJprij","G2Jzi7bK","LrcWZRp8","QfVBG0hB","Wmksk3Kk","nP725u90","UOfJgJv3","p8Yn3slx","TSaoB3EA","nrfywbxf","pEhZoDfO","XSjX2qPK","PMRSLuFt","99Q5ed4O","E2R5M7J0","xAY6XR3C","HfXtdS7W","iXr8wkBI","834yYlWw","S13iOAWb","MqrWX47j","QKxbboOp","UWyhQgTl","VjuM95K6","LdaKOMZb","9Nea3Ca5","vD4059Sf","FJ092vYD","5trCXij3","yvfAIR8R","VJlhdo2n","oROgTo9t","SMaYwUkG","Cd958bxS","ZbPcssuV","cGIiQsXB","6zM9lpWE","MzTXbVjG","v0cVhqDi","x9a5kXCb","G6k6k91l","NndtFMA2","reM6HNj6","9o3fUEFv","3zSJJWHv","rgQRE2aE","2DXcz7L9","ekgselRj","aNXtpWtU","r5riN7tt","qTFX0OG9","Kp3qSIZH","zq1TO8lj","tkHJVrOb","Q7vDXbgr"],icon_url:"https://cdn.modrinth.com/data/FaJv0NSi/20183803d00033b93a6eb6a175f6ad6ef29d023f_96.webp",issues_url:"https://github.com/TheLMiffy1111/TechRebornJEI/issues",source_url:"https://github.com/TheLMiffy1111/TechRebornJEI",wiki_url:null,discord_url:"https://discord.crystaelix.com",donation_urls:[{id:"ko-fi",platform:"Ko-fi",url:"https://ko-fi.com/thelmiffy1111"}],gallery:[],color:300804,thread_id:"CzsShmod",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.17.1","1.19","1.19.1","1.19.2","1.20.1"],id:"FZlyHzIu",slug:"1.8-style-inventory",project_type:"mod",team:"qWFkTTW0",organization:null,title:"1.8 Style Inventory",description:"Make the inventory's layout look and feel like Minecraft 1.8",body:`This mod makes the inventory's layout look and feel like Minecraft 1.8.
- Moves the effects to the left, inventory to the right side if you have any status effects, both in creative inventory and survival inventory *(Not affacted in 1.17.1 version, as this was changed in 1.18.)*
- Restores the Materials tab and hides the Saved Hotbars tab (the hotbar load/save keybinds will continue to work), moves the Misc tab to the top *(this is NOT supported in the 1.20.1 version. I had to use a separate mod called Old Inventorism but slightly modified code to get it like in the screenshot)*
- Moves the bodyview and armor section to the left side rather than in the center in the Survival Inventory tab.
Known issues:
- the recipe book button's position is wrong if there are status effects.
This mod can be easily ported to Forge since it doesn't depend on Fabric API, only mixins are used.`,body_url:null,published:"2023-07-08T10:55:12.806329Z",updated:"2023-07-10T09:17:50.454204Z",approved:"2023-07-12T02:28:03.696984Z",queued:"2023-07-10T09:18:01.716824Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:472,followers:6,categories:["decoration","utility"],additional_categories:[],loaders:["fabric"],versions:["JfWLQ6U4","IDiQCppx","jL9fffdL"],icon_url:null,issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FZlyHzIu/images/3e632e87cc02f267040cfde43523d5d9c3c2cf72_350.webp",raw_url:"https://cdn.modrinth.com/data/FZlyHzIu/images/56cc867bb1343b1127903587e87ce2690d947156.png",featured:!1,title:"Creative Inventory - Survival Inventory tab",description:null,created:"2023-07-08T11:09:01.068783Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZlyHzIu/images/fe1293097e297c344d18f9bc0de5a9c58c9172ce_350.webp",raw_url:"https://cdn.modrinth.com/data/FZlyHzIu/images/fe1293097e297c344d18f9bc0de5a9c58c9172ce.png",featured:!1,title:"Survival Inventory with status effect",description:"Bug - the recipe book position is wrong",created:"2023-07-08T11:09:31.280348Z",ordering:0}],color:null,thread_id:"FZlyHzIu",monetization_status:"monetized"},{client_side:"optional",server_side:"required",game_versions:["1.16.5","1.17","1.17.1","21w39a","21w43a","1.18-pre2","1.18","1.18.1","22w05a","22w06a","1.18.2-pre3","1.18.2","22w13a","22w14a","22w17a","22w19a","1.19-pre5","1.19","1.19.1","1.19.2","22w43a","1.19.3","1.19.4","1.20","1.20.1","1.20.2","23w40a","1.20.3","1.20.4","1.20.5","1.20.6","1.21","1.21.1","1.21.2","1.21.3","1.21.4","1.21.5","1.21.6","1.21.7","1.21.8","1.21.9"],id:"Fb4jn8m6",slug:"fallingtree",project_type:"mod",team:"ZF72r4Yn",organization:null,title:"FallingTree",description:"Break down your trees by only cutting one piece of it",body:`[](https://discord.gg/uXWsRftdy7)
[](https://www.curseforge.com/minecraft/mc-mods/falling-tree)
[](https://test.kalataka.ru/mod/fallingtree)
This mod will change the way you break trees. 4 modes are available:
* Instantaneous: Break one log and the whole tree will fall
* Shift down: Break a block and the log will slowly shift down as you cut it (good if you don't want to "cheat" too much but are lazy to go cut top log blocks 😛)
* Fall items: Break one log and the whole tree will fall with an animation
* Fall blocks: Break one log and the whole tree will fall on the floor with an animation


Several options are available in the config file:
* Customize what is considered as a tree (log blocks & leave blocks).
* Customize what tools can be used (add more axes, allow everything, ...).
* Turn leaf breaking on/off.
* Option to disable the effect of the mod by sneaking (can be reversed).
* Change speed depending on the tree size.
* Damage tools or not (can set it to break the tool by the amount of blocks there were in the tree).
* Let tools at 1 durability if it's going to break.
Check out the [wiki](https://github.com/Rakambda/FallingTree/wiki) for some more information.
---
* For Fabric users, **Fabric API** is required.
* For Neoforge/Forge users, **Cloth Config API** is optional on the client and allows you to have a config GUI in game.
NOTE: Starting Minecraft 1.21, enchantments needs to be added separately through a datapack [available here](https://test.kalataka.ru/datapack/fallingtree-enchantments).
NOTE: On servers this mod can be server-side only, client isn't required (except if you use the change speed feature and/or enchants configurations).
---
Incompatibilities have been reported with :
* \`VeinMiner\` : If you wish to use \`FallingTree\` alongside it, use the command \`/veinminer groups remove Wood\`.
`,body_url:null,published:"2021-01-11T19:27:26.315086Z",updated:"2025-10-04T08:10:39.387933Z",approved:"2021-01-11T19:27:26.315086Z",queued:null,status:"approved",requested_status:null,moderator_message:null,license:{id:"LGPL-3.0-only",name:"GNU Lesser General Public License v3.0 only",url:null},downloads:5559772,followers:2979,categories:["utility"],additional_categories:[],loaders:["fabric","forge","neoforge"],versions:["ClS5aGDu","by7f3jqu","wYPHBZnq","IvWeyNRf","ecFvHSSj","hYRTlWck","KA0lsBqm","frFjp7XE","Oy2HfoQu","HhiMtvaB","MBqZmh7k","rolL2W5j","VBOnAt36","fy6OOm9Q","PjU0ylA8","IjfKe2LK","BjxlB5ad","nDc9P6UR","T0QtOBLV","VlJQWF9M","4FktLQ41","QtHstonj","m2oM2Xzb","YBlmxpFC","Bhm08p1U","vT2GkHlJ","PCbggfQI","8h9olfhO","XpnXvmmg","1HEbx8wR","O7EzwYaR","k08wKfdA","K2xDwQMA","jHljfMeN","izrF4sw0","pM721YNG","48Uga7jj","RhvVV7aI","Wll71SI1","wm1VgWAh","Ge9TTua8","LI0g8wDL","UiUNxrl7","XzUcHIz2","MNaOu00H","EcPbQcBT","I4HjcOo5","hnXlvYfp","Brv0vjTc","GMOPXKvF","CaTPjokz","aMFJxIHm","qtfvfhdv","GS7o9NMO","1u6nezii","djHFleaq","Fn9hSpZQ","2qvQxa1B","ivSkiG78","TuLQv2oz","cvdeCtGH","8GR9mmKD","zv2J7DYl","1nneGSqI","mKpQdYKO","8XmHwXLO","LoJuqMMZ","9K3tdqQy","YMLyKqOj","k2geZqGH","3sdO7qgf","YlfhOTW2","iAX7H9LQ","LTbIi2M1","kgBh4dSx","bQrEMzOP","KRs7tr5H","dj8wmIBS","PgS4RtQX","Rcuv9i9M","9kSv8gsK","5DSiBB1r","qrxLiOcL","E4f85gRR","TIoBK1U1","2TNwaTtm","cMkbt0f5","NveCqCkX","BQ6i1U5X","rK4GkUX6","59SG26Fv","1TSCSQ4C","iszfrsgL","P55fppyL","XrkGy9Ky","reXqEJgT","yRWIgpnS","66mp0b9v","oXRivlMX","6KJqXkV0","frsJrlLk","kPSbFSaC","8q3U34GC","SQSRyVeT","BJ2K7C0J","NAMMnpkI","HojA8R8T","BdqBwLsv","NF3wLCFV","KW9Dm2r0","7vuduZD7","tOzqGtqB","7PRbBpzE","KRt1RhNH","akjkv5e2","Ua1F3TBl","H9oeRV3c","t9r6pZcy","snIN7mL9","Fi75hN4R","yr3p0Npt","HnH1cLYq","2u9Dpwhc","Gkt6UcDh","NrtzFkZE","BaMypQ7l","nZoL7IuF","mb15RrXi","2yoOOkuy","eEwiTLCR","1KVSR1de","twGJKI2m","l93ivqBS","WBPlgiIE","QpKTY6aW","oHSfaH3b","QIna9i7h","2N0TfdG9","kLEJADsa","cFiOvvih","mSIK8OOH","7x1mqvWh","CfGRP162","uni2ZHB8","9n1NLElA","bVO1GowF","ud1kXOTm","c04fsPim","FBRYj1Jk","gyA1aPLN","2OLcb2eP","I3nXyGdk","atTvTX4k","4x7ecSGL","8sd5tO2r","SG8ZsOic","H6jbpIDT","BMEmI3I6","c0xqcP7a","wnYffVts","J093wQAU","ZBQTNPvu","PSp00blL","eSNxgJN0","y0UABxDc","pCLdPHBG","obL8ERnB","d4Vwh7lX","WkmNGTyT","5QMBY4pI","gn16vhjh","JtSM2Voq","33bSP4oN","qwke4DDS","VZaMZN0O","CX6uDn8U","I9p5DN7f","enSGEWts","3vd4bfEB","xwWIHdET","g9sf7J7G","4pWpbykH","Jd5d7akr","POVxLq34","pLoQCXwM","qKwkuIDP","QPpT3u9u","F8carDZZ","nb1iX9eQ","UJFIzvL3","yQTHDZAz","RBdo4y7C","kS9Lujdk","WsmJ9juE","eCeoNrVw","I2aJcaI7","aAbmM9El","KThKbgqm","nun0Wr6l","dHRfwO0t","kHb8t0xv","odzIwhEJ","K1ajOZ4E","qru1F4oW","NoXs9nFL","9KB34pi0","jeLDE9Vf","hB7NfdzA","wxGXaJMA","PcbkFY1c","tPzDKVFk","VBmGH8tz","ETRofUGd","sYbmLoJp","CB3Onrej","vs4XSgGN","IGtob92Q","ud87ay0A","gSIijzTg"],icon_url:"https://cdn.modrinth.com/data/Fb4jn8m6/02610e2f41e1a4ea06b36ad5034be2b3d03b8f88_96.webp",issues_url:"https://github.com/RakambdaOrg/FallingTree/issues",source_url:"https://github.com/RakambdaOrg/FallingTree",wiki_url:"https://github.com/RakambdaOrg/FallingTree/wiki",discord_url:"https://discord.gg/uXWsRftdy7",donation_urls:[{id:"github",platform:"Github",url:"https://github.com/sponsors/RakSrinaNa"}],gallery:[],color:394500,thread_id:"Fb4jn8m6",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.21.7"],id:"Fb6ks590",slug:"stars-coins",project_type:"mod",team:"RlIooviz",organization:null,title:"Stars Coins",description:"A mod that adds simple coins for trading and roleplaying.",body:`Simple, lightweight mod that simply adds custom copper and gold coin items to various vanilla structure loot tables. The coins do nothing but are intended for trading/roleplay purposes in multiplayer.
Copper is found in most structures while gold is sometimes found in treasure bastions. I might balance this later but I've been looking at vscode for too long and I need a break.
You can also craft 1 gold coin with 9 copper coins in a crafting table, and vice versa.
This is my first mod and it is intended for personal use.`,body_url:null,published:"2025-07-11T21:27:55.204107Z",updated:"2025-07-12T20:39:26.135184Z",approved:"2025-07-21T14:37:49.295932Z",queued:"2025-07-12T20:41:12.794066Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:27,followers:1,categories:["economy","social"],additional_categories:[],loaders:["fabric"],versions:["x4tDSvrt"],icon_url:"https://cdn.modrinth.com/data/Fb6ks590/c52a15a42a2a3b999c912bd70c4dfebb932ca880.png",issues_url:null,source_url:"https://github.com/Stardles/stars-coins",wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/Fb6ks590/images/044e631371bbc70968df4df428ec44f6cffc8070_350.webp",raw_url:"https://cdn.modrinth.com/data/Fb6ks590/images/044e631371bbc70968df4df428ec44f6cffc8070.png",featured:!1,title:"Holding the coins.",description:"Yep. There I am. Holding the coins. Copper coin on the left. Gold coin on the right.",created:"2025-07-12T20:38:39.989237Z",ordering:0}],color:15580975,thread_id:"gPvNf7qr",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.19.4","1.20.2","1.21.1"],id:"FZSbfSKV",slug:"lands-of-life",project_type:"modpack",team:"QBNDQoRR",organization:null,title:"Lands Of Life",description:"This modpack focuses on bringing depth to Gameplay and exploring as well as smaller addons for quality of life stuff.",body:`This fabric modpack focuses on bringing depth to Gameplay and exploring as well as smaller addons for quality of life stuff. In addition multiple multiplayer aspects are brought in as well like voice chat and possibilty to be two players on a single horse for travelling together.
It stays to bring enough mods to make minecraft more exciting and interesting, but not too different to where it feels like a whole new game either.
`,body_url:null,published:"2023-03-21T16:32:33.595023Z",updated:"2025-05-25T21:27:59.608681Z",approved:"2023-03-22T03:24:14.697911Z",queued:null,status:"approved",requested_status:"archived",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:561,followers:0,categories:["adventure","multiplayer","optimization"],additional_categories:["lightweight"],loaders:["fabric"],versions:["9PYEQwhc","XdRt5bGg","fK0xLHEQ","ZKu2NF7l","3x7ZTBRU","tcpG25ru","EQRAy2Wm","9lJsHWQ8"],icon_url:"https://cdn.modrinth.com/data/FZSbfSKV/0eb6fe3ef755e467eeb83e71317414919571bbbb.png",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[],color:6103893,thread_id:"FZSbfSKV",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20.1"],id:"FbJOKNup",slug:"dustrial-decor-forge",project_type:"mod",team:"rlm3cVFF",organization:null,title:"'Dustrial Decor",description:"Adds a whole bunch of industrial-themed blocks to assist in all sorts of builds",body:`'Dustrial Decor is a mod aimed to spice up builds relating to factories, industrial buildings, etc., by adding a variety of new blocks to play around with. Be creative! We're sure you can find uses for them outside of the more darker-themed builds.
So far this mod adds:
**Padding Blocks:** This fluffy block-set has bouncy properties like beds, reduces fall-damage like hay bales, and is great for decorating! It has a small variant, a door, and a trapdoor. It goes especially well with asylum-like builds, but can also be used in other creative ways.

**Chain Link Fence****s:** This is a variation of sorts of the iron bars. Made with chains, it goes very nicely with said chains and lanterns. It also goes well with the padded blocks. And, what makes it unique from other fences/bars, is that... it's climbable! But watch out for the barbed variant; it is climbable as well, but very sharp!
**Barbed Iron Bars:** Iron bars that do damage on impact.

**Industrial Iron Blocks:** Made with coal and iron, these dark metallic blocks will spice up your factory, with multiple variants.

**Sheet Metal Blocks:** This set of blocks has similar colors to iron bars, and is made using sheet metal, a material crafted with iron bars. It comes with many variants, each of which has a rusty variant as well!


**Cinder Blocks:** A new set of blocks joins the falling-block family! Cinder blocks are great for decoration, and can be made into polished and brick forms.

**Cardboard Blocks:** Cardboard is a new material made from paper, and it can be used to make a set of light brown-colored blocks, including cardboard boxes!

**Large Chains and Golden Chains:** Coming with an assortment of decorations, large chains (along with a golden variant) can be used for metallic dungeon-like builds!

**Large Lanterns:** Large Lanterns come in three variants of lanterns, and are full-block light sources

**Neon Lights:** Coming in 8 colors, Neon Lights are a great way to spice up futuristic builds with a unique light source. Blacklights are also included.

Large Lantern variants for Infernal Expansion’s Glowlight fire and Endergetic Expansion’s Ender fire are included
Vertical Slabs for all slabs for Quark compatibility`,body_url:null,published:"2024-10-27T16:39:08.773605Z",updated:"2024-10-27T16:40:58.502965Z",approved:"2024-10-30T01:47:19.772710Z",queued:"2024-10-27T16:42:41.179605Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:25837,followers:17,categories:["decoration"],additional_categories:[],loaders:["forge"],versions:["xCmtgbUD"],icon_url:"https://cdn.modrinth.com/data/FbJOKNup/322ab306eac5e581a465dc0b5fe135de2efdd5ae.png",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[],color:15979128,thread_id:"MVwHN9a7",monetization_status:"monetized"},{client_side:"unknown",server_side:"unknown",game_versions:["1.20.1"],id:"FaP0kgkC",slug:"conquest-of-dragonserk-modpack",project_type:"modpack",team:"5q6JbwcR",organization:null,title:"Conquest of DragonSerk",description:"An epic, fantasy-medieval Conquest Reforged modpack crafted for deep immersion on the Conquest of DragonSerk server — where legends rise, kingdoms rebuild from ash, and your story becomes myth.",body:`## Introduction
**A Fantasy-Medieval Modpack for the Conquest of DragonSerk Server**
Built upon the intricate detail of **Conquest Reforged**, this modpack immerses players in a hauntingly beautiful fantasy world where the remnants of once-mighty civilizations lie scattered in the aftermath of a great cataclysm. Explore forgotten kingdoms, rebuild lost legacies, and forge your own path in a realm shaped by mystery, magic, and ruin.
Join our discord to start your journey: [Discord Server](https://discord.gg/Xkpft4GqzV)
## Features
* 🗺️ **Epic World Generation** – Discover breathtaking landscapes powered by **Larion** and **WWOO**, making every expedition unforgettable.
* 🛠️ **10,000+ Unique Blocks** – Unleash unmatched creative freedom with the vast building palette of **Conquest Reforged**.
* 🏰 **Player-Driven Kingdoms & Economies** – Rule, trade, and shape the world in a fully player-run geopolitical system.
* 🏞️ **Immersive Visuals & Soundscapes** – Experience a richly atmospheric world with enhanced visuals and ambient audio.
* ⚔️ **Enhanced Combat System** – Dive into dynamic battles with **Better Combat** and **Epic Knights**, offering a wide arsenal of medieval weaponry.
* 🧬 **Class System** – Choose your role at the start of your journey and enjoy distinct abilities and perks throughout your adventure.
* 🥨 **Expanded Cooking & Farming** – Grow new crops and craft hearty meals with **Farmer’s Delight** and its flavorful additions.
* ⚡ **Optimized Performance** – Built on lightweight **Fabric**, the pack includes performance-enhancing mods like **Sodium**, **Lithium**, and **FerriteCore** for a smooth gameplay experience.
## World Setting
DragonSerk has witnessed many eras of prosperity and decline. In the last great age, the kingdoms united in a desperate alliance to face an ancient, mysterious dragon—long forgotten by history—that awoke with devastating fury. Despite their combined strength and preparation, the beast proved overwhelmingly powerful, laying waste to the grand kingdoms and reducing them to ashes and ruins.
Some mages and sages whisper that the dragon still lives, not slain but dormant in its underground nest, waiting for the world to forget—and for its time to come again.
In the aftermath of this cataclysm, small scattered settlements sprang up across the land, focused solely on survival. With no great power or government to guide them, these communities never dreamed of becoming something greater.
---
The modpack picture was posted by Levi Cristiano on DevianArt: [Link to the post](https://www.deviantart.com/levisd/art/Dragonborn-915683684)
`,body_url:null,published:"2025-06-28T09:14:05.826418Z",updated:"2025-08-20T20:27:07.042665Z",approved:"2025-07-04T13:04:15.279066Z",queued:"2025-06-28T09:49:06.430344Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:169,followers:1,categories:["adventure","combat","multiplayer"],additional_categories:[],loaders:["fabric"],versions:["7DMxL1P6","VPoZnLgH","VrrgKErx"],icon_url:"https://cdn.modrinth.com/data/FaP0kgkC/4184736347970ad1536baca2eb1f78dcca06b3bb_96.webp",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[],color:4207940,thread_id:"po4e98Pu",monetization_status:"monetized"},{client_side:"required",server_side:"optional",game_versions:["1.21.7"],id:"FaNtNYC5",slug:"cubex",project_type:"modpack",team:"cnEfGjz6",organization:null,title:"CubeX",description:"CubeX: Ultimate lag-free Minecraft multiplayer modpack",body:`## 🌟 Core Advantages
### ✅ Ultimate performance optimization
- **200%+ frame rate improvement**
Through triple optimizations of \`Sodium\` (graphics rendering) + \`Lithium\` (logic operation) + \`Entity Culling\` (entity removal), the frame rate of GTX 1060 has increased from 45 FPS to **140 FPS** under 16-block rendering
- **Low-end friendly**
4GB of memory is sufficient for smooth operation of Starlight (with the Starlight lighting engine)
- **Eliminate stuttering**
\`BadOptimizations\` fixes 12 original performance vulnerabilities
### 🎨 Cinema-grade visual experience
| Module | Effect |
|------|------|
| **Complementary Light and Shadow** | Realize ray tracing effect with low configuration |
| **3D Skin Layer** | Character Hair/Equipment Physical Details |
| **Dynamic Clouds** | Real-time Volumetric Cloud Evolution System |
| **Environmental sound effects** | Biome-specific environmental sound field |
### 🧰 Productivity Tool Kit
+ Exploration: Xaero's mini map + world map (teammates' positions shared)
+ Architecture: Litematica blueprint projection + Tweakeroo precise operation
+ Social: Voice chat + AllMusic cross-server song request system
---
### 🔧 Why CubeX modpack?
| Advantage | Description |
|---------------------|-------------------------------------|
| **Rigorously Tested** | All mods verified for 1.21.7 compatibility |
| **Always Updated** | Tracks Minecraft & mod updates |
| **Modular Design** | Toggle non-essential mods (shaders/voice) |
# 中文版本:
## 🌟 核心优势
### ✅ 极致性能优化
- **帧率提升200%以上**
通过对“Sodium”(图形渲染)+“Lithium”(逻辑运算)+“Entity Culling”(实体移除)进行三重优化,在16块渲染设置下,GTX 1060的帧率从45 FPS提升至**140 FPS**
- **低端友好**
4GB内存足以确保Starlight(使用Starlight照明引擎)的流畅运行
- **消除BUG**
\`BadOptimizations\`修复了12个原有的性能漏洞
### 🎨 影院级视觉体验
| 模块 | 效果 |
|------|------|
| **光影互补** | 低配置下实现光线追踪效果 |
| **3D皮肤层** | 角色毛发/装备物理细节 |
| **动态云** | 实时体积云演化系统 |
| **环境音效** | 特定生物群落环境声场 |
### 🧰 生产力工具包
+ 探索:Xaero的小型地图+世界地图(队友位置共享)
+ 架构:Litematica蓝图投影 + Tweakeroo精确操作
+ 社交功能:语音聊天 + AllMusic跨服点歌系统
---
### 🔧 为什么选择CubeX模组包?
| 优势 | 描述 |
|---------------------|-------------------------------------|
| **经过严格测试** | 所有模组均已验证与1.21.7版本兼容 |
| **始终更新** | 追踪《我的世界》及其模组更新 |
| **模块化设计** | 切换非必要模块(着色器/语音) |`,body_url:null,published:"2025-07-11T07:34:35.652379Z",updated:"2025-08-03T11:38:04.289077Z",approved:"2025-08-11T17:09:29.214298Z",queued:"2025-08-03T11:49:26.633685Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:31,followers:1,categories:["lightweight","multiplayer","optimization"],additional_categories:[],loaders:["fabric"],versions:["CkzfAzjl","tLTg96va"],icon_url:"https://cdn.modrinth.com/data/FaNtNYC5/3985c3feafed8dbacfe09385f014f1c7dfa2ebf8_96.webp",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[{id:"other",platform:"Other",url:"https://afdian.com/a/cubex"}],gallery:[],color:16578804,thread_id:"5zuLMw6Q",monetization_status:"monetized"},{client_side:"optional",server_side:"required",game_versions:["1.20.1"],id:"Fa9sqiMt",slug:"craftable-arsenal",project_type:"mod",team:"2MAxwyJG",organization:null,title:"Craftable Arsenal",description:"Makes the weapons added by Rats Arsenal mod craftable",body:`## Features
-This is simple Datapack for [Arsenal](https://test.kalataka.ru/mod/arsenal) adding crafting recipes for the added weapons ([View Screenshots](https://test.kalataka.ru/datapack/craftable-arsenal/gallery))
-This Datapack does **not** remove mobs spawning with the items (the regular way of obtaining them), it just adds an alternative way that may be more convenient for some players`,body_url:null,published:"2024-12-14T13:44:14.573645Z",updated:"2024-12-14T14:29:18.708898Z",approved:"2024-12-16T09:53:19.100350Z",queued:"2024-12-14T14:41:03.074428Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:197,followers:4,categories:["equipment","game-mechanics","utility"],additional_categories:["decoration","transportation"],loaders:["datapack"],versions:["nRDyoyQI"],icon_url:"https://cdn.modrinth.com/data/Fa9sqiMt/1e1a88f7ad2cdacdee894b980409085e4c937577_96.webp",issues_url:"https://github.com/Doenergepard/Mods/issues",source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/Fa9sqiMt/images/e99d45dc51b4d0b3dd07fcbb6a4b2ebdc672d0a6.png",raw_url:"https://cdn.modrinth.com/data/Fa9sqiMt/images/e99d45dc51b4d0b3dd07fcbb6a4b2ebdc672d0a6.png",featured:!1,title:"Anchorblade",description:"The new recipe for the Anchorblade",created:"2024-12-14T14:26:39.619174Z",ordering:1},{url:"https://cdn.modrinth.com/data/Fa9sqiMt/images/588242fdff60c26265e0ea1edb797ba80d8673d6.png",raw_url:"https://cdn.modrinth.com/data/Fa9sqiMt/images/588242fdff60c26265e0ea1edb797ba80d8673d6.png",featured:!1,title:"Scythe",description:"The new recipe for the Scythe",created:"2024-12-14T14:27:10.094766Z",ordering:4}],color:2827042,thread_id:"6qqfdcg8",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20.1"],id:"FbDeF9OZ",slug:"the-end-of-world",project_type:"mod",team:"A84svfJg",organization:null,title:"The End Of World",description:"Set in a frozen post-apocalyptic world, this mod introduces new mobs and an abundance of water.",body:`**EN**
Dive into a post-apocalyptic world where the freezing cold reigns supreme. This mod adds a dose of chills with a multitude of new mobs and an abundance of water. At layer 90, ice blocks naturally generate and spread, transforming the entire layer 90 and below into a massive sheet of ice. Everything below this layer of ice is submerged in water. Above this layer of ice, ice spikes of various sizes emerge, making the landscape even more immersive and beautiful. A custom ice biome completely immerses the player by spawning stylish mobs that add an extra challenge. Prepare to face terrifying creatures and survive in extreme conditions. This mod is perfect for those looking to spice up their gaming experience with additional challenges and an immersive atmosphere.
**FR**
Plongez dans un monde post-apocalyptique où le froid glacial règne en maître. Ce mod ajoute une dose de frissons avec une multitude de nouveaux monstres et une abondance d’eau. À la couche 90, des blocs de glace se génèrent naturellement et se répandent, transformant toute la couche 90 et les couches inférieures en une immense couche de glace. Tout ce qui se trouve en dessous de cette couche de glace est submergé par l’eau. Au-dessus de cette couche de glace, des pics de glace de différentes tailles émergent, rendant le paysage encore plus immersif et beau. Un biome personnalisé de glace immerge complètement le joueur en faisant apparaître des monstres stylés qui ajoutent un défi supplémentaire. Préparez-vous à affronter des créatures terrifiantes et à survivre dans des conditions extrêmes. Ce mod est parfait pour ceux qui cherchent à pimenter leur expérience de jeu avec des défis supplémentaires et une atmosphère immersive.`,body_url:null,published:"2024-09-26T17:58:07.909108Z",updated:"2024-10-09T16:23:32.451163Z",approved:"2024-09-29T03:55:36.431074Z",queued:"2024-09-26T18:06:57.457812Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:736,followers:6,categories:["adventure"],additional_categories:["equipment","game-mechanics","mobs"],loaders:["forge"],versions:["ZhMyPedI","ecsuRi0Y","WPkmPKoF"],icon_url:"https://cdn.modrinth.com/data/FbDeF9OZ/a4c2e4bac6f5e5de3c40b54e4a5ad52774b8f38c_96.webp",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FbDeF9OZ/images/75e09f302289790d2be23abef3ff0e1b2c74c104_350.webp",raw_url:"https://cdn.modrinth.com/data/FbDeF9OZ/images/75e09f302289790d2be23abef3ff0e1b2c74c104.png",featured:!0,title:"The End",description:null,created:"2024-09-26T18:06:18.885571Z",ordering:1},{url:"https://cdn.modrinth.com/data/FbDeF9OZ/images/6ffe261c1dd9af5e695ea6dd441f46cf190a85e2_350.webp",raw_url:"https://cdn.modrinth.com/data/FbDeF9OZ/images/6ffe261c1dd9af5e695ea6dd441f46cf190a85e2.png",featured:!1,title:"Glace 1",description:null,created:"2024-09-26T18:06:05.136893Z",ordering:2},{url:"https://cdn.modrinth.com/data/FbDeF9OZ/images/20290f54930e6a468c10802c16eb67c67217fa6f_350.webp",raw_url:"https://cdn.modrinth.com/data/FbDeF9OZ/images/20290f54930e6a468c10802c16eb67c67217fa6f.png",featured:!1,title:"Glace 2",description:null,created:"2024-09-26T18:05:57.844227Z",ordering:3}],color:4155773,thread_id:"7yu2MlOS",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20","1.20.1"],id:"FZmGDE43",slug:"mcdw",project_type:"mod",team:"Rw4Hj7fl",organization:"KpEDz87R",title:"MC Dungeons Weapons",description:"Adds the weapons, tools and weapon enchantments from Minecraft Dungeons",body:`[](https://test.kalataka.ru/mod/emi)
[](https://test.kalataka.ru/mod/fabric-api)
# Introduction
Have you ever wanted to have the weapons from Minecraft Dungeons in your Minecraft world? Well, now that's possible! MC Dungeons Weapons (MCDW) aims to bring all of these weapons, and more, from Minecraft Dungeons to Minecraft.
# Content

Right now, there are about 150 weapons added to the game ranging from flails to katanas to crossbows and bows. They all have crafting recipes in the Vanilla Recipe Book and they show up in Recipe Viewers such as [Roughly Enough Items](https://test.kalataka.ru/mod/rei) or [EMI](https://test.kalataka.ru/mod/emi). Whilst Recipe Viewers are not necessary, they are HIGHLY recommended.
## Related Mods
Would you like armors as well? Well, check out [MC Dungeons Armors](https://test.kalataka.ru/mod/mcda)!
Would you like artifacts as well? Well, check out [MC Dungeons Artifacts](https://test.kalataka.ru/mod/mcdar)!
Do you like the enchanting style of Dungeons? Check out [MC Dungeons Enchanting](https://test.kalataka.ru/mod/mc-dungeons-enchanting)!
[](https://www.bisecthosting.com/Timefall)
# Attributions/Special Thanks
MC Dungeons Weapons could not have ever existed without the amazing people mentioned below. They were instrumental to the inspiration and education needed to produce MC Dungeons Weapons and the rest of MCDX (the MC Dungeons Suite).
## SeaOfPixels
The continuing improvement to the visuals of this mod would not be possible without [Sea of Pixels](https://powerups4u.wixsite.com/seaofpixels). He has licensed his amazing art for MC Dungeons Weapons and has worked with us to balance out some of the issues with MCDW as well. SeaOfPixels has allowed for his amazing models and textures from his resource pack [New Default+](https://www.curseforge.com/minecraft/texture-packs/newdefaultplus) to be used in MCDW. Please show him some support and check it out! If you like CIT texture packs, I'm sure that you'll have a blast!
## Kai1907
This mod was inspired by the amazing CIT texturepack by Kai1907, which allows you to have (at least visually) these weapons as well as a variety of other items. Kai1907 allowed for his art to be used in the earlier versions of this mod. Please show him some support and check out his [awesome texturepack](https://www.planetminecraft.com/texture-pack/minecraft-dungeons-textures-for-minecraft-java-edition/) and his [YouTube channel](https://www.youtube.com/channel/UCDWE3OLgQv5w8E0WcNrzWyA).
## LordDeatHunter
For helping with a massive amount of aspects of MCDW including the configs and teaching Chronos many of the foundations of Java. LordDeatHunter is probably most well known for [Fabric Waystones](https://test.kalataka.ru/mod/fwaystones), which is definitely worth checking out!
## BackupCup
Cup is an amazing pixel artist and is a budding Kotlin programmer. Thanks to them, we have a new suite of icons for MCDX and the icon for MCDW is thanks to them! Please check out their projects [here](https://test.kalataka.ru/user/BackupCup)!
# Localisations/Translations
Would you like to have MC Dungeon Weapons translated into your language? Please submit your translation on the GitHub page and I'd be glad to add it!
- English - \`en_us\` - Chronos_Sacaria
- English - \`en_gb\` - Chronos_Sacaria
- German - \`de_de\` - Kai1907 & SattesKrokodil (Incomplete as of version 2.0.2)
- Korean - \`ko_ko\` - Soochaehwa & gyular
- Portuguese - \`pt_pt\` - Chronos_Sacaria (Incomplete as of version 2.0.2)
- Simplified Chinese - \`cn_zh\` - Chronos_Sacaria & Kasualix
- Spanish - \`es_es\` - Chronos_Sacaria (Incomplete as of version 2.0.2)
- Russian - \`ru_ru\` - realpeterpet (Incomplete as of version 2.0.2)
# Showcases
We are eternally grateful to those who took the time out of their schedules to cover our mods. These are a few of the showcases that we have found.
Click here to see showcase videos.
## Bursty
- Title: NEW WEAPONS MOD IN MINECRAFT (Mod Showcase | MC Dungeons Weapons 1.16.5)
- Date: 24 Febrary, 2021
>
## thebluecrusader
- Title: Top 10 Minecraft Weapons Mods
- Date: 8 January, 2021
- Timestamp: 6:32
>
## Mister Echo
- Title: 10 New Mods For Minecraft 1.16.3 | Fabric
- Date: 23 October, 2020
- Timestamp: 4:39
>
## Boodlyneck
- Title: Top 10 Minecraft Mods Of The Week | Risk of Rain Mod, MC Dungeons Weapons, Chat Heads, and More!
- Date: 16 September, 2020
- Timestamp: 2:17
>
# Patrons
Without my patrons, I would not be able to devote as much time as I do to making these mods.
## Special thanks to
- Deona (Custom)
- 7z99 (Claymore)
- EmmyAllEars (Claymore)
- purejosh (Sword)
- OnlyANeko (Sword)
# FAQ
- Q: Why does MCDW not work with Optifine?
- A: Optifine's code is closed source and extremely invasive. This is not a bad thing, in and of itself; but it makes it almost impossible to troubleshoot anything whilst still respecting the licencing that sp614x uses. So, out of respect for them so as to not have to explore their code without permission, we simply do not support it. Please consider the following alternatives:
- FPS Enhancement and Optimisations -- [Sodium](https://test.kalataka.ru/mod/sodium) (Fabric); [Rubidium](https://test.kalataka.ru/mod/rubidium) (Forge)
- Shaders -- [Iris](https://test.kalataka.ru/mod/iris) (Fabric); [Oculus](https://test.kalataka.ru/mod/oculus) (Forge)
- Rendering Compatibility -- [Indium](https://test.kalataka.ru/mod/indium) (Fabric); [Reforgium](https://test.kalataka.ru/mod/reforgium) (Forge)
- Q: Can I use your mod in my modpack?
- A: Absolutely! I only ask that you provide a link back to this page.
- Q: I've seen your mod on other sites. Did you post it and are they safe?
- A: I have not, nor do I plan to, post my mod on any other sites than Modrinth, Curseforge or our GitHub page. If you have downloaded this mod from somewhere else:
1. It isn't from us
2. It may have some kind of malicious files or have been modified in some way. I urge you to delete the file, run a full virus and malware scan and, if you want to use MC Dungeons Weapons, come and download it on Modrinth, CurseForge or from GitHub.
- Q: 1.12.2?
- A: No, just no.
- Q. Forge?
- A. MC Dungeons Weapons is compatible with Forge by using the following mods: [Sinytra Connector](https://test.kalataka.ru/mod/connector), [Connector Extras](https://test.kalataka.ru/mod/connector-extras) and the [Forgified Fabric API](https://test.kalataka.ru/mod/forgified-fabric-api) which are being developed by Su5eD. Please make sure to follow all of their instructions in order to have the best experience. If you wish to use [Clumps](https://test.kalataka.ru/mod/clumps), please make sure to use the Fabric version as we rely on a method that is not present in the Forge version.`,body_url:null,published:"2023-11-12T22:32:16.148279Z",updated:"2024-04-21T16:41:29.607253Z",approved:"2023-11-15T02:09:57.646381Z",queued:"2023-11-13T05:12:45.317925Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-Timefall-Development-License-1.2",name:"",url:"https://github.com/Timefall-Development/Timefall-Development-Licence/blob/main/TimefallDevelopmentLicense1.2.txt"},downloads:986479,followers:415,categories:["adventure","equipment","magic"],additional_categories:[],loaders:["fabric","forge"],versions:["F4Nb4xBv","NVyPECBw","AhyZP1zF","O8JgP5eC","yybXHLu2","S2yuB3CX"],icon_url:"https://cdn.modrinth.com/data/FZmGDE43/dbf58772165103ef512aa3410b88143923b2edfd_96.webp",issues_url:"https://github.com/chronosacaria/MCDungeonsWeapons/issues",source_url:"https://github.com/chronosacaria/MCDungeonsWeapons",wiki_url:"https://github.com/chronosacaria/MCDungeonsWeapons/wiki",discord_url:"https://discord.gg/7RCRy2CuyC",donation_urls:[{id:"paypal",platform:"Paypal",url:"https://www.paypal.com/cgi-bin/webscr?return=https://www.curseforge.com/minecraft/mc-mods/mcdw&cn=Add+special+instructions+to+the+addon+author()&business=chronos.droid%40gmail.com&bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted&cancel_return=https://www.curseforge.com/minecraft/mc-mods/mcdw&lc=US&item_name=MC+Dungeons+Weapons+(from+www.curseforge.com)&cmd=_donations&rm=1&no_shipping=1¤cy_code=USD"},{id:"patreon",platform:"Patreon",url:"https://www.patreon.com/chronosacaria"}],gallery:[{url:"https://cdn.modrinth.com/data/FZmGDE43/images/28db32341e935214b6dfb46c2bee48149833da4c_350.webp",raw_url:"https://cdn.modrinth.com/data/FZmGDE43/images/ce47b733d99279758a579a1da74a42228844cf14.png",featured:!0,title:"Weapons Showcase",description:"This image shows all of the weapons (and shields) added by MC Dungeons Weapons, totaling 150 items.",created:"2023-11-13T05:11:15.774927Z",ordering:0}],color:4864050,thread_id:"MuY2sCPE",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20.1"],id:"FZkYFHd5",slug:"luminara",project_type:"mod",team:"ysiBH23Y",organization:null,title:"Luminara",description:"A Sci-Fi SpaceTech mod Inspired By Star Citizen",body:`# 
## **A Sci-Fi Minecraft Experience Inspired by Star Citizen**
Step beyond the ordinary and enter the future of Minecraft with Luminara, a science-fiction themed mod that blends exploration, technology, and immersive gameplay. Inspired by the futuristic vision of Star Citizen, Luminara introduces new mechanics, tools, and dimensions that expand the way you experience your world.
**✦ Features**
• Holo-Pad Interface – Access a sleek, holographic menu at any time without breaking immersion. A futuristic utility that keeps your tools, information, and options at your fingertips.
• Lumenite Ore – A rare, radioactive crystal hidden deep within the earth. Mine it, refine it, and unlock powerful new tools and technology.
• The Scanner – Crafted from Lumenite Crystals, this handheld device instantly identifies any block, displaying its exact name and the mod it originates from. A must-have for explorers and modpack adventurers.
• Warp Transmitter & Deep Space – Harness copper and advanced tech to activate the Warp Transmitter, opening a portal to the Deep Space Dimension: a mysterious new frontier waiting to be explored.

## **
## 🚀 Future Development**
Luminara is just the beginning. Planned updates will expand the holo-systems, add new tools, mechanics, and entire gameplay loops, steadily evolving Minecraft into a fully realized sci-fi adventure.
# _✨ Forge your path into the unknown. Harness the power of Lumenite. Explore Deep Space. The future is luminous._
`,body_url:null,published:"2025-10-04T10:26:59.666259Z",updated:"2025-10-07T08:15:21.172270Z",approved:"2025-10-06T06:39:41.136107Z",queued:"2025-10-04T12:36:01.016494Z",status:"approved",requested_status:"private",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:4,followers:3,categories:["equipment","technology","utility"],additional_categories:["game-mechanics"],loaders:["forge"],versions:["j1Pg7AiH","MDbq6g2S"],icon_url:"https://cdn.modrinth.com/data/FZkYFHd5/5bdd369d6b0ffb2dcdea054f9983da0fd3b2765f_96.webp",issues_url:null,source_url:null,wiki_url:"https://github.com/hl-mrGoose/Luminara/tree/main",discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FZkYFHd5/images/2e53de5846b996043b75b0b524468acc8caa1d08_350.webp",raw_url:"https://cdn.modrinth.com/data/FZkYFHd5/images/2e53de5846b996043b75b0b524468acc8caa1d08.png",featured:!1,title:"Lumenite Crystal",description:null,created:"2025-10-04T11:33:14.029278Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZkYFHd5/images/5bdd369d6b0ffb2dcdea054f9983da0fd3b2765f_350.webp",raw_url:"https://cdn.modrinth.com/data/FZkYFHd5/images/5bdd369d6b0ffb2dcdea054f9983da0fd3b2765f.png",featured:!0,title:"Luminara Icon",description:null,created:"2025-10-04T11:32:36.139202Z",ordering:1},{url:"https://cdn.modrinth.com/data/FZkYFHd5/images/004585dc57cd01e439b5ce711732fe5ddd7124f8_350.webp",raw_url:"https://cdn.modrinth.com/data/FZkYFHd5/images/004585dc57cd01e439b5ce711732fe5ddd7124f8.png",featured:!1,title:"The WIP homepage of the Holo-Pad",description:null,created:"2025-10-04T11:29:10.812285Z",ordering:2},{url:"https://cdn.modrinth.com/data/FZkYFHd5/images/229af5d3f1d91251e8479a41cc081f0aa1a40de0_350.webp",raw_url:"https://cdn.modrinth.com/data/FZkYFHd5/images/229af5d3f1d91251e8479a41cc081f0aa1a40de0.png",featured:!1,title:"The Options Tab on the Holo-Pad",description:null,created:"2025-10-04T11:28:46.223429Z",ordering:2},{url:"https://cdn.modrinth.com/data/FZkYFHd5/images/b37868bf8bdd692e919cfad40b3b10ca2eb0b726_350.webp",raw_url:"https://cdn.modrinth.com/data/FZkYFHd5/images/b37868bf8bdd692e919cfad40b3b10ca2eb0b726.png",featured:!1,title:"New Creative Tab",description:null,created:"2025-10-04T11:32:17.424027Z",ordering:3}],color:1645363,thread_id:"Q0g2Lwut",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.17","1.17.1","1.18","1.18.1","1.18.2","1.19","1.19.1","1.19.2","1.19.3","1.19.4","1.20","1.20.1","1.20.2","1.20.3","1.20.4","1.20.5","1.20.6","1.21","1.21.1","1.21.2","1.21.3","1.21.4"],id:"Fal2YdRY",slug:"cigar",project_type:"resourcepack",team:"L8c6oJgr",organization:null,title:"Cigar rp",description:"Adds cigarettes, cigars and pipes",body:`**Disclaimer:** 🔞 Smoking is harmful to health, I don't force or support smoking in irl.
Так же есть русская версия этого ресурспака! [ссылка](https://test.kalataka.ru/resourcepack/cigar-ru)
Adds renaming to the carved pumpkin:
- Cigareta:

- Cigar:

- Smoking Pipe:

I also recommend installing the mod [Rp Renames](https://test.kalataka.ru/mod/rp-renames)`,body_url:null,published:"2025-01-21T22:24:46.866686Z",updated:"2025-01-21T22:35:13.438703Z",approved:"2025-01-25T01:24:14.003582Z",queued:"2025-01-21T22:40:30.999666Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"Apache-2.0",name:"Apache License 2.0",url:null},downloads:341,followers:2,categories:["cursed","items","vanilla-like"],additional_categories:["models"],loaders:["minecraft"],versions:["Uf5N0f4t"],icon_url:"https://cdn.modrinth.com/data/Fal2YdRY/475f8c3158be7cf5fc3ca0d779811c432529e08f_96.webp",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[{id:"other",platform:"Other",url:"https://www.donationalerts.com/r/kraki4___"}],gallery:[{url:"https://cdn.modrinth.com/data/Fal2YdRY/images/5314ebd582f8ad47c5245185af13a1eac1bb4e90_350.webp",raw_url:"https://cdn.modrinth.com/data/Fal2YdRY/images/5314ebd582f8ad47c5245185af13a1eac1bb4e90.jpeg",featured:!1,title:"Smoke",description:null,created:"2025-01-21T22:39:46.138682Z",ordering:0},{url:"https://cdn.modrinth.com/data/Fal2YdRY/images/cf18e962004f28d838ec53aeea8364de4f653a2e_350.webp",raw_url:"https://cdn.modrinth.com/data/Fal2YdRY/images/cf18e962004f28d838ec53aeea8364de4f653a2e.png",featured:!1,title:"render with cigar",description:null,created:"2025-06-22T14:34:09.072497Z",ordering:0}],color:8284485,thread_id:"oZDTvjZF",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.20.4"],id:"FbFlKceM",slug:"horny-alert",project_type:"mod",team:"5UyBh7sx",organization:null,title:"Horny Alert",description:"Alerts you of where horns are blown!",body:`This small utility mod provides the simple function of alerting you where goat horns are blown! Goat horn sounds have a range of 256 blocks (but will not be heard if outside of render distance), so it is often hard to understand where a goat horn has been blown. This mod fixes this by providing clear coordinates of where a horn was blown, even if the sound is outside render distance. Note that the goat horn sound/alert is still hard limited to 256 blocks; this is not changable client-side.
**Note! Utility mods like this, although providing very small/situational advantages, may not be allowed on some servers! Check with the server owner/mods before using.**`,body_url:null,published:"2024-11-03T23:25:12.804382Z",updated:"2024-11-03T23:35:21.692316Z",approved:"2024-11-06T02:40:14.388497Z",queued:"2024-11-03T23:52:46.827681Z",status:"approved",requested_status:"unlisted",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:82,followers:3,categories:["utility"],additional_categories:[],loaders:["fabric"],versions:["8qmaZFDH"],icon_url:"https://cdn.modrinth.com/data/FbFlKceM/13f1f780cc07c431cf27a340a503e54c454a5b5f_96.webp",issues_url:"https://github.com/pokahs/Horny-Alert/issues",source_url:"https://github.com/pokahs/Horny-Alert",wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FbFlKceM/images/084cf3ae3b0e0e8fe5b62eb9728bd684f528a0f0_350.webp",raw_url:"https://cdn.modrinth.com/data/FbFlKceM/images/084cf3ae3b0e0e8fe5b62eb9728bd684f528a0f0.png",featured:!1,title:"Alert in game!",description:"Coords of Joe (horn blower) is sent in chat.",created:"2024-11-03T23:50:10.739370Z",ordering:0}],color:4012344,thread_id:"LSuGOdqU",monetization_status:"monetized"},{client_side:"unsupported",server_side:"required",game_versions:["1.20","1.20.1","1.20.2","1.20.3","1.20.4","1.20.5","1.20.6","1.21","1.21.1","1.21.2","1.21.3","1.21.4"],id:"FbEyBkNF",slug:"easycommandblocker",project_type:"mod",team:"kv7391PM",organization:null,title:"easycommandblocker",description:"A Easy Command Blocking Plugin!",body:`# Easycommandblocker
A Plugin That Blocks Selected Commands
\`\`\`
How to use : Enter The commands that you want to be blocked in config.yml
\`\`\`
## Permissions
- easycommandblocker.bypass
Allows players to bypass command blocking`,body_url:null,published:"2025-07-05T05:36:36.730649Z",updated:"2025-07-05T05:43:51.851552Z",approved:"2025-07-11T04:06:59.426793Z",queued:"2025-07-05T05:46:53.316965Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:53,followers:0,categories:["management","social","utility"],additional_categories:[],loaders:["paper","purpur","spigot"],versions:["j6ZG390V"],icon_url:"https://cdn.modrinth.com/data/FbEyBkNF/0cec50a6be1bf942f7f02ed6097d185e6a5d3d62_96.webp",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[{id:"other",platform:"Other",url:"https://reymit.ir/mr_stable"}],gallery:[{url:"https://cdn.modrinth.com/data/FbEyBkNF/images/af6e8502d4990769f4111f93d17f474172a6e983_350.webp",raw_url:"https://cdn.modrinth.com/data/FbEyBkNF/images/af6e8502d4990769f4111f93d17f474172a6e983.png",featured:!1,title:"icon",description:null,created:"2025-07-05T05:46:45.465246Z",ordering:0}],color:989463,thread_id:"QBKlt0kE",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.6.4"],id:"FZdzyHfj",slug:"missing-vanilla-recipes",project_type:"mod",team:"q4JFUmQN",organization:null,title:"Missing Vanilla Recipes",description:"A legacy fabric mod that adds a few missing vanilla recipes.",body:`A legacy fabric mod that adds the ability to craft a few blocks that are generally available in the world but only craftable in later versions of the game. These blocks are:
- chiseled stone brick
- cracked stone brick
- moss stone
- mossy stone brick`,body_url:null,published:"2022-10-26T18:16:18.902069Z",updated:"2022-10-26T18:16:18.903696Z",approved:"2022-10-26T19:42:58.061751Z",queued:null,status:"approved",requested_status:null,moderator_message:null,license:{id:"BSD-2-Clause",name:'BSD 2-Clause "Simplified" License',url:null},downloads:147,followers:1,categories:["decoration"],additional_categories:[],loaders:["legacy-fabric"],versions:["bNqNlw0k"],icon_url:"https://cdn.modrinth.com/data/FZdzyHfj/2e46101e4a0cf612a3a5a4bb0b6f8e2f791c2353.png",issues_url:null,source_url:"https://github.com/baraclese/missing-vanilla-recipes",wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FZdzyHfj/images/1560f3174d295eda8c5c17fb964a3c41367a185b.png",raw_url:"https://cdn.modrinth.com/data/FZdzyHfj/images/1560f3174d295eda8c5c17fb964a3c41367a185b.png",featured:!1,title:"Cracked Stone Brick",description:null,created:"2022-10-26T18:16:16.190138Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZdzyHfj/images/3da26919d48ab6c9782f5dc8e9706eef696a2955.png",raw_url:"https://cdn.modrinth.com/data/FZdzyHfj/images/3da26919d48ab6c9782f5dc8e9706eef696a2955.png",featured:!1,title:"Moss Stone",description:null,created:"2022-10-26T18:16:16.190138Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZdzyHfj/images/9703ceb664f7be59b535bfa2fe746bfa41af092d.png",raw_url:"https://cdn.modrinth.com/data/FZdzyHfj/images/9703ceb664f7be59b535bfa2fe746bfa41af092d.png",featured:!1,title:"Chiseled Stone Brick",description:null,created:"2022-10-26T18:16:16.190138Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZdzyHfj/images/ca77b077e5efc8c34fc0fd45a72006837cc36089.png",raw_url:"https://cdn.modrinth.com/data/FZdzyHfj/images/ca77b077e5efc8c34fc0fd45a72006837cc36089.png",featured:!1,title:"Mossy Stone Brick",description:null,created:"2022-10-26T18:16:16.190138Z",ordering:0}],color:2894892,thread_id:"FZdzyHfj",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.21","1.21.1"],id:"FZYbKATz",slug:"lockable",project_type:"mod",team:"5zQ4fq8m",organization:null,title:"Lockable",description:"Adds locks and keys to allow players to protect their items, or steal from others.",body:`
## About
Lockable is a mod that adds locks and keys to allow players to protect their items, or steal from others. Lockable focuses on balance and integration into Minecraft, trying to feel like it belongs in the game.
## Configuration
You can configure the mod by editing \`lockable/config.json\` in the config folder of your Minecraft directory.
## Features
### Scrap Lock
In an anvil, name the scrap lock to something no one else will know, like a password. Then, right-click any lockable container block to place the lock on!

### Golden Key
In an anvil, name the golden key to the same name as the scrap lock you want to unlock. Then, right-click the container with the lock on to unlock or lock it.

### Locked Blocks
When a block is locked, it cannot be mined or interact with a hopper. However, the chest is still vulnerable to explosions!


### Keychain
**The keychain can be found in the chests within a Nether fortress.** By default, the keychain can hold up to 6 golden keys in it. It functions similarly to a bundle. You can use it instead of a golden key on a locked block to unlock / lock it, so long as the relevant key is contained!

### Bone Key
A bone key is a rare type of key that **can only be found in suspicious sand or gravel**. It's a very flimsy key and oddly shaped. By default, it has a 30% chance not to break on use. Once used on *any* lock, it will unlock or lock it. Think of this as a lock pick!

### Weathered Lock
A weathered lock is rare type of lock that **is only found in ocean ruins or ship wrecks**. The weathered lock is unable to be locked or unlocked by any key other than the **bone key**.

`,body_url:null,published:"2024-08-13T13:42:23.313786Z",updated:"2024-08-31T15:31:21.620623Z",approved:"2024-08-15T08:07:05.945472Z",queued:"2024-08-13T14:53:47.389744Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"GPL-3.0-only",name:"GNU General Public License v3.0 only",url:null},downloads:387,followers:21,categories:["equipment","storage","utility"],additional_categories:["decoration","game-mechanics","technology"],loaders:["quilt"],versions:["RqJ17zpI","VQS2BLNZ"],icon_url:"https://cdn.modrinth.com/data/FZYbKATz/ecbed377342a3dbf6828250665e3ae509da49ae9_96.webp",issues_url:"https://github.com/justanoval/Lockable/issues",source_url:"https://github.com/justanoval/Lockable",wiki_url:"https://github.com/justanoval/Lockable/wiki",discord_url:"https://discord.com/invite/bESg3vv7WE",donation_urls:[{id:"ko-fi",platform:"Ko-fi",url:"https://ko-fi.com/justanoval"},{id:"patreon",platform:"Patreon",url:"https://patreon.com/justanoval"}],gallery:[{url:"https://cdn.modrinth.com/data/FZYbKATz/images/9646b586c1cb187ce8c073ab725087e5268f6b1a.png",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/9646b586c1cb187ce8c073ab725087e5268f6b1a.png",featured:!0,title:"Showcase",description:"All of the items in one image!",created:"2024-08-13T14:09:57.895710Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/f959c2f9b745f3504b42e6488327c318f62d3067_350.webp",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/f959c2f9b745f3504b42e6488327c318f62d3067.png",featured:!1,title:"Locked blocks",description:"Every block that can be locked is locked!",created:"2024-08-13T14:22:30.201723Z",ordering:1},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/1781aec7e99893d3919508de10c777e53e0bae38.gif",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/1781aec7e99893d3919508de10c777e53e0bae38.gif",featured:!1,title:"Putting keys in a keychain",description:"Keychains function very similar to bundles!",created:"2024-08-13T14:35:07.992714Z",ordering:2},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/b9a26755edb7fefe27fa647da085000ee7b3fc7c.gif",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/b9a26755edb7fefe27fa647da085000ee7b3fc7c.gif",featured:!1,title:"Unlocking a lock with a bone key",description:"Bone keys have a 30% chance to break by default, but can unlock/lock any lock!",created:"2024-08-13T14:35:55.317608Z",ordering:3},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/5cf8ca20000a4e1a5fc841274fa0f273079c59c8_350.webp",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/5cf8ca20000a4e1a5fc841274fa0f273079c59c8.png",featured:!1,title:"Chest locked with a Weathered Lock",description:"A chest locked with a Weathered Lock.",created:"2024-08-13T14:19:01.664820Z",ordering:4},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/d8fcbdbed234b3f5c935ed74c0341d8972dcd062_350.webp",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/d8fcbdbed234b3f5c935ed74c0341d8972dcd062.png",featured:!1,title:"Chest locked with a Scrap Lock",description:"A chest locked with a Scrap Lock.",created:"2024-08-13T14:19:35.798163Z",ordering:4},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/d28146ae20dde09b99c42a148ad9b3a7230ab3ed_350.webp",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/d28146ae20dde09b99c42a148ad9b3a7230ab3ed.png",featured:!1,title:"Furnace locked with a Weathered Lock",description:null,created:"2024-08-13T14:20:35.015145Z",ordering:6},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/24a30489502b500af81943c62f33d8698706af3e_350.webp",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/24a30489502b500af81943c62f33d8698706af3e.png",featured:!1,title:"Furnace locked with a Scrap Lock",description:null,created:"2024-08-13T14:20:02.006509Z",ordering:7},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/6ffe1bee5aa20046d21373618645b10af93576f5_350.webp",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/6ffe1bee5aa20046d21373618645b10af93576f5.png",featured:!1,title:"Chest with an unlocked Scrap Lock",description:"When a chest is unlocked, the shackle holds up the lock while it hangs down.",created:"2024-08-13T14:21:58.672958Z",ordering:8},{url:"https://cdn.modrinth.com/data/FZYbKATz/images/c0f9038aaed432805c248116bc8dde605d4fa377_350.webp",raw_url:"https://cdn.modrinth.com/data/FZYbKATz/images/c0f9038aaed432805c248116bc8dde605d4fa377.png",featured:!1,title:"Furnace with an unlocked Weathered Lock",description:"On blocks that aren't chests, the locks flips around when unlocked. This makes it a lot easier to tell when a block is locked/unlocked!",created:"2024-08-13T14:21:19.764769Z",ordering:9}],color:4078140,thread_id:"jalZejPK",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20","1.20.1","1.20.2","1.20.3","1.20.4","1.21","1.21.1"],id:"FaAx7QQX",slug:"epic-power-bracelets",project_type:"mod",team:"33MUvEAw",organization:null,title:"Epic Power Bracelets",description:"You can use epic bracelets to get more powers!",body:`
With this new mod you can make some bracelets with which you can gain certain powers! Still in early development, we aim to add many different bracelets with new features.
Of course, for now, you can use the strength bracelets, night vision, invisibility and slow fall. Enjoy it!
### Do you need a server to play with your friends?
For exceptional server hosting services, look no further than **[BisectHosting](https://bisecthosting.com/lupin)**. Of course, you can install all the mods or modpacks you want, and their support team is always available to help you.
**[With the code "Lupin" you will get a 25% discount! Click here!](https://bisecthosting.com/lupin)**

Now you can make use of some fantastic brazaletes to obtain potion effects as long as you have them in your hand! That is, the potion effect will be infinite, but the only requirement will be that it is in the player's hand, for now, we have added five fantastic effects, but there are many more on the way...

### Does it work on servers?
###
Sure! Remember that the best way to play with mods and friends is with BisectHosting, and by **[clicking on this link you can get a 25% discount](https://bisecthosting.com/lupin).**
### Can this mod be used in modpacks?
###
Of course! As long as it is published only on Modrinth or CurseForge. Uploading it to any other platform would be violating our rights and is not allowed at all.
However, we are really grateful if you consider adding it to your Modrinth or CurseForge modpack. If you need any small changes or have any questions, contact us!



[](https://discord.gg/X8VY5WMbe4)
.`,body_url:null,published:"2024-03-13T23:11:52.871533Z",updated:"2024-07-16T22:53:14.947091Z",approved:"2024-03-16T06:13:24.166344Z",queued:"2024-03-13T23:18:16.385769Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:176110,followers:15,categories:["adventure","equipment","game-mechanics"],additional_categories:["utility"],loaders:["fabric","forge","neoforge"],versions:["1w6d3fVB","QNLDzdTq","wlp0OwLa","ZeL19SfJ","igurIoOw","oSmqhD22","xIlGRjWS"],icon_url:"https://cdn.modrinth.com/data/FaAx7QQX/d2d9372dc516e43df458239b155d9ab4f4c1ebaa_96.webp",issues_url:null,source_url:"https://github.com/luavixen/lupin-epicpowerbracelets",wiki_url:null,discord_url:"https://discord.gg/X8VY5WMbe4",donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FaAx7QQX/images/6b1020f92f7860a92925e83ea89f1249cc84be51_350.webp",raw_url:"https://cdn.modrinth.com/data/FaAx7QQX/images/dc3f0429d296ff6b9289b05248d78272bd9df521.jpeg",featured:!0,title:"Epic Power Bracelets",description:null,created:"2024-07-20T18:17:46.261959Z",ordering:0},{url:"https://cdn.modrinth.com/data/FaAx7QQX/images/60265debb70b69bbcb2dd333403dfe60d90628d6_350.webp",raw_url:"https://cdn.modrinth.com/data/FaAx7QQX/images/94ff5aa5927856651d85a613508e675fbbd7afeb.jpeg",featured:!1,title:"Epic Power Bracelets",description:null,created:"2024-07-07T08:48:02.343027Z",ordering:2},{url:"https://cdn.modrinth.com/data/FaAx7QQX/images/6094c29c06a0b09cf1d64c08ef9d2b63425dc45f_350.webp",raw_url:"https://cdn.modrinth.com/data/FaAx7QQX/images/bc05df24ff0aee974954290d44d4b332d36e2c03.jpeg",featured:!1,title:"Epic Power Bracelets",description:null,created:"2024-07-07T08:48:08.908323Z",ordering:3},{url:"https://cdn.modrinth.com/data/FaAx7QQX/images/cbf7cb5328ce2f31ece6a16a6c12af222d08ee6b_350.webp",raw_url:"https://cdn.modrinth.com/data/FaAx7QQX/images/46d10aeedccdd9f5dffd1da5cde495cb6ad24e83.jpeg",featured:!1,title:"Epic Power Bracelets",description:null,created:"2024-07-07T08:48:15.700091Z",ordering:4},{url:"https://cdn.modrinth.com/data/FaAx7QQX/images/d6ef018c703469c72fa35fc32bf817a8b3b08f2b_350.webp",raw_url:"https://cdn.modrinth.com/data/FaAx7QQX/images/9c260712d2019a1cbdc45c0a367bfe6d411e81ac.jpeg",featured:!1,title:"Epic Power Bracelets",description:null,created:"2024-07-07T08:48:22.883815Z",ordering:5}],color:13937250,thread_id:"JDxUhFSx",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.19.4","1.20","1.20.1","1.20.2"],id:"FZvC0ow8",slug:"altered-advancement-plaques",project_type:"resourcepack",team:"Fzd5u8uZ",organization:null,title:"Altered Advancement Plaques",description:"Changes the look of the plaque provided by mods ADVANCEMENT PLAQUES.",body:`Advancement Made!Goal Reached!Challenge Complete!`,body_url:null,published:"2023-04-21T20:31:13.608810Z",updated:"2023-04-21T21:07:03.636186Z",approved:"2023-04-23T03:47:20.744302Z",queued:"2023-04-21T21:25:47.694158Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:2972,followers:13,categories:["gui","simplistic","tweaks"],additional_categories:["16x","modded","vanilla-like"],loaders:["minecraft"],versions:["zclQQIVA"],icon_url:"https://cdn.modrinth.com/data/FZvC0ow8/e62d09b1003b5c3df922a177522b9cd305b099b8.png",issues_url:"https://www.planetminecraft.com/member/waveaoe/",source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FZvC0ow8/images/84c3c17e4fa7da678d18af19f605178eb969461a_350.webp",raw_url:"https://cdn.modrinth.com/data/FZvC0ow8/images/84c3c17e4fa7da678d18af19f605178eb969461a.png",featured:!0,title:"1",description:null,created:"2023-04-21T21:23:50.167673Z",ordering:1},{url:"https://cdn.modrinth.com/data/FZvC0ow8/images/c85b6a642c38ee2b40ab6bb3117ab95d611068cf_350.webp",raw_url:"https://cdn.modrinth.com/data/FZvC0ow8/images/c85b6a642c38ee2b40ab6bb3117ab95d611068cf.png",featured:!1,title:"Advancement Made",description:null,created:"2023-04-21T20:59:56.589634Z",ordering:2},{url:"https://cdn.modrinth.com/data/FZvC0ow8/images/3025852256df27fd5371f539a770b2bcfaecb6ad_350.webp",raw_url:"https://cdn.modrinth.com/data/FZvC0ow8/images/3025852256df27fd5371f539a770b2bcfaecb6ad.png",featured:!1,title:"Goal Achieved",description:null,created:"2023-04-21T21:00:13.461116Z",ordering:3},{url:"https://cdn.modrinth.com/data/FZvC0ow8/images/10a0bca94be173d37feb556e55762f7aa6a5d68c_350.webp",raw_url:"https://cdn.modrinth.com/data/FZvC0ow8/images/10a0bca94be173d37feb556e55762f7aa6a5d68c.png",featured:!1,title:"Challenge Complete",description:null,created:"2023-04-21T21:00:30.638628Z",ordering:4}],color:263429,thread_id:"FZvC0ow8",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.19.2","1.20.1"],id:"FZych38f",slug:"createcube",project_type:"modpack",team:"3iMYqS1v",organization:null,title:"CreateCube",description:"Create Cube is a mod pack that combines Create with some mods on Hermitcraft",body:`### Description
CreateCube is a semi-light mod pack designed to enhance your Minecraft gaming experience. By combining the popular Create mod with some additional mods used by hermits on Hermitcraft, CreateCube delivers a wealth of new features and gameplay mechanics that will keep you engaged and entertained for hours.
In addition to the Create mod, CreateCube includes several Quality of Life mods that make it easier and more convenient to play Minecraft. For example, players can change their skin within the game, saving time and effort that would otherwise be spent outside the game.
To get the full benefit of CreateCube, the mod pack is required to be installed on both the client and server. This ensures that all players can enjoy the new features and gameplay mechanics, regardless of whether they are playing in single-player or multiplayer mode.
Check out the **Plus** and **Lite** versions of this modpack here
- [CreateCube Plus](https://test.kalataka.ru/modpack/createcube-plus)
- [CreateCube Lite](https://test.kalataka.ru/modpack/createcube-lite)
### Partener
Kinetic Hosting offers extremely affordable deals on servers with very good hardware! If you'd like to cash in on the good deals [click here](https://billing.kinetichosting.net/aff.php?aff=464 "Kinetic Hosting Discount Code") or click the image below and use code ***CubeCoding*** at checkout for ***15%*** off your first month!
### They also have lifetime servers for a limited time.
[ "Kinetic Hosting")](https://billing.kinetichosting.net/aff.php?aff=464 "Kinetic Hosting")
### Help
If you encounter any issues with the mod pack, or if you have suggestions for new mods that you would like to see included, please let us know through [Github](https://github.com/CubeCoding7/CreateCube-Modpack). You can submit issues or pull requests using the appropriate tabs, and I will do my best to address them as quickly as possible.
If you would like the Curseforge version here it is.
[Curseforge Version](https://www.curseforge.com/minecraft/modpacks/createcube)
Mods
- [BetterF3](https://test.kalataka.ru/mod/betterf3)
- [CIT Resewn](https://test.kalataka.ru/mod/cit-resewn)
- [Chunky](https://test.kalataka.ru/mod/chunky)
- [Controlling](https://test.kalataka.ru/mod/controlling)
- [DefaultSettings](https://www.curseforge.com/minecraft/mc-mods/defaultsettings)
- [ImmediatelyFast](https://test.kalataka.ru/mod/immediatelyfast)
- [JCPlugin](https://www.curseforge.com/minecraft/mc-mods/jcplugin)
- [Searchables](https://test.kalataka.ru/mod/searchables)
- [AppleSkin](https://test.kalataka.ru/mod/appleskin)
- [Auth Me](https://test.kalataka.ru/mod/auth-me)
- [Better Enchanted Books](https://test.kalataka.ru/mod/better-enchanted-books)
- [Camera Utils](https://test.kalataka.ru/mod/camera-utils)
- [Chat Patches](https://test.kalataka.ru/mod/chatpatches)
- [Cloth Config API](https://test.kalataka.ru/mod/cloth-config)
- [Continuity](https://test.kalataka.ru/mod/continuity)
- [Create Fabric](https://test.kalataka.ru/mod/create-fabric)
- [Dynamic FPS](https://test.kalataka.ru/mod/dynamic-fps)
- [Enhanced Block Entities](https://test.kalataka.ru/mod/ebe)
- [Entity Culling](https://test.kalataka.ru/mod/entityculling)
- [Fabric API](https://test.kalataka.ru/mod/fabric-api)
- [Fabric Language Kotlin](https://test.kalataka.ru/mod/fabric-language-kotlin)
- [FabricSkyboxes](https://test.kalataka.ru/mod/fabricskyboxes)
- [FastQuit](https://test.kalataka.ru/mod/fastquit)
- [FerriteCore](https://test.kalataka.ru/mod/ferrite-core)
- [FabricSkyBoxes Interop](https://test.kalataka.ru/mod/fabricskyboxes-interop)
- [Global Packs](https://test.kalataka.ru/mod/globalpacks)
- [Indium](https://test.kalataka.ru/mod/indium)
- [Iris Shaders](https://test.kalataka.ru/mod/iris)
- [ItemSwapper](https://test.kalataka.ru/mod/itemswapper)
- [Just Enough Items](https://test.kalataka.ru/mod/jei)
- [LambDynamicLights](https://test.kalataka.ru/mod/lambdynamiclights)
- [LazyDFU](https://test.kalataka.ru/mod/lazydfu)
- [LiLaC](https://test.kalataka.ru/mod/lilac)
- [Litematica](https://www.curseforge.com/minecraft/mc-mods/litematica)
- [Lithium](https://test.kalataka.ru/mod/lithium)
- [Main Menu Credits](https://test.kalataka.ru/mod/main-menu-credits)
- [MaLiLib](https://www.curseforge.com/minecraft/mc-mods/malilib)
- [Memory Leak Fix](https://test.kalataka.ru/mod/memoryleakfix)
- [MiniHUD](https://www.curseforge.com/minecraft/mc-mods/minihud)
- [ModernFix](https://test.kalataka.ru/mod/modernfix)
- [Mod Menu](https://test.kalataka.ru/mod/modmenu)
- [More Culling](https://test.kalataka.ru/mod/moreculling)
- [OptiGUI](https://test.kalataka.ru/mod/optigui)
- [Puzzle](https://test.kalataka.ru/mod/puzzle)
- [Reese's Sodium Options](https://test.kalataka.ru/mod/reeses-sodium-options)
- [ReplayMod](https://test.kalataka.ru/mod/replaymod)
- [Shulker Box Tooltip](https://test.kalataka.ru/mod/shulkerboxtooltip)
- [Skin Swapper](https://test.kalataka.ru/mod/skinswapper)
- [Sodium Extra](https://test.kalataka.ru/mod/sodium-extra)
- [Sodium](https://test.kalataka.ru/mod/sodium)
- [Symbol Chat](https://test.kalataka.ru/mod/symbol-chat)
- [Tweakeroo](https://www.curseforge.com/minecraft/mc-mods/tweakeroo)
- [Simple Voice Chat](https://test.kalataka.ru/mod/simple-voice-chat)
- [WorldEdit](https://www.curseforge.com/minecraft/mc-mods/worldedit)
- [YetAnotherConfigLib](https://test.kalataka.ru/mod/yacl)
- [Zoomglass](https://test.kalataka.ru/mod/zoomglass)
- [Fast Better Grass](https://test.kalataka.ru/resourcepack/fast-better-grass)
`,body_url:null,published:"2022-12-01T00:17:36.663532Z",updated:"2024-05-07T15:29:25.690372Z",approved:"2022-12-04T18:10:14.396356Z",queued:null,status:"approved",requested_status:null,moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:10497,followers:15,categories:["adventure","lightweight","multiplayer"],additional_categories:["optimization","technology"],loaders:["fabric"],versions:["xBR47QIF","dxBpX2i0","2R0hJAxs","aS6BvHMb","WvT13iZC","HPCkSCcM","DRxVOwXE","eVfjldk6"],icon_url:"https://cdn.modrinth.com/data/FZych38f/3bdff0d7cde43371d7ffcb7d9b6fddc483f8e738_96.webp",issues_url:"https://github.com/CubeCoding77/CreateCube-Modpack/issues",source_url:"https://github.com/CubeCoding77/CreateCube-Modpack",wiki_url:null,discord_url:null,donation_urls:[],gallery:[],color:2693644,thread_id:"FZych38f",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.21.5"],id:"FZSeoJKv",slug:"aseprite-light",project_type:"resourcepack",team:"WK3l3iMV",organization:null,title:"Aseprite Light",description:"Enjoy your new Minecraft UI based on the program Aseprite, as a celebration for their v1.3 release!",body:`
# Your favorite Pixel Art tool Aseprite invades Minecraft!
Enjoy a new set of customized UI elements for Minecraft with the Aseprite LIGHT Resource Pack by ChimeraDev.
---
## What does this pack add?
The Aseprite LIGHT Resource Pack adds a light theme based on Aseprite's Classic theme, that affects all of the menus in the game including the buttons etc. (Except narrator pop-up and Player Report for clarity)

Most of the menus are made referencing different Aseprite features like the Timeline, canvas change, and Export Window, to name a few!
Known Issues Disclaimers
This Resourcepack features custom lang files for every single available language in Minecraft to remove certain container names (like the hopper) so make sure it's at the top of your resource packs to function properly!
---
Naming a container will affect the displayed name inside itself, for Chests, Shulkers, Double Chests, Dispensers, and Droppers this has been accounted for, but for stylistic choices, the rest of containers will display custom names wrongly in most cases.
---
That's all for now, If you find any more issues, please make sure to contact over [Discord](https://discord.gg/2JyCFgvBBU)
###### This Resourcepack was made by ChimeraDev, and it's not affiliated with Aseprite or Igara Studio S.A.; Aseprite is a tool created by Igara Studio S.A. on [GitHub](https://github.com/aseprite/aseprite 'Check Aseprite Source code!'); All of the art has been made exclusively using Aseprite 1.3+ (Steam`,body_url:null,published:"2023-12-02T03:45:19.380925Z",updated:"2025-03-25T16:36:05.141984Z",approved:"2023-12-02T20:32:29.240671Z",queued:"2023-12-02T04:48:58.785031Z",status:"approved",requested_status:"private",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:1662,followers:57,categories:["gui","simplistic","themed"],additional_categories:[],loaders:["minecraft"],versions:["hnNhA8h2"],icon_url:"https://cdn.modrinth.com/data/FZSeoJKv/1566aaf8f054fbf2888fb583eb2887bd11d5cdc9.png",issues_url:null,source_url:null,wiki_url:null,discord_url:"https://discord.gg/2JyCFgvBBU",donation_urls:[{id:"paypal",platform:"Paypal",url:"https://www.paypal.com/paypalme/chimeradev"}],gallery:[{url:"https://cdn.modrinth.com/data/FZSeoJKv/images/93c144e620edd0893c7a1522c37b497b9279a48b_350.webp",raw_url:"https://cdn.modrinth.com/data/FZSeoJKv/images/93c144e620edd0893c7a1522c37b497b9279a48b.png",featured:!1,title:"banner",description:"Banner Image",created:"2023-12-02T04:43:33.358212Z",ordering:1},{url:"https://cdn.modrinth.com/data/FZSeoJKv/images/99539b78e30df459a4fe90c07dd6b61dab2818a4_350.webp",raw_url:"https://cdn.modrinth.com/data/FZSeoJKv/images/99539b78e30df459a4fe90c07dd6b61dab2818a4.png",featured:!0,title:"LIGHT",description:"Main Image",created:"2023-12-02T04:43:47.892625Z",ordering:2}],color:6044740,thread_id:"OmQwOMwe",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20","1.20.1","1.21","1.21.1"],id:"FZb6dmQf",slug:"create-ironworks",project_type:"mod",team:"CfME0H0k",organization:null,title:"Create: Ironworks [Forge/Fabric/NeoForge]",description:"An addon for the Create mod bringing new materials (Tin, Bronze, Steel) and related items.",body:`
About
Create: Ironworks expands on metal working with Create, by adding new ores and alloys: Tin, Bronze and Steel, with their respective items.
Features
✨Dozens of new weapons, tools and armors based off Create materials
✨New ores and materials around metalworking: Tin, Bronze and Steel
✨Additionnal alloying recipes for Brass, Bronze and Steel, using crushed materials or nuggets
✨Countless new recipes for both Create and Vanilla Minecraft
✨You can now upgrade your armor and tools to Netherite from Steel alloy, as an alternative to Diamond
✨Many other features to discover!
Full item list
Armor, Tools & Weapons
Copper: Cheap and disposable early-game armor and tools. At least it's better than Leather... Bronze: One of the new alloys added by the mod. Bronze tools are not as fast but more durable than Iron tools. Brass: Tools and armor that are more effective than their Iron counterpart and have higher enchantability. Rose Quartz: An armor set with the same defense points as Diamond armor, but with a very low durability. Sturdy Sheet: Very high durability armor, with decent defensive capabilities (slightly under Diamond armor). Steel: One of the new materials added by the mod. Used to create powerful gear, almost on par with Netherite.
All new armors from the mod are trimmable.
Hammer & Paxel
The Paxel is one of the 2 new tool types added by the mod. It combines the mining properties of a Pickaxe, Axe and Shovel.
Create: Ironworks also adds the Hammer. It has the same properties as a Pickaxe, but mines in a 3*3 area and consumes durability twice as fast.
Both of these tools have a lower mining speed compared to their counterpart of the same materials, to compensate for the functionality gains. Versions for vanilla materials are all also included.
Alloy making
New recipes have been added for Brass: you can now craft the alloy directly from crushed materials, and even nuggets! (with adapted drop rates).
Bronze follows the same principle and can be crafted using the newly added Tin Ore, and a bit of Copper. Being a lower-tier alloy, this craft requires no heating.
Steel is the third and highest tier alloy added by the mod. It requires Iron and Coal Dust to craft (obtained by crushing Coal).
Recipes and other features
Alloys are useful for many things besides crafting tools and armor. Notably, they are substitutes to other materials in certain recipes.
📜 Tin and Bronze recipes
Tin can replace Iron in several vanilla recipes. This allows to save some Iron for other crafts, as Create can be very Iron-intensive (especially in early game).
Bronze can be used to craft Bells, very much like in real life.
📜 Coal Dust other uses
Coal Dust can be used along side a couple other ingredients to craft Gunpowder.
📜 Precision Mechanism
Steel can replace Iron in the Precision Mechanism recipe, increasing success rate to 100% (vs. 80% with Iron Nuggets).
📜 Upgrading to Netherite
All Steel tools and armor pieces can be upgraded to Netherite, the same way you would with Diamond gear. This also includes the new Hammers and Paxels.
📜 Netherite Upgrade Template
You can use Steel instead of Diamond for duplicating templates. You'll still have to find the first one though...
All custom textures used (if any) are either created by me or have a license that allows modification and distribution.
I make every effort to comply with project license obligations and to always credit the original owners. If you believe your name is missing from the credits or if you decide to change your project's license, please contact me.
Alternatively, you can browse the Modrinth launcher for the mod (if it doesn't show up, try typing the autor's name). Once found, click "Install" to add it to your modpack.
Permissions
You are free to include this mod in any modpack, public or private.
`,body_url:null,published:"2024-07-22T21:21:36.183683Z",updated:"2025-04-23T20:05:43.764540Z",approved:"2024-07-23T04:14:42.711719Z",queued:"2024-07-22T21:29:01.277583Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:98106,followers:111,categories:["equipment","technology"],additional_categories:["adventure","game-mechanics","utility"],loaders:["fabric","forge","neoforge","quilt"],versions:["bwkGgywl","ViqhbHSK","HqOxn0Rp","G01n5UJv","23FfHHSd","pvdFXoWK","ZhQ1RLFF","C27IL3ag","wJ9K929G","gf2czdmV","xrtD8PLB","rhcRs0Hv","3miME7Ih","2NVaDDTy","yDm0rBzD","2U9vO5PH","jO4G8q7Q","69RP38J8","jvkMIwwY","bjoB7DcL","VGejiWR9","GRauqYKj","XW7gORQ5","mdX5YLUg","zLFmgGZ1","NWItKBN2","oqSXf5J8","P7tnxkY1","1APjyG5F","9YQ3YuIR","zLpNbuh9","xhZ8eenR","eFurkeTr","mRWgFRvm","4YZNEr0d","Zx3crFwD","DRohl2wT"],icon_url:"https://cdn.modrinth.com/data/FZb6dmQf/61a779b01ec6dbe3fc7b2f0683bbcdce1de2fd44_96.webp",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[{id:"paypal",platform:"Paypal",url:"https://www.paypal.com/donate/?hosted_button_id=XZ22AETPTQBD4"}],gallery:[{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/7bc8529ee8009813b9032dbde475f87f7ebefc13_350.webp",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/7bc8529ee8009813b9032dbde475f87f7ebefc13.png",featured:!0,title:"Armor sets",description:null,created:"2024-10-05T11:08:57.392548Z",ordering:1},{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/aeac83a4489909ce0dc4ca5f2d9d67da4da467d5.png",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/aeac83a4489909ce0dc4ca5f2d9d67da4da467d5.png",featured:!1,title:"Item list",description:null,created:"2025-02-13T21:47:35.376394Z",ordering:2},{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/f410ffa75672641f0f1a75702a6bb8acb4465834_350.webp",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/f410ffa75672641f0f1a75702a6bb8acb4465834.png",featured:!1,title:"Mining Tin Ore",description:" ",created:"2024-08-17T15:05:16.469902Z",ordering:3},{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/f94ecebbea55e6510c9b994b4f3836b1c7b05329_350.webp",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/3443722227da789c25e1f9be7b2708ab88529f40.png",featured:!1,title:"Tin Ore processing",description:" ",created:"2024-08-17T15:05:27.517465Z",ordering:4},{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/1a16b081bb8e180eebd5e0f6a6a4f9876b7d65ae_350.webp",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/1a16b081bb8e180eebd5e0f6a6a4f9876b7d65ae.png",featured:!1,title:"Bronze Alloy",description:null,created:"2024-10-05T11:09:41.089460Z",ordering:5},{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/9cf5e43989cdf0fc9833b83eca91d988254e148c_350.webp",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/9cf5e43989cdf0fc9833b83eca91d988254e148c.png",featured:!1,title:"Additional Brass recipes",description:null,created:"2024-08-18T07:49:30.695729Z",ordering:6},{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/c028b86989c50dd10e6815d493ac9e32e1334640_350.webp",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/c028b86989c50dd10e6815d493ac9e32e1334640.png",featured:!1,title:"Steel Alloy",description:null,created:"2024-10-05T11:10:02.532970Z",ordering:7},{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/e315f01f1552818d2f48dcb281c2bab2f464c579_350.webp",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/e315f01f1552818d2f48dcb281c2bab2f464c579.png",featured:!1,title:"Hammer (3x3 mining)",description:" ",created:"2024-08-17T15:06:29.690637Z",ordering:8},{url:"https://cdn.modrinth.com/data/FZb6dmQf/images/3cd281b6ed1a0879ee1603a85a2ceb3a20e90e02_350.webp",raw_url:"https://cdn.modrinth.com/data/FZb6dmQf/images/25755ccb8bf1be126a7f1c9b526c9c536b4478f9.png",featured:!1,title:"Hammers & Paxels",description:null,created:"2024-08-18T07:50:30.294159Z",ordering:9}],color:5609429,thread_id:"ajcuQmFY",monetization_status:"monetized"},{client_side:"unsupported",server_side:"required",game_versions:["1.14","1.14.1","1.14.2","1.14.3","1.14.4","1.15","1.15.1","1.15.2","1.16","1.16.1","1.16.2","1.16.3","1.16.4","1.16.5","1.17","1.17.1","1.18","1.18.1","1.18.2","1.19","1.19.1","1.19.2","1.19.3","1.19.4","1.20","1.20.1","1.20.2","1.20.3","1.20.4","1.20.5","1.20.6","1.21","1.21.1","1.21.2","1.21.3","1.21.4","1.21.5"],id:"FaTewwoD",slug:"disable-end",project_type:"mod",team:"JnjHIU18",organization:null,title:"Disable End",description:"Adds a gamerule that allows you to dynamically disable collisions with end portal blocks",body:`# Disable End
Simple mod that adds a gamerule that allows you to dynamically disable collisions with end portal blocks
Requires Fabric API
## License
This template is available under the CC0 license. Feel free to learn from it and incorporate it in your own projects.
`,body_url:null,published:"2025-04-24T19:08:37.741988Z",updated:"2025-05-03T02:21:09.871882Z",approved:"2025-04-29T05:39:11.934649Z",queued:"2025-04-24T19:26:50.905607Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"CC0-1.0",name:"Creative Commons Zero v1.0 Universal",url:null},downloads:862,followers:4,categories:["game-mechanics","management","utility"],additional_categories:[],loaders:["fabric"],versions:["PpFBmw8r","I7H8fp1R"],icon_url:"https://cdn.modrinth.com/data/FaTewwoD/81fff6a4f64f04e262337545ac5fc4ff709b924b.png",issues_url:"https://github.com/TheRealAlphaDuck/DisableEnd/issues",source_url:"https://github.com/TheRealAlphaDuck/DisableEnd",wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FaTewwoD/images/a684c8777d231d3c40c0b1ba5d28c980e01dabb8_350.webp",raw_url:"https://cdn.modrinth.com/data/FaTewwoD/images/a684c8777d231d3c40c0b1ba5d28c980e01dabb8.png",featured:!0,title:"Disabled Portal",description:null,created:"2025-04-24T19:35:32.551440Z",ordering:1}],color:14227517,thread_id:"UPKbdX9y",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20.1","1.21.5"],id:"FaerFwHL",slug:"backslot-mod",project_type:"mod",team:"r7acno0l",organization:null,title:"Backslot Mod",description:"This mod adds Another inventory Slot: The Backslot!",body:`# Backslot Mod
### This mod adds Another inventory Slot: The Backslot!
Okay, But how does it work?
## The Backslot
The backslot is a hotbar slot-like slot that stores one stack of items, can be selected and doesnt drop on death. There are also two keybinds to acces it, more on those later.
## Keybinds
This mod adds 2 keybinds:
- Swap With Backslot: Swaps the item you are currently holding with the item in the backslot!
- Select Backslot Item: will make the item in the backslot act as if in the main hand,\\
allowing full usage of the item!
## Commands
If you are worried about players hiding items from admins in theire backslot, worry no more!\\
This mod also adds 2 new admin commands:
- "/backslot_clear ": Clears the backslot of the specified player.
- "/backslot_check ": Shows admins what the player has in their backslot.
## Configuration
This mod also includes configuration options:
- Blacklisted items and blocks: For items and blocks that should not be in the backslot.
- Large Items: For items that use a larger model and thus need to be scaled up in the backslot.
- Should Drop Backslot Item On Death: For changing if items on your backslot items drop after dying.
## Preview Picture (More in Gallery)
`,body_url:null,published:"2025-07-02T19:02:13.655494Z",updated:"2025-09-05T18:40:00.599956Z",approved:"2025-07-16T03:35:50.299270Z",queued:"2025-07-02T19:23:02.095336Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:749,followers:11,categories:["game-mechanics","storage","utility"],additional_categories:["equipment","social"],loaders:["fabric","quilt"],versions:["PfbfYCgZ","f1tyX4M7","lLk5kzAh","h6qUuRB1","4k7wM0O6","zrYwYpdN"],icon_url:"https://cdn.modrinth.com/data/FaerFwHL/5c6ea5f0c2dbf24e924d9105b3930c7a3af14eb6.png",issues_url:"https://github.com/medecoole/issues/issues",source_url:null,wiki_url:"https://github.com/medecoole/mod-info/wiki/Backslot-Mod",discord_url:"https://discord.gg/KpBw6QNgW5",donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FaerFwHL/images/a20e7ed3a08638836b9a29376e179c7aaf3d4ab1_350.webp",raw_url:"https://cdn.modrinth.com/data/FaerFwHL/images/a20e7ed3a08638836b9a29376e179c7aaf3d4ab1.png",featured:!1,title:"Item On Backslot",description:"Diamond Sword shown on backslot",created:"2025-07-02T19:20:30.971871Z",ordering:1},{url:"https://cdn.modrinth.com/data/FaerFwHL/images/bd74439453a011dccac0fb5179129498099848cf_350.webp",raw_url:"https://cdn.modrinth.com/data/FaerFwHL/images/bd74439453a011dccac0fb5179129498099848cf.png",featured:!1,title:"Selecting Backslot Item",description:"Holding A Item From The Backslot",created:"2025-07-02T19:22:21.453277Z",ordering:2},{url:"https://cdn.modrinth.com/data/FaerFwHL/images/590c4cd1c17534b84bc75000d4ddefaebb8e88e3_350.webp",raw_url:"https://cdn.modrinth.com/data/FaerFwHL/images/590c4cd1c17534b84bc75000d4ddefaebb8e88e3.png",featured:!0,title:"Banners,swords and tridents!",description:"Banners move like capes when you walk and tridents use the 3d model!",created:"2025-08-22T05:56:58.866191Z",ordering:3}],color:2442547,thread_id:"37g7stFV",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.19","1.19.1","1.19.2","1.20.1","1.21","1.21.1"],id:"FZblDyXy",slug:"cobblemon-bonus-textures",project_type:"resourcepack",team:"YhuFAtzE",organization:null,title:"Cobblemon Bonus Textures",description:"Adds a handful of alternate textures for Cobblemon pokemon to bring more variety into your world.",body:`A resource pack intended to add a few extra alternate textures to Cobblemon pokemon, to make each pokemon a bit more unique.
### Pokemon Lines Included:
Deerling, Voltorb (except Hisuian), Pidgey, Mareep, Rattata
---
### Instructions:
**TO INSTALL:** Put a copy of this folder in your .minecraft/resourcepacks folder, and put another copy in your .minecraft/saves/[Your World's Name]/datapacks folder.
To summon them specifically with commands, each pokemon will have most of their variants listed under the first evo's name. So /pokespawn voltorb voltorb-ball=net will summon a voltorb with a net ball pattern.
If you happen to dislike one variant, you can replace it in the pack's files by copying in the regular texture and renaming it to the one you don't like (Or you can edit the .json files if you're feeling up to it). And if you don't want variants for a certain pokemon, just go in and delete all of its folders.`,body_url:null,published:"2023-06-13T01:30:37.575005Z",updated:"2025-05-25T04:19:08.903725Z",approved:"2023-06-14T01:12:29.900812Z",queued:"2023-06-13T02:06:39.448780Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MPL-2.0",name:"Mozilla Public License 2.0",url:null},downloads:18187,followers:36,categories:["16x","entities","modded"],additional_categories:[],loaders:["minecraft"],versions:["KOx5gTJj","epeJMPvd","kdlbtbgL","UW75y1Pz","QumVFRRT","cvjpXEOG","nzF7eE83","op3EaMu0","C23BMVa9","VySyXjQc","OfKC3Frp","yh3eRehT"],icon_url:"https://cdn.modrinth.com/data/FZblDyXy/4c38d5157bcd5934798f77ec301f364c66b6dbc8.png",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FZblDyXy/images/97ce0ee76f4521530d54800aaaca596faeff5aa3_350.webp",raw_url:"https://cdn.modrinth.com/data/FZblDyXy/images/97ce0ee76f4521530d54800aaaca596faeff5aa3.png",featured:!1,title:"sawsbuck invasion",description:"they just really like walls for some reason",created:"2023-06-25T00:08:25.115956Z",ordering:0}],color:4888006,thread_id:"FZblDyXy",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.20.4","1.21.1"],id:"FZbuFEAD",slug:"blood-censor-pack-cyan",project_type:"resourcepack",team:"UXgCbbTA",organization:null,title:"Blood Censor Pack (Cyan)",description:'Censors the use of "blood" via changing the redstone block texture',body:`# Tired of seeing blood when punching mobs?
This resourcepack changes that by recolouring the redstone block texture often used to simulate blood on servers
`,body_url:null,published:"2025-06-19T20:05:35.337766Z",updated:"2025-06-19T20:11:34.248727Z",approved:"2025-06-22T07:07:11.523725Z",queued:"2025-06-19T20:28:49.131469Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:13,followers:0,categories:["combat","simplistic","tweaks"],additional_categories:["16x"],loaders:["minecraft"],versions:["zPupuUt0"],icon_url:"https://cdn.modrinth.com/data/FZbuFEAD/98103ec4be626d51cd51190640347b1d4abd9618_96.webp",issues_url:null,source_url:null,wiki_url:null,discord_url:"https://discord.com/invite/6pa6nYAnjU",donation_urls:[{id:"ko-fi",platform:"Ko-fi",url:"https://ko-fi.com/sacdj"}],gallery:[{url:"https://cdn.modrinth.com/data/FZbuFEAD/images/c2f03f2bc85cabf27ae8069b3ca47a016b1c9956_350.webp",raw_url:"https://cdn.modrinth.com/data/FZbuFEAD/images/c2f03f2bc85cabf27ae8069b3ca47a016b1c9956.png",featured:!1,title:"cyan particles",description:null,created:"2025-06-19T20:23:41.541252Z",ordering:1}],color:312773,thread_id:"Gau4a27Q",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20.4"],id:"FbI9JIO5",slug:"lairhissons-armor",project_type:"mod",team:"fZgetZSu",organization:null,title:"LAirHisson's Armor",description:`A mod that adds 2 new armors to the game :
-The End Armor
-The Miner Armor`,body:`# Minecraft Mod: New Armors
This mod introduces two exciting new armor sets to Minecraft, each with unique abilities tailored for specific scenarios.

## End Armor
Inspired by the End dimension and Ender Pearls, this armor grants special abilities to enhance your gameplay. Each piece comes with a unique function:
- **Ender Boots**: Protect yourself from falling into the void by activating a levitation effect just in time.

- **Ender Helmet**: Allows you to launch Ender Pearls with a cooldown.

## Miner Armor
Designed to aid players exploring underground caves, this armor enhances mining efficiency and safety.
- **Miner Helmet**: Grants night vision to illuminate the darkest tunnels. It is crafted using glowstone.

- **Miner Boots**: Enable you to walk over lava by creating temporary "lava ice" blocks beneath your feet, which break after a few seconds.

Learn how I created this mod and see it in action in my YouTube video, where I provide a more in-depth walkthrough:
`,body_url:null,published:"2024-08-25T07:53:58.331320Z",updated:"2024-08-25T07:58:49.254224Z",approved:"2024-12-15T07:18:50.351355Z",queued:"2024-12-13T07:13:00.837926Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:309,followers:6,categories:["equipment"],additional_categories:[],loaders:["forge"],versions:["beM9DedW"],icon_url:"https://cdn.modrinth.com/data/FbI9JIO5/9a5a31b5ba0da589e69cfb17ee099b04387c4e60_96.webp",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FbI9JIO5/images/7427c763961bb473e30dddbbe79befa6d0667ada_350.webp",raw_url:"https://cdn.modrinth.com/data/FbI9JIO5/images/7427c763961bb473e30dddbbe79befa6d0667ada.jpeg",featured:!1,title:"The two armors",description:"Try the end armor and the miner's one !",created:"2024-12-10T20:49:38.543743Z",ordering:0}],color:11907964,thread_id:"4Y3wjgC3",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.20.1"],id:"FZssZjA8",slug:"simplified-spectrum",project_type:"resourcepack",team:"xqxC3TtN",organization:null,title:"Bare Bones X Spectrum",description:"A texture pack for Spectrum mimicking the trailer style.",body:`
This resource pack was a project for me and Detrilogue to work on for fun. This project took the two of us exactly one month to do, and we replaced every single texture in the Spectrum mod with a variation that matches the style of the Minecraft trailers.
Inside the zip is a second pack, which includes more flat leaves if that is your cup of tea.
This pack should work on any version that has Spectrum installed.
Screenshots may incude spoilers





You can find the Spectrum mod here:
[https://test.kalataka.ru/mod/spectrum](https://test.kalataka.ru/mod/spectrum)
You can find the bare bones resource pack here:
[https://test.kalataka.ru/resourcepack/bare-bones](https://test.kalataka.ru/resourcepack/bare-bones)
You should absolutely go check out the discord! You can find me and Detrilogue there, and the community is really fun to be around. Here is another link that you can use:
[https://discord.gg/jF3EQbH5EP](https://discord.gg/jF3EQbH5EP)`,body_url:null,published:"2024-10-08T22:15:39.740529Z",updated:"2024-10-21T18:51:38.106737Z",approved:"2024-10-23T06:23:42.357058Z",queued:"2024-10-21T19:22:53.976996Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LGPL-3.0-or-later",name:"GNU Lesser General Public License v3.0 only",url:null},downloads:116,followers:1,categories:["16x","decoration","simplistic"],additional_categories:["blocks","entities","gui","items","models","themed"],loaders:["minecraft"],versions:["3Knvxi7L"],icon_url:"https://cdn.modrinth.com/data/FZssZjA8/8de3d92d1d9c237791a8d39f8b9e1b8b0fecb83d_96.webp",issues_url:"https://github.com/EthanDangerous/Simplified-Spectrum/issues",source_url:"https://github.com/EthanDangerous/Simplified-Spectrum",wiki_url:null,discord_url:"https://discord.gg/jF3EQbH5EP",donation_urls:[{id:"ko-fi",platform:"Ko-fi",url:"https://ko-fi.com/brothers_trouble"}],gallery:[{url:"https://cdn.modrinth.com/data/FZssZjA8/images/687a4c0250ef917d6bcc2a67db02d7d2a4d946f3.png",raw_url:"https://cdn.modrinth.com/data/FZssZjA8/images/687a4c0250ef917d6bcc2a67db02d7d2a4d946f3.png",featured:!1,title:"cmy pedestal",description:null,created:"2024-10-21T19:21:08.383336Z",ordering:0}],color:5324130,thread_id:"tFYgHvt9",monetization_status:"monetized"},{client_side:"optional",server_side:"required",game_versions:["1.18.2","1.19","1.19.1","1.19.2","1.19.3","1.19.4","1.20","1.20.1"],id:"FabptPkL",slug:"rotten-to-leather",project_type:"mod",team:"M93CxE9t",organization:null,title:"Rotten To Leather",description:"Turns rotten flesh onto leather via smelter, smoker and campfire.",body:`
Turns rotten flesh into leather
`,body_url:null,published:"2023-03-04T20:55:17.986851Z",updated:"2024-06-28T20:34:38.542767Z",approved:"2023-03-04T21:49:36.847231Z",queued:null,status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:10670,followers:19,categories:["game-mechanics","utility"],additional_categories:[],loaders:["datapack","fabric","quilt"],versions:["vbJfMR14","QLOWONwd","4b07fMzJ","FvEMCRx1","RmxUlgwY","pask2dEM"],icon_url:"https://cdn.modrinth.com/data/FabptPkL/f36c8a9bd8bebc3717ad8ddd19f8b1b7e4bb7df0_96.webp",issues_url:"https://github.com/Parilia/datapacks/issues",source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FabptPkL/images/81bbd8faecaec52bc99a08017a2cc8eccb44c3aa.png",raw_url:"https://cdn.modrinth.com/data/FabptPkL/images/81bbd8faecaec52bc99a08017a2cc8eccb44c3aa.png",featured:!0,title:null,description:null,created:"2023-03-04T21:11:49.561428Z",ordering:0}],color:12081204,thread_id:"FabptPkL",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.18","1.18.1","1.18.2","1.19","1.19.1","1.19.2","1.19.3","1.19.4","1.20","1.20.1","1.20.2","1.20.3","1.20.4","1.21","1.21.1"],id:"FZcOyh3v",slug:"nbttooltips",project_type:"mod",team:"RP58CwGM",organization:null,title:"NBTtooltips",description:"A simple fabric Minecraft mod which adds a feature that allows you to see the custom NBT data of an item when you hover over it and press the by you defined key (default left alt).",body:`# NBTtooltips
NBTtooltips is a simple Minecraft fabric mod, which adds a feature that allows you to see the custom NBT data of an item when you hover over it and hold your left alt key.
You will only be able to see the custom NBT data when you have your advanced tooltips on (F3+H).
From update 0.1.3 - 1.19.x and above the keybind isn't hardcoded anymore.
## Config
Since version 0.1.0 - 1.18.x there was a config added to the mod.
In the config file, you're able to set the colours from the different text elements and the maximum line size.
__Configurable data:__
nbttooltips.line.length= 50
nbttooltips.stringColour= blue
nbttooltips.quotationColour= white
nbttooltips.separationColour= white
nbttooltips.integerColour= gold
nbttooltips.typeColour= red
nbttooltips.fieldColour= aqua
nbttooltips.lstringColour= yellow
## FAQ
Is the mod clientside?
Yes, the mod is clientside only!`,body_url:null,published:"2022-03-18T21:09:35.885594Z",updated:"2024-08-30T14:12:25.531699Z",approved:"2022-03-18T21:09:35.885594Z",queued:null,status:"approved",requested_status:null,moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:27885,followers:127,categories:["utility"],additional_categories:[],loaders:["fabric"],versions:["ZMf77jEQ","QYy8CBeP","GXkNS6DI","p0w7wmQO","tJNyWCgc","2SdKGoet","qnoRBgop","XEAWEIcJ","iXKy6WdE"],icon_url:"https://cdn.modrinth.com/data/FZcOyh3v/4cbf0866b499c07c0fb0da35345e4b51485bb7a5_96.webp",issues_url:null,source_url:"https://github.com/MisionThi/NBTtooltips",wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FZcOyh3v/images/54966eb928fb8862a64c9d00be416b8cdb790750.png",raw_url:"https://cdn.modrinth.com/data/FZcOyh3v/images/54966eb928fb8862a64c9d00be416b8cdb790750.png",featured:!1,title:"NBTtooltips",description:"Just a normal example",created:"2022-03-18T21:12:22.919899Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZcOyh3v/images/85881bf23f758ec614bf76f375ad0d683a6f653e.png",raw_url:"https://cdn.modrinth.com/data/FZcOyh3v/images/85881bf23f758ec614bf76f375ad0d683a6f653e.png",featured:!1,title:"NBTtooltips",description:"How it displays long strings for example with heads",created:"2022-03-18T21:12:21.487898Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZcOyh3v/images/97cfb8eb4afdb70d216988f131d92d9125372f5b.png",raw_url:"https://cdn.modrinth.com/data/FZcOyh3v/images/97cfb8eb4afdb70d216988f131d92d9125372f5b.png",featured:!1,title:"NBTtooltips",description:"With a lot of NBT",created:"2022-03-18T21:12:22.163055Z",ordering:0}],color:1312532,thread_id:"FZcOyh3v",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.16.5","1.17.1","1.19.2","1.19.4","1.20.1","1.20.4","1.20.6","1.21.1","1.21.2","1.21.3","1.21.4","1.21.5","1.21.6","1.21.7","1.21.8","1.21.9"],id:"FaaWewhu",slug:"fatals-qol-crafting",project_type:"mod",team:"a2r9xADR",organization:null,title:"Fatal's QoL Crafting",description:"Changes some recipes and adds many new ones.",body:`Changes and adds many recipes to be more balanced and makes getting some items easier.
- Changes all stair recipes to give 8 stairs instead of 4.
- Slabs can be crafted back into full blocks.
- Raw ore blocks can be smelted.
- More stone types can be used in recipes.
- Quartz can be crafted back to nether quartz.
- And many more. Full list: [Recipe list](https://fatalmistake02.notion.site/Recipes-22df9c81abac80fc944fc12fb05dbabd)
[Notes on compatibility](https://www.notion.so/fatalmistake02/Compatibility-22ff9c81abac80fb842acd175baae636?source=copy_link)`,body_url:null,published:"2025-07-11T21:28:41.954951Z",updated:"2025-10-04T00:36:35.917091Z",approved:"2025-08-01T04:16:09.280029Z",queued:"2025-07-27T17:39:18.678357Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"GPL-3.0-only",name:"GNU General Public License v3.0 only",url:null},downloads:203,followers:0,categories:["utility"],additional_categories:[],loaders:["forge","neoforge"],versions:["UkZTOHEH","TuFRvk22","ONtrYsr7","M9TQEBnm","WSnq9iT8","Qci7kqK2","Du5ZtGbs","wQtZi7FM","UqSPIa1f","CSnKxuOz","TddMMKO5","tEjVfZcJ","WLsKowoq","pdEKDIjG","FF8dJdhI","TkCNjm3Y","Pv9IkCXl"],icon_url:"https://cdn.modrinth.com/data/FaaWewhu/2d24f6012324742280787e0ebfab1da8da2e1dfd_96.webp",issues_url:"https://github.com/FatalMistake02/Fatal-s-Crafting-QoL/issues",source_url:"https://github.com/FatalMistake02/Fatal-s-Crafting-QoL",wiki_url:"https://fatalmistake02.notion.site/Recipes-22df9c81abac80fc944fc12fb05dbabd",discord_url:"https://discord.com/invite/2hcArGKJkG",donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FaaWewhu/images/1fca36f3ef25ef8c43c229d6eaa677d36edaa940.png",raw_url:"https://cdn.modrinth.com/data/FaaWewhu/images/1fca36f3ef25ef8c43c229d6eaa677d36edaa940.png",featured:!0,title:"Stairs",description:null,created:"2025-07-17T20:16:48.474904Z",ordering:0},{url:"https://cdn.modrinth.com/data/FaaWewhu/images/1eb47b41fffc8669ae9c7b59a885ec9c6e4acbd6.png",raw_url:"https://cdn.modrinth.com/data/FaaWewhu/images/1eb47b41fffc8669ae9c7b59a885ec9c6e4acbd6.png",featured:!1,title:"Slabs back to blocks",description:null,created:"2025-07-17T20:17:09.363531Z",ordering:1}],color:3353114,thread_id:"uZ0agc3G",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.21.7"],id:"FZjAt4UT",slug:"zlp",project_type:"modpack",team:"SXPqMG7D",organization:null,title:"ZLP",description:"A fabric modpack with Boosted FPS and Extra Features!",body:`# ZLP - Модпак для игры на zlp.onl приватке!

**RU:** Вас приветствует ItsRecovery, и я вам представляю модпак для комфортной игры на нашем любимом сервере!
### 🚀 Цель модпака:
Спойлер
**Скачать** -> **Запустить** -> **Зайти на сервер** - вот чего я придерживаюсь, чтобы игроки тратили меньше времени и без всяких проблем зашли на сервер, не задавая **лишних** вопросов 😉
### 🔗 Связь с автором:
Спойлер
Если у вас есть предложения для добавления или изменения сборки, то пишите мне в личные сообщения в Telegram:
### [@itsrec0very](https://t.me/itsrec0very)
> ВНИМАНИЕ! Если вы хотите начать играть на сервере, необходимо установить отдельно мод **Bastion**, без него на сервер **ВАС НЕ ПУСТИТ**. Скачать его можно в приватном Telegram-канале сервера!
**EN:** You are welcomed ItsRecovery, and I present to you a modpack for a comfortable game on our favorite server!
### 🚀 Modpack's aim:
Spoiler
**Download** -> **Run** -> **Log in to the server** - this is what I stick to, so that players spend less time and log in to the server without any problems, without asking **unnecessary** questions 😉
### 🔗 Link to author:
Spoiler
If you have suggestions for additions or changes to the build, private message me on Telegram:
### [@itsrec0very](https://t.me/itsrec0very)
> WARNING! If you want to start playing on the server, you need to install separately mod **Bastion**, without it on the server **YOU WON'T GET**. You can download it in the private Telegram-channel server!`,body_url:null,published:"2024-10-29T02:39:23.750759Z",updated:"2025-08-21T08:56:20.586117Z",approved:"2024-11-04T23:59:26.809826Z",queued:"2024-10-29T03:13:41.973759Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:345,followers:0,categories:["multiplayer","optimization"],additional_categories:[],loaders:["fabric"],versions:["CnkyF2H8","U8YYmtaj"],icon_url:"https://cdn.modrinth.com/data/FZjAt4UT/1e50a05d52c72c02c1055900f4e152268bfac2d0_96.webp",issues_url:null,source_url:null,wiki_url:"https://docs.google.com/document/d/1E32vJQMLAL3n-aVCRiAH580OZ1QrcIPGubQ4qUKgLU8",discord_url:null,donation_urls:[],gallery:[],color:11764329,thread_id:"TAi0PNjd",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.20.1"],id:"FbJUV6iC",slug:"craftable-dragon-egg",project_type:"mod",team:"J9wNLzTp",organization:null,title:"Craftable Dragon Egg",description:"This mod adds the dragon egg crafting recipe to the game!",body:"A Minecraft mod allowing players to craft the **Dragon Egg**, introducing a fresh and intriguing gameplay mechanic.",body_url:null,published:"2024-02-13T17:57:19.519464Z",updated:"2024-02-13T18:03:33.144468Z",approved:"2024-02-22T06:13:31.963987Z",queued:"2024-02-13T18:11:24.898429Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:819,followers:1,categories:["decoration","utility"],additional_categories:[],loaders:["forge"],versions:["otCYFLvi"],icon_url:"https://cdn.modrinth.com/data/FbJUV6iC/7ee02728f490826adaa7778dd60c61cfccb3221c.png",issues_url:null,source_url:null,wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FbJUV6iC/images/dc3b39d068907ada4c8133f298ca848f44406464.webp",raw_url:"https://cdn.modrinth.com/data/FbJUV6iC/images/dc3b39d068907ada4c8133f298ca848f44406464.webp",featured:!1,title:"Dragon Egg Hub",description:null,created:"2024-02-13T18:06:59.617650Z",ordering:0}],color:394764,thread_id:"CxQ5ii1F",monetization_status:"demonetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.8","1.8.1","1.8.2","1.8.3","1.8.4","1.8.5","1.8.6","1.8.7","1.8.8","1.8.9","1.9","1.9.1","1.9.2","1.9.3","1.9.4","1.10","1.10.1","1.10.2","1.11","1.11.1","1.11.2","1.12","1.12.1","1.12.2","1.14","1.14.1","1.14.2","1.14.3","1.14.4","1.15","1.15.1","1.15.2","1.16","1.16.1","1.16.2","1.16.3","1.16.4","1.16.5","1.17","1.17.1","1.18","1.18.1","1.18.2","1.19","1.19.1","1.19.2","1.19.3","1.19.4"],id:"Fb6XdDFr",slug:"openauthmod",project_type:"mod",team:"i9XMF99X",organization:null,title:"OpenAuthMod",description:"Open source minecraft authentication protocol for proxies",body:`# OpenAuthMod
**Open source minecraft authentication protocol for proxies**
Modrinth releases will always have only the latest version uploaded. Older versions can be found on the projects GitHub.
## What does this mod
This mod provides an easy and secure interface for proxies to authenticate to an online mode server. This works by forwarding the authentication request to the client and letting it do the authentication.
**When using this mod, your session or private keys WILL NOT be sent to the server at any point. Everything is done clientside and with your confirmation.**
## Compatibility
* Fabric 1.14 - 1.19.3
* Forge 1.14 - 1.19.3
* Forge 1.8 - 1.12.2
## Projects where this mod can be used
* [ViaProxy](https://github.com/RaphiMC/ViaProxy): ViaProxy lets players join on every classic, alpha, beta and release server. To try it out join *viaproxy.raphimc.net* with a minecraft 1.8 - latest client. OpenAuthMod allows you to join online mode servers over that proxy.
* [VIAaaS](https://github.com/ViaVersion/VIAaaS): VIAaaS is a standalone ViaVersion proxy.`,body_url:null,published:"2022-07-26T23:57:48.782780Z",updated:"2022-07-27T00:41:14.247421Z",approved:"2022-07-26T23:57:48.782780Z",queued:null,status:"archived",requested_status:null,moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:1999,followers:6,categories:["utility"],additional_categories:[],loaders:["fabric","forge","quilt"],versions:["ACUxfirn","agL0Lomq","I9ms6Q8q","s1t27zAP","XIc0P5i7","22ioY2J8"],icon_url:"https://cdn.modrinth.com/data/Fb6XdDFr/02f9cc07a8690b8622b88d59bba56d15daf01d34_96.webp",issues_url:"https://github.com/RaphiMC/OpenAuthMod/issues",source_url:"https://github.com/RaphiMC/OpenAuthMod",wiki_url:null,discord_url:"https://discord.gg/dCzT9XHEWu",donation_urls:[],gallery:[],color:3533542,thread_id:"Fb6XdDFr",monetization_status:"monetized"},{client_side:"required",server_side:"unsupported",game_versions:["1.19.3"],id:"FZrU1oX4",slug:"the-builders-modpack",project_type:"modpack",team:"iEFS3PJl",organization:null,title:"The Builder's Modpack",description:`Tools and optimizations for Minecraft builder !
Shader-supported, multiple Minecraft versions!`,body:`
# Designed for builder.
#### "TBM" is a must-have for any Minecraft builder looking to take their creations to the next level.
## Tools
this project is oriented towards tools and facility, we want to expand the World Edit experience to an confortable tools with helpful
> #### It offers a wide range of tools for building, such as WorldEdit and the Effortless Building mod. This modpack is highly optimized for FPS and latency/ping for servers, and it is also compatible with vanilla servers.
> With "The Builder's Modpack," you can enjoy a more streamlined and efficient building experience. Whether you're constructing a massive castle or a tiny hut, this modpack has the tools you need to bring your vision to life.
`,body_url:null,published:"2023-06-03T14:56:33.990695Z",updated:"2023-06-12T15:02:20.783815Z",approved:"2023-06-19T00:46:10.002078Z",queued:"2023-06-17T17:21:27.900972Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"LicenseRef-All-Rights-Reserved",name:"",url:null},downloads:1748,followers:0,categories:["lightweight","multiplayer","optimization"],additional_categories:["kitchen-sink"],loaders:["fabric"],versions:["xV5pEObj"],icon_url:"https://cdn.modrinth.com/data/FZrU1oX4/34cbfb04a788b1e432d907002d3df82dbe490c6d_96.webp",issues_url:"https://discord.com/invite/vsAX4XPbqS",source_url:null,wiki_url:"https://www.craft.do/s/1UaiiRKsVZ8QEE",discord_url:"https://discord.com/invite/AG7v7fA93U",donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FZrU1oX4/images/a5da767d77800207f59bff4852da91060ca0cf73_350.webp",raw_url:"https://cdn.modrinth.com/data/FZrU1oX4/images/a5da767d77800207f59bff4852da91060ca0cf73.png",featured:!1,title:null,description:null,created:"2023-06-12T13:37:38.616246Z",ordering:0},{url:"https://cdn.modrinth.com/data/FZrU1oX4/images/217c3ae7974a7d04d1ee6f691a423b35d63d62c5_350.webp",raw_url:"https://cdn.modrinth.com/data/FZrU1oX4/images/217c3ae7974a7d04d1ee6f691a423b35d63d62c5.png",featured:!1,title:"Build made with the modpack",description:"The Builder team at Perfect Studios has made a giant spawn with this helpful modpack.",created:"2023-06-12T13:09:42.806328Z",ordering:1},{url:"https://cdn.modrinth.com/data/FZrU1oX4/images/4de0d5ed969dfed3ba2b1065f2a158eb6e7c39b1_350.webp",raw_url:"https://cdn.modrinth.com/data/FZrU1oX4/images/4de0d5ed969dfed3ba2b1065f2a158eb6e7c39b1.png",featured:!1,title:"Integrated map working in singleplayer & multiplayer !",description:"You have this beautiful map wich you can teleport you through your differents builds!",created:"2023-06-12T13:21:33.071618Z",ordering:2},{url:"https://cdn.modrinth.com/data/FZrU1oX4/images/a619ce00bb94ae9107c0e18bea94997db83b67ed_350.webp",raw_url:"https://cdn.modrinth.com/data/FZrU1oX4/images/a619ce00bb94ae9107c0e18bea94997db83b67ed.png",featured:!0,title:"Shaders pre-installed !",description:`You have 6 shaderpacks pre-installed. And 3 configured for better result.
All good builders love sharing their beautiful work !`,created:"2023-06-12T13:17:39.794418Z",ordering:2},{url:"https://cdn.modrinth.com/data/FZrU1oX4/images/5bba7f4c7a131114aafbfb919661e86a23ac71d6.gif",raw_url:"https://cdn.modrinth.com/data/FZrU1oX4/images/5bba7f4c7a131114aafbfb919661e86a23ac71d6.gif",featured:!1,title:"Visual selection !",description:"Make an selection with world edit, you can disable the showing selection & clear it !",created:"2023-06-12T13:33:35.072032Z",ordering:3},{url:"https://cdn.modrinth.com/data/FZrU1oX4/images/fb972262e2922f8fdff072db670d562d1d113dff.gif",raw_url:"https://cdn.modrinth.com/data/FZrU1oX4/images/fb972262e2922f8fdff072db670d562d1d113dff.gif",featured:!1,title:"Sort your items more easily",description:"With faster inventory sorting when you hold the mouse click !",created:"2023-06-12T13:35:54.281528Z",ordering:3},{url:"https://cdn.modrinth.com/data/FZrU1oX4/images/3186cfa5e767fd8251075ef195f38e45b8d5546c_350.webp",raw_url:"https://cdn.modrinth.com/data/FZrU1oX4/images/3186cfa5e767fd8251075ef195f38e45b8d5546c.png",featured:!1,title:"Showing your ping.",description:"Very usefull for detecting if you lag or the server lag.",created:"2023-06-12T13:27:33.172303Z",ordering:5}],color:7428169,thread_id:"FZrU1oX4",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.21","1.21.1","1.21.2","1.21.3","1.21.4"],id:"FbHSPTyF",slug:"kiss",project_type:"mod",team:"JXcL1gaF",organization:null,title:"KISS – Keep Inventories Sorted, Simple",description:"Lightweight inventory sorting mod.",body:`# KISS – Keep Inventories Sorted, Simple
Lightweight inventory sorting mod, an opinionated fork of [Inventory Sorting](https://test.kalataka.ru/mod/inventory-sorting).
## Screenshots
| Before sorting | After sorting |
|----------------|---------------|
|  |  |
## Configuration
Use [Mod Menu](https://test.kalataka.ru/mod/modmenu) for GUI configuration, or the \`/kiss\` command alternatively.
## Usage
You can use the middle mouse button or \`R\` to sort the inventory you're looking at. These keybindings can be changed in
Options -> Control -> Key Binds. You can also configure the mod to **never** sort the player inventory, or to always sort both the non-player inventory (e.g. a chest you opened) and the player inventory at the same time.
While the mod is technically only required on the server, you should install it on server _and_ client. If you only
install it on the server, vanilla clients can use it via the \`/kiss\` commands only. Due to a [known issue with Modrinth](https://github.com/modrinth/knossos/issues/1612),
I've marked the mod as \`Required\` on the client.`,body_url:null,published:"2024-07-27T08:52:56.432351Z",updated:"2025-01-05T16:41:26.039370Z",approved:"2024-07-28T07:09:09.201805Z",queued:"2024-07-27T09:22:52.932057Z",status:"archived",requested_status:"unlisted",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:77646,followers:83,categories:["storage","utility"],additional_categories:[],loaders:["fabric","quilt"],versions:["oBvvsZZL","t8JamZxS","EH6zbYfH","M6GLQXYq","CQ4BIpdK","XiLGMXKx","hUbT9m7t"],icon_url:"https://cdn.modrinth.com/data/FbHSPTyF/53c4aea19ae2c8a357f8b49d0e808895ee4d3e9d.png",issues_url:"https://github.com/manuelgrabowski/KeepInventorySortedSimple/issues",source_url:"https://github.com/manuelgrabowski/KeepInventorySortedSimple",wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FbHSPTyF/images/08380e05b921fe4c09b4785341fc3b0545358e07.png",raw_url:"https://cdn.modrinth.com/data/FbHSPTyF/images/08380e05b921fe4c09b4785341fc3b0545358e07.png",featured:!1,title:"Inventory before sorting",description:null,created:"2024-07-27T08:53:28.106258Z",ordering:1},{url:"https://cdn.modrinth.com/data/FbHSPTyF/images/4e10f256933a0a36cc401ac90269fc19d5a5b149.png",raw_url:"https://cdn.modrinth.com/data/FbHSPTyF/images/4e10f256933a0a36cc401ac90269fc19d5a5b149.png",featured:!0,title:"Inventory after sorting",description:"Shulker boxes are sorted first, grouped by their content and sorted by fill level.",created:"2024-07-27T08:54:44.529996Z",ordering:2}],color:3223857,thread_id:"3uiCwEhA",monetization_status:"monetized"},{client_side:"required",server_side:"required",game_versions:["1.12.2","1.14.4","1.15.2","1.16.5","1.17.1","1.18.2","1.19","1.19.1","1.19.2","1.19.3","1.19.4","1.20","1.20.1","1.20.4","1.20.6","1.21","1.21.1"],id:"FaUysFni",slug:"vampires-need-umbrellas",project_type:"mod",team:"V7dAE5Wa",organization:null,title:"Vampires Need Umbrellas",description:"An addon for Vampirism! 🧛♂️🌂",body:`
This mod is an addon for Vampirism.
Now vampires no longer need to fear the sun! This mod adds umbrellas that protect vampires from the sun.
There are 4 types of umbrellas: Iron, Gold, Diamond and Netherite. Each of them has a different durability that can be changed in the configuration file.
And each type of umbrella is available in 16 different colors.
⭐Features ⭐
🌂Umbrellas that grants Sun Protection
🌈16 different colors of Umbrellas
💎Configurable durability for each type of Umbrella
🐌Configurable Speed Modifiers for when using an Umbrella
💍 Compatible with Baubles and Curios
❓Frequently Asked Questions❓Where can I find the mod's config file?
You can find the config file inside the config folder. Consider ".minecraft" being your modpack instance folder if you are using a launcher other than minecraft official launcher.
.minecraft/config/vampiresneedumbrellas-common.tomlHow to remove the Slow when holding an Umbrella?
You can disable the Umbrella Speed Modifier in the config file
Inside the file you'll se a section named "Umbrellas Speed". Set the values of this section to 0 and restart the game.
How to change the Durability of an Umbrella?
You can change the Umbrella Durabilities in the config file
Inside the file you'll se a section named "Umbrellas Durability". Set the values of this section to whatever you want and restart the game.
How to enable the Baubles/Curios compatibility?
Go to the config file, find the "Umbrellas Mechanics" section and set the "umbrellaBauble" option to "true".
[!] Starting from 1.20, Curios changed the recommended way of registering and enabling new slots from code to Data Packs.
With this change, the "Baubles/Curios" config option was removed. You can download a Data Pack that enables the Curios slot by clicking here.`,body_url:null,published:"2023-06-12T02:26:07.155971Z",updated:"2025-08-19T02:26:48.123362Z",approved:"2023-06-13T19:25:48.347266Z",queued:"2023-06-12T02:58:15.886919Z",status:"approved",requested_status:"approved",moderator_message:null,license:{id:"MIT",name:"MIT License",url:null},downloads:127827,followers:55,categories:["adventure","equipment","utility"],additional_categories:[],loaders:["forge","neoforge"],versions:["f743KvKs","Wv1RitxU","V8y06RoB","E5LrRnQR","eg8NGMGJ","PY4rnNqD","Lhd7CQyP","lYPmqSsz","dGed2mCk","EGx5eLFG","UianUiSd","jwQiMxn9","2ZVOplDE","mYpB9Z1S","oEM0GqdG","OWcdga9j","gA6GeHzf"],icon_url:"https://cdn.modrinth.com/data/FaUysFni/82e093c9f9081e0369268a4e9cbe20783a28792f.png",issues_url:"https://github.com/focamacho/VampiresNeedUmbrellas/issues",source_url:"https://github.com/focamacho/VampiresNeedUmbrellas",wiki_url:null,discord_url:null,donation_urls:[],gallery:[{url:"https://cdn.modrinth.com/data/FaUysFni/images/c252fe788d9edc0359567ff65098c61faf20493f_350.webp",raw_url:"https://cdn.modrinth.com/data/FaUysFni/images/b17593b896598868a968f490e83b67d5f255a6b8.png",featured:!1,title:"Umbrella",description:null,created:"2023-06-12T02:45:03.727292Z",ordering:0}],color:11066620,thread_id:"FaUysFni",monetization_status:"monetized"}],_7={hits:[{project_id:"gK9mebQg",project_type:"mod",slug:"leave-my-bars-alone",author:"Fuzs",title:"Leave My Bars Alone",description:"Makes your food and experience bars visible when riding on a horse.",categories:["fabric","food","forge","mobs","neoforge","utility"],display_categories:["fabric","forge","neoforge","utility"],versions:["1.18.2","1.19.2","1.19.3","1.19.4","1.20","1.20.1","1.20.4","1.21.1","1.21.3","1.21.4","1.21.5","1.21.7","1.21.8","1.21.9"],downloads:1418574,follows:533,icon_url:"https://cdn.modrinth.com/data/gK9mebQg/7c1e2595b5debbe94f6c5a307ce8182c8041df1e_96.webp",date_created:"2022-10-09T14:48:29.237447Z",date_modified:"2025-10-06T10:45:13.318292Z",latest_version:"xVKhrSW6",license:"MPL-2.0",client_side:"required",server_side:"unsupported",gallery:[],featured_gallery:"https://cdn.modrinth.com/data/gK9mebQg/images/018860dddfeacfc10850b1c823b4cd8a1cf7bd44_350.webp",color:9921584},{project_id:"jqUyZjxD",project_type:"mod",slug:"leavebind",author:"TutlaMC",title:"Leave Bind!",description:"LeaveBind! Lets you leave a server with a keybind",categories:["fabric","game-mechanics","utility"],display_categories:["fabric","game-mechanics"],versions:["1.21.8"],downloads:51,follows:2,icon_url:"https://cdn.modrinth.com/data/jqUyZjxD/85ad8af915c191033d96bc12655a0a114b3a5dbc.gif",date_created:"2025-09-22T03:54:07.285438Z",date_modified:"2025-09-21T19:23:22.664433Z",latest_version:"qnZ45Ech",license:"MIT",client_side:"required",server_side:"unsupported",gallery:[],featured_gallery:null,color:10459544},{project_id:"Fikom4rk",project_type:"mod",slug:"leave-me-alone!",author:"MC3699",title:"Leave Me Alone!",description:"Server-side mod that allows players to exclude themselves from @a and @e",categories:["management","neoforge","utility"],display_categories:["management","neoforge","utility"],versions:["1.21.1"],downloads:20,follows:1,icon_url:"https://cdn.modrinth.com/data/Fikom4rk/4dc4381280decad1d51b81bfbfe827de5f8b46ab.png",date_created:"2025-10-01T01:07:59.185876Z",date_modified:"2025-10-05T15:50:14.240275Z",latest_version:"QKdrQKcV",license:"MIT",client_side:"unsupported",server_side:"required",gallery:[],featured_gallery:null,color:11558502}],offset:0,limit:3,total_hits:1318},w7={hits:[{project_id:"cbNKlKAw",project_type:"mod",slug:"gaia",author:"PrimordialMoros",title:"Gaia",description:"A lightweight arena management mod/plugin",categories:["fabric","folia","management","paper","purpur","utility"],display_categories:["fabric","folia","management","paper","purpur","utility"],versions:["1.20","1.20.1","1.20.2","1.20.4","1.20.6","1.21","1.21.1","1.21.4","1.21.6","1.21.7","1.21.8","1.21.10"],downloads:1567,follows:22,icon_url:"https://cdn.modrinth.com/data/cbNKlKAw/23efd7bcf7749c4ac6d0de6292867026f068f711_96.webp",date_created:"2023-08-29T16:57:26.674406Z",date_modified:"2025-10-07T15:59:48.154800Z",latest_version:"sAWgsUen",license:"GPL-3.0-only",client_side:"unsupported",server_side:"required",gallery:[],featured_gallery:null,color:793644},{project_id:"uRJYopz4",project_type:"mod",slug:"crashpanel",author:"moneyghost",title:"CrashPanel | CrashCore",description:"Unleash your creativity with Crash Panel. Customize your server uniquely and effortlessly.",categories:["bukkit","decoration","equipment","game-mechanics","library","management","mobs","paper","purpur","spigot","technology","utility"],display_categories:["bukkit","game-mechanics","management","paper","purpur","spigot","utility"],versions:["1.19","1.19.1","1.19.2","1.19.3","1.19.4","1.20","1.20.1","1.20.2","1.20.3","1.20.4","1.20.5","1.20.6","1.21","1.21.1","1.21.2","1.21.3","1.21.4","1.21.5","1.21.6","1.21.7","1.21.8","1.21.9","1.21.10"],downloads:474,follows:34,icon_url:"https://cdn.modrinth.com/data/uRJYopz4/0c8c780c0676da7559547ffa8bee222bd28a1800_96.webp",date_created:"2024-12-22T08:45:10.118361Z",date_modified:"2025-10-07T15:59:46.907656Z",latest_version:"QozgJXii",license:"LicenseRef-All-Rights-Reserved",client_side:"unsupported",server_side:"required",gallery:["https://cdn.modrinth.com/data/uRJYopz4/images/c3e24a8363badf757558f0d00da734f1c4c481a2.gif","https://cdn.modrinth.com/data/uRJYopz4/images/9a42ee527e6ec1b5f2797b665b9351f0db702243.gif","https://cdn.modrinth.com/data/uRJYopz4/images/bf5ae64ae407869994fe8c906c8b0de91cb60d9b_350.webp","https://cdn.modrinth.com/data/uRJYopz4/images/e23f8203eeac2762923426438eae818cf146b479_350.webp","https://cdn.modrinth.com/data/uRJYopz4/images/d19be6cb3117e1abacb606a7184b3c5fe1f1b27e_350.webp"],featured_gallery:"https://cdn.modrinth.com/data/uRJYopz4/images/f844c8245098a54746c20ff7da827be903663eb8_350.webp",color:4671067},{project_id:"Ty81vbpI",project_type:"mod",slug:"aetherpunkmod",author:"KognitionMC",title:"Aetherpunk",description:"Aetherpunk adds a new weapon and material to the game which is the comination of a ancient artifact and liquified diamond.",categories:["adventure","cursed","decoration","equipment","fabric","game-mechanics","magic","technology","utility"],display_categories:["equipment","fabric","game-mechanics","utility"],versions:["1.20.1","1.20.2","1.20.3","1.20.4","1.20.5","1.20.6"],downloads:1208,follows:15,icon_url:"https://cdn.modrinth.com/data/Ty81vbpI/241db7ae85d794a3e612068178d550d4710d2d50.png",date_created:"2025-04-04T00:26:55.278311Z",date_modified:"2025-10-07T15:59:36.271068Z",latest_version:"LHsadVMB",license:"MIT",client_side:"required",server_side:"required",gallery:[],featured_gallery:"https://cdn.modrinth.com/data/Ty81vbpI/images/3f39da56007246f1d1806cf38b81f68179a16aaa_350.webp",color:1908511}],offset:0,limit:3,total_hits:84690},k7=[{id:"9J3Gm8am",metadata:{type:"midas"},prices:[{id:"9DQ2N1ZJ",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:7500,yearly:26e3,monthly:3e3}},currency_code:"CLP"},{id:"G7nkSR14",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:1500,yearly:6e3,monthly:580}},currency_code:"JPY"},{id:"6LPJ9QAM",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:14100,yearly:56e3,monthly:5600}},currency_code:"KRW"},{id:"3VLrOWLi",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:1200,yearly:4599,monthly:429}},currency_code:"GBP"},{id:"6ey8ODKj",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:499,yearly:5350,quarterly:1200}},currency_code:"EUR"},{id:"9oaOm90S",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:2e4,yearly:175e3,quarterly:50400}},currency_code:"RUB"},{id:"CyCZ4RZH",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:14899,quarterly:4200,monthly:1699}},currency_code:"BRL"},{id:"JHF6lLKX",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:41399900,monthly:4749900,quarterly:11969700}},currency_code:"IDR"},{id:"MP6EFQIc",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:1399,quarterly:3600,yearly:12200}},currency_code:"MYR"},{id:"PH6xXDoz",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:155e3,monthly:17495,quarterly:44100}},currency_code:"PHP"},{id:"PafmqCsG",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:98900,monthly:11500,quarterly:29100}},currency_code:"THB"},{id:"9V1a979N",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:47e3,monthly:5400,quarterly:13500}},currency_code:"TRY"},{id:"CedqX2p6",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:12400,yearly:102500,quarterly:31200}},currency_code:"UAH"},{id:"FoG0pLNv",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:56499,monthly:6449,quarterly:16200}},currency_code:"MXN"},{id:"IxrCDKpi",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:7199,quarterly:1500,monthly:649}},currency_code:"CAD"},{id:"M7IYWF9B",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:1800,yearly:7899,monthly:739}},currency_code:"NZD"},{id:"PF9g0K7G",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:61500,quarterly:14100,monthly:5549}},currency_code:"NOK"},{id:"S7API7dd",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:2299,yearly:25499,quarterly:5700}},currency_code:"PLN"},{id:"2sECn0L6",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:549,quarterly:1500,yearly:6099}},currency_code:"CHF"},{id:"63nlNKaI",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:25e3,quarterly:63e3,yearly:22e4}},currency_code:"INR"},{id:"CN2IkxF2",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:3e3,yearly:10600,monthly:1200}},currency_code:"PEN"},{id:"FWeT3Fnr",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:135e4,quarterly:3402e3,yearly:118e5}},currency_code:"COP"},{id:"IgFeRFFe",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:45500,monthly:5200,quarterly:13200}},currency_code:"ZAR"},{id:"Lph0k9Z7",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:8400,yearly:33800,monthly:3300}},currency_code:"HKD"},{id:"OxY8EEXC",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:37e4,monthly:4e4,quarterly:100800}},currency_code:"ARS"},{id:"a6dZdQUX",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:128e4,quarterly:378e3,monthly:15e4}},currency_code:"KZT"},{id:"2sECmaKC",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:40200,monthly:15900,yearly:156900}},currency_code:"UYU"},{id:"3Bo7lqjT",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:18600,quarterly:4800,monthly:1860}},currency_code:"CNY"},{id:"3BnuEfb1",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:2100,yearly:7995,monthly:799}},currency_code:"AUD"},{id:"3ougdJW5",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:8200,quarterly:20700,yearly:82e3}},currency_code:"TWD"},{id:"48TVGLNA",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{quarterly:2700,monthly:1049,yearly:10495}},currency_code:"SAR"},{id:"4S2Dnk7L",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:11199,quarterly:3e3,monthly:1199}},currency_code:"QAR"},{id:"a6eRm92L",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{monthly:499,quarterly:1200,yearly:4999}},currency_code:"USD"},{id:"3Bn044gF",product_id:"9J3Gm8am",prices:{type:"recurring",intervals:{yearly:65e4,monthly:73500,quarterly:185100}},currency_code:"VND"}],unitary:!0},{id:"rFPobar8",metadata:{type:"pyro",cpu:2,ram:2048,swap:512,storage:16384},prices:[{id:"8ZVp5xhv",product_id:"rFPobar8",prices:{type:"recurring",intervals:{monthly:600,quarterly:1500,yearly:6e3}},currency_code:"USD"}],unitary:!1},{id:"a6eRm92L",metadata:{type:"pyro",cpu:8,ram:8192,swap:2048,storage:65536},prices:[{id:"zz2rN5Cv",product_id:"a6eRm92L",prices:{type:"recurring",intervals:{monthly:2400,quarterly:6e3,yearly:24e3}},currency_code:"USD"}],unitary:!1},{id:"1LSf6sFW",metadata:{type:"pyro",cpu:4,ram:4096,swap:1024,storage:32768},prices:[{id:"dXjG5p3M",product_id:"1LSf6sFW",prices:{type:"recurring",intervals:{yearly:12e3,monthly:1200,quarterly:3e3}},currency_code:"USD"}],unitary:!1},{id:"fiF8dvlH",metadata:{type:"pyro",cpu:6,ram:6144,swap:1536,storage:49152},prices:[{id:"SxokzdHr",product_id:"fiF8dvlH",prices:{type:"recurring",intervals:{yearly:18e3,quarterly:4500,monthly:1800}},currency_code:"USD"}],unitary:!1},{id:"v8fpcQj6",metadata:{type:"pyro",cpu:8,ram:16384,swap:4096,storage:131072},prices:[{id:"JFQ3nNVY",product_id:"v8fpcQj6",prices:{type:"recurring",intervals:{quarterly:12e3,yearly:48e3,monthly:4800}},currency_code:"USD"}],unitary:!1},{id:"xih42e1E",metadata:{type:"pyro",cpu:8,ram:12288,swap:3072,storage:98304},prices:[{id:"yFmg3urb",product_id:"xih42e1E",prices:{type:"recurring",intervals:{quarterly:9e3,monthly:3600,yearly:36e3}},currency_code:"USD"}],unitary:!1},{id:"u4k0dupI",metadata:{type:"pyro",cpu:8,ram:14336,swap:3584,storage:114688},prices:[{id:"VyA1T7nl",product_id:"u4k0dupI",prices:{type:"recurring",intervals:{quarterly:10500,monthly:4200,yearly:42e3}},currency_code:"USD"}],unitary:!1},{id:"33Qe4ygM",metadata:{type:"pyro",cpu:8,ram:10240,swap:2560,storage:81920},prices:[{id:"UklMnxTy",product_id:"33Qe4ygM",prices:{type:"recurring",intervals:{quarterly:7500,yearly:3e4,monthly:3e3}},currency_code:"USD"}],unitary:!1},{id:"VRYThGY8",metadata:{type:"pyro",cpu:8,ram:18432,swap:4608,storage:147456},prices:[{id:"RukFxZnk",product_id:"VRYThGY8",prices:{type:"recurring",intervals:{monthly:5400,yearly:54e3,quarterly:13500}},currency_code:"USD"}],unitary:!1},{id:"n6wnl4Wt",metadata:{type:"pyro",cpu:8,ram:20480,swap:5120,storage:163840},prices:[{id:"EqumGIFc",product_id:"n6wnl4Wt",prices:{type:"recurring",intervals:{quarterly:15e3,monthly:6e3,yearly:6e4}},currency_code:"USD"}],unitary:!1},{id:"XiBqk5oc",metadata:{type:"pyro",cpu:8,ram:22528,swap:5632,storage:180224},prices:[{id:"LDCzjSg0",product_id:"XiBqk5oc",prices:{type:"recurring",intervals:{monthly:6600,yearly:66e3,quarterly:16500}},currency_code:"USD"}],unitary:!1},{id:"dXXeWbaV",metadata:{type:"pyro",cpu:8,ram:24576,swap:6144,storage:196608},prices:[{id:"g3xnHDeT",product_id:"dXXeWbaV",prices:{type:"recurring",intervals:{monthly:7200,yearly:72e3,quarterly:18e3}},currency_code:"USD"}],unitary:!1},{id:"6kozppoB",metadata:{type:"pyro",cpu:8,ram:49152,swap:12288,storage:393216},prices:[{id:"Dcm1D8x6",product_id:"6kozppoB",prices:{type:"recurring",intervals:{yearly:144e3,quarterly:36300,monthly:14400}},currency_code:"USD"}],unitary:!1},{id:"DMyG4KOM",metadata:{type:"pyro",cpu:8,ram:26624,swap:6656,storage:212992},prices:[{id:"oYixCIAf",product_id:"DMyG4KOM",prices:{type:"recurring",intervals:{quarterly:19800,yearly:78e3,monthly:7800}},currency_code:"USD"}],unitary:!1},{id:"vedGFymT",metadata:{type:"pyro",cpu:8,ram:28672,swap:7168,storage:212992},prices:[{id:"ocTgelAz",product_id:"vedGFymT",prices:{type:"recurring",intervals:{yearly:84e3,quarterly:21300,monthly:8400}},currency_code:"USD"}],unitary:!1},{id:"kfGIcMxs",metadata:{type:"pyro",cpu:8,ram:30720,swap:7680,storage:212992},prices:[{id:"rq8GWv7m",product_id:"kfGIcMxs",prices:{type:"recurring",intervals:{quarterly:22800,yearly:9e4,monthly:9e3}},currency_code:"USD"}],unitary:!1},{id:"aXnIiw9u",metadata:{type:"pyro",cpu:8,ram:32768,swap:8192,storage:212992},prices:[{id:"Oi8nMW04",product_id:"aXnIiw9u",prices:{type:"recurring",intervals:{yearly:96e3,monthly:9600,quarterly:24300}},currency_code:"USD"}],unitary:!1},{id:"mOyFy9df",metadata:{type:"pyro",cpu:8,ram:34816,swap:8704,storage:212992},prices:[{id:"fyhwbqco",product_id:"mOyFy9df",prices:{type:"recurring",intervals:{yearly:102e3,quarterly:25800,monthly:10200}},currency_code:"USD"}],unitary:!1},{id:"ruqm7d8s",metadata:{type:"pyro",cpu:8,ram:36864,swap:9216,storage:212992},prices:[{id:"x0aHfyFZ",product_id:"ruqm7d8s",prices:{type:"recurring",intervals:{monthly:10800,yearly:108e3,quarterly:27300}},currency_code:"USD"}],unitary:!1},{id:"lcRYdlSk",metadata:{type:"pyro",cpu:8,ram:38912,swap:9728,storage:212992},prices:[{id:"DJcTlDtq",product_id:"lcRYdlSk",prices:{type:"recurring",intervals:{yearly:114e3,monthly:11400,quarterly:28800}},currency_code:"USD"}],unitary:!1},{id:"q7pcFdcE",metadata:{type:"pyro",cpu:8,ram:40960,swap:10240,storage:212992},prices:[{id:"az2BWKdN",product_id:"q7pcFdcE",prices:{type:"recurring",intervals:{yearly:12e4,monthly:12e3,quarterly:30300}},currency_code:"USD"}],unitary:!1},{id:"ZM7xjEmb",metadata:{type:"pyro",cpu:8,ram:43008,swap:10752,storage:212992},prices:[{id:"nlFiLahp",product_id:"ZM7xjEmb",prices:{type:"recurring",intervals:{monthly:12600,quarterly:31800,yearly:126e3}},currency_code:"USD"}],unitary:!1},{id:"lGgQjOiW",metadata:{type:"pyro",cpu:8,ram:45056,swap:11264,storage:212992},prices:[{id:"DHOC0vRR",product_id:"lGgQjOiW",prices:{type:"recurring",intervals:{monthly:13200,yearly:132e3,quarterly:33300}},currency_code:"USD"}],unitary:!1},{id:"4g9nojBe",metadata:{type:"pyro",cpu:8,ram:47104,swap:11776,storage:212992},prices:[{id:"3M0XyRUk",product_id:"4g9nojBe",prices:{type:"recurring",intervals:{yearly:138e3,quarterly:34800,monthly:13800}},currency_code:"USD"}],unitary:!1}],x7=[],wo={lastGenerated:p7,apiUrl:f7,categories:h7,loaders:m7,gameVersions:g7,donationPlatforms:y7,reportTypes:v7,homePageProjects:b7,homePageSearch:_7,homePageNotifs:w7,products:k7,errors:x7},C2=()=>Qo("tags",()=>({categories:wo.categories,loaders:wo.loaders,gameVersions:wo.gameVersions,donationPlatforms:wo.donationPlatforms,reportTypes:wo.reportTypes,projectTypes:[{actual:"mod",id:"mod",display:"mod"},{actual:"mod",id:"plugin",display:"plugin"},{actual:"mod",id:"datapack",display:"data pack"},{actual:"shader",id:"shader",display:"shader"},{actual:"resourcepack",id:"resourcepack",display:"resource pack"},{actual:"modpack",id:"modpack",display:"modpack"}],loaderData:{pluginLoaders:["bukkit","spigot","paper","purpur","sponge","folia"],pluginPlatformLoaders:["bungeecord","waterfall","velocity"],allPluginLoaders:["bukkit","spigot","paper","purpur","sponge","bungeecord","waterfall","velocity","folia"],dataPackLoaders:["datapack"],modLoaders:["forge","fabric","quilt","liteloader","modloader","rift","neoforge"],hiddenModLoaders:["liteloader","modloader","rift"]},projectViewModes:["list","grid","gallery"],approvedStatuses:["approved","archived","unlisted","private"],rejectedStatuses:["rejected","withheld"],staffRoles:["moderator","admin"]})),T7=(e,t)=>E2(e,t),E2=(e,t,n)=>{const r=n??C2().value;if(e==="mod"){const o=t.some(i=>r.loaderData.modLoaders.includes(i)),a=t.some(i=>r.loaderData.allPluginLoaders.includes(i));return t.some(i=>r.loaderData.dataPackLoaders.includes(i))?"datapack":a?"plugin":"mod"}else return e},Q0=e=>`/${T7(e.project_type,e.loaders)}/${e.slug?e.slug:e.id}`,sO=(e,t)=>t?Q0(e)+"/version/"+t.id:Q0(e),iO=e=>e&&C7.includes(e.status),lO=e=>e&&E7.includes(e.status),uO=e=>e&&M7.includes(e.status),cO=e=>e&&S7.includes(e.status),dO=e=>e&&A7.includes(e.status),C7=["approved","archived","unlisted","private"],E7=["approved","archived"],M7=["private","rejected","processing"],S7=["rejected","withheld"],A7=["processing"];function pO(){return Se().$theme}function M2(){return Se().$cosmetics}const j7=Ye(e=>{const t=C2();e.provide("formatNumber",I7),e.provide("capitalizeString",L7),e.provide("formatMoney",F7),e.provide("formatVersion",n=>D7(t,n)),e.provide("orElse",(n,r)=>n??r),e.provide("external",()=>M2().value.externalLinksNewTab?"_blank":""),e.provide("computeVersions",(n,r)=>{const o=[],a=[],s={};for(const i of n.sort((l,u)=>e.$dayjs(l.date_published)-e.$dayjs(u.date_published)))o.includes(i.version_number)?(o.push(i.version_number),i.displayUrlEnding=i.id):(o.push(i.version_number),i.displayUrlEnding=i.version_number),i.primaryFile=i.files.find(l=>l.primary)??i.files[0],i.primaryFile||(i.primaryFile={hashes:{sha1:"",sha512:""},url:"#",filename:"unknown",primary:!1,size:0,file_type:null}),i.author=s[i.author_id],i.author||(i.author=r.find(l=>l.user.id===i.author_id),s[i.author_id]=i.author),a.push(i);return a.reverse().map((i,l)=>{const u=a[l+1];return u&&i.changelog&&u.changelog===i.changelog?{duplicate:!0,...i}:{duplicate:!1,...i}}).sort((i,l)=>e.$dayjs(l.date_published)-e.$dayjs(i.date_published))}),e.provide("getProjectTypeForDisplay",(n,r)=>{if(n==="mod"){const o=r.some(i=>t.value.loaderData.allPluginLoaders.includes(i)),a=r.some(i=>t.value.loaderData.modLoaders.includes(i)),s=r.some(i=>t.value.loaderData.dataPackLoaders.includes(i));if(a&&o&&s)return"mod, plugin, and data pack";if(a&&o)return"mod and plugin";if(a&&s)return"mod and data pack";if(o&&s)return"plugin and data pack";if(s)return"data pack";if(o)return"plugin"}return n}),e.provide("getProjectTypeForUrl",(n,r,o)=>E2(n,r,o)),e.provide("cycleValue",R7),e.provide("sortedCategories",()=>t.value.categories.slice().sort((n,r)=>{const o=n.header.localeCompare(r.header);if(o!==0)return o;if(n.header==="resolutions"&&r.header==="resolutions")return n.name.replace(/\D/g,"")-r.name.replace(/\D/g,"");if(n.header==="performance impact"&&r.header==="performance impact"){const a=["potato","low","medium","high","screenshot"];return a.indexOf(n.name)-a.indexOf(r.name)}return 0}))}),I7=(e,t=!0)=>{const n=+e;return n>=1e6&&t?(n/1e6).toFixed(2).toString()+"M":n>=1e4&&t?(n/1e3).toFixed(1).toString()+"k":n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")},F7=(e,t=!1)=>{e=Math.floor(e*100)/100;const n=+e;return n>=1e6&&t?"$"+(n/1e6).toFixed(2).toString()+"M":n>=1e4&&t?"$"+(n/1e3).toFixed(2).toString()+"k":"$"+n.toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")},L7=e=>e&&e.charAt(0).toUpperCase()+e.slice(1),D7=(e,t)=>{const n=e.value.gameVersions.slice().reverse(),r=n.filter(l=>l.version_type==="release"),o=[];let a=0;for(let l=0;ld.version===t[l]),c=r.findIndex(d=>d.version===t[l]);if(l===0)o.push([[t[l],u,c]]);else{const d=o[a];(u-d[d.length-1][1]===1||c-d[d.length-1][2]===1)&&(n[d[0][1]].version_type==="release"||n[u].version_type!=="release")?d[1]=[t[l],u,c]:(a+=1,o[a]=[[t[l],u,c]])}}const s=[];for(let l=0;lu[0][1];d--)if(n[d].version_type==="release"){s.push([u[0],[n[d].version,d,r.findIndex(p=>p.version===n[d].version)]]),c!==null&&c!==d+1?s.push([[n[c].version,c,-1],u[1]]):s.push([u[1]]);break}else c=d}else s.push(u)}const i=[];for(const l of s)l.length===2?i.push(`${l[0][0]}–${l[1][0]}`):i.push(l[0][0]);return(i.length===0?t:i).join(", ")},R7=(e,t)=>{const n=t.indexOf(e)+1;return t[n%t.length]};function P7(){const e=window.matchMedia("(prefers-color-scheme: light)"),t=je(e.matches),n=({matches:r})=>t.value=r;return e.addEventListener("change",n),Bo(()=>e.removeEventListener("change",n)),le(()=>t.value?"light":"dark")}function Z7(){return P7()}const O7=["dark","oled","retro"];function S2(e){return O7.includes(e)}function N7(){const e=M2(),t=le({get(){var r;const n=(r=e.value)==null?void 0:r.preferredDarkTheme;return n==null?(console.warn("[theme] cosmetics.preferredDarkTheme is not defined"),"dark"):S2(n)?n:(console.warn(`[theme] cosmetics.preferredDarkTheme contains invalid value: ${n}`),"dark")},set(n){e.value.preferredDarkTheme=n}});return bt({dark:t,light:"light"})}function B7(e){e??(e=()=>"dark");const t=mi("color-mode",{maxAge:60*60*24*365*10,sameSite:"lax",secure:!0,httpOnly:!1,path:"/"});return(t.value==null||typeof t.value!="object")&&(t.value={preference:"system",value:e()}),bt({preferred:le({get:()=>t.value.preference??"system",set:n=>t.value.preference=n}),active:le({get:()=>t.value.value??e(),set:n=>t.value.value=n})})}const $7=Ye({name:"theme",dependsOn:["cosmetics"],setup(e){const t=Z7(),n=N7();function r(){switch(t.value){case"light":return n.light;case"dark":case"unknown":return n.dark}}const o=B7(()=>r());uh({htmlAttrs:{class:()=>[`${o.active}-mode`]}});function a(){o.active=o.preferred==="system"?r():o.preferred}{const i=je(!1);e.hook("app:suspense:resolve",()=>{i.value=!0}),Gp(()=>i.value&&a())}function s(){const i=S2(o.active)?n.light:n.dark;return o.preferred=i,i}return{provide:{theme:bt({...dp(o),preferences:n,native:t,cycle:s})}}}}),z7=[Sb,jb,f5,m5,g5,y5,b5,N5,B5,$5,t9,n9,c9,d9,c7,d7,j7,$7],H7=Qe({props:{vnode:{type:Object,required:!0},route:{type:Object,required:!0},vnodeRef:Object,renderKey:String,trackRootNodes:Boolean},setup(e){const t=e.renderKey,n=e.route,r={};for(const o in e.route)Object.defineProperty(r,o,{get:()=>t===e.renderKey?e.route[o]:n[o],enumerable:!0});return qn(ya,Qt(r)),()=>ze(e.vnode,{ref:e.vnodeRef})}}),q7=Qe({name:"NuxtPage",inheritAttrs:!1,props:{name:{type:String},transition:{type:[Boolean,Object],default:void 0},keepalive:{type:[Boolean,Object],default:void 0},route:{type:Object},pageKey:{type:[Function,String],default:null}},setup(e,{attrs:t,slots:n,expose:r}){const o=Se(),a=je(),s=We(ya,null);let i;r({pageRef:a});const l=We(qf,null);let u;const c=o.deferHydration();if(o.isHydrating){const d=o.hooks.hookOnce("app:error",c);Je().beforeEach(d)}return e.pageKey&<(()=>e.pageKey,(d,p)=>{d!==p&&o.callHook("page:loading:start")}),()=>ze(Eh,{name:e.name,route:e.route,...t},{default:d=>{const p=V7(s,d.route,d.Component),f=s&&s.matched.length===d.route.matched.length;if(!d.Component){if(u&&!f)return u;c();return}if(u&&l&&!l.isCurrent(d.route))return u;if(p&&s&&(!l||l!=null&&l.isCurrent(s)))return f?u:null;const h=lu(d,e.pageKey);!o.isHydrating&&!W7(s,d.route,d.Component)&&i===h&&o.callHook("page:loading:end"),i=h;const m=!!(e.transition??d.route.meta.pageTransition??Wl),_=m&&U7([e.transition,d.route.meta.pageTransition,Wl,{onAfterLeave:()=>{o.callHook("page:transition:finish",d.Component)}}].filter(Boolean)),k=e.keepalive??d.route.meta.keepalive??O3;return u=Sh(hf,m&&_,Z_(k,ze(Gu,{suspensible:!0,onPending:()=>o.callHook("page:start",d.Component),onResolve:()=>{wn(()=>o.callHook("page:finish",d.Component).then(()=>o.callHook("page:loading:end")).finally(c))}},{default:()=>{const v=ze(H7,{key:h||void 0,vnode:n.default?ze(Oe,void 0,n.default(d)):d.Component,route:d.route,renderKey:h||void 0,trackRootNodes:m,vnodeRef:a});return k&&(v.type.name=d.Component.type.name||d.Component.type.__name||"RouteProvider"),v}}))).default(),u}})}});function U7(e){const t=e.map(n=>({...n,onAfterLeave:n.onAfterLeave?nc(n.onAfterLeave):void 0}));return zf(...t)}function V7(e,t,n){if(!e)return!1;const r=t.matched.findIndex(o=>{var a;return((a=o.components)==null?void 0:a.default)===(n==null?void 0:n.type)});return!r||r===-1?!1:t.matched.slice(0,r).some((o,a)=>{var s,i,l;return((s=o.components)==null?void 0:s.default)!==((l=(i=e.matched[a])==null?void 0:i.components)==null?void 0:l.default)})||n&&lu({route:t,Component:n})!==lu({route:e,Component:n})}function W7(e,t,n){return e?t.matched.findIndex(o=>{var a;return((a=o.components)==null?void 0:a.default)===(n==null?void 0:n.type)})ze(Nn[e.name],e.layoutProps,t.slots)}}),A2=Qe({name:"NuxtLayout",inheritAttrs:!1,props:{name:{type:[String,Boolean,Object],default:null},fallback:{type:[String,Object],default:null}},setup(e,t){const n=Se(),r=We(ya),o=r===ho()?Mh():r,a=le(()=>{let l=de(e.name)??o.meta.layout??"default";return l&&!(l in Nn)&&e.fallback&&(l=de(e.fallback)),l}),s=je();t.expose({layoutRef:s});const i=n.deferHydration();if(n.isHydrating){const l=n.hooks.hookOnce("app:error",i);Je().beforeEach(l)}return()=>{const l=a.value&&a.value in Nn,u=o.meta.layoutTransition??Z3;return Sh(hf,l&&u,{default:()=>ze(Gu,{suspensible:!0,onResolve:()=>{wn(i)}},{default:()=>ze(K7,{layoutProps:ii(t.attrs,{ref:s}),key:a.value||void 0,name:a.value,shouldProvide:!e.name,hasTransition:!!u},t.slots)})}).default()}}}),K7=Qe({name:"NuxtLayoutProvider",inheritAttrs:!1,props:{name:{type:[String,Boolean]},layoutProps:{type:Object},hasTransition:{type:Boolean},shouldProvide:{type:Boolean}},setup(e,t){const n=e.name;return e.shouldProvide&&qn(qf,{isCurrent:r=>n===(r.meta.layout??"default")}),()=>{var r,o;return!n||typeof n=="string"&&!(n in Nn)?(o=(r=t.slots).default)==null?void 0:o.call(r):ze(G7,{key:n,layoutProps:e.layoutProps,name:n},t.slots)}}}),Y7={xmlns:"http://www.w3.org/2000/svg",width:"512",height:"514",viewBox:"0 0 512 514"};function J7(e,t){return C(),S("svg",Y7,t[0]||(t[0]=[b("path",{fill:"currentColor","fill-rule":"evenodd",d:"M503.16 323.56c11.39-42.09 12.16-87.65.04-132.8C466.57 54.23 326.04-26.8 189.33 9.78 83.81 38.02 11.39 128.07.69 230.47h43.3c10.3-83.14 69.75-155.74 155.76-178.76 106.3-28.45 215.38 28.96 253.42 129.67l-42.14 11.27c-19.39-46.85-58.46-81.2-104.73-95.83l-7.74 43.84c36.53 13.47 66.16 43.84 77 84.25 15.8 58.89-13.62 119.23-67 144.26l11.53 42.99c70.16-28.95 112.31-101.86 102.34-177.02l41.98-11.23a210.2 210.2 0 0 1-3.86 84.16z","clip-rule":"evenodd"},null,-1),b("path",{fill:"currentColor",d:"M321.99 504.22C185.27 540.8 44.75 459.77 8.11 323.24A257.6 257.6 0 0 1 0 275.46h43.27c1.09 11.91 3.2 23.89 6.41 35.83 3.36 12.51 7.77 24.46 13.11 35.78l38.59-23.15c-3.25-7.5-5.99-15.32-8.17-23.45-24.04-89.6 29.2-181.7 118.92-205.71 17-4.55 34.1-6.32 50.8-5.61L255.19 133c-10.46.05-21.08 1.42-31.66 4.25-66.22 17.73-105.52 85.7-87.78 151.84 1.1 4.07 2.38 8.04 3.84 11.9l49.35-29.61-14.87-39.43 46.6-47.87 58.9-12.69 17.05 20.99-27.15 27.5-23.68 7.45-16.92 17.39 8.29 23.07s16.79 17.84 16.82 17.85l23.72-6.31 16.88-18.54 36.86-11.67 10.98 24.7-38.03 46.63-63.73 20.18-28.58-31.82-49.82 29.89c25.54 29.08 63.94 45.23 103.75 41.86l11.53 42.99c-59.41 7.86-117.44-16.73-153.49-61.91l-38.41 23.04c50.61 66.49 138.2 99.43 223.97 76.48 61.74-16.52 109.79-58.6 135.81-111.78l42.64 15.5c-30.89 66.28-89.84 118.94-166.07 139.34"},null,-1)]))}const Q7={render:J7},X7={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1187.17 207.25"};function ek(e,t){return C(),S("svg",X7,t[0]||(t[0]=[ha('',5)]))}const tk={render:ek},nk=""+new URL("sad.BGjbvhhA.webp",import.meta.url).href,rk=""+new URL("waving.CKHTpVuI.webp",import.meta.url).href,ok={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function ak(e,t){return C(),S("svg",ok,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M12 10.8c-1.087-2.114-4.046-6.053-6.798-7.995C2.566.944 1.561 1.266.902 1.565.139 1.908 0 3.08 0 3.768c0 .69.378 5.65.624 6.479.815 2.736 3.713 3.66 6.383 3.364q.204-.03.415-.056-.207.033-.415.056c-3.912.58-7.387 2.005-2.83 7.078 5.013 5.19 6.87-1.113 7.823-4.308.953 3.195 2.05 9.271 7.733 4.308 4.267-4.308 1.172-6.498-2.74-7.078a9 9 0 0 1-.415-.056q.21.026.415.056c2.67.297 5.568-.628 6.383-3.364.246-.828.624-5.79.624-6.478 0-.69-.139-1.861-.902-2.206-.659-.298-1.664-.62-4.3 1.24C16.046 4.748 13.087 8.687 12 10.8"},null,-1)]))}const sk={render:ak},ik={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function lk(e,t){return C(),S("svg",ik,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"m20.216 6.415-.132-.666c-.119-.598-.388-1.163-1.001-1.379-.197-.069-.42-.098-.57-.241-.152-.143-.196-.366-.231-.572-.065-.378-.125-.756-.192-1.133-.057-.325-.102-.69-.25-.987-.195-.4-.597-.634-.996-.788a6 6 0 0 0-.626-.194c-1-.263-2.05-.36-3.077-.416a26 26 0 0 0-3.7.062c-.915.083-1.88.184-2.75.5-.318.116-.646.256-.888.501-.297.302-.393.77-.177 1.146.154.267.415.456.692.58.36.162.737.284 1.123.366 1.075.238 2.189.331 3.287.37q1.829.074 3.65-.118.449-.05.896-.119c.352-.054.578-.513.474-.834-.124-.383-.457-.531-.834-.473-.466.074-.96.108-1.382.146q-1.767.12-3.536.006a22 22 0 0 1-1.157-.107c-.086-.01-.18-.025-.258-.036q-.364-.055-.724-.13c-.111-.027-.111-.185 0-.212h.005q.416-.09.838-.147h.002c.131-.009.263-.032.394-.048a25 25 0 0 1 3.426-.12q1.011.029 2.017.144l.228.031q.4.06.798.145c.392.085.895.113 1.07.542.055.137.08.288.111.431l.319 1.484a.237.237 0 0 1-.199.284h-.003q-.056.008-.112.015a37 37 0 0 1-4.743.295 37 37 0 0 1-4.699-.304c-.14-.017-.293-.042-.417-.06-.326-.048-.649-.108-.973-.161-.393-.065-.768-.032-1.123.161-.29.16-.527.404-.675.701-.154.316-.199.66-.267 1-.069.34-.176.707-.135 1.056.087.753.613 1.365 1.37 1.502a39.7 39.7 0 0 0 11.343.376.483.483 0 0 1 .535.53l-.071.697-1.018 9.907c-.041.41-.047.832-.125 1.237-.122.637-.553 1.028-1.182 1.171q-.868.197-1.756.205c-.656.004-1.31-.025-1.966-.022-.699.004-1.556-.06-2.095-.58-.475-.458-.54-1.174-.605-1.793l-.731-7.013-.322-3.094c-.037-.351-.286-.695-.678-.678-.336.015-.718.3-.678.679l.228 2.185.949 9.112c.147 1.344 1.174 2.068 2.446 2.272.742.12 1.503.144 2.257.156.966.016 1.942.053 2.892-.122 1.408-.258 2.465-1.198 2.616-2.657q.511-4.997 1.024-9.995l.215-2.087a.48.48 0 0 1 .39-.426c.402-.078.787-.212 1.074-.518.455-.488.546-1.124.385-1.766zm-1.478.772c-.145.137-.363.201-.578.233-2.416.359-4.866.54-7.308.46-1.748-.06-3.477-.254-5.207-.498-.17-.024-.353-.055-.47-.18-.22-.236-.111-.71-.054-.995.052-.26.152-.609.463-.646.484-.057 1.046.148 1.526.22q.865.132 1.737.212c2.48.226 5.002.19 7.472-.14q.675-.09 1.345-.21c.399-.072.84-.206 1.08.206.166.281.188.657.162.974a.54.54 0 0 1-.169.364zm-6.159 3.9c-.862.37-1.84.788-3.109.788a5.9 5.9 0 0 1-1.569-.217l.877 9.004c.065.78.717 1.38 1.5 1.38 0 0 1.243.065 1.658.065.447 0 1.786-.065 1.786-.065.783 0 1.434-.6 1.499-1.38l.94-9.95a4 4 0 0 0-1.322-.238c-.826 0-1.491.284-2.26.613"},null,-1)]))}const uk={render:lk},ck={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function dk(e,t){return C(),S("svg",ck,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M18.326 9.215s4.9-.773 5.674-3.027h-7.507V4.4H0l2.032 2.358v2.415s5.127-.266 7.11 1.237c2.714 2.516-3.053 5.917-3.053 5.917l-.99 3.273c1.547-1.473 4.494-3.377 9.899-3.286-2.057.65-4.125 1.665-5.735 3.286h10.925l-1.029-3.273s-7.918-4.668-.833-7.112z"},null,-1)]))}const pk={render:dk},fk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function hk(e,t){return C(),S("svg",fk,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M20.317 4.37a19.8 19.8 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.3 18.3 0 0 0-5.487 0 13 13 0 0 0-.617-1.25.08.08 0 0 0-.079-.037A19.7 19.7 0 0 0 3.677 4.37a.1.1 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.08.08 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.08.08 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13 13 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10 10 0 0 0 .372-.292.07.07 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.07.07 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.3 12.3 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.08.08 0 0 0 .084.028 19.8 19.8 0 0 0 6.002-3.03.08.08 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.06.06 0 0 0-.031-.03M8.02 15.33c-1.182 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418m7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418"},null,-1)]))}const mk={render:hk},gk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function yk(e,t){return C(),S("svg",gk,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"},null,-1)]))}const vk={render:yk},bk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function _k(e,t){return C(),S("svg",bk,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M11.351 2.715c-2.7 0-4.986.025-6.83.26C2.078 3.285 0 5.154 0 8.61c0 3.506.182 6.13 1.585 8.493 1.584 2.701 4.233 4.182 7.662 4.182h.83c4.209 0 6.494-2.234 7.637-4a9.5 9.5 0 0 0 1.091-2.338C21.792 14.688 24 12.22 24 9.208v-.415c0-3.247-2.13-5.507-5.792-5.87-1.558-.156-2.65-.208-6.857-.208m0 1.947c4.208 0 5.09.052 6.571.182 2.624.311 4.13 1.584 4.13 4v.39c0 2.156-1.792 3.844-3.87 3.844h-.935l-.156.649c-.208 1.013-.597 1.818-1.039 2.546-.909 1.428-2.545 3.064-5.922 3.064h-.805c-2.571 0-4.831-.883-6.078-3.195-1.09-2-1.298-4.155-1.298-7.506 0-2.181.857-3.402 3.012-3.714 1.533-.233 3.559-.26 6.39-.26m6.547 2.287c-.416 0-.65.234-.65.546v2.935c0 .311.234.545.65.545 1.324 0 2.051-.754 2.051-2s-.727-2.026-2.052-2.026m-10.39.182c-1.818 0-3.013 1.48-3.013 3.142 0 1.533.858 2.857 1.949 3.897.727.701 1.87 1.429 2.649 1.896a1.47 1.47 0 0 0 1.507 0c.78-.467 1.922-1.195 2.623-1.896 1.117-1.039 1.974-2.364 1.974-3.897 0-1.662-1.247-3.142-3.039-3.142-1.065 0-1.792.545-2.338 1.298-.493-.753-1.246-1.298-2.312-1.298"},null,-1)]))}const wk={render:_k},kk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function xk(e,t){return C(),S("svg",kk,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38q.398-.092.786-.213c.585-.184 1.27-.39 1.774-.753a.06.06 0 0 0 .023-.043v-1.809a.05.05 0 0 0-.02-.041.05.05 0 0 0-.046-.01 20.3 20.3 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.6 5.6 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422q.059-.011.11-.024c2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545m-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102q0-1.965 1.011-3.12c.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164q1.012 1.155 1.012 3.12z"},null,-1)]))}const Tk={render:xk},Ck={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function Ek(e,t){return C(),S("svg",Ck,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M12 0C5.373 0 0 5.373 0 12s5.373 12 12 12c2.54 0 4.894-.79 6.834-2.135l-3.107-3.109a7.715 7.715 0 1 1 0-13.512l3.107-3.109A11.94 11.94 0 0 0 12 0m9.865 5.166-3.109 3.107A7.7 7.7 0 0 1 19.715 12a7.7 7.7 0 0 1-.959 3.727l3.109 3.107A11.94 11.94 0 0 0 24 12c0-2.54-.79-4.894-2.135-6.834"},null,-1)]))}const Mk={render:Ek},Sk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function Ak(e,t){return C(),S("svg",Sk,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M22.957 7.21c-.004-3.064-2.391-5.576-5.191-6.482-3.478-1.125-8.064-.962-11.384.604C2.357 3.231 1.093 7.391 1.046 11.54c-.039 3.411.302 12.396 5.369 12.46 3.765.047 4.326-4.804 6.068-7.141 1.24-1.662 2.836-2.132 4.801-2.618 3.376-.836 5.678-3.501 5.673-7.031"},null,-1)]))}const jk={render:Ak},Ik={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function Fk(e,t){return C(),S("svg",Ik,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M7.016 19.198h-4.2a.562.562 0 0 1-.555-.65L5.093.584A.69.69 0 0 1 5.776 0h7.222c3.417 0 5.904 2.488 5.846 5.5q-.008.376-.066.747A6.794 6.794 0 0 1 12.071 12H8.743a.69.69 0 0 0-.682.583l-.325 2.056-.013.083-.692 4.39zM19.79 6.142c-.01.087-.01.175-.023.261a7.76 7.76 0 0 1-7.695 6.598H9.007l-.283 1.795-.013.083-.692 4.39-.134.843-.014.088H6.86l-.497 3.15a.562.562 0 0 0 .555.65h3.612c.34 0 .63-.249.683-.585l.952-6.031a.69.69 0 0 1 .683-.584h2.126a6.79 6.79 0 0 0 6.707-5.752c.306-1.95-.466-3.744-1.89-4.906z"},null,-1)]))}const Lk={render:Fk},Dk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 127.14 96.36"};function Rk(e,t){return C(),S("svg",Dk,t[0]||(t[0]=[b("g",{"data-name":"图层 2"},[b("g",{"data-name":"Discord Logos"},[b("path",{d:"M107.7 8.07A105.2 105.2 0 0 0 81.47 0a72 72 0 0 0-3.36 6.83 97.7 97.7 0 0 0-29.11 0A72 72 0 0 0 45.64 0a106 106 0 0 0-26.25 8.09C2.79 32.65-1.71 56.6.54 80.21a105.7 105.7 0 0 0 32.17 16.15 77.7 77.7 0 0 0 6.89-11.11 68.4 68.4 0 0 1-10.85-5.18c.91-.66 1.8-1.34 2.66-2a75.57 75.57 0 0 0 64.32 0c.87.71 1.76 1.39 2.66 2a68.7 68.7 0 0 1-10.87 5.19 77 77 0 0 0 6.89 11.1 105.3 105.3 0 0 0 32.19-16.14c2.64-27.38-4.51-51.11-18.9-72.15M42.45 65.69C36.18 65.69 31 60 31 53s5-12.74 11.43-12.74S54 46 53.89 53s-5.05 12.69-11.44 12.69m42.24 0C78.41 65.69 73.25 60 73.25 53s5-12.74 11.44-12.74S96.23 46 96.12 53s-5.04 12.69-11.43 12.69","data-name":"Discord Logo - Large - White",style:{fill:"#5865f2"}})])],-1)]))}const Pk={render:Rk},Zk={xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 97.63 96.03"};function Ok(e,t){return C(),S("svg",Zk,t[0]||(t[0]=[b("path",{"fill-rule":"evenodd",d:"M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a47 47 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0","clip-rule":"evenodd"},null,-1)]))}const Nk={render:Ok},Bk={xmlns:"http://www.w3.org/2000/svg",viewBox:"93.97 97.52 192.07 185"};function $k(e,t){return C(),S("svg",Bk,t[0]||(t[0]=[b("path",{fill:"#e24329",d:"m282.83 170.73-.27-.69-26.14-68.22a6.8 6.8 0 0 0-2.69-3.24 7 7 0 0 0-8 .43 7 7 0 0 0-2.32 3.52l-17.65 54h-71.47l-17.65-54a6.86 6.86 0 0 0-2.32-3.53 7 7 0 0 0-8-.43 6.87 6.87 0 0 0-2.69 3.24L97.44 170l-.26.69a48.54 48.54 0 0 0 16.1 56.1l.09.07.24.17 39.82 29.82 19.7 14.91 12 9.06a8.07 8.07 0 0 0 9.76 0l12-9.06 19.7-14.91 40.06-30 .1-.08a48.56 48.56 0 0 0 16.08-56.04"},null,-1),b("path",{fill:"#fc6d26",d:"m282.83 170.73-.27-.69a88.3 88.3 0 0 0-35.15 15.8L190 229.25c19.55 14.79 36.57 27.64 36.57 27.64l40.06-30 .1-.08a48.56 48.56 0 0 0 16.1-56.08"},null,-1),b("path",{fill:"#fca326",d:"m153.43 256.89 19.7 14.91 12 9.06a8.07 8.07 0 0 0 9.76 0l12-9.06 19.7-14.91S209.55 244 190 229.25c-19.55 14.75-36.57 27.64-36.57 27.64"},null,-1),b("path",{fill:"#fc6d26",d:"M132.58 185.84A88.2 88.2 0 0 0 97.44 170l-.26.69a48.54 48.54 0 0 0 16.1 56.1l.09.07.24.17 39.82 29.82L190 229.21Z"},null,-1)]))}const zk={render:$k},Hk={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",style:{"fill-rule":"evenodd","clip-rule":"evenodd","stroke-linejoin":"round","stroke-miterlimit":"2"},viewBox:"0 0 100 100"};function qk(e,t){return C(),S("svg",Hk,t[0]||(t[0]=[ha('',2)]))}const Uk={render:qk},Vk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 21 21"};function Wk(e,t){return C(),S("svg",Vk,t[0]||(t[0]=[b("path",{fill:"#f25022",d:"M1 1h9v9H1z"},null,-1),b("path",{fill:"#00a4ef",d:"M1 11h9v9H1z"},null,-1),b("path",{fill:"#7fba00",d:"M11 1h9v9h-9z"},null,-1),b("path",{fill:"#ffb900",d:"M11 11h9v9h-9z"},null,-1)]))}const Gk={render:Wk},Kk={xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",fill:"currentColor",class:"bi bi-steam",viewBox:"0 0 16 16"};function Yk(e,t){return C(),S("svg",Kk,t[0]||(t[0]=[b("path",{d:"M.329 10.333A8.01 8.01 0 0 0 7.99 16C12.414 16 16 12.418 16 8s-3.586-8-8.009-8A8.006 8.006 0 0 0 0 7.468l.003.006 4.304 1.769A2.2 2.2 0 0 1 5.62 8.88l1.96-2.844-.001-.04a3.046 3.046 0 0 1 3.042-3.043 3.046 3.046 0 0 1 3.042 3.043 3.047 3.047 0 0 1-3.111 3.044l-2.804 2a2.223 2.223 0 0 1-3.075 2.11 2.22 2.22 0 0 1-1.312-1.568L.33 10.333Z"},null,-1),b("path",{d:"M4.868 12.683a1.715 1.715 0 0 0 1.318-3.165 1.7 1.7 0 0 0-1.263-.02l1.023.424a1.261 1.261 0 1 1-.97 2.33l-.99-.41a1.7 1.7 0 0 0 .882.84Zm3.726-6.687a2.03 2.03 0 0 0 2.027 2.029 2.03 2.03 0 0 0 2.027-2.029 2.03 2.03 0 0 0-2.027-2.027 2.03 2.03 0 0 0-2.027 2.027m2.03-1.527a1.524 1.524 0 1 1-.002 3.048 1.524 1.524 0 0 1 .002-3.048"},null,-1)]))}const Jk={render:Yk},Qk={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function Xk(e,t){return C(),S("svg",Qk,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z"},null,-1)]))}const ex={render:Xk},tx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function nx(e,t){return C(),S("svg",tx,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M23.498 6.186a3.02 3.02 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.02 3.02 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.02 3.02 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.02 3.02 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814M9.545 15.568V8.432L15.818 12z"},null,-1)]))}const rx={render:nx},ox={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function ax(e,t){return C(),S("svg",ox,t[0]||(t[0]=[b("path",{d:"M21 6H3M15 12H3M17 18H3"},null,-1)]))}const sx={render:ax},ix={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function lx(e,t){return C(),S("svg",ix,t[0]||(t[0]=[b("rect",{width:"20",height:"5",x:"2",y:"4",rx:"2"},null,-1),b("path",{d:"M4 9v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9M10 13h4"},null,-1)]))}const ux={render:lx},cx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-arrow-big-right-dash-icon lucide-arrow-big-right-dash",viewBox:"0 0 24 24"};function dx(e,t){return C(),S("svg",cx,t[0]||(t[0]=[b("path",{d:"M5 9v6M9 9h3V5l7 7-7 7v-4H9z"},null,-1)]))}const px={render:dx},fx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-arrow-big-up-dash",viewBox:"0 0 24 24"};function hx(e,t){return C(),S("svg",fx,t[0]||(t[0]=[b("path",{d:"M9 19h6M9 15v-3H5l7-7 7 7h-4v3z"},null,-1)]))}const mx={render:hx},gx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function yx(e,t){return C(),S("svg",gx,t[0]||(t[0]=[b("path",{d:"M12 6v12M17.196 9 6.804 15M6.804 9l10.392 6"},null,-1)]))}const vx={render:yx},bx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-ban",viewBox:"0 0 24 24"};function _x(e,t){return C(),S("svg",bx,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10"},null,-1),b("path",{d:"m4.9 4.9 14.2 14.2"},null,-1)]))}const wx={render:_x},kx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function xx(e,t){return C(),S("svg",kx,t[0]||(t[0]=[b("path",{d:"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9M13.73 21a2 2 0 0 1-3.46 0"},null,-1)]))}const Tx={render:xx},Cx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-bold",viewBox:"0 0 24 24"};function Ex(e,t){return C(),S("svg",Cx,t[0]||(t[0]=[b("path",{d:"M14 12a4 4 0 0 0 0-8H6v8M15 20a4 4 0 0 0 0-8H6v8Z"},null,-1)]))}const Mx={render:Ex},Sx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-book-open-icon lucide-book-open",viewBox:"0 0 24 24"};function Ax(e,t){return C(),S("svg",Sx,t[0]||(t[0]=[b("path",{d:"M12 7v14M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"},null,-1)]))}const jx={render:Ax},Ix={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-book-text",viewBox:"0 0 24 24"};function Fx(e,t){return C(),S("svg",Ix,t[0]||(t[0]=[b("path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1 0-5H20M8 7h6M8 11h8"},null,-1)]))}const Lx={render:Fx},Dx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-bookmark",viewBox:"0 0 24 24"};function Rx(e,t){return C(),S("svg",Dx,t[0]||(t[0]=[b("path",{d:"m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"},null,-1)]))}const Px={render:Rx},Zx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-bot-icon lucide-bot",viewBox:"0 0 24 24"};function Ox(e,t){return C(),S("svg",Zx,t[0]||(t[0]=[b("path",{d:"M12 8V4H8"},null,-1),b("rect",{width:"16",height:"12",x:"4",y:"8",rx:"2"},null,-1),b("path",{d:"M2 14h2M20 14h2M15 13v2M9 13v2"},null,-1)]))}const Nx={render:Ox},Bx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function $x(e,t){return C(),S("svg",Bx,t[0]||(t[0]=[b("path",{d:"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16"},null,-1),b("path",{d:"M3.29 7 12 12l8.71-5M12 22V12"},null,-1)]))}const zx={render:$x},Hx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-braces",viewBox:"0 0 24 24"};function qx(e,t){return C(),S("svg",Hx,t[0]||(t[0]=[b("path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1"},null,-1)]))}const Ux={render:qx},Vx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-brush-cleaning-icon lucide-brush-cleaning",viewBox:"0 0 24 24"};function Wx(e,t){return C(),S("svg",Vx,t[0]||(t[0]=[b("path",{d:"m16 22-1-4M19 13.99a1 1 0 0 0 1-1V12a2 2 0 0 0-2-2h-3a1 1 0 0 1-1-1V4a2 2 0 0 0-4 0v5a1 1 0 0 1-1 1H6a2 2 0 0 0-2 2v.99a1 1 0 0 0 1 1M5 14h14l1.973 6.767A1 1 0 0 1 20 22H4a1 1 0 0 1-.973-1.233zM8 22l1-4"},null,-1)]))}const Gx={render:Wx},Kx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",viewBox:"0 0 24 24"};function Yx(e,t){return C(),S("svg",Kx,t[0]||(t[0]=[b("path",{stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2"},null,-1)]))}const Jx={render:Yx},Qx={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function Xx(e,t){return C(),S("svg",Qx,t[0]||(t[0]=[b("rect",{width:"20",height:"14",x:"2",y:"5",rx:"2"},null,-1),b("path",{d:"M2 10h20"},null,-1)]))}const eT={render:Xx},tT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function nT(e,t){return C(),S("svg",tT,t[0]||(t[0]=[b("path",{d:"M3 3v18h18M18 17V9M13 17V5M8 17v-3"},null,-1)]))}const rT={render:nT},oT={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function aT(e,t){return C(),S("svg",oT,t[0]||(t[0]=[b("path",{d:"M20 6 9 17l-5-5"},null,-1)]))}const sT={render:aT},iT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-check-check",viewBox:"0 0 24 24"};function lT(e,t){return C(),S("svg",iT,t[0]||(t[0]=[b("path",{d:"M18 6 7 17l-5-5M22 10l-7.5 7.5L13 16"},null,-1)]))}const uT={render:lT},cT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function dT(e,t){return C(),S("svg",cT,t[0]||(t[0]=[b("path",{d:"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10"},null,-1),b("path",{d:"m9 12 2 2 4-4"},null,-1)]))}const pT={render:dT},fT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function hT(e,t){return C(),S("svg",fT,t[0]||(t[0]=[b("path",{d:"m15 18-6-6 6-6"},null,-1)]))}const mT={render:hT},gT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function yT(e,t){return C(),S("svg",gT,t[0]||(t[0]=[b("path",{d:"m9 18 6-6-6-6"},null,-1)]))}const vT={render:yT},bT={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"};function _T(e,t){return C(),S("svg",bT,t[0]||(t[0]=[b("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9.75 17 9 20l-1 1h8l-1-1-.75-3M3 13h18M5 17h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2"},null,-1)]))}const wT={render:_T},kT={fill:"none",stroke:"currentColor","stroke-width":"2",viewBox:"0 0 24 24"};function xT(e,t){return C(),S("svg",kT,t[0]||(t[0]=[b("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M8 5H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-1M8 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M8 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m0 0h2a2 2 0 0 1 2 2v3m2 4H10m0 0 3-3m-3 3 3 3"},null,-1)]))}const TT={render:xT},CT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-clock-icon lucide-clock",viewBox:"0 0 24 24"};function ET(e,t){return C(),S("svg",CT,t[0]||(t[0]=[b("path",{d:"M12 6v6l4 2"},null,-1),b("circle",{cx:"12",cy:"12",r:"10"},null,-1)]))}const MT={render:ET},ST={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function AT(e,t){return C(),S("svg",ST,t[0]||(t[0]=[b("path",{d:"m16 18 6-6-6-6M8 6l-6 6 6 6"},null,-1)]))}const jT={render:AT},IT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-minimize-icon lucide-minimize",viewBox:"0 0 24 24"};function FT(e,t){return C(),S("svg",IT,t[0]||(t[0]=[b("path",{d:"M8 3v3a2 2 0 0 1-2 2H3M21 8h-3a2 2 0 0 1-2-2V3M3 16h3a2 2 0 0 1 2 2v3M16 21v-3a2 2 0 0 1 2-2h3"},null,-1)]))}const LT={render:FT},DT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-square-library",viewBox:"0 0 24 24"};function RT(e,t){return C(),S("svg",DT,t[0]||(t[0]=[b("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"},null,-1),b("path",{d:"M7 7v10M11 7v10M15 7l2 10"},null,-1)]))}const PT={render:RT},ZT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-compass",viewBox:"0 0 24 24"};function OT(e,t){return C(),S("svg",ZT,t[0]||(t[0]=[b("path",{d:"m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z"},null,-1),b("circle",{cx:"12",cy:"12",r:"10"},null,-1)]))}const NT={render:OT},BT={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve",viewBox:"0 0 24 24"};function $T(e,t){return C(),S("svg",BT,t[0]||(t[0]=[b("path",{d:"M9 5v4m0 0H5m4 0L4 4m11 1v4m0 0h4m-4 0 5-5M9 19v-4m0 0H5m4 0-5 5m11-5 5 5m-5-5v4m0-4h4",style:{fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}},null,-1)]))}const zT={render:$T},HT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-copy",viewBox:"0 0 24 24"};function qT(e,t){return C(),S("svg",HT,t[0]||(t[0]=[b("rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"},null,-1),b("path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"},null,-1)]))}const UT={render:qT},VT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function WT(e,t){return C(),S("svg",VT,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10"},null,-1),b("path",{d:"M15 9.354a4 4 0 1 0 0 5.292"},null,-1)]))}const GT={render:WT},KT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-cpu-icon lucide-cpu",viewBox:"0 0 24 24"};function YT(e,t){return C(),S("svg",KT,t[0]||(t[0]=[b("path",{d:"M12 20v2M12 2v2M17 20v2M17 2v2M2 12h2M2 17h2M2 7h2M20 12h2M20 17h2M20 7h2M7 20v2M7 2v2"},null,-1),b("rect",{width:"16",height:"16",x:"4",y:"4",rx:"2"},null,-1),b("rect",{width:"8",height:"8",x:"8",y:"8",rx:"1"},null,-1)]))}const JT={render:YT},QT={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-crown",viewBox:"0 0 24 24"};function XT(e,t){return C(),S("svg",QT,t[0]||(t[0]=[b("path",{d:"m2 4 3 12h14l3-12-6 7-4-7-4 7zm3 16h14"},null,-1)]))}const eC={render:XT},tC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function nC(e,t){return C(),S("svg",tC,t[0]||(t[0]=[b("path",{d:"M12 2v20M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"},null,-1)]))}const rC={render:nC},oC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function aC(e,t){return C(),S("svg",oC,t[0]||(t[0]=[b("path",{d:"M3 3h7v9H3zM14 3h7v5h-7zM14 12h7v9h-7zM3 16h7v5H3z"},null,-1)]))}const sC={render:aC},iC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-database-icon lucide-database",viewBox:"0 0 24 24"};function lC(e,t){return C(),S("svg",iC,t[0]||(t[0]=[b("ellipse",{cx:"12",cy:"5",rx:"9",ry:"3"},null,-1),b("path",{d:"M3 5v14a9 3 0 0 0 18 0V5"},null,-1),b("path",{d:"M3 12a9 3 0 0 0 18 0"},null,-1)]))}const uC={render:lC},cC={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-width":"2",viewBox:"0 0 24 24"};function dC(e,t){return C(),S("svg",cC,t[0]||(t[0]=[b("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4 16v1a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-1m-4-4-4 4m0 0-4-4m4 4V4"},null,-1)]))}const pC={render:dC},fC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",viewBox:"0 0 24 24"};function hC(e,t){return C(),S("svg",fC,t[0]||(t[0]=[b("path",{stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"m19 9-7 7-7-7"},null,-1)]))}const mC={render:hC},gC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",viewBox:"0 0 24 24"};function yC(e,t){return C(),S("svg",gC,t[0]||(t[0]=[b("path",{stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M11 5H6a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2v-5m-1.414-9.414a2 2 0 1 1 2.828 2.828L11.828 15H9v-2.828z"},null,-1)]))}const vC={render:yC},bC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-ellipsis-vertical-icon lucide-ellipsis-vertical",viewBox:"0 0 24 24"};function _C(e,t){return C(),S("svg",bC,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"1"},null,-1),b("circle",{cx:"12",cy:"5",r:"1"},null,-1),b("circle",{cx:"12",cy:"19",r:"1"},null,-1)]))}const wC={render:_C},kC={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-width":"2",viewBox:"0 0 24 24"};function xC(e,t){return C(),S("svg",kC,t[0]||(t[0]=[b("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0-5 5M4 16v4m0 0h4m-4 0 5-5m11 5-5-5m5 5v-4m0 4h-4"},null,-1)]))}const TC={render:xC},CC={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function EC(e,t){return C(),S("svg",CC,t[0]||(t[0]=[b("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6M15 3h6v6M10 14 21 3"},null,-1)]))}const MC={render:EC},SC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function AC(e,t){return C(),S("svg",SC,t[0]||(t[0]=[b("path",{d:"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8"},null,-1),b("circle",{cx:"12",cy:"12",r:"3"},null,-1)]))}const jC={render:AC},IC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function FC(e,t){return C(),S("svg",IC,t[0]||(t[0]=[b("path",{d:"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9 9 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24M1 1l22 22"},null,-1)]))}const LC={render:FC},DC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function RC(e,t){return C(),S("svg",DC,t[0]||(t[0]=[b("path",{d:"M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5z"},null,-1),b("path",{d:"M14 2v6h6"},null,-1)]))}const PC={render:RC},ZC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-file-archive-icon lucide-file-archive",viewBox:"0 0 24 24"};function OC(e,t){return C(),S("svg",ZC,t[0]||(t[0]=[b("path",{d:"M10 12v-1M10 18v-2M10 7V6M14 2v4a2 2 0 0 0 2 2h4"},null,-1),b("path",{d:"M15.5 22H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v16a2 2 0 0 0 .274 1.01"},null,-1),b("circle",{cx:"10",cy:"20",r:"2"},null,-1)]))}const NC={render:OC},BC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"feather feather-file-text",viewBox:"0 0 24 24"};function $C(e,t){return C(),S("svg",BC,t[0]||(t[0]=[b("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"},null,-1),b("path",{d:"M14 2v6h6M16 13H8M16 17H8M10 9H8"},null,-1)]))}const zC={render:$C},HC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"feather feather-filter",viewBox:"0 0 24 24"};function qC(e,t){return C(),S("svg",HC,t[0]||(t[0]=[b("path",{d:"M22 3H2l8 9.46V19l4 2v-8.54z"},null,-1)]))}const UC={render:qC},VC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-folder-archive-icon lucide-folder-archive",viewBox:"0 0 24 24"};function WC(e,t){return C(),S("svg",VC,t[0]||(t[0]=[b("circle",{cx:"15",cy:"19",r:"2"},null,-1),b("path",{d:"M20.9 19.8A2 2 0 0 0 22 18V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2h5.1M15 11v-1M15 17v-2"},null,-1)]))}const GC={render:WC},KC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function YC(e,t){return C(),S("svg",KC,t[0]||(t[0]=[b("path",{d:"m6 14 1.45-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.55 6a2 2 0 0 1-1.94 1.5H4a2 2 0 0 1-2-2V5c0-1.1.9-2 2-2h3.93a2 2 0 0 1 1.66.9l.82 1.2a2 2 0 0 0 1.66.9H18a2 2 0 0 1 2 2v2"},null,-1)]))}const JC={render:YC},QC={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-gamepad-2",viewBox:"0 0 24 24"};function XC(e,t){return C(),S("svg",QC,t[0]||(t[0]=[b("path",{d:"M6 11h4M8 9v4M15 12h.01M18 10h.01M17.32 5H6.68a4 4 0 0 0-3.978 3.59q-.008.077-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258q-.01-.075-.017-.151A4 4 0 0 0 17.32 5"},null,-1)]))}const eE={render:XC},tE={xmlns:"http://www.w3.org/2000/svg",width:"14",height:"2",viewBox:"0 0 14 2"};function nE(e,t){return C(),S("svg",tE,t[0]||(t[0]=[b("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 1H1"},null,-1)]))}const rE={render:nE},oE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-git-graph-icon lucide-git-graph",viewBox:"0 0 24 24"};function aE(e,t){return C(),S("svg",oE,t[0]||(t[0]=[ha('',6)]))}const sE={render:aE},iE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-glasses",viewBox:"0 0 24 24"};function lE(e,t){return C(),S("svg",iE,t[0]||(t[0]=[b("circle",{cx:"6",cy:"15",r:"4"},null,-1),b("circle",{cx:"18",cy:"15",r:"4"},null,-1),b("path",{d:"M14 15a2 2 0 0 0-2-2 2 2 0 0 0-2 2M2.5 13 5 7c.7-1.3 1.4-2 3-2M21.5 13 19 7c-.7-1.3-1.5-2-3-2"},null,-1)]))}const uE={render:lE},cE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function dE(e,t){return C(),S("svg",cE,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10"},null,-1),b("path",{d:"M2 12h20M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10"},null,-1)]))}const pE={render:dE},fE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function hE(e,t){return C(),S("svg",fE,t[0]||(t[0]=[b("path",{d:"M3 3h7v7H3zM14 3h7v7h-7zM14 14h7v7h-7zM3 14h7v7H3z"},null,-1)]))}const mE={render:hE},gE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"feather feather-menu",viewBox:"0 0 24 24"};function yE(e,t){return C(),S("svg",gE,t[0]||(t[0]=[b("path",{d:"M3 12h18M3 6h18M3 18h18"},null,-1)]))}const vE={render:yE},bE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function _E(e,t){return C(),S("svg",bE,t[0]||(t[0]=[b("path",{d:"m15 12-8.5 8.5c-.83.83-2.17.83-3 0q0 0 0 0a2.12 2.12 0 0 1 0-3L12 9M17.64 15 22 10.64"},null,-1),b("path",{d:"m20.91 11.7-1.25-1.25c-.6-.6-.93-1.4-.93-2.25v-.86L16.01 4.6a5.56 5.56 0 0 0-3.94-1.64H9l.92.82A6.18 6.18 0 0 1 12 8.4v1.56l2 2h2.47l2.26 1.91"},null,-1)]))}const wE={render:_E},kE={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function xE(e,t){return C(),S("svg",kE,t[0]||(t[0]=[b("path",{d:"M4 9h16M4 15h16M10 3 8 21M16 3l-2 18"},null,-1)]))}const TE={render:xE},CE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-heading-1",viewBox:"0 0 24 24"};function EE(e,t){return C(),S("svg",CE,t[0]||(t[0]=[b("path",{d:"M4 12h8M4 18V6M12 18V6M17 12l3-2v8"},null,-1)]))}const ME={render:EE},SE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-heading-2",viewBox:"0 0 24 24"};function AE(e,t){return C(),S("svg",SE,t[0]||(t[0]=[b("path",{d:"M4 12h8M4 18V6M12 18V6M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1"},null,-1)]))}const jE={render:AE},IE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-heading-3",viewBox:"0 0 24 24"};function FE(e,t){return C(),S("svg",IE,t[0]||(t[0]=[b("path",{d:"M4 12h8M4 18V6M12 18V6M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2"},null,-1)]))}const LE={render:FE},DE={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"};function RE(e,t){return C(),S("svg",DE,t[0]||(t[0]=[b("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4.318 6.318a4.5 4.5 0 0 0 0 6.364L12 20.364l7.682-7.682a4.5 4.5 0 0 0-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 0 0-6.364 0"},null,-1)]))}const PE={render:RE},ZE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function OE(e,t){return C(),S("svg",ZE,t[0]||(t[0]=[b("path",{d:"M20.42 4.58a5.4 5.4 0 0 0-7.65 0l-.77.78-.77-.78a5.4 5.4 0 0 0-7.65 0C1.46 6.7 1.33 10.28 4 13l8 8 8-8c2.67-2.72 2.54-6.3.42-8.42"},null,-1),b("path",{d:"M12 5.36 8.87 8.5a2.13 2.13 0 0 0 0 3h0a2.13 2.13 0 0 0 3 0l2.26-2.21a3 3 0 0 1 4.22 0l2.4 2.4M18 15l-2-2M15 18l-2-2"},null,-1)]))}const NE={render:OE},BE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function $E(e,t){return C(),S("svg",BE,t[0]||(t[0]=[b("path",{d:"M3 3v5h5"},null,-1),b("path",{d:"M3.05 13A9 9 0 1 0 6 5.3L3 8"},null,-1),b("path",{d:"M12 7v5l4 2"},null,-1)]))}const zE={render:$E},HE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function qE(e,t){return C(),S("svg",HE,t[0]||(t[0]=[b("path",{d:"m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"},null,-1),b("path",{d:"M9 22V12h6v10"},null,-1)]))}const UE={render:qE},VE={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function WE(e,t){return C(),S("svg",VE,t[0]||(t[0]=[b("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2"},null,-1),b("circle",{cx:"9",cy:"9",r:"2"},null,-1),b("path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"},null,-1)]))}const GE={render:WE},KE={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"};function YE(e,t){return C(),S("svg",KE,t[0]||(t[0]=[b("g",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2"},[b("path",{d:"M10 21.8c-1.3-.3-2.4-.7-3.5-1.5M17.6 3.7q1.65 1.05 2.7 2.7M2.2 10c.3-1.3.7-2.4 1.5-3.5m16.6 11.1q-1.05 1.65-2.7 2.7m4.2-10.2c.2 1.3.2 2.5 0 3.8M6.5 3.6c1.1-.7 2.3-1.2 3.5-1.5M3.6 17.5c-.7-1.1-1.2-2.3-1.5-3.5"}),b("path",{d:"M13.9 2.2c4.6.9 8.1 5 8.1 9.8s-3.4 8.9-8 9.8"}),b("path",{d:"M12 6v6l4 2"})],-1)]))}const JE={render:YE},QE={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function XE(e,t){return C(),S("svg",QE,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10"},null,-1),b("path",{d:"M12 16v-4M12 8h.01"},null,-1)]))}const eM={render:XE},tM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function nM(e,t){return C(),S("svg",tM,t[0]||(t[0]=[b("path",{d:"M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0M12 9v4M12 17h.01"},null,-1)]))}const rM={render:nM},oM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-italic",viewBox:"0 0 24 24"};function aM(e,t){return C(),S("svg",oM,t[0]||(t[0]=[b("path",{d:"M19 4h-9M14 20H5M15 4 9 20"},null,-1)]))}const sM={render:aM},iM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"icon icon-tabler icon-tabler-key",viewBox:"0 0 24 24"};function lM(e,t){return C(),S("svg",iM,t[0]||(t[0]=[b("path",{stroke:"none",d:"M0 0h24v24H0z"},null,-1),b("path",{d:"m16.555 3.843 3.602 3.602a2.877 2.877 0 0 1 0 4.069l-2.643 2.643a2.877 2.877 0 0 1-4.069 0l-.301-.301-6.558 6.558a2 2 0 0 1-1.239.578L5.172 21H4a1 1 0 0 1-.993-.883L3 20v-1.172a2 2 0 0 1 .467-1.284l.119-.13L4 17h2v-2h2v-2l2.144-2.144-.301-.301a2.877 2.877 0 0 1 0-4.069l2.643-2.643a2.877 2.877 0 0 1 4.069 0M15 9h.01"},null,-1)]))}const uM={render:lM},cM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-keyboard-icon lucide-keyboard",viewBox:"0 0 24 24"};function dM(e,t){return C(),S("svg",cM,t[0]||(t[0]=[b("path",{d:"M10 8h.01M12 12h.01M14 8h.01M16 12h.01M18 8h.01M6 8h.01M7 16h10M8 12h.01"},null,-1),b("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"},null,-1)]))}const pM={render:dM},fM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-languages",viewBox:"0 0 24 24"};function hM(e,t){return C(),S("svg",fM,t[0]||(t[0]=[b("path",{d:"m5 8 6 6M4 14l6-6 2-3M2 5h12M7 2h1M22 22l-5-10-5 10M14 18h6"},null,-1)]))}const mM={render:hM},gM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-arrow-left",viewBox:"0 0 24 24"};function yM(e,t){return C(),S("svg",gM,t[0]||(t[0]=[b("path",{d:"m12 19-7-7 7-7M19 12H5"},null,-1)]))}const vM={render:yM},bM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function _M(e,t){return C(),S("svg",bM,t[0]||(t[0]=[b("path",{d:"m16 6 4 14M12 6v14M8 8v12M4 4v16"},null,-1)]))}const wM={render:_M},kM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function xM(e,t){return C(),S("svg",kM,t[0]||(t[0]=[b("path",{d:"M9 18h6M10 22h4M15.09 14c.18-.98.65-1.74 1.41-2.5A4.65 4.65 0 0 0 18 8 6 6 0 0 0 6 8c0 1 .23 2.23 1.5 3.5A4.6 4.6 0 0 1 8.91 14"},null,-1)]))}const TM={render:xM},CM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function EM(e,t){return C(),S("svg",CM,t[0]||(t[0]=[b("path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"},null,-1),b("path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"},null,-1)]))}const MM={render:EM},SM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function AM(e,t){return C(),S("svg",SM,t[0]||(t[0]=[b("path",{d:"M3 14h7v7H3zM3 3h7v7H3zM14 4h7M14 9h7M14 15h7M14 20h7"},null,-1)]))}const jM={render:AM},IM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-list",viewBox:"0 0 24 24"};function FM(e,t){return C(),S("svg",IM,t[0]||(t[0]=[b("path",{d:"M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01"},null,-1)]))}const LM={render:FM},DM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-list-ordered",viewBox:"0 0 24 24"};function RM(e,t){return C(),S("svg",DM,t[0]||(t[0]=[b("path",{d:"M10 6h11M10 12h11M10 18h11M4 6h1v4M4 10h2M6 18H4c0-1 2-2 2-3s-1-1.5-2-1"},null,-1)]))}const PM={render:RM},ZM={xmlns:"http://www.w3.org/2000/svg","xml:space":"preserve","fill-rule":"evenodd","stroke-linecap":"round","stroke-linejoin":"round","clip-rule":"evenodd",viewBox:"0 0 24 24"};function OM(e,t){return C(),S("svg",ZM,t[0]||(t[0]=[b("path",{fill:"none",d:"M0 0h24v24H0z"},null,-1),b("path",{fill:"none",stroke:"currentColor","stroke-width":"23",d:"m820 761-85.6-87.6c-4.6-4.7-10.4-9.6-25.9 1-19.9 13.6-8.4 21.9-5.2 25.4 8.2 9 84.1 89 97.2 104 2.5 2.8-20.3-22.5-6.5-39.7 5.4-7 18-12 26-3 6.5 7.3 10.7 18-3.4 29.7-24.7 20.4-102 82.4-127 103-12.5 10.3-28.5 2.3-35.8-6-7.5-8.9-30.6-34.6-51.3-58.2-5.5-6.3-4.1-19.6 2.3-25 35-30.3 91.9-73.8 111.9-90.8",transform:"matrix(.08671 0 0 .0867 -49.8 -56)"},null,-1)]))}const NM={render:OM},BM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"feather feather-lock",viewBox:"0 0 24 24"};function $M(e,t){return C(),S("svg",BM,t[0]||(t[0]=[b("rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2"},null,-1),b("path",{d:"M7 11V7a5 5 0 0 1 10 0v4"},null,-1)]))}const zM={render:$M},HM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-lock-open",viewBox:"0 0 24 24"};function qM(e,t){return C(),S("svg",HM,t[0]||(t[0]=[b("rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2"},null,-1),b("path",{d:"M7 11V7a5 5 0 0 1 9.9-1"},null,-1)]))}const UM={render:qM},VM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-log-in",viewBox:"0 0 24 24"};function WM(e,t){return C(),S("svg",VM,t[0]||(t[0]=[b("path",{d:"M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4M10 17l5-5-5-5M15 12H3"},null,-1)]))}const GM={render:WM},KM={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function YM(e,t){return C(),S("svg",KM,t[0]||(t[0]=[b("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4M16 17l5-5-5-5M21 12H9"},null,-1)]))}const JM={render:YM},QM={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-mail",viewBox:"0 0 24 24"};function XM(e,t){return C(),S("svg",QM,t[0]||(t[0]=[b("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"},null,-1),b("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"},null,-1)]))}const eS={render:XM},tS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-memory-stick-icon lucide-memory-stick",viewBox:"0 0 24 24"};function nS(e,t){return C(),S("svg",tS,t[0]||(t[0]=[b("path",{d:"M6 19v-3M10 19v-3M14 19v-3M18 19v-3M8 11V9M16 11V9M12 11V9M2 15h20M2 7a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v1.1a2 2 0 0 0 0 3.837V17a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-5.1a2 2 0 0 0 0-3.837Z"},null,-1)]))}const rS={render:nS},oS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function aS(e,t){return C(),S("svg",oS,t[0]||(t[0]=[b("path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"},null,-1)]))}const sS={render:aS},iS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function lS(e,t){return C(),S("svg",iS,t[0]||(t[0]=[b("path",{d:"m12 8-9.04 9.06a2.82 2.82 0 1 0 3.98 3.98L16 12"},null,-1),b("circle",{cx:"17",cy:"7",r:"5"},null,-1)]))}const uS={render:lS},cS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-minus",viewBox:"0 0 24 24"};function dS(e,t){return C(),S("svg",cS,t[0]||(t[0]=[b("path",{d:"M5 12h14"},null,-1)]))}const pS={render:dS},fS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-monitor-smartphone",viewBox:"0 0 24 24"};function hS(e,t){return C(),S("svg",fS,t[0]||(t[0]=[b("path",{d:"M18 8V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h8M10 19v-3.96 3.15M7 19h5"},null,-1),b("rect",{width:"6",height:"10",x:"16",y:"12",rx:"2"},null,-1)]))}const mS={render:hS},gS={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function yS(e,t){return C(),S("svg",gS,t[0]||(t[0]=[b("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79"},null,-1)]))}const vS={render:yS},bS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-more-horizontal",viewBox:"0 0 24 24"};function _S(e,t){return C(),S("svg",bS,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"1"},null,-1),b("circle",{cx:"19",cy:"12",r:"1"},null,-1),b("circle",{cx:"5",cy:"12",r:"1"},null,-1)]))}const wS={render:_S},kS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-more-vertical",viewBox:"0 0 24 24"};function xS(e,t){return C(),S("svg",kS,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"1"},null,-1),b("circle",{cx:"12",cy:"5",r:"1"},null,-1),b("circle",{cx:"12",cy:"19",r:"1"},null,-1)]))}const TS={render:xS},CS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-newspaper",viewBox:"0 0 24 24"};function ES(e,t){return C(),S("svg",CS,t[0]||(t[0]=[b("path",{d:"M4 22h16a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v16a2 2 0 0 1-2 2m0 0a2 2 0 0 1-2-2v-9c0-1.1.9-2 2-2h2M18 14h-8M15 18h-5"},null,-1),b("path",{d:"M10 6h8v4h-8z"},null,-1)]))}const MS={render:ES},SS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-building-2",viewBox:"0 0 24 24"};function AS(e,t){return C(),S("svg",SS,t[0]||(t[0]=[b("path",{d:"M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18ZM6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2M10 6h4M10 10h4M10 14h4M10 18h4"},null,-1)]))}const jS={render:AS},IS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-package",viewBox:"0 0 24 24"};function FS(e,t){return C(),S("svg",IS,t[0]||(t[0]=[b("path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73zM12 22V12"},null,-1),b("path",{d:"m3.3 7 7.703 4.734a2 2 0 0 0 1.994 0L20.7 7M7.5 4.27l9 5.15"},null,-1)]))}const LS={render:FS},DS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-package-open",viewBox:"0 0 24 24"};function RS(e,t){return C(),S("svg",DS,t[0]||(t[0]=[b("path",{d:"M12 22v-9M15.17 2.21a1.67 1.67 0 0 1 1.63 0L21 4.57a1.93 1.93 0 0 1 0 3.36L8.82 14.79a1.66 1.66 0 0 1-1.64 0L3 12.43a1.93 1.93 0 0 1 0-3.36z"},null,-1),b("path",{d:"M20 13v3.87a2.06 2.06 0 0 1-1.11 1.83l-6 3.08a1.93 1.93 0 0 1-1.78 0l-6-3.08A2.06 2.06 0 0 1 4 16.87V13"},null,-1),b("path",{d:"M21 12.43a1.93 1.93 0 0 0 0-3.36L8.83 2.2a1.64 1.64 0 0 0-1.63 0L3 4.57a1.93 1.93 0 0 0 0 3.36l12.18 6.86a1.64 1.64 0 0 0 1.63 0z"},null,-1)]))}const PS={render:RS},ZS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function OS(e,t){return C(),S("svg",ZS,t[0]||(t[0]=[b("path",{d:"M18.37 2.63 14 7l-1.59-1.59a2 2 0 0 0-2.82 0L8 7l9 9 1.59-1.59a2 2 0 0 0 0-2.82L17 10l4.37-4.37a2.12 2.12 0 1 0-3-3"},null,-1),b("path",{d:"M9 8c-2 3-4 3.5-7 4l8 10c2-1 6-5 6-7M14.5 17.5 4.5 15"},null,-1)]))}const NS={render:OS},BS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function $S(e,t){return C(),S("svg",BS,t[0]||(t[0]=[b("path",{d:"m5 3 14 9-14 9z"},null,-1)]))}const zS={render:$S},HS={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-plug",viewBox:"0 0 24 24"};function qS(e,t){return C(),S("svg",HS,t[0]||(t[0]=[b("path",{d:"M12 22v-5M9 8V2M15 8V2M18 8v5a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V8Z"},null,-1)]))}const US={render:qS},VS={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function WS(e,t){return C(),S("svg",VS,t[0]||(t[0]=[b("path",{d:"M12 5v14M5 12h14"},null,-1)]))}const GS={render:WS},KS={xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 24 24"};function YS(e,t){return C(),S("svg",KS,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"},null,-1)]))}const JS={render:YS},QS={xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 24 24"};function XS(e,t){return C(),S("svg",QS,t[0]||(t[0]=[b("path",{fill:"currentColor",d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"},null,-1),b("circle",{cx:"12",cy:"12",r:"5",fill:"currentColor"},null,-1)]))}const eA={render:XS},tA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function nA(e,t){return C(),S("svg",tA,t[0]||(t[0]=[b("path",{d:"m9 17-5-5 5-5"},null,-1),b("path",{d:"M20 18v-2a4 4 0 0 0-4-4H4"},null,-1)]))}const rA={render:nA},oA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function aA(e,t){return C(),S("svg",oA,t[0]||(t[0]=[b("path",{d:"M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1zM4 22v-7"},null,-1)]))}const sA={render:aA},iA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-arrow-right",viewBox:"0 0 24 24"};function lA(e,t){return C(),S("svg",iA,t[0]||(t[0]=[b("path",{d:"M5 12h14M12 5l7 7-7 7"},null,-1)]))}const uA={render:lA},cA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-rocket-icon lucide-rocket",viewBox:"0 0 24 24"};function dA(e,t){return C(),S("svg",cA,t[0]||(t[0]=[b("path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09M12 15l-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2"},null,-1),b("path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5"},null,-1)]))}const pA={render:dA},fA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-rotate-ccw-icon lucide-rotate-ccw",viewBox:"0 0 24 24"};function hA(e,t){return C(),S("svg",fA,t[0]||(t[0]=[b("path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"},null,-1),b("path",{d:"M3 3v5h5"},null,-1)]))}const mA={render:hA},gA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-rss-icon lucide-rss",viewBox:"0 0 24 24"};function yA(e,t){return C(),S("svg",gA,t[0]||(t[0]=[b("path",{d:"M4 11a9 9 0 0 1 9 9M4 4a16 16 0 0 1 16 16"},null,-1),b("circle",{cx:"5",cy:"19",r:"1"},null,-1)]))}const vA={render:yA},bA={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function _A(e,t){return C(),S("svg",bA,t[0]||(t[0]=[b("path",{d:"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2"},null,-1),b("path",{d:"M17 21v-8H7v8M7 3v5h8"},null,-1)]))}const wA={render:_A},kA={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-width":"2",viewBox:"0 0 24 24"};function xA(e,t){return C(),S("svg",kA,t[0]||(t[0]=[b("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m3 6 3 1m0 0-3 9a5 5 0 0 0 6.001 0M6 7l3 9M6 7l6-2m6 2 3-1m-3 1-3 9a5 5 0 0 0 6.001 0M18 7l3 9m-3-9-6-2m0-2v2m0 16V5m0 16H9m3 0h3"},null,-1)]))}const TA={render:xA},CA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-scan-eye",viewBox:"0 0 24 24"};function EA(e,t){return C(),S("svg",CA,t[0]||(t[0]=[b("path",{d:"M3 7V5a2 2 0 0 1 2-2h2M17 3h2a2 2 0 0 1 2 2v2M21 17v2a2 2 0 0 1-2 2h-2M7 21H5a2 2 0 0 1-2-2v-2"},null,-1),b("circle",{cx:"12",cy:"12",r:"1"},null,-1),b("path",{d:"M5 12s2.5-5 7-5 7 5 7 5-2.5 5-7 5-7-5-7-5"},null,-1)]))}const MA={render:EA},SA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",viewBox:"0 0 24 24"};function AA(e,t){return C(),S("svg",SA,t[0]||(t[0]=[b("path",{stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"m21 21-6-6m2-5a7 7 0 1 1-14 0 7 7 0 0 1 14 0"},null,-1)]))}const jA={render:AA},IA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function FA(e,t){return C(),S("svg",IA,t[0]||(t[0]=[b("path",{d:"M22 2 11 13M22 2l-7 20-4-9-9-4z"},null,-1)]))}const LA={render:FA},DA={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function RA(e,t){return C(),S("svg",DA,t[0]||(t[0]=[b("path",{d:"M22 12H2M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11M6 16h.01M10 16h.01"},null,-1)]))}const PA={render:RA},ZA={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function OA(e,t){return C(),S("svg",ZA,t[0]||(t[0]=[b("path",{d:"M22 12H2m9.1-8H7.2c-.8 0-1.5.4-1.8 1.1L2 12v6c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2v-6l-1.5-3m-6.1-5h6m-3-3v6"},null,-1)]))}const NA={render:OA},BA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function $A(e,t){return C(),S("svg",BA,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"3"},null,-1),b("path",{d:"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1"},null,-1)]))}const zA={render:$A},HA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-share-2",viewBox:"0 0 24 24"};function qA(e,t){return C(),S("svg",HA,t[0]||(t[0]=[b("circle",{cx:"18",cy:"5",r:"3"},null,-1),b("circle",{cx:"6",cy:"12",r:"3"},null,-1),b("circle",{cx:"18",cy:"19",r:"3"},null,-1),b("path",{d:"m8.59 13.51 6.83 3.98M15.41 6.51l-6.82 3.98"},null,-1)]))}const UA={render:qA},VA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"feather feather-shield",viewBox:"0 0 24 24"};function WA(e,t){return C(),S("svg",VA,t[0]||(t[0]=[b("path",{d:"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10"},null,-1)]))}const GA={render:WA},KA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-signal",viewBox:"0 0 24 24"};function YA(e,t){return C(),S("svg",KA,t[0]||(t[0]=[ha('',5)]))}const JA={render:YA},QA={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"feather feather-slash",viewBox:"0 0 24 24"};function XA(e,t){return C(),S("svg",QA,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10"},null,-1),b("path",{d:"m4.93 4.93 14.14 14.14"},null,-1)]))}const ej={render:XA},tj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function nj(e,t){return C(),S("svg",tj,t[0]||(t[0]=[b("path",{d:"M11 11h4M11 15h7M11 19h10M9 7 6 4 3 7M6 6v14"},null,-1)]))}const rj={render:nj},oj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function aj(e,t){return C(),S("svg",oj,t[0]||(t[0]=[b("path",{d:"M11 5h10M11 9h7M11 13h4M3 17l3 3 3-3M6 18V4"},null,-1)]))}const sj={render:aj},ij={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-sparkles",viewBox:"0 0 24 24"};function lj(e,t){return C(),S("svg",ij,t[0]||(t[0]=[b("path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0zM20 3v4M22 5h-4M4 17v2M5 18H3"},null,-1)]))}const uj={render:lj},cj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",viewBox:"0 0 24 24"};function dj(e,t){return C(),S("svg",cj,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4",opacity:".25"},null,-1),b("path",{fill:"currentColor",d:"M4 12a8 8 0 0 1 8-8V0C5.373 0 0 5.373 0 12zm2 5.291A7.96 7.96 0 0 1 4 12H0c0 3.042 1.135 5.824 3 7.938z",opacity:".75"},null,-1)]))}const pj={render:dj},fj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function hj(e,t){return C(),S("svg",fj,t[0]||(t[0]=[b("path",{d:"m12 2 3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01z"},null,-1)]))}const mj={render:hj},gj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-stop-circle",viewBox:"0 0 24 24"};function yj(e,t){return C(),S("svg",gj,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10"},null,-1),b("path",{d:"M9 9h6v6H9z"},null,-1)]))}const vj={render:yj},bj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-strikethrough",viewBox:"0 0 24 24"};function _j(e,t){return C(),S("svg",bj,t[0]||(t[0]=[b("path",{d:"M16 4H9a3 3 0 0 0-2.83 4M14 12a4 4 0 0 1 0 8H6M4 12h16"},null,-1)]))}const wj={render:_j},kj={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function xj(e,t){return C(),S("svg",kj,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"5"},null,-1),b("path",{d:"M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42"},null,-1)]))}const Tj={render:xj},Cj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function Ej(e,t){return C(),S("svg",Cj,t[0]||(t[0]=[b("path",{d:"M9 5H2v7l6.29 6.29c.94.94 2.48.94 3.42 0l3.58-3.58c.94-.94.94-2.48 0-3.42zM6 9.01V9"},null,-1),b("path",{d:"m15 5 6.3 6.3a2.4 2.4 0 0 1 0 3.4L17 19"},null,-1)]))}const Mj={render:Ej},Sj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-terminal-square",viewBox:"0 0 24 24"};function Aj(e,t){return C(),S("svg",Sj,t[0]||(t[0]=[b("path",{d:"m7 11 2-2-2-2M11 13h4"},null,-1),b("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2"},null,-1)]))}const jj={render:Aj},Ij={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-text-quote",viewBox:"0 0 24 24"};function Fj(e,t){return C(),S("svg",Ij,t[0]||(t[0]=[b("path",{d:"M17 6H3M21 12H8M21 18H8M3 12v6"},null,-1)]))}const Lj={render:Fj},Dj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-toggle-left-icon lucide-toggle-left",viewBox:"0 0 24 24"};function Rj(e,t){return C(),S("svg",Dj,t[0]||(t[0]=[b("circle",{cx:"9",cy:"12",r:"3"},null,-1),b("rect",{width:"20",height:"14",x:"2",y:"5",rx:"7"},null,-1)]))}const Pj={render:Rj},Zj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-toggle-right-icon lucide-toggle-right",viewBox:"0 0 24 24"};function Oj(e,t){return C(),S("svg",Zj,t[0]||(t[0]=[b("circle",{cx:"15",cy:"12",r:"3"},null,-1),b("rect",{width:"20",height:"14",x:"2",y:"5",rx:"7"},null,-1)]))}const Nj={render:Oj},Bj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function $j(e,t){return C(),S("svg",Bj,t[0]||(t[0]=[b("path",{d:"m17 11 4-4-4-4M21 7H9M7 21l-4-4 4-4M15 17H3"},null,-1)]))}const zj={render:$j},Hj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"feather feather-trash-2",viewBox:"0 0 24 24"};function qj(e,t){return C(),S("svg",Hj,t[0]||(t[0]=[b("path",{d:"M3 6h18M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2M10 11v6M14 11v6"},null,-1)]))}const Uj={render:qj},Vj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-triangle-alert-icon lucide-triangle-alert",viewBox:"0 0 24 24"};function Wj(e,t){return C(),S("svg",Vj,t[0]||(t[0]=[b("path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3M12 9v4M12 17h.01"},null,-1)]))}const Gj={render:Wj},Kj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function Yj(e,t){return C(),S("svg",Kj,t[0]||(t[0]=[b("path",{d:"M3 7v6h6"},null,-1),b("path",{d:"M21 17a9 9 0 0 0-9-9 9 9 0 0 0-6 2.3L3 13"},null,-1)]))}const Jj={render:Yj},Qj={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function Xj(e,t){return C(),S("svg",Qj,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10"},null,-1),b("path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3M12 17h.01"},null,-1)]))}const eI={render:Xj},tI={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function nI(e,t){return C(),S("svg",tI,t[0]||(t[0]=[b("path",{d:"M1 4v6h6M23 20v-6h-6"},null,-1),b("path",{d:"M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4-4.64 4.36A9 9 0 0 1 3.51 15"},null,-1)]))}const rI={render:nI},oI={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function aI(e,t){return C(),S("svg",oI,t[0]||(t[0]=[b("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4M17 8l-5-5-5 5M12 3v12"},null,-1)]))}const sI={render:aI},iI={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function lI(e,t){return C(),S("svg",iI,t[0]||(t[0]=[b("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"},null,-1),b("circle",{cx:"12",cy:"7",r:"4"},null,-1)]))}const uI={render:lI},cI={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function dI(e,t){return C(),S("svg",cI,t[0]||(t[0]=[b("path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"},null,-1),b("circle",{cx:"9",cy:"7",r:"4"},null,-1),b("path",{d:"M19 8v6M22 11h-6"},null,-1)]))}const pI={render:dI},fI={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function hI(e,t){return C(),S("svg",fI,t[0]||(t[0]=[b("path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"},null,-1),b("circle",{cx:"9",cy:"7",r:"4"},null,-1),b("path",{d:"m17 8 5 5M22 8l-5 5"},null,-1)]))}const mI={render:hI},gI={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function yI(e,t){return C(),S("svg",gI,t[0]||(t[0]=[b("path",{d:"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"},null,-1),b("circle",{cx:"9",cy:"7",r:"4"},null,-1),b("path",{d:"M23 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75"},null,-1)]))}const vI={render:yI},bI={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function _I(e,t){return C(),S("svg",bI,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"4"},null,-1),b("path",{d:"M1.05 12H7M17.01 12h5.95"},null,-1)]))}const wI={render:_I},kI={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function xI(e,t){return C(),S("svg",kI,t[0]||(t[0]=[b("path",{d:"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2zM22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"},null,-1)]))}const TI={render:xI},CI={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-wrench",viewBox:"0 0 24 24"};function EI(e,t){return C(),S("svg",CI,t[0]||(t[0]=[b("path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"},null,-1)]))}const MI={render:EI},SI={xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 20 20"};function AI(e,t){return C(),S("svg",SI,t[0]||(t[0]=[b("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 0 1 1.414 0L10 8.586l4.293-4.293a1 1 0 1 1 1.414 1.414L11.414 10l4.293 4.293a1 1 0 0 1-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 0 1-1.414-1.414L8.586 10 4.293 5.707a1 1 0 0 1 0-1.414","clip-rule":"evenodd"},null,-1)]))}const jI={render:AI},II={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",viewBox:"0 0 24 24"};function FI(e,t){return C(),S("svg",II,t[0]||(t[0]=[b("circle",{cx:"12",cy:"12",r:"10"},null,-1),b("path",{d:"m15 9-6 6M9 9l6 6"},null,-1)]))}const LI={render:FI},DI={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-zoom-in",viewBox:"0 0 24 24"};function RI(e,t){return C(),S("svg",DI,t[0]||(t[0]=[b("circle",{cx:"11",cy:"11",r:"8"},null,-1),b("path",{d:"m21 21-4.35-4.35M11 8v6M8 11h6"},null,-1)]))}const PI={render:RI},ZI={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"lucide lucide-zoom-out",viewBox:"0 0 24 24"};function OI(e,t){return C(),S("svg",ZI,t[0]||(t[0]=[b("circle",{cx:"11",cy:"11",r:"8"},null,-1),b("path",{d:"m21 21-4.35-4.35M8 11h6"},null,-1)]))}const NI={render:OI},fO=sx,hO=ux,mO=px,gO=mx,yO=vx,vO=wx,bO=Tx,_O=Mx,wO=jx,kO=Lx,xO=Px,TO=Nx,CO=zx,EO=Ux,MO=Gx,SO=Jx,AO=eT,jO=rT,IO=uT,BI=pT,$I=sT,FO=mT,LO=vT,DO=wT,RO=TT,PO=MT,ZO=jT,OO=LT,NO=PT,BO=NT,$O=zT,zI=UT,zO=GT,HO=JT,qO=eC,UO=rC,VO=sC,WO=uC,GO=pC,KO=mC,YO=vC,JO=wC,QO=TC,XO=MC,eN=LC,tN=jC,nN=NC,rN=zC,oN=PC,aN=UC,sN=GC,iN=JC,lN=eE,uN=rE,cN=sE,dN=uE,pN=pE,fN=mE,hN=vE,mN=wE,gN=TE,yN=ME,vN=jE,bN=LE,_N=NE,wN=PE,kN=zE,xN=UE,TN=GE,CN=JE,HI=eM,qI=rM,EN=sM,MN=uM,SN=pM,AN=mM,jN=vM,IN=wM,FN=TM,LN=MM,DN=LM,RN=PM,PN=jM,ZN=NM,ON=UM,NN=zM,BN=GM,$N=JM,zN=eS,HN=rS,qN=sS,UN=uS,VN=pS,WN=mS,GN=vS,KN=wS,YN=TS,JN=MS,QN=jS,XN=LS,eB=PS,tB=NS,nB=zS,rB=US,oB=GS,aB=eA,sB=JS,iB=rA,lB=sA,uB=uA,cB=pA,dB=mA,pB=vA,fB=wA,hB=TA,mB=MA,gB=jA,yB=LA,vB=NA,bB=PA,_B=zA,wB=UA,kB=GA,xB=JA,TB=ej,CB=rj,EB=sj,MB=uj,SB=pj,AB=mj,jB=vj,IB=wj,FB=Tj,LB=Mj,DB=jj,RB=Lj,PB=Pj,ZB=Nj,OB=zj,NB=Uj,BB=Gj,$B=Jj,zB=eI,HB=rI,qB=sI,UB=pI,VB=mI,WB=uI,GB=vI,KB=wI,YB=TI,JB=MI,UI=LI,VI=jI,QB=PI,XB=NI,e$=Q7,t$=tk,WI=nk,n$=rk,r$=Pk,o$=Nk,a$=zk,s$=Uk,i$=Gk,l$=Jk,u$=sk,c$=uk,d$=vk,p$=pk,f$=mk,h$=wk,m$=Tk,g$=Mk,y$=jk,v$=Lk,b$=ex,_$=rx,pc=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n};class GI{constructor(t){_t(this,"projects");this.projects=new KI(t)}}class KI{constructor(t){this.request=t}async get(t){return(await this.request(`/v2/project/${t}`)).json()}async getV3(t){return(await this.request(`/v3/project/${t}`)).json()}async edit(t,n){await this.request(`/v2/project/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)})}async editV3(t,n){await this.request(`/v3/project/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)})}}const YI=[{date:"2025-10-07T09:50:00-07:00",product:"web",body:`### Improvements
- Allow users to fill out tax form when attempting a withdraw that exceeds $600/yr threshold.`},{date:"2025-10-04T17:20:00-07:00",product:"app",version:"0.10.10",body:`## Improvements
- Fixed Minecraft versions 1.12.2 and earlier failing to install.`},{date:"2025-10-04T09:45:00-07:00",product:"app",version:"0.10.9",body:"### Security fixes\n- Fixed a couple Modrinth Pack (`.mrpack`) importing security vulnerabilities."},{date:"2025-10-01T19:05:00-07:00",product:"web",body:`### Improvements
- Added banner informing Russian users of our non-compliance with censorship laws that will lead to Modrinth being blocked in Russia. For more info, see [our news article on it](/news/article/standing-by-our-values).`},{date:"2025-09-29T12:50:00-07:00",product:"web",body:`### Improvements
- Re-enabled the creation of organizations.
- Added limits for creating content on Modrinth
- Up to 256 projects
- Up to 16 organizations
- Up to 64 collections
- If you need more, please contact [support](https://support.modrinth.com) and explain why, and we can increase your limits.`},{date:"2025-09-29T12:50:00-07:00",product:"app",version:"0.10.8",body:`### Improvements
- Overhauled Modrinth App updater to make it easier to stay up-to-date.
- Updates will now be downloaded in the background to make a seamless updating experience.
- When an update is downloaded, it will prompt you to reload the app.
- If a metered internet connection is detected, it will ask you before downloading the update.
- Fixed how transparency is handled on the skins page. (Contributed by [Jerozgen](https://github.com/modrinth/code/pull/4373))
- Removed the 'Advanced' toggle in the Instance creation interface.
- Improved version selection when installing content.
- Installing versions from the Discover content page will now install a version according to your filters, rather than simply the latest.
- Dependencies will now download with the same logic as the content being installed.
- Non-mod projects and dependencies will now be installed properly.
- Fixed window dragging issues with the top bar. (Contributed by [aervxa](https://github.com/modrinth/code/pull/4218))
- Fixed an empty servers.dat file being created when one doesn't already exist, preventing certain mods from providing defaults.
- Fixed long creator names overflowing on project pages.
- Strings in Markdown descriptions that look like domain names or IP addresses will no longer automatically be converted to links, such as \`README.md\`.
- When adding friends, unknown users will now show an error.
- Pressing 'Enter' after typing in a friend's username will now send the friend request.
- Improved error handling from Modrinth API.
- Fixed the white flash when the app is opened on certain systems. (Contributed by [aervxa](https://github.com/modrinth/code/pull/4177))`},{date:"2025-09-25T19:15:00-07:00",product:"web",body:`### Improvements
- Temporarily disabled the creation of Organizations.`},{date:"2025-09-21T15:45:00-07:00",product:"web",body:`### Improvements
- Added tax compliance for creators who have withdrawn over the tax reporting threshold.
- Fixed project download interface displaying empty for projects that only support snapshots.`},{date:"2025-09-08T14:45:00-07:00",product:"servers",body:`### Improvements
- Fixed world seed being rounded in options.`},{date:"2025-09-07T15:55:00-07:00",product:"web",body:`### Improvements
- Fixed Modrinth App sign in redirect when using SSO.`},{date:"2025-09-03T15:40:00-07:00",product:"web",body:`### Improvements
- Fixed a number of bugs with the Modrinth App marketing page
- Added clearer notices about Modrinth App's beta status on marketing page.
- Added disclaimer about Modrinth App's issues on Linux to marketing page.
- Fixed certain icons in settings shrinking size on mobile.
- In project settings, the description page no longer refers to all projects as mods.
- Fixed spelling error during sign up.`},{date:"2025-09-02T10:30:00-07:00",product:"web",body:`### Improvements
- Fixed text animation timing on landing page.
- Fixed file upload buttons on gallery and version pages not being selectable with the keyboard.
- Fixed long creator names overflowing on project pages.
- Fixed project summaries with long words in search results causing overflow issues.`},{date:"2025-09-01T16:20:00-07:00",product:"web",body:`### Improvements
- Significantly improved the performance of certain project pages.
- Strings in Markdown descriptions that look like domain names or IP addresses will no longer automatically be converted to links, such as \`README.md\`.
- Fixed project environment settings sometimes showing the wrong warning/info message.`},{date:"2025-08-31T17:15:00-07:00",product:"web",body:`### Improvements
- Updated some of the publishing checklist messages.
- Fixed certain buttons having the wrong focus effect in Firefox browsers.`},{date:"2025-08-31T11:50:00-07:00",product:"web",body:`### Improvements
- Fixed mods with datapack or plugin versions being unable to set environment.
- Fixed users getting empty notifications for messages they can't see.`},{date:"2025-08-31T10:35:00-07:00",product:"web",body:`### Improvements
- Fixed screen reader accessibility of the new project environments settings page.
- Fixed mobile responsiveness of project settings page.
- Fixed error loading project pages when using the project ID in the URL.
- Updated the message for unverified environments when the user does not have permission to update the environment.
- Improved handling of projects with multiple environments.
- Fixed blog posts not loading images when missing a slash at the end of the URL.`},{date:"2025-08-28T18:45:00-07:00",product:"web",body:`### Improvements
- Fixed modpacks showing an environment migration warning perpetually.
- Fixed environment settings being unclear about permissions.`},{date:"2025-08-28T16:50:00-07:00",product:"web",body:`### Improvements
- Overhauled creator-facing project environment metadata
- This is part of a larger project to make environment data across Modrinth more reliable. Read [this blog post](/news/article/new-environments) for more information.
- Improved performance of project pages.`},{date:"2025-08-28T16:50:00-07:00",product:"servers",body:`### Improvements
- Fixed issue with Files page not showing files in the correct order sometimes.
- Fixed Medal servers showing a confusing cancellation/suspension notice.`},{date:"2025-08-20T13:30:00-07:00",product:"app",version:"0.10.7",body:`### Improvements
- Fixed Quick Play not working with Singleplayer worlds.
- Updated ad fallback to Medal promo.`},{date:"2025-08-19T13:56:00-07:00",product:"web",body:`### Improvements
- Fixed Modrinth Servers marketing page requiring auth.
- Fixed mobile responsiveness of Modrinth Servers Medal collaboration banner.`},{date:"2025-08-19T11:10:00-07:00",product:"servers",body:`### Improvements
- Improved upgrading experience.`},{date:"2025-08-19T11:10:00-07:00",product:"web",body:`### Improvements
- Added Modrinth Servers free trial promotion in partnership with Medal.
- Fixed typo in revenue page.`},{date:"2025-08-18T09:10:00-07:00",product:"servers",body:`### Improvements
- Fixed various dropdowns not appearing.`},{date:"2025-08-18T09:10:00-07:00",product:"web",body:`### Improvements
- Fixed a bunch of random NaNs appearing throughout the UI.`},{date:"2025-08-17T15:35:00-07:00",product:"web",body:`### Improvements
- Fixed notification pages not loading.`},{date:"2025-08-15T13:15:00-07:00",product:"app",version:"0.10.6",body:`### Improvements
- Fixed Forge versions between 1.17.1 and 1.20.3 failing to launch.
- Fixed search page constantly resetting back to page 1.`},{date:"2025-08-15T11:55:00-07:00",product:"web",body:`### Improvements
- Fixed project version pages not loading.`},{date:"2025-08-15T11:45:00-07:00",product:"app",version:"0.10.5",body:`### Improvements
- On Windows, the app will now install per-user rather than system-wide.
- This allows future versions of Modrinth App to update seamlessly if the user is not an administrator.
- When updating to this version, the app will prompt you for Admin elevation in order to remove the old system-wide installation.
- Desktop shortcuts should be migrated automatically to the new installation location.
- Improvements to the Skins page.
- Fixed skins being mirrored.
- Added automatic detection of arm style from skin file.
- Improved performance of skin renderer.
- Added anti-aliasing to the skin renderer to make it appear smoother.
- Tweaked the rendering of the spotlight below the player model.
- Allow offline servers to still be joined from Worlds tab.
- Some servers display as offline as a privacy measure, or only start up once a player attempts to join.
- Improved Modrinth user account login to use your default web browser.
- Updated the appearance and functionality of error notifications to match the Modrinth website.
- Fixed search not returning to first page when filters are changed.
- Fixed modpacks showing up with the "Optimization" tag on Home page even when it's not a featured category on the project.
- Improved pinging Minecraft servers for older versions in the Worlds tab to more closely match how the client would ping them.
- Added Quick Play functionality for Minecraft servers on versions before 1.20.
- Fixed the tracking of last played time for Minecraft servers on versions before 1.7.2.
- Fixed the order when sorting Library page by game version.
- Fixed the incompatibility warning not remembering the version you clicked on.
- Added common snapping points to memory allocation sliders.
- Increased the size of the 'Logs' page on instances.
- Fixed failure when clicking 'Test' on Java versions.
- Fixed the back/forward buttons appearing with white icons in light mode.
- Fixed 'Party Alex' skin not using slim character model.
- Improved resilience of Minecraft launching on Java 8 under certain circumstances.
- Added system for showing users surveys to provide feedback on their experience with Modrinth App.
**This update was originally launched as 0.10.4, but was pulled due to issues with many functions of the app.**`},{date:"2025-08-14T14:20:00-07:00",product:"web",body:`### Improvements
- Added additional items to the publishing checklist to help ensure creators address potential issues before submitting for review.`},{date:"2025-08-01T21:30:00-04:00",product:"web",body:`### Improvements
- Fixed issues with the newsletter subscription checkbox & buttons on news pages. ([#4072](https://github.com/modrinth/code/pull/4072), [#4073](https://github.com/modrinth/code/pull/4073))
- You can now access the "Moderation" tab on project pages again even if your project is approved. ([#4067](https://github.com/modrinth/code/pull/4067))
- Fixed issues with collection visibility. ([#4070](https://github.com/modrinth/code/pull/4070))
- Fixed text issue on collection icon upload dropdown. ([#4069](https://github.com/modrinth/code/pull/4069))`},{date:"2025-08-01T21:30:00-04:00",product:"servers",body:`### Improvements
- Server status information is now correctly displayed in the 'My Servers' page. ([#4071](https://github.com/modrinth/code/pull/4071))
- Fixed an error with displaying startup settings.
- Improved ratelimit error message.`},{date:"2025-07-19T15:20:00-07:00",product:"web",body:`### Improvements
- Removed Tumblr icon from footer as we no longer use it.
- Reverted changes to publishing checklist since they need more work.`},{date:"2025-07-16T12:40:00-07:00",product:"web",body:`### Improvements
- Fixed report body overflowing with large images.`},{date:"2025-07-15T13:55:00-07:00",product:"web",body:`### Improvements
- Updated language around DDoS protection of Modrinth Servers products.`},{date:"2025-07-15T12:40:00-07:00",product:"web",body:`### Improvements
- Added copyright policy and DMCA links to footer.
- Updated Modrinth Servers FAQ to include the new UK location.`},{date:"2025-07-15T08:20:00-07:00",product:"web",body:`### Improvements
- Fixed gallery images from overflowing with long words in their descriptions.`},{date:"2025-07-09T22:15:00-07:00",product:"web",body:`### Improvements
- Fixed pasted links being unnecessarily wrapped in Markdown formatting in Markdown editor.
- Added a security.txt file to the site.
- Changed the Europe location for Modrinth Servers to show as Central Europe with the flag of Germany to reflect its location better.`},{date:"2025-07-08T14:00:00-07:00",product:"web",body:`### Improvements
- Fixed Modrinth Servers showing as out of stock when navigating to the page directly.`},{date:"2025-07-08T11:10:00-07:00",product:"servers",body:`### Improvements
- Reapplied error handling improvements, with more improvements.`},{date:"2025-07-07T22:20:00-07:00",product:"servers",body:`### Improvements
- Fixed issue with Servers panel failing to load.`},{date:"2025-07-07T17:45:00-07:00",product:"servers",body:`### Improvements
- Reverted error handling improvements.`},{date:"2025-07-07T01:10:00-07:00",product:"app",version:"0.10.3",body:`### Improvements
- Added a workaround for Java 8 instances failing to load.
### Known issues
- Java installations will show as 'Failed' when you test them. This is a visual bug, and does not mean the Java installation is not working.`},{date:"2025-07-06T16:30:00-07:00",product:"app",version:"0.10.2",body:`### Improvements
- Added additional default skins from free official Minecraft skin packs.
- Fixed some parts of the player model on Skins page rendering incorrectly.
- Fixed a number of issues with skin images not loading on macOS.
- Fixed old Forge versions not loading properly.
- Fixed a typo in Appearance settings for hiding Skins page nametag.
### Known issues
- Java installations will show as 'Failed' when you test them. This is a visual bug, and does not mean the Java installation is not working.`},{date:"2025-07-05T12:00:00-07:00",product:"app",version:"0.10.1",body:`### Improvements
- News section will now only show up to 4 articles.
- Fixed critical issue with updating on Windows.
- Fixed search being broken after a query that yields no results.
- Fixed 'Jump back in' section on Home page not working.
- Fixed too many Quick Instance items on the sidebar causing the UI to overflow.`},{date:"2025-07-04T12:00:00-07:00",product:"app",version:"0.10.0",body:`**Note: This update is no longer available to download due to issues, you should use v0.10.1**
### Added
- Added Skins page as a beta feature. There may be some minor bugs with it, but we'd love to get user feedback on this feature as it's been one of our most highly requested features.
- Save as many of your own skins as you'd like to swap between them at any moment.
- Pick a default cape, or override the cape on any of your saved skin profiles to tailor each look perfectly.
- Choose between any of the default Minecraft skins.
### Improvements
- Updated News section to pull data from our new custom news feed.
- Fixed videos from GitHub not working in project descriptions.
- Fixed data related to a world not being deleted from the database when the world was deleted.
- Standardized relative date timestamps across the app.
- Fixed 'Reset icon' button for Singleplayer worlds state not being reset when opening the Edit interface.
- Fixed 'Repair' button showing while an instance is installing.
- Fixed instances with non-UTF8 text files failing to launch or import.
- Fixed launch hooks being unable to be cleared on an instance.
- Fixed search results breaking if page number goes out of bounds.
- Fixed servers running old Minecraft versions not showing last played time.`},{date:"2025-07-04T12:00:00-07:00",product:"web",body:`### Changed
- Changed fallback ad placeholder from promoting Modrinth+ to Modrinth Servers.
- Fixed news section rendering incorrectly in light mode on landing page and Modrinth App page.`},{date:"2025-06-30T19:15:00-07:00",product:"web",body:`### Added
- Added news page, with all our old blog posts now hosted on our website.
### Improvements
- Changed download count rounding to be more precise.
- Fixed Creator Monetization Program page to show accurate information again.`},{date:"2025-06-30T19:15:00-07:00",product:"servers",body:`### Improvements
- Progress will now show when installing Modrinth Pack (.mrpack) files.
- Fixed storage stats not linking to Files page.
- Fixed missing icons in some places.`},{date:"2025-06-29T16:30:00-07:00",product:"web",body:`### Improvements
- Removed ads for logged in users.
- Fixed tooltips being unreadable sometimes.`},{date:"2025-06-26T11:00:00-07:00",product:"servers",body:`### Improvements
- Fixed support bubble overlapping notifications sometimes.
- Fixed race condition when creating backups.`},{date:"2025-06-26T11:00:00-07:00",product:"web",body:`### Added
- Added a dismissable Modrinth Servers promotion to project Download interface to inform users of the service's availability.
### Improvements
- Added colors for the newly added legacy mod loaders
- Improved file upload error message in some places.`},{date:"2025-06-16T11:00:00-07:00",product:"web",body:`### Improvements
- Rolled out hotfixes with the previous days' updates.
- Failed subscriptions can now be cancelled.`},{date:"2025-06-16T11:00:00-07:00",product:"servers",body:`### Improvements
- Improved error handling.
- Rolled out hotfixes with the previous days' updates.'`},{date:"2025-06-15T16:25:00-07:00",product:"servers",body:`### Improvements
- Fixed installing modpacks from search.
- Fixed setting subdomains.`},{date:"2025-06-15T14:30:00-07:00",product:"servers",body:`### Improvements
- Fixed various issues with the panel loading improperly in certain cases.
- Fixed CPU icon being smaller than the rest.
- Server panel performance should be a little faster now.`},{date:"2025-06-15T14:30:00-07:00",product:"web",body:`### Improvements
- Creator analytics charts will now show up to 15 projects in a tooltip instead of 5.
- Made certain scrollable containers not have a fixed height, and allow them to be smaller if they have fewer items. (Contributed by [Erb3](https://github.com/modrinth/code/pull/2898))
- Made organizations sort consistently alphabetically. (Contributed by [WorldWidePixel](https://github.com/modrinth/code/pull/3755))
- Clarified the 'File too large' error message when uploading an image larger than 1MiB in the text editor. (Contributed by [IThundxr](https://github.com/modrinth/code/pull/3774))`},{date:"2025-06-03T14:35:00-07:00",product:"servers",body:`### Added
- Added support for servers in Europe.
- Added server setup for new servers upon opening the panel for the first time.`},{date:"2025-06-03T14:35:00-07:00",product:"web",body:`### Improvements
- Overhauled Modrinth Servers purchase flow.
- Added the ability to donate creator rewards to charity.`},{date:"2025-05-08T09:00:00-07:00",product:"servers",body:`### Added
- Added the ability to extract .zip files in the Files page.
- Added the ability to extract a remote .zip file from a URL, or from a CurseForge modpack version URL.
- Dependencies will now automatically be installed when installing a mod from Modrinth.`},{date:"2025-05-08T09:00:00-07:00",product:"web",body:`### Improvements
- Fixed game version and loader selection when editing a version only showing up to 6 selected items, making it frustrating to remove a specific version.
- Fixed organization URLs being case sensitive. (Contributed by [IMB11](https://github.com/modrinth/code/pull/3621))
- Fixed notifications not loading sometimes. (Contributed by [IMB11](https://github.com/modrinth/code/pull/3624))
- Fixed marking all notifications as read. (Contributed by [IMB11](https://github.com/modrinth/code/pull/3624))
- Fixed relative time sometimes having poor rounding, and sometimes showing future dates unexpectedly. (Contributed by [IMB11](https://github.com/modrinth/code/pull/3612))
- Fixed localized pricing not showing in some cases for Modrinth+. (Contributed by [IMB11](https://github.com/modrinth/code/pull/3623))
- Fixed Modrinth changelog page link back to the full changelog not being clickable sometimes. (Contributed by [ThatGravyBoat](https://github.com/modrinth/code/pull/3593))
- Fixed analytics 'Views' tab not having the updated display for 'Other' regions.`},{date:"2025-05-01T18:30:00-07:00",product:"web",body:`### Improvements
- Added a button to switch Modrinth+ billing between monthly and yearly.
- Updated Modrinth App marketing page screenshots.`},{date:"2025-05-01T18:10:00-07:00",product:"app",version:"0.9.5",body:`### Improvements
- Fixed certain mods with a large number of versions not being able to be installed or load their versions.
- Fixed server descriptions not being rendered with the Minecraft font.
- When installing a modpack, the page will now change to the instance once it's created.
- Last played time for existing servers will now be loaded from log files instead of displaying "Never played".
- Home page's "Jump back in" section will now display in multiple columns when the screen is very large.
- Added the ability to launch the instance from a World entry on the Home page.
- Added the ability to hide a world from the Home page.
- Added an appearance setting to only show instances instead of worlds on the Home page.
- Fixed Home page rendering being blocked by server pings.
- Fixed Home page sometimes not sending the correct protocol version when fetching server data.
- Fixed server data not being loaded immediately after adding it.
- Fixed Worlds tab filters showing up in the wrong situations.
- Fixed new Singleplayer worlds not being added to the Worlds tab without a refresh.
- Fixed an excessive number of items showing up in "Jump back in" sometimes.
- Fixed critical error modal cutting off long single-line error messages.`},{date:"2025-04-29T08:20:00-07:00",product:"web",body:`### Improvements
- Fixed multiple 'Hidden' countries showing up in analytics, updated flag and changed to 'Other'.`},{date:"2025-04-28T19:45:00-07:00",product:"servers",body:`### Added
- Added support for installing snapshot versions of Minecraft.
### Improvements
- Fixed a bug where the loader version wouldn't update after changing Minecraft version if the old loader version did not support the newly selected Minecraft version.
- Improved wording of unprovisioned servers, to inform people that newly purchased servers may be unprovisioned for a small amount of time.`},{date:"2025-04-28T19:45:00-07:00",product:"web",body:`### Improvements
- Combined Apple Silicon and Intel download links for Modrinth App into one link.
- Added an option to copy a permanent link (using IDs instead of changeable slugs) to projects, users, and organizations.
- Fixed overflow issue with dev-mode Maven coordinates widget, and changed wording.`},{date:"2025-04-26T19:15:00-07:00",product:"app",version:"0.9.4",body:`### Added
- Added a Worlds tab to instances that allow you to manage your worlds and servers directly from the app
- Server ping, play count, and descriptions will all show before having to open the game.
- Add, edit, and remove servers
- Edit and delete singleplayer worlds
- Added 'Quick Play' functionality, allowing you to jump straight into worlds and servers from the app
- Added new launcher-log.txt file to log stdout to a file, similar to the Minecraft Launcher which can be helpful for debugging.
### Improvements
- Overhauled the 'Jump back in' section of the Home page, showing recently played worlds instead of just instances.
- This supports the new 'Quick Play' functionality, allowing you to jump back into your recent worlds (on supported Minecraft versions 1.20+)
- Improved the fatal error dialog to show debug information more prominently, and allow you to copy it to share with support.
- Fixed the display of critical announcements that has been broken since 0.9.0.
- Fixed content authors not displaying properly on Content page if the content was owned by an organization.
- Fixed random errors on the Library page, causing no instances to load.
- Fixed .mrpack file association on Linux.
- Fixed occasional failures when moving app directory between disks.`},{date:"2025-04-25T19:45:00-07:00",product:"web",body:`### Improvements
- Added feedback survey upon Modrinth Servers cancellation.
- Added FAQ question about the currency for Modrinth Servers subscription payments.`},{date:"2025-04-18T22:30:00-07:00",product:"web",body:`### Improvements
- Updated Modrinth Servers marketing page to be accurate to post-Pyro infrastructure.`},{date:"2025-04-17T02:25:00-07:00",product:"servers",body:`### Improvements
- Completely overhauled the Backups interface and fixed them being non-functional.
- Backups will now show progress when creating and restoring.
- Backups now have a "Prepare download" phase, which will prepare a backup file for downloading.
- You can now cancel a backup in progress and retry a failed backup.
- When a backup is in progress, you will no longer be allowed to modify the modpack or loader.
- Removed the ability to create backups on install automatically, and replaced with a notice that you may want to create a backup before installing a new modpack or loader. This is because the previous implementation of backup on install was unreliable and buggy. We are working on a better implementation for this feature and plan for it to return in the future.
- Temporarily disabled auto backups button, since they are currently not working.`},{date:"2025-04-15T16:35:00-07:00",product:"servers",body:`### Added
- Added ability to send surveys to customers in the panel via notices.
### Improvements
- Added titles to notices.`},{date:"2025-04-12T22:10:00-07:00",product:"servers",body:`### Added
- Added ability to notify customers in the panel with notices concerning their servers.`},{date:"2025-04-12T22:10:00-07:00",product:"web",body:`### Improvements
- Fix missing dropdown icon in publishing checklist.`},{date:"2025-04-01T21:15:00-07:00",product:"web",body:`### Added
- Reverted Modrinth Pizza due to issues in pizza processing leading to users being redirected to [this page](https://test.kalataka.ru/pizza/error).
- Fixed bug causing theme color to turn orange and corners turn sharp.`},{date:"2025-04-01T12:00:00",product:"web",body:`### Added
- Added Modrinth Pizza.`},{date:"2025-04-01T00:00:00",product:"web",body:`### Improvements
- Fixed project version field accepting more than 32 characters.`},{date:"2025-03-25T18:25:00-07:00",product:"web",body:`### Improvements
- Fixed random 'displayName' error on search pages on some browsers such as Firefox.
- Fixed 'Resubmit' icon in publishing checklist showing up when it hasn't been submitted before.`},{date:"2025-03-25T10:40:00-07:00",product:"web",body:`### Improvements
- Fixed error with links on error pages.`},{date:"2025-03-24T22:30:00-07:00",product:"servers",body:`### Improvements
- Fixed server plugin loaders not being populated when browsing for plugins
- Fixed modpack search being filtered by Minecraft version when browsing for modpacks.`},{date:"2025-03-24T22:30:00-07:00",product:"web",body:`### Improvements
- Improved error handling, especially when the Modrinth API is down.`},{date:"2025-03-13T19:30:00-07:00",product:"web",body:`### Improvements
- Updated Modrinth Servers marketing page, removing Pyro branding.`},{date:"2025-03-12T10:15:00-07:00",product:"web",body:`### Improvements
- Fixed low-res icons being pixelated.
- Fixed mobile navbar hiding bottom of footer.
- Updated CMP info page to correct some incorrect information.
- Updated CCPA notice with updated information since Modrinth Servers and Modrinth+.
- Fixed review page failing under edge case.`},{date:"2025-03-05T17:40:00-08:00",product:"web",body:`### Improvements
- Fixed moderation-end pages failing under edge cases.`},{date:"2025-03-05T12:40:00-08:00",product:"web",body:`### Improvements
- Fixed various errors with modals for some users.
- Fixed hold R button not working on some systems.`},{date:"2025-03-03T22:30:00-08:00",product:"web",body:`### Added
- Hold R for a random project :D
### Improvements
- Improved admin navigation and admin panels.`},{date:"2025-03-02T18:45:00-08:00",product:"web",body:`### Improvements
- Added option to copy version IDs from the version list for project members and developer mode.
- Fixed the staff moderation checklist going off the screen.`},{date:"2025-02-25T10:20:00-08:00",product:"servers",body:`### Improvements
- Fixed server upgrades being allowed when out of stock, despite warning.`},{date:"2025-02-25T10:20:00-08:00",product:"web",body:`### Improvements
- Moved Minecraft brand disclaimer to bottom of footer.
- Improved clarity of the ongoing revenue period footnote on the Revenue page.
- Fixed collections without a summary being unable to be edited.`},{date:"2025-02-21T13:30:00-08:00",product:"web",body:`### Improvements
- Collections are now sorted by creation date. (Contributed by [worldwidepixel](https://github.com/modrinth/code/pull/3286))
- Collections are no longer required to have summaries. (Contributed by [Erb3](https://github.com/modrinth/code/pull/3281))
- Fixed padding issue on revenue page.
- Fixed last modified date on Rewards Program Info page. (Contributed by [IMB11](https://github.com/modrinth/code/pull/3287))`},{date:"2025-02-20T18:15:00-08:00",product:"web",body:`### Improvements
- Revenue page has been updated to more clearly display pending revenue and when it will be available to withdraw. (Contributed by [IMB11](https://github.com/modrinth/code/pull/3250))
- Footer will now be forced to the bottom of the page on short pages.
- Styling fixes to moderation checklist proof form.`},{date:"2025-02-19T22:20:00-08:00",product:"web",body:`### Added
- All-new site footer with more links, better organization, and a new aesthetic.
### Improvements
- Added Dallas location to Modrinth Servers landing page.
- Updated staff moderation checklist to be more visually consistent and more dynamic.`},{date:"2025-02-18T14:30:00-08:00",product:"servers",body:`### Added
- Links will now be detected in console line viewer modal.
### Improvements
- Initial loading of pages in the server panel are now up to 400% faster.
- Syncing and uploading new server icons no longer requires a full page refresh.
- Fix a case where opening the platform modal, closing it, and reopening it would cause the loader version to be unselected.
- Prevents an issue where, if crash log analysis fails, the Overview page would unrender.
- Suspended server listings now have a copy ID button.
- Fixed bugs from Modrinth Servers February Release.`},{date:"2025-02-16T19:10:00-08:00",product:"web",body:`### Improvements
- Fixed spacing issue on confirmation modals.`},{date:"2025-02-16T19:10:00-08:00",product:"servers",body:`### Improvements
- Check for availability before allowing a server upgrade.`},{date:"2025-02-12T19:10:00-08:00",product:"web",body:`### Improvements
- Servers out of stock link now links to Modrinth Discord instead of support page.`},{date:"2025-02-12T19:10:00-08:00",product:"servers",body:`### Added
- Added server upgrades to switch to a larger plan as an option in billing settings.`},{date:"2025-02-12T12:10:00-08:00",product:"web",body:`### Added
- Added a 3D globe to visualize node locations to Modrinth Servers marketing page.
- Added an indicator to show when certain server plans are running low on availability.
### Improvements
- Improved out-of-stock notifications on Modrinth Servers page to be more accurate.`},{date:"2025-02-11T13:00:00-08:00",product:"web",body:`### Improvements
- Added project issues link to report page if present.
- Added relative times for all recent versions to changelog page.
- Added header to changelog sub-pages.
- Fixed various padding issues and changelog overlapping navbar on mobile.`},{date:"2025-02-11T09:00:00-08:00",product:"web",body:`### Added
- Added a changelog page to view recent changes to Modrinth.`},{date:"2025-02-10T14:00:00-08:00",product:"web",body:`### Improvements
- The license selector in project settings has been updated to make selecting a license a clearer process. (Contributed by [Erb3](https://github.com/modrinth/code/pull/3225))`},{date:"2025-02-10T08:00:00-08:00",product:"servers",version:"February Release",body:`### Added
- You can now search and filter through your server's console in the Overview tab, jump to specific results to see the log in context, select them, and copy them.
- You can now drag and select any number of lines in the console, copy them. and view them formatted.
- Hide your server's \`.modrinth.gg\` custom URL using the new **Hide subdomain label** toggle in Options > Preferences.
- The Content page has been updated to make managing your server's mods and plugins easier than ever. Now, only versions that are available for your server's Minecraft version and platform are shown by default, and you can now show beta and alpha versions in the selector.
### Improvements
- The Overview page loads faster.
- The Options > Properties page loads faster.
- The server hardware graphs in the Overview page have been rewritten to improve power efficiency and fix rendering bugs.
- The modpack selector in Options > Platform now shows more information about a modpack, like its tags, downloads, and followers.
- Reinstalling your server no longer requires the browser to refresh the page in order to work properly. We now also lock more options while a server installs to prevent your server from bricking itself.
- The server console has been rewritten to implement proper batching. All performance issues with the console previously have now been fixed.
- An error state has been added in the server list if servers are unable to be fetched.
- Sorting in the Files tab is now accessible by clicking the column headers.
- Backing up a server and erasing all its data simultaneously in the Platform page now works as expected.
- Opening a platform modal, then opening another, no longer causes versions of that platform to fail to load.`},{date:"2025-02-06T10:00:00-08:00",product:"app",version:"0.9.3",body:`### Improvements
- Prevent ads from being able to open additional windows.
- Fixed update checking only checking for mod updates.
- Fixed issue importing newer Prism instances.
- Fixed issue where instances get stuck "Installing" forever when the app is closed during an install.
- Minecraft profile is now updated every time the user's token is refreshed.
- Improved ability for package managers to update Modrinth App by skipping the updater at runtime with an environment variable.`},{date:"2025-02-02T14:00:00-08:00",product:"web",body:`### Improvements
- The report form has been updated to walk you through the report process better and clarify some things like that the form is for Modrinth rules and terms violations, not for bug reports or DMCA takedowns.
`},{date:"2025-01-28T19:00:00-08:00",product:"web",body:`### Improvements
- The UI for analytics has been updated to make it way more useful. What was previously called "Last month" really meant "Previous 30 days". Now, many more options have been added such as:
- "This month" which refers to the current calendar month (Jan 1st - Jan 28th, currently)
- "Last month" which refers to the previous calendar month (currently, Dec 1st thru Dec 31st)
Contributed by [IMB11](https://github.com/modrinth/code/pull/1301).`},{date:"2025-01-10T09:00:00-08:00",product:"servers",version:"January Release",body:`### Added
- Added drag & drop upload support for mod and plugin files on the content page.
- Added a button to upload files to the content page.
- Added extra info (file name, author) to each mod on the content page.
- Show number of mods in search box.
- Adds a "No mods/plugins found for your query!" message if nothing is found, with a button to show everything again.
### Improvements
- The content page layout has been enhanced, now showing the file name and author of each installed item.
- You can now upload directly from the content page, instead of having to go to the Files page.
- Auto-backup now lists options in a dropdown instead of number input.
- Auto-backup 'Save changes' button now disables when no changes are made and backups are off.
- Servers dropdowns now have rounded corners on the last elements for consistency.
- Added support for more suspension reasons.
- Will now show resubscribe button on servers when payment status is "failed" instead of just "cancelled".
- Tweak button styles for consistency.
- Only scroll to the top of the mod/plugin list when searching if already scrolled down.
- Tweak content page mobile UI.`},{date:"2025-01-10T09:00:00-08:00",product:"web",body:`### Improvements
- Tags on project pages are now clickable to view other projects with that tag (Contributed by [Neddo](https://github.com/modrinth/code/pull/3126))
- You can now send someone a link to the download interface with a specific version and loader selected, like so: https://test.kalataka.ru/mod/sodium?version=1.21.2&loader=quilt#download (Contributed by [AwakenedRedstone](https://github.com/modrinth/code/pull/3138))`},{date:"2024-12-26T22:05:00-08:00",product:"servers",body:`### Added
- Added ability for users to clean install modpacks when switching versions.
### Improvements
- New status bar in ServerListing that shows suspension reasons/upgrade status.
- Displays a new screen for servers that are being upgraded.`},{date:"2024-12-25T14:00:00-08:00",product:"app",version:"0.9.2",body:`### Improvements
- Prevent ads from being able to play audio.`},{date:"2024-12-24T22:00:00-08:00",product:"app",version:"0.9.1",body:`### Added
- Added filter to filter projects by disabled.
- Re-added back/forward navigation buttons.
### Improvements
- Fixed environment tags missing from search.
- Fixed an issue where ads could play audio.
- Changed content enable/disable buttons to toggle switches.
- Show "install" button at all time on project cards.
- Fixed issue where cards would shrink when clicking button inside them causing click not to register.
- Made sidebar hide instantly.`},{date:"2024-12-23T22:16:00-08:00",product:"app",version:"0.9.0",body:`### Improvements
- New, updated design that brings the app in-line with the website.
- A dynamic sidebar that adjusts to the most relevant content for each page, and keeps the ad in a consistent place instead of moving all around your screen.
- More organized settings interfaces that makes each option clearer and easier to find.
- Managing your content is much easier with enhanced filters for content types or checking for updates.
- Content discovery has been overhauled and now has fully-featured project pages that match the website.
- Instances now show your total play time, and will show the last time you played on the Home screen.
- The library page now gives responsive feedback as instances are installing.
- The beginnings of a Friends system. In the future, you will be able to share the instances you’re playing and invite them to servers.
- Access your most recent instances with ease with Quick Instances.
- Fixed “Database is locked” errors on devices with slow disks.
- Fixed a few edge cases where API downtime could lead to an invalid state.`},{date:"2024-12-21T16:00:00-08:00",product:"servers",body:`### Added
- Drag and drop anything in the file manager.
- Added file upload queue status bar.
- Added support for parallel file uploads to upload multiple files faster.
- Added ability to cancel in-progress file uploads.
- Creation dates are now displayed for files.
- Can now sort by most recently created files
- YAML and TOML files now support syntax highlighting
- Find and replace support in files editor
### Improvements
- Files list renders up to 200% faster.
- Image viewer performance improvements, improved UI, and better handling of large-to-display images.
- UI inconsistency fixes.
- When reinstalling the loader, the current Minecraft version is automatically selected.
- Allow user to clean install modpacks on the modpack search page.
- Fixed 'Change platform' button leading to the wrong page on a vanilla server.`},{date:"2024-12-11T22:18:45-08:00",product:"servers",version:"December Release",body:`### Added
- Expanded loader support to include **Paper** and **Purpur** servers, offering fully native plugin compatibility.
- A live chat button has been added to the bottom right of all server pages, making it easier for customers to contact our support team.
- Automatic backups are now *rolling*. This means older backups will be deleted to make space for new backups when a new one is being created. You can also now **lock** specific backups so that they don't get deleted by the automatic backup process.
- Users can now easily create backups before reinstalling a server with a different loader.
### Improvements
- The Platform options page has been completely redesigned to streamline user interactions and improve overall clarity.
- Suspended servers now display a clear "Suspended" status instead of a confusing "Connection lost" message, allowing users to easily check their billing information.
- The console has been internally reworked to improve responsiveness and prevent freezing during high-volume spam.
- Resolved CPU usage readings that previously exceeded 100% during high-load scenarios. CPU usage is now accurately normalized to a 0–100% range across all cores.
- Corrected CPU limit settings for some servers, potentially improving performance by up to half a core.
- Fixed an issue preventing server reinstallation when at the maximum backup limit.
- Resolved installation and runtime problems with older Minecraft versions.
- Added missing dynamic system libraries to our images, ensuring compatibility with the vast majority of mods.
- Implemented several additional bug fixes and performance optimizations.
- Removed Herobrine.
### Known Issues
- Backups may occasionally take longer than expected or become stuck. If a backup is unresponsive, please submit a support inquiry, and we'll investigate further.`}].map(e=>({...e,date:ka(e.date)}));function w$(){return YI}function j2(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{const n=e[t],r=typeof n;(r==="object"||r==="function")&&!Object.isFrozen(n)&&j2(n)}),e}class X0{constructor(t){t.data===void 0&&(t.data={}),this.data=t.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function I2(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function Bn(e,...t){const n=Object.create(null);for(const r in e)n[r]=e[r];return t.forEach(function(r){for(const o in r)n[o]=r[o]}),n}const JI="",e1=e=>!!e.scope,QI=(e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((r,o)=>`${r}${"_".repeat(o+1)}`)].join(" ")}return`${t}${e}`};class XI{constructor(t,n){this.buffer="",this.classPrefix=n.classPrefix,t.walk(this)}addText(t){this.buffer+=I2(t)}openNode(t){if(!e1(t))return;const n=QI(t.scope,{prefix:this.classPrefix});this.span(n)}closeNode(t){e1(t)&&(this.buffer+=JI)}value(){return this.buffer}span(t){this.buffer+=``}}const t1=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class fc{constructor(){this.rootNode=t1(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const n=t1({scope:t});this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,n){return typeof n=="string"?t.addText(n):n.children&&(t.openNode(n),n.children.forEach(r=>this._walk(t,r)),t.closeNode(n)),t}static _collapse(t){typeof t!="string"&&t.children&&(t.children.every(n=>typeof n=="string")?t.children=[t.children.join("")]:t.children.forEach(n=>{fc._collapse(n)}))}}class eF extends fc{constructor(t){super(),this.options=t}addText(t){t!==""&&this.add(t)}startScope(t){this.openNode(t)}endScope(){this.closeNode()}__addSublanguage(t,n){const r=t.root;n&&(r.scope=`language:${n}`),this.add(r)}toHTML(){return new XI(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ra(e){return e?typeof e=="string"?e:e.source:null}function F2(e){return Cr("(?=",e,")")}function tF(e){return Cr("(?:",e,")*")}function nF(e){return Cr("(?:",e,")?")}function Cr(...e){return e.map(n=>ra(n)).join("")}function rF(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function hc(...e){return"("+(rF(e).capture?"":"?:")+e.map(r=>ra(r)).join("|")+")"}function L2(e){return new RegExp(e.toString()+"|").exec("").length-1}function oF(e,t){const n=e&&e.exec(t);return n&&n.index===0}const aF=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function mc(e,{joinWith:t}){let n=0;return e.map(r=>{n+=1;const o=n;let a=ra(r),s="";for(;a.length>0;){const i=aF.exec(a);if(!i){s+=a;break}s+=a.substring(0,i.index),a=a.substring(i.index+i[0].length),i[0][0]==="\\"&&i[1]?s+="\\"+String(Number(i[1])+o):(s+=i[0],i[0]==="("&&n++)}return s}).map(r=>`(${r})`).join(t)}const sF=/\b\B/,D2="[a-zA-Z]\\w*",gc="[a-zA-Z_]\\w*",R2="\\b\\d+(\\.\\d+)?",P2="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Z2="\\b(0b[01]+)",iF="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",lF=(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=Cr(t,/.*\b/,e.binary,/\b.*/)),Bn({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(n,r)=>{n.index!==0&&r.ignoreMatch()}},e)},oa={begin:"\\\\[\\s\\S]",relevance:0},uF={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[oa]},cF={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[oa]},dF={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Ti=function(e,t,n={}){const r=Bn({scope:"comment",begin:e,end:t,contains:[]},n);r.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const o=hc("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:Cr(/[ ]+/,"(",o,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),r},pF=Ti("//","$"),fF=Ti("/\\*","\\*/"),hF=Ti("#","$"),mF={scope:"number",begin:R2,relevance:0},gF={scope:"number",begin:P2,relevance:0},yF={scope:"number",begin:Z2,relevance:0},vF={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[oa,{begin:/\[/,end:/\]/,relevance:0,contains:[oa]}]},bF={scope:"title",begin:D2,relevance:0},_F={scope:"title",begin:gc,relevance:0},wF={begin:"\\.\\s*"+gc,relevance:0},kF=function(e){return Object.assign(e,{"on:begin":(t,n)=>{n.data._beginMatch=t[1]},"on:end":(t,n)=>{n.data._beginMatch!==t[1]&&n.ignoreMatch()}})};var Ga=Object.freeze({__proto__:null,APOS_STRING_MODE:uF,BACKSLASH_ESCAPE:oa,BINARY_NUMBER_MODE:yF,BINARY_NUMBER_RE:Z2,COMMENT:Ti,C_BLOCK_COMMENT_MODE:fF,C_LINE_COMMENT_MODE:pF,C_NUMBER_MODE:gF,C_NUMBER_RE:P2,END_SAME_AS_BEGIN:kF,HASH_COMMENT_MODE:hF,IDENT_RE:D2,MATCH_NOTHING_RE:sF,METHOD_GUARD:wF,NUMBER_MODE:mF,NUMBER_RE:R2,PHRASAL_WORDS_MODE:dF,QUOTE_STRING_MODE:cF,REGEXP_MODE:vF,RE_STARTERS_RE:iF,SHEBANG:lF,TITLE_MODE:bF,UNDERSCORE_IDENT_RE:gc,UNDERSCORE_TITLE_MODE:_F});function xF(e,t){e.input[e.index-1]==="."&&t.ignoreMatch()}function TF(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function CF(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=xF,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function EF(e,t){Array.isArray(e.illegal)&&(e.illegal=hc(...e.illegal))}function MF(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function SF(e,t){e.relevance===void 0&&(e.relevance=1)}const AF=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(r=>{delete e[r]}),e.keywords=n.keywords,e.begin=Cr(n.beforeMatch,F2(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},jF=["of","and","for","in","not","or","if","then","parent","list","value"],IF="keyword";function O2(e,t,n=IF){const r=Object.create(null);return typeof e=="string"?o(n,e.split(" ")):Array.isArray(e)?o(n,e):Object.keys(e).forEach(function(a){Object.assign(r,O2(e[a],t,a))}),r;function o(a,s){t&&(s=s.map(i=>i.toLowerCase())),s.forEach(function(i){const l=i.split("|");r[l[0]]=[a,FF(l[0],l[1])]})}}function FF(e,t){return t?Number(t):LF(e)?0:1}function LF(e){return jF.includes(e.toLowerCase())}const n1={},mr=e=>{console.error(e)},r1=(e,...t)=>{console.log(`WARN: ${e}`,...t)},Ir=(e,t)=>{n1[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),n1[`${e}/${t}`]=!0)},qs=new Error;function N2(e,t,{key:n}){let r=0;const o=e[n],a={},s={};for(let i=1;i<=t.length;i++)s[i+r]=o[i],a[i+r]=!0,r+=L2(t[i-1]);e[n]=s,e[n]._emit=a,e[n]._multi=!0}function DF(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw mr("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),qs;if(typeof e.beginScope!="object"||e.beginScope===null)throw mr("beginScope must be object"),qs;N2(e,e.begin,{key:"beginScope"}),e.begin=mc(e.begin,{joinWith:""})}}function RF(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw mr("skip, excludeEnd, returnEnd not compatible with endScope: {}"),qs;if(typeof e.endScope!="object"||e.endScope===null)throw mr("endScope must be object"),qs;N2(e,e.end,{key:"endScope"}),e.end=mc(e.end,{joinWith:""})}}function PF(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function ZF(e){PF(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),DF(e),RF(e)}function OF(e){function t(s,i){return new RegExp(ra(s),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(i?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(i,l){l.position=this.position++,this.matchIndexes[this.matchAt]=l,this.regexes.push([l,i]),this.matchAt+=L2(i)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const i=this.regexes.map(l=>l[1]);this.matcherRe=t(mc(i,{joinWith:"|"}),!0),this.lastIndex=0}exec(i){this.matcherRe.lastIndex=this.lastIndex;const l=this.matcherRe.exec(i);if(!l)return null;const u=l.findIndex((d,p)=>p>0&&d!==void 0),c=this.matchIndexes[u];return l.splice(0,u),Object.assign(l,c)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(i){if(this.multiRegexes[i])return this.multiRegexes[i];const l=new n;return this.rules.slice(i).forEach(([u,c])=>l.addRule(u,c)),l.compile(),this.multiRegexes[i]=l,l}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(i,l){this.rules.push([i,l]),l.type==="begin"&&this.count++}exec(i){const l=this.getMatcher(this.regexIndex);l.lastIndex=this.lastIndex;let u=l.exec(i);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){const c=this.getMatcher(0);c.lastIndex=this.lastIndex+1,u=c.exec(i)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function o(s){const i=new r;return s.contains.forEach(l=>i.addRule(l.begin,{rule:l,type:"begin"})),s.terminatorEnd&&i.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&i.addRule(s.illegal,{type:"illegal"}),i}function a(s,i){const l=s;if(s.isCompiled)return l;[TF,MF,ZF,AF].forEach(c=>c(s,i)),e.compilerExtensions.forEach(c=>c(s,i)),s.__beforeBegin=null,[CF,EF,SF].forEach(c=>c(s,i)),s.isCompiled=!0;let u=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),u=s.keywords.$pattern,delete s.keywords.$pattern),u=u||/\w+/,s.keywords&&(s.keywords=O2(s.keywords,e.case_insensitive)),l.keywordPatternRe=t(u,!0),i&&(s.begin||(s.begin=/\B|\b/),l.beginRe=t(l.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(l.endRe=t(l.end)),l.terminatorEnd=ra(l.end)||"",s.endsWithParent&&i.terminatorEnd&&(l.terminatorEnd+=(s.end?"|":"")+i.terminatorEnd)),s.illegal&&(l.illegalRe=t(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(c){return NF(c==="self"?s:c)})),s.contains.forEach(function(c){a(c,l)}),s.starts&&a(s.starts,i),l.matcher=o(l),l}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=Bn(e.classNameAliases||{}),a(e)}function B2(e){return e?e.endsWithParent||B2(e.starts):!1}function NF(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return Bn(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:B2(e)?Bn(e,{starts:e.starts?Bn(e.starts):null}):Object.isFrozen(e)?Bn(e):e}var BF="11.9.0";class $F extends Error{constructor(t,n){super(t),this.name="HTMLInjectionError",this.html=n}}const gl=I2,o1=Bn,a1=Symbol("nomatch"),zF=7,$2=function(e){const t=Object.create(null),n=Object.create(null),r=[];let o=!0;const a="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]};let i={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:eF};function l(A){return i.noHighlightRe.test(A)}function u(A){let E=A.className+" ";E+=A.parentNode?A.parentNode.className:"";const U=i.languageDetectRe.exec(E);if(U){const J=I(U[1]);return J||(r1(a.replace("{}",U[1])),r1("Falling back to no-highlight mode for this block.",A)),J?U[1]:"no-highlight"}return E.split(/\s+/).find(J=>l(J)||I(J))}function c(A,E,U){let J="",ae="";typeof E=="object"?(J=A,U=E.ignoreIllegals,ae=E.language):(Ir("10.7.0","highlight(lang, code, ...args) has been deprecated."),Ir("10.7.0",`Please use highlight(code, options) instead.
https://github.com/highlightjs/highlight.js/issues/2277`),ae=A,J=E),U===void 0&&(U=!0);const ce={code:J,language:ae};O("before:highlight",ce);const ge=ce.result?ce.result:d(ce.language,ce.code,U);return ge.code=ce.code,O("after:highlight",ge),ge}function d(A,E,U,J){const ae=Object.create(null);function ce(G,Q){return G.keywords[Q]}function ge(){if(!q.keywords){Y.addText(z);return}let G=0;q.keywordPatternRe.lastIndex=0;let Q=q.keywordPatternRe.exec(z),oe="";for(;Q;){oe+=z.substring(G,Q.index);const he=W.case_insensitive?Q[0].toLowerCase():Q[0],_e=ce(q,he);if(_e){const[$e,nt]=_e;if(Y.addText(oe),oe="",ae[he]=(ae[he]||0)+1,ae[he]<=zF&&(ue+=nt),$e.startsWith("_"))oe+=Q[0];else{const tr=W.classNameAliases[$e]||$e;Ce(Q[0],tr)}}else oe+=Q[0];G=q.keywordPatternRe.lastIndex,Q=q.keywordPatternRe.exec(z)}oe+=z.substring(G),Y.addText(oe)}function Ae(){if(z==="")return;let G=null;if(typeof q.subLanguage=="string"){if(!t[q.subLanguage]){Y.addText(z);return}G=d(q.subLanguage,z,!0,ee[q.subLanguage]),ee[q.subLanguage]=G._top}else G=f(z,q.subLanguage.length?q.subLanguage:null);q.relevance>0&&(ue+=G.relevance),Y.__addSublanguage(G._emitter,G.language)}function Te(){q.subLanguage!=null?Ae():ge(),z=""}function Ce(G,Q){G!==""&&(Y.startScope(Q),Y.addText(G),Y.endScope())}function B(G,Q){let oe=1;const he=Q.length-1;for(;oe<=he;){if(!G._emit[oe]){oe++;continue}const _e=W.classNameAliases[G[oe]]||G[oe],$e=Q[oe];_e?Ce($e,_e):(z=$e,ge(),z=""),oe++}}function ne(G,Q){return G.scope&&typeof G.scope=="string"&&Y.openNode(W.classNameAliases[G.scope]||G.scope),G.beginScope&&(G.beginScope._wrap?(Ce(z,W.classNameAliases[G.beginScope._wrap]||G.beginScope._wrap),z=""):G.beginScope._multi&&(B(G.beginScope,Q),z="")),q=Object.create(G,{parent:{value:q}}),q}function X(G,Q,oe){let he=oF(G.endRe,oe);if(he){if(G["on:end"]){const _e=new X0(G);G["on:end"](Q,_e),_e.isMatchIgnored&&(he=!1)}if(he){for(;G.endsParent&&G.parent;)G=G.parent;return G}}if(G.endsWithParent)return X(G.parent,Q,oe)}function re(G){return q.matcher.regexIndex===0?(z+=G[0],1):(pe=!0,0)}function me(G){const Q=G[0],oe=G.rule,he=new X0(oe),_e=[oe.__beforeBegin,oe["on:begin"]];for(const $e of _e)if($e&&($e(G,he),he.isMatchIgnored))return re(Q);return oe.skip?z+=Q:(oe.excludeBegin&&(z+=Q),Te(),!oe.returnBegin&&!oe.excludeBegin&&(z=Q)),ne(oe,G),oe.returnBegin?0:Q.length}function we(G){const Q=G[0],oe=E.substring(G.index),he=X(q,G,oe);if(!he)return a1;const _e=q;q.endScope&&q.endScope._wrap?(Te(),Ce(Q,q.endScope._wrap)):q.endScope&&q.endScope._multi?(Te(),B(q.endScope,G)):_e.skip?z+=Q:(_e.returnEnd||_e.excludeEnd||(z+=Q),Te(),_e.excludeEnd&&(z=Q));do q.scope&&Y.closeNode(),!q.skip&&!q.subLanguage&&(ue+=q.relevance),q=q.parent;while(q!==he.parent);return he.starts&&ne(he.starts,G),_e.returnEnd?0:Q.length}function x(){const G=[];for(let Q=q;Q!==W;Q=Q.parent)Q.scope&&G.unshift(Q.scope);G.forEach(Q=>Y.openNode(Q))}let T={};function R(G,Q){const oe=Q&&Q[0];if(z+=G,oe==null)return Te(),0;if(T.type==="begin"&&Q.type==="end"&&T.index===Q.index&&oe===""){if(z+=E.slice(Q.index,Q.index+1),!o){const he=new Error(`0 width match regex (${A})`);throw he.languageName=A,he.badRule=T.rule,he}return 1}if(T=Q,Q.type==="begin")return me(Q);if(Q.type==="illegal"&&!U){const he=new Error('Illegal lexeme "'+oe+'" for mode "'+(q.scope||"")+'"');throw he.mode=q,he}else if(Q.type==="end"){const he=we(Q);if(he!==a1)return he}if(Q.type==="illegal"&&oe==="")return 1;if(se>1e5&&se>Q.index*3)throw new Error("potential infinite loop, way more iterations than matches");return z+=oe,oe.length}const W=I(A);if(!W)throw mr(a.replace("{}",A)),new Error('Unknown language: "'+A+'"');const H=OF(W);let K="",q=J||H;const ee={},Y=new i.__emitter(i);x();let z="",ue=0,te=0,se=0,pe=!1;try{if(W.__emitTokens)W.__emitTokens(E,Y);else{for(q.matcher.considerAll();;){se++,pe?pe=!1:q.matcher.considerAll(),q.matcher.lastIndex=te;const G=q.matcher.exec(E);if(!G)break;const Q=E.substring(te,G.index),oe=R(Q,G);te=G.index+oe}R(E.substring(te))}return Y.finalize(),K=Y.toHTML(),{language:A,value:K,relevance:ue,illegal:!1,_emitter:Y,_top:q}}catch(G){if(G.message&&G.message.includes("Illegal"))return{language:A,value:gl(E),illegal:!0,relevance:0,_illegalBy:{message:G.message,index:te,context:E.slice(te-100,te+100),mode:G.mode,resultSoFar:K},_emitter:Y};if(o)return{language:A,value:gl(E),illegal:!1,relevance:0,errorRaised:G,_emitter:Y,_top:q};throw G}}function p(A){const E={value:gl(A),illegal:!1,relevance:0,_top:s,_emitter:new i.__emitter(i)};return E._emitter.addText(A),E}function f(A,E){E=E||i.languages||Object.keys(t);const U=p(A),J=E.filter(I).filter(j).map(Te=>d(Te,A,!1));J.unshift(U);const ae=J.sort((Te,Ce)=>{if(Te.relevance!==Ce.relevance)return Ce.relevance-Te.relevance;if(Te.language&&Ce.language){if(I(Te.language).supersetOf===Ce.language)return 1;if(I(Ce.language).supersetOf===Te.language)return-1}return 0}),[ce,ge]=ae,Ae=ce;return Ae.secondBest=ge,Ae}function h(A,E,U){const J=E&&n[E]||U;A.classList.add("hljs"),A.classList.add(`language-${J}`)}function m(A){let E=null;const U=u(A);if(l(U))return;if(O("before:highlightElement",{el:A,language:U}),A.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",A);return}if(A.children.length>0&&(i.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(A)),i.throwUnescapedHTML))throw new $F("One of your code blocks includes unescaped HTML.",A.innerHTML);E=A;const J=E.textContent,ae=U?c(J,{language:U,ignoreIllegals:!0}):f(J);A.innerHTML=ae.value,A.dataset.highlighted="yes",h(A,U,ae.language),A.result={language:ae.language,re:ae.relevance,relevance:ae.relevance},ae.secondBest&&(A.secondBest={language:ae.secondBest.language,relevance:ae.secondBest.relevance}),O("after:highlightElement",{el:A,result:ae,text:J})}function _(A){i=o1(i,A)}const k=()=>{y(),Ir("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function v(){y(),Ir("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let g=!1;function y(){if(document.readyState==="loading"){g=!0;return}document.querySelectorAll(i.cssSelector).forEach(m)}function w(){g&&y()}typeof window<"u"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",w,!1);function M(A,E){let U=null;try{U=E(e)}catch(J){if(mr("Language definition for '{}' could not be registered.".replace("{}",A)),o)mr(J);else throw J;U=s}U.name||(U.name=A),t[A]=U,U.rawDefinition=E.bind(null,e),U.aliases&&D(U.aliases,{languageName:A})}function P(A){delete t[A];for(const E of Object.keys(n))n[E]===A&&delete n[E]}function Z(){return Object.keys(t)}function I(A){return A=(A||"").toLowerCase(),t[A]||t[n[A]]}function D(A,{languageName:E}){typeof A=="string"&&(A=[A]),A.forEach(U=>{n[U.toLowerCase()]=E})}function j(A){const E=I(A);return E&&!E.disableAutodetect}function L(A){A["before:highlightBlock"]&&!A["before:highlightElement"]&&(A["before:highlightElement"]=E=>{A["before:highlightBlock"](Object.assign({block:E.el},E))}),A["after:highlightBlock"]&&!A["after:highlightElement"]&&(A["after:highlightElement"]=E=>{A["after:highlightBlock"](Object.assign({block:E.el},E))})}function V(A){L(A),r.push(A)}function N(A){const E=r.indexOf(A);E!==-1&&r.splice(E,1)}function O(A,E){const U=A;r.forEach(function(J){J[U]&&J[U](E)})}function F(A){return Ir("10.7.0","highlightBlock will be removed entirely in v12.0"),Ir("10.7.0","Please use highlightElement now."),m(A)}Object.assign(e,{highlight:c,highlightAuto:f,highlightAll:y,highlightElement:m,highlightBlock:F,configure:_,initHighlighting:k,initHighlightingOnLoad:v,registerLanguage:M,unregisterLanguage:P,listLanguages:Z,getLanguage:I,registerAliases:D,autoDetection:j,inherit:o1,addPlugin:V,removePlugin:N}),e.debugMode=function(){o=!1},e.safeMode=function(){o=!0},e.versionString=BF,e.regex={concat:Cr,lookahead:F2,either:hc,optional:nF,anyNumberOfTimes:tF};for(const A in Ga)typeof Ga[A]=="object"&&j2(Ga[A]);return Object.assign(e,Ga),e},so=$2({});so.newInstance=()=>$2({});var HF=so;so.HighlightJS=so;so.default=so;const Be=wa(HF);function qF(e){return{name:"Gradle",case_insensitive:!0,keywords:["task","project","allprojects","subprojects","artifacts","buildscript","configurations","dependencies","repositories","sourceSets","description","delete","from","into","include","exclude","source","classpath","destinationDir","includes","options","sourceCompatibility","targetCompatibility","group","flatDir","doLast","doFirst","flatten","todir","fromdir","ant","def","abstract","break","case","catch","continue","default","do","else","extends","final","finally","for","if","implements","instanceof","native","new","private","protected","public","return","static","switch","synchronized","throw","throws","transient","try","volatile","while","strictfp","package","import","false","null","super","this","true","antlrtask","checkstyle","codenarc","copy","boolean","byte","char","class","double","float","int","interface","long","short","void","compile","runTime","file","fileTree","abs","any","append","asList","asWritable","call","collect","compareTo","count","div","dump","each","eachByte","eachFile","eachLine","every","find","findAll","flatten","getAt","getErr","getIn","getOut","getText","grep","immutable","inject","inspect","intersect","invokeMethods","isCase","join","leftShift","minus","multiply","newInputStream","newOutputStream","newPrintWriter","newReader","newWriter","next","plus","pop","power","previous","print","println","push","putAt","read","readBytes","readLines","reverse","reverseEach","round","size","sort","splitEachLine","step","subMap","times","toInteger","toList","tokenize","upto","waitForOrKill","withPrintWriter","withReader","withStream","withWriter","withWriterAppend","write","writeLine"],contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.REGEXP_MODE]}}function yl(e,t={}){return t.variants=e,t}function UF(e){const t=e.regex,n="[A-Za-z0-9_$]+",r=yl([e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]})]),o={className:"regexp",begin:/~?\/[^\/\n]+\//,contains:[e.BACKSLASH_ESCAPE]},a=yl([e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]),s=yl([{begin:/"""/,end:/"""/},{begin:/'''/,end:/'''/},{begin:"\\$/",end:"/\\$",relevance:10},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE],{className:"string"}),i={match:[/(class|interface|trait|enum|record|extends|implements)/,/\s+/,e.UNDERSCORE_IDENT_RE],scope:{1:"keyword",3:"title.class"}};return{name:"Groovy",keywords:{"variable.language":"this super",literal:"true false null",type:["byte","short","char","int","long","boolean","float","double","void"],keyword:["def","as","in","assert","trait","abstract","static","volatile","transient","public","private","protected","synchronized","final","class","interface","enum","if","else","for","while","switch","case","break","default","continue","throw","throws","try","catch","finally","implements","extends","new","import","package","return","instanceof","var"]},contains:[e.SHEBANG({binary:"groovy",relevance:10}),r,s,o,a,i,{className:"meta",begin:"@[A-Za-z]+",relevance:0},{className:"attr",begin:n+"[ ]*:",relevance:0},{begin:/\?/,end:/:/,relevance:0,contains:[r,s,o,a,"self"]},{className:"symbol",begin:"^[ ]*"+t.lookahead(n+":"),excludeBegin:!0,end:n+":",relevance:0}],illegal:/#|<\//}}function VF(e){const t=e.regex,n={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},r=e.COMMENT();r.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const o={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},a={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},i={begin:/\[/,end:/\]/,contains:[r,a,o,s,n,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,c=/'[^']*'/,d=t.either(l,u,c),p=t.concat(d,"(\\s*\\.\\s*",d,")*",t.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[r,{className:"section",begin:/\[+/,end:/\]+/},{begin:p,className:"attr",starts:{end:/$/,contains:[r,i,a,o,s,n]}}]}}var Zr="[0-9](_*[0-9])*",Ka=`\\.(${Zr})`,Ya="[0-9a-fA-F](_*[0-9a-fA-F])*",s1={className:"number",variants:[{begin:`(\\b(${Zr})((${Ka})|\\.)?|(${Ka}))[eE][+-]?(${Zr})[fFdD]?\\b`},{begin:`\\b(${Zr})((${Ka})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Ka})[fFdD]?\\b`},{begin:`\\b(${Zr})[fFdD]\\b`},{begin:`\\b0[xX]((${Ya})\\.?|(${Ya})?\\.(${Ya}))[pP][+-]?(${Zr})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Ya})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function z2(e,t,n){return n===-1?"":e.replace(t,r=>z2(e,t,n-1))}function WF(e){const t=e.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",r=n+z2("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),l={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},u={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},c={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[t.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[c,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+r+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[u,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,s1,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},s1,u]}}const i1="[A-Za-z$_][0-9A-Za-z$_]*",GF=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],KF=["true","false","null","undefined","NaN","Infinity"],H2=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],q2=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],U2=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],YF=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],JF=[].concat(U2,H2,q2);function QF(e){const t=e.regex,n=(E,{after:U})=>{const J=""+E[0].slice(1);return E.input.indexOf(J,U)!==-1},r=i1,o={begin:"<>",end:">"},a=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(E,U)=>{const J=E[0].length+E.index,ae=E.input[J];if(ae==="<"||ae===","){U.ignoreMatch();return}ae===">"&&(n(E,{after:J})||U.ignoreMatch());let ce;const ge=E.input.substring(J);if(ce=ge.match(/^\s*=/)){U.ignoreMatch();return}if((ce=ge.match(/^\s+extends\s+/))&&ce.index===0){U.ignoreMatch();return}}},i={$pattern:i1,keyword:GF,literal:KF,built_in:JF,"variable.language":YF},l="[0-9](_?[0-9])*",u=`\\.(${l})`,c="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",d={className:"number",variants:[{begin:`(\\b(${c})((${u})|\\.)?|(${u}))[eE][+-]?(${l})\\b`},{begin:`\\b(${c})\\b((${u})\\b|\\.)?|(${u})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},f={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},h={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,p],subLanguage:"css"}},m={begin:"gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},_={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,p]},v={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},g=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,f,h,m,_,{match:/\$\d+/},d];p.contains=g.concat({begin:/\{/,end:/\}/,keywords:i,contains:["self"].concat(g)});const y=[].concat(v,p.contains),w=y.concat([{begin:/\(/,end:/\)/,keywords:i,contains:["self"].concat(y)}]),M={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:w},P={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},Z={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...H2,...q2]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},D={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[M],illegal:/%/},j={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function L(E){return t.concat("(?!",E.join("|"),")")}const V={match:t.concat(/\b/,L([...U2,"super","import"]),r,t.lookahead(/\(/)),className:"title.function",relevance:0},N={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},O={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},M]},F="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",A={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(F)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[M]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:i,exports:{PARAMS_CONTAINS:w,CLASS_REFERENCE:Z},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,f,h,m,_,v,{match:/\$\d+/},d,Z,{className:"attr",begin:r+t.lookahead(":"),relevance:0},A,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[v,e.REGEXP_MODE,{className:"function",begin:F,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:w}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:o.begin,end:o.end},{match:a},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},D,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[M,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},N,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[M]},V,j,P,O,{match:/\$[(.]/}]}}function XF(e){const t={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},r=["true","false","null"],o={scope:"literal",beginKeywords:r.join(" ")};return{name:"JSON",keywords:{literal:r},contains:[t,n,e.QUOTE_STRING_MODE,o,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var Or="[0-9](_*[0-9])*",Ja=`\\.(${Or})`,Qa="[0-9a-fA-F](_*[0-9a-fA-F])*",eL={className:"number",variants:[{begin:`(\\b(${Or})((${Ja})|\\.)?|(${Ja}))[eE][+-]?(${Or})[fFdD]?\\b`},{begin:`\\b(${Or})((${Ja})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Ja})[fFdD]?\\b`},{begin:`\\b(${Or})[fFdD]\\b`},{begin:`\\b0[xX]((${Qa})\\.?|(${Qa})?\\.(${Qa}))[pP][+-]?(${Or})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Qa})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function tL(e){const t={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},n={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},r={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},o={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},a={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[a,o]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,a,o]}]};o.contains.push(s);const i={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(s,{className:"string"}),"self"]}]},u=eL,c=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),d={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},p=d;return p.variants[1].contains=[d],d.variants[1].contains=[p],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,c,n,r,i,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:t,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[d,e.C_LINE_COMMENT_MODE,c],relevance:0},e.C_LINE_COMMENT_MODE,c,i,l,s,e.C_NUMBER_MODE]},c]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},i,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
`},u]}}function nL(e){const t="\\[=*\\[",n="\\]=*\\]",r={begin:t,end:n,contains:["self"]},o=[e.COMMENT("--(?!"+t+")","$"),e.COMMENT("--"+t,n,{contains:[r],relevance:10})];return{name:"Lua",keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:o.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:o}].concat(o)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:t,end:n,contains:[r],relevance:5}])}}function rL(e){const t="[ \\t\\f]*",n="[ \\t\\f]+",r=t+"[:=]"+t,o=n,a="("+r+"|"+o+")",s="([^\\\\:= \\t\\f\\n]|\\\\.)+",i={end:a,relevance:0,starts:{className:"string",end:/$/,relevance:0,contains:[{begin:"\\\\\\\\"},{begin:"\\\\\\n"}]}};return{name:".properties",disableAutodetect:!0,case_insensitive:!0,illegal:/\S/,contains:[e.COMMENT("^\\s*[!#]","$"),{returnBegin:!0,variants:[{begin:s+r},{begin:s+o}],contains:[{className:"attr",begin:s,endsParent:!0}],starts:i},{className:"attr",begin:s+t+"$"}]}}function oL(e){const t=e.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:i,illegal:/#/},c={begin:/\{\{/,relevance:0},d={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,l,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,l,c,u]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,c,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,c,u]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",f=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,h=`\\b|${r.join("|")}`,m={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${f}))[eE][+-]?(${p})[jJ]?(?=${h})`},{begin:`(${f})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${h})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${h})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${h})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${h})`},{begin:`\\b(${p})[jJ](?=${h})`}]},_={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},k={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:["self",l,m,d,e.HASH_COMMENT_MODE]}]};return u.contains=[d,m,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:i,illegal:/(<\/|\?)|=>/,contains:[l,m,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},d,_,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[k]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[m,k,d]}]}}function aL(e){const t=e.regex,n={className:"meta",begin:"@[A-Za-z]+"},r={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"},{begin:/\$\{/,end:/\}/}]},o={className:"string",variants:[{begin:'"""',end:'"""'},{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:'[a-z]+"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,r]},{className:"string",begin:'[a-z]+"""',end:'"""',contains:[r],relevance:10}]},a={className:"type",begin:"\\b[A-Z][A-Za-z0-9_]*",relevance:0},s={className:"title",begin:/[^0-9\n\t "'(),.`{}\[\]:;][^\n\t "'(),.`{}\[\]:;]+|[^0-9\n\t "'(),.`{}\[\]:;=]/,relevance:0},i={className:"class",beginKeywords:"class object trait type",end:/[:={\[\n;]/,excludeEnd:!0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{beginKeywords:"extends with",relevance:10},{begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},s]},l={className:"function",beginKeywords:"def",end:t.lookahead(/[:={\[(\n;]/),contains:[s]},u={begin:[/^\s*/,"extension",/\s+(?=[[(])/],beginScope:{2:"keyword"}},c={begin:[/^\s*/,/end/,/\s+/,/(extension\b)?/],beginScope:{2:"keyword",4:"keyword"}},d=[{match:/\.inline\b/},{begin:/\binline(?=\s)/,keywords:"inline"}],p={begin:[/\(\s*/,/using/,/\s+(?!\))/],beginScope:{2:"keyword"}};return{name:"Scala",keywords:{literal:"true false null",keyword:"type yield lazy override def with val var sealed abstract private trait object if then forSome for while do throw finally protected extends import final return else break new catch super class case package default try this match continue throws implicit export enum given transparent"},contains:[{begin:["//>",/\s+/,/using/,/\s+/,/\S+/],beginScope:{1:"comment",3:"keyword",5:"type"},end:/$/,contains:[{className:"string",begin:/\S+/}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,o,a,l,i,e.C_NUMBER_MODE,u,c,...d,p,n]}}function sL(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,o={className:"symbol",begin:/&[a-z]+;|[0-9]+;|[a-f0-9]+;/},a={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=e.inherit(a,{begin:/\(/,end:/\)/}),i=e.inherit(e.APOS_STRING_MODE,{className:"string"}),l=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),u={endsWithParent:!0,illegal:/,relevance:0,contains:[{className:"attr",begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[o]},{begin:/'/,end:/'/,contains:[o]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[a,l,i,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[a,s,l,i]}]}]},e.COMMENT(//,{relevance:10}),{begin://,relevance:10},o,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/