Generate a full Minecraft plugin for Paper 1.21.11 with the following features: 1. Disasters (all infinite duration, only stopped manually): - Tornado: 50 blocks high, spins randomly, pulls players within 20 blocks (15–20 blocks: slow, escapable; 0–14 blocks: strong, inescapable), sucks up only a few blocks at a time. Blocks return to original positions on /disasterstop tornado. Spiral cloud particles visible along full height. - Black Hole: 20 block radius, pulls players and blocks. Grows as blocks are absorbed. Players in 0–15 blocks die instantly. Cannot use ender pearls or chorus fruit inside radius. Blocks return to original positions on /disasterstop blackhole. Visual: black swirling portal particles. - Lava Flood: 30 block radius, rises 3 blocks every 20 seconds, invisible barrier around flood, visible lava + smoke. Lava and barrier removed on /disasterstop lava_pool. - Earthquake: 20 block radius, shakes ground, top blocks fall as falling blocks, dust and smoke particles visible. Stops on /disasterstop earthquake. - Meteor Shower: Fireballs fall from sky in radius. - Lightning Storm: Lightning strikes randomly in radius. - Explosion Rain: Random explosions. - Random Disaster: Spawns one of the above disasters randomly at location. 2. Commands: - /disaster <type> [x y z]: summon disaster at player location or specified coordinates. - /disasterstop <type>: stops the disaster, restores blocks if applicable. - /disastergui: opens a GUI with buttons to start/stop disasters. 3. GUI: - Visual menu with buttons for each disaster and a “Stop All Disasters” button. - Clicking a disaster button summons it at player location. - Clicking Stop All stops all running disasters. 4. Visuals: - Tornado: spiral clouds, spinning randomly. - Black Hole: black swirling portal particles. - Lava Flood: visible lava and smoke particles. - Earthquake: dust + smoke particles along shaking blocks. - Optional: particles for meteors, lightning, explosions. 5. Block Management: - Tornado and Black Hole track sucked blocks and restore them to original positions on stop. - Lava Flood barrier and lava removed on stop. 6. Compatibility: - Paper API version 1.21.11 - No automatic duration; all disasters continue until manually stopped. - Fully functional with Java 21. 7. Plugin structure: - Main class extending JavaPlugin. - Proper task management with BukkitRunnable. - Listener for GUI clicks. - Clean, modular code for each disaster. - Include plugin.yml content with commands and api-version 1.21. Generate the complete Java plugin code, ready for compilation and use on Paper 1.21.11.