Skip to main content

azalea_registry/tags/
blocks.rs

1// This file was @generated by codegen/lib/code/tags.py, don't edit it manually!
2
3use std::sync::LazyLock;
4
5use crate::{builtin::BlockKind, tags::RegistryTag};
6
7pub static ACACIA_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
8    RegistryTag::new(vec![
9        BlockKind::AcaciaLog,
10        BlockKind::StrippedAcaciaLog,
11        BlockKind::AcaciaWood,
12        BlockKind::StrippedAcaciaWood,
13    ])
14});
15pub static AIR: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
16    RegistryTag::new(vec![BlockKind::Air, BlockKind::VoidAir, BlockKind::CaveAir])
17});
18pub static ALL_HANGING_SIGNS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
19    RegistryTag::new(vec![
20        BlockKind::OakHangingSign,
21        BlockKind::SpruceHangingSign,
22        BlockKind::BirchHangingSign,
23        BlockKind::AcaciaHangingSign,
24        BlockKind::CherryHangingSign,
25        BlockKind::JungleHangingSign,
26        BlockKind::DarkOakHangingSign,
27        BlockKind::PaleOakHangingSign,
28        BlockKind::CrimsonHangingSign,
29        BlockKind::WarpedHangingSign,
30        BlockKind::MangroveHangingSign,
31        BlockKind::BambooHangingSign,
32        BlockKind::OakWallHangingSign,
33        BlockKind::SpruceWallHangingSign,
34        BlockKind::BirchWallHangingSign,
35        BlockKind::AcaciaWallHangingSign,
36        BlockKind::CherryWallHangingSign,
37        BlockKind::JungleWallHangingSign,
38        BlockKind::DarkOakWallHangingSign,
39        BlockKind::PaleOakWallHangingSign,
40        BlockKind::MangroveWallHangingSign,
41        BlockKind::CrimsonWallHangingSign,
42        BlockKind::WarpedWallHangingSign,
43        BlockKind::BambooWallHangingSign,
44    ])
45});
46pub static ALL_SIGNS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
47    RegistryTag::new(vec![
48        BlockKind::OakSign,
49        BlockKind::SpruceSign,
50        BlockKind::BirchSign,
51        BlockKind::AcaciaSign,
52        BlockKind::CherrySign,
53        BlockKind::JungleSign,
54        BlockKind::DarkOakSign,
55        BlockKind::PaleOakSign,
56        BlockKind::MangroveSign,
57        BlockKind::BambooSign,
58        BlockKind::OakWallSign,
59        BlockKind::SpruceWallSign,
60        BlockKind::BirchWallSign,
61        BlockKind::AcaciaWallSign,
62        BlockKind::CherryWallSign,
63        BlockKind::JungleWallSign,
64        BlockKind::DarkOakWallSign,
65        BlockKind::PaleOakWallSign,
66        BlockKind::MangroveWallSign,
67        BlockKind::BambooWallSign,
68        BlockKind::OakHangingSign,
69        BlockKind::SpruceHangingSign,
70        BlockKind::BirchHangingSign,
71        BlockKind::AcaciaHangingSign,
72        BlockKind::CherryHangingSign,
73        BlockKind::JungleHangingSign,
74        BlockKind::DarkOakHangingSign,
75        BlockKind::PaleOakHangingSign,
76        BlockKind::CrimsonHangingSign,
77        BlockKind::WarpedHangingSign,
78        BlockKind::MangroveHangingSign,
79        BlockKind::BambooHangingSign,
80        BlockKind::OakWallHangingSign,
81        BlockKind::SpruceWallHangingSign,
82        BlockKind::BirchWallHangingSign,
83        BlockKind::AcaciaWallHangingSign,
84        BlockKind::CherryWallHangingSign,
85        BlockKind::JungleWallHangingSign,
86        BlockKind::DarkOakWallHangingSign,
87        BlockKind::PaleOakWallHangingSign,
88        BlockKind::MangroveWallHangingSign,
89        BlockKind::CrimsonWallHangingSign,
90        BlockKind::WarpedWallHangingSign,
91        BlockKind::BambooWallHangingSign,
92        BlockKind::CrimsonSign,
93        BlockKind::WarpedSign,
94        BlockKind::CrimsonWallSign,
95        BlockKind::WarpedWallSign,
96    ])
97});
98pub static ANCIENT_CITY_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
99    RegistryTag::new(vec![
100        BlockKind::GrayWool,
101        BlockKind::Deepslate,
102        BlockKind::CobbledDeepslate,
103        BlockKind::DeepslateTiles,
104        BlockKind::DeepslateTileSlab,
105        BlockKind::DeepslateTileWall,
106        BlockKind::DeepslateBricks,
107        BlockKind::DeepslateBrickStairs,
108        BlockKind::DeepslateBrickSlab,
109        BlockKind::DeepslateBrickWall,
110        BlockKind::CrackedDeepslateBricks,
111        BlockKind::CrackedDeepslateTiles,
112    ])
113});
114pub static ANIMALS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> =
115    LazyLock::new(|| RegistryTag::new(vec![BlockKind::GrassBlock]));
116pub static ANVIL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
117    RegistryTag::new(vec![
118        BlockKind::Anvil,
119        BlockKind::ChippedAnvil,
120        BlockKind::DamagedAnvil,
121    ])
122});
123pub static ARMADILLO_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
124    RegistryTag::new(vec![
125        BlockKind::GrassBlock,
126        BlockKind::CoarseDirt,
127        BlockKind::RedSand,
128        BlockKind::WhiteTerracotta,
129        BlockKind::OrangeTerracotta,
130        BlockKind::YellowTerracotta,
131        BlockKind::LightGrayTerracotta,
132        BlockKind::BrownTerracotta,
133        BlockKind::RedTerracotta,
134        BlockKind::Terracotta,
135    ])
136});
137pub static AXOLOTLS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> =
138    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Clay]));
139pub static AZALEA_GROWS_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
140    RegistryTag::new(vec![
141        BlockKind::GrassBlock,
142        BlockKind::Dirt,
143        BlockKind::CoarseDirt,
144        BlockKind::Podzol,
145        BlockKind::Sand,
146        BlockKind::SuspiciousSand,
147        BlockKind::RedSand,
148        BlockKind::MuddyMangroveRoots,
149        BlockKind::SnowBlock,
150        BlockKind::Mycelium,
151        BlockKind::WhiteTerracotta,
152        BlockKind::OrangeTerracotta,
153        BlockKind::MagentaTerracotta,
154        BlockKind::LightBlueTerracotta,
155        BlockKind::YellowTerracotta,
156        BlockKind::LimeTerracotta,
157        BlockKind::PinkTerracotta,
158        BlockKind::GrayTerracotta,
159        BlockKind::LightGrayTerracotta,
160        BlockKind::CyanTerracotta,
161        BlockKind::PurpleTerracotta,
162        BlockKind::BlueTerracotta,
163        BlockKind::BrownTerracotta,
164        BlockKind::GreenTerracotta,
165        BlockKind::RedTerracotta,
166        BlockKind::BlackTerracotta,
167        BlockKind::Terracotta,
168        BlockKind::PowderSnow,
169        BlockKind::MossBlock,
170        BlockKind::RootedDirt,
171        BlockKind::Mud,
172        BlockKind::PaleMossBlock,
173    ])
174});
175pub static AZALEA_ROOT_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
176    RegistryTag::new(vec![
177        BlockKind::Stone,
178        BlockKind::Granite,
179        BlockKind::Diorite,
180        BlockKind::Andesite,
181        BlockKind::GrassBlock,
182        BlockKind::Dirt,
183        BlockKind::CoarseDirt,
184        BlockKind::Podzol,
185        BlockKind::Sand,
186        BlockKind::RedSand,
187        BlockKind::Gravel,
188        BlockKind::MuddyMangroveRoots,
189        BlockKind::SnowBlock,
190        BlockKind::Clay,
191        BlockKind::Mycelium,
192        BlockKind::WhiteTerracotta,
193        BlockKind::OrangeTerracotta,
194        BlockKind::MagentaTerracotta,
195        BlockKind::LightBlueTerracotta,
196        BlockKind::YellowTerracotta,
197        BlockKind::LimeTerracotta,
198        BlockKind::PinkTerracotta,
199        BlockKind::GrayTerracotta,
200        BlockKind::LightGrayTerracotta,
201        BlockKind::CyanTerracotta,
202        BlockKind::PurpleTerracotta,
203        BlockKind::BlueTerracotta,
204        BlockKind::BrownTerracotta,
205        BlockKind::GreenTerracotta,
206        BlockKind::RedTerracotta,
207        BlockKind::BlackTerracotta,
208        BlockKind::Terracotta,
209        BlockKind::Tuff,
210        BlockKind::PowderSnow,
211        BlockKind::MossBlock,
212        BlockKind::RootedDirt,
213        BlockKind::Mud,
214        BlockKind::Deepslate,
215        BlockKind::PaleMossBlock,
216    ])
217});
218pub static BADLANDS_TERRACOTTA: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
219    RegistryTag::new(vec![
220        BlockKind::WhiteTerracotta,
221        BlockKind::OrangeTerracotta,
222        BlockKind::YellowTerracotta,
223        BlockKind::LightGrayTerracotta,
224        BlockKind::BrownTerracotta,
225        BlockKind::RedTerracotta,
226        BlockKind::Terracotta,
227    ])
228});
229pub static BAMBOO_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
230    RegistryTag::new(vec![BlockKind::BambooBlock, BlockKind::StrippedBambooBlock])
231});
232pub static BANNERS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
233    RegistryTag::new(vec![
234        BlockKind::WhiteBanner,
235        BlockKind::OrangeBanner,
236        BlockKind::MagentaBanner,
237        BlockKind::LightBlueBanner,
238        BlockKind::YellowBanner,
239        BlockKind::LimeBanner,
240        BlockKind::PinkBanner,
241        BlockKind::GrayBanner,
242        BlockKind::LightGrayBanner,
243        BlockKind::CyanBanner,
244        BlockKind::PurpleBanner,
245        BlockKind::BlueBanner,
246        BlockKind::BrownBanner,
247        BlockKind::GreenBanner,
248        BlockKind::RedBanner,
249        BlockKind::BlackBanner,
250        BlockKind::WhiteWallBanner,
251        BlockKind::OrangeWallBanner,
252        BlockKind::MagentaWallBanner,
253        BlockKind::LightBlueWallBanner,
254        BlockKind::YellowWallBanner,
255        BlockKind::LimeWallBanner,
256        BlockKind::PinkWallBanner,
257        BlockKind::GrayWallBanner,
258        BlockKind::LightGrayWallBanner,
259        BlockKind::CyanWallBanner,
260        BlockKind::PurpleWallBanner,
261        BlockKind::BlueWallBanner,
262        BlockKind::BrownWallBanner,
263        BlockKind::GreenWallBanner,
264        BlockKind::RedWallBanner,
265        BlockKind::BlackWallBanner,
266    ])
267});
268pub static BARS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
269    RegistryTag::new(vec![
270        BlockKind::IronBars,
271        BlockKind::CopperBars,
272        BlockKind::ExposedCopperBars,
273        BlockKind::WeatheredCopperBars,
274        BlockKind::OxidizedCopperBars,
275        BlockKind::WaxedCopperBars,
276        BlockKind::WaxedExposedCopperBars,
277        BlockKind::WaxedWeatheredCopperBars,
278        BlockKind::WaxedOxidizedCopperBars,
279    ])
280});
281pub static BASE_STONE_NETHER: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
282    RegistryTag::new(vec![
283        BlockKind::Netherrack,
284        BlockKind::Basalt,
285        BlockKind::Blackstone,
286    ])
287});
288pub static BASE_STONE_OVERWORLD: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
289    RegistryTag::new(vec![
290        BlockKind::Stone,
291        BlockKind::Granite,
292        BlockKind::Diorite,
293        BlockKind::Andesite,
294        BlockKind::Tuff,
295        BlockKind::Deepslate,
296    ])
297});
298pub static BATS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
299    RegistryTag::new(vec![
300        BlockKind::Stone,
301        BlockKind::Granite,
302        BlockKind::Diorite,
303        BlockKind::Andesite,
304        BlockKind::Tuff,
305        BlockKind::Deepslate,
306    ])
307});
308pub static BEACON_BASE_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
309    RegistryTag::new(vec![
310        BlockKind::GoldBlock,
311        BlockKind::IronBlock,
312        BlockKind::DiamondBlock,
313        BlockKind::EmeraldBlock,
314        BlockKind::NetheriteBlock,
315    ])
316});
317pub static BEDS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
318    RegistryTag::new(vec![
319        BlockKind::WhiteBed,
320        BlockKind::OrangeBed,
321        BlockKind::MagentaBed,
322        BlockKind::LightBlueBed,
323        BlockKind::YellowBed,
324        BlockKind::LimeBed,
325        BlockKind::PinkBed,
326        BlockKind::GrayBed,
327        BlockKind::LightGrayBed,
328        BlockKind::CyanBed,
329        BlockKind::PurpleBed,
330        BlockKind::BlueBed,
331        BlockKind::BrownBed,
332        BlockKind::GreenBed,
333        BlockKind::RedBed,
334        BlockKind::BlackBed,
335    ])
336});
337pub static BEE_ATTRACTIVE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
338    RegistryTag::new(vec![
339        BlockKind::MangrovePropagule,
340        BlockKind::CherryLeaves,
341        BlockKind::FloweringAzaleaLeaves,
342        BlockKind::Dandelion,
343        BlockKind::Torchflower,
344        BlockKind::Poppy,
345        BlockKind::BlueOrchid,
346        BlockKind::Allium,
347        BlockKind::AzureBluet,
348        BlockKind::RedTulip,
349        BlockKind::OrangeTulip,
350        BlockKind::WhiteTulip,
351        BlockKind::PinkTulip,
352        BlockKind::OxeyeDaisy,
353        BlockKind::Cornflower,
354        BlockKind::WitherRose,
355        BlockKind::LilyOfTheValley,
356        BlockKind::CactusFlower,
357        BlockKind::Sunflower,
358        BlockKind::Lilac,
359        BlockKind::RoseBush,
360        BlockKind::Peony,
361        BlockKind::ChorusFlower,
362        BlockKind::PitcherPlant,
363        BlockKind::SporeBlossom,
364        BlockKind::FloweringAzalea,
365        BlockKind::PinkPetals,
366        BlockKind::Wildflowers,
367        BlockKind::OpenEyeblossom,
368    ])
369});
370pub static BEE_GROWABLES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
371    RegistryTag::new(vec![
372        BlockKind::Wheat,
373        BlockKind::PumpkinStem,
374        BlockKind::MelonStem,
375        BlockKind::Carrots,
376        BlockKind::Potatoes,
377        BlockKind::TorchflowerCrop,
378        BlockKind::PitcherCrop,
379        BlockKind::Beetroots,
380        BlockKind::SweetBerryBush,
381        BlockKind::CaveVines,
382        BlockKind::CaveVinesPlant,
383    ])
384});
385pub static BEEHIVES: LazyLock<RegistryTag<BlockKind>> =
386    LazyLock::new(|| RegistryTag::new(vec![BlockKind::BeeNest, BlockKind::Beehive]));
387pub static BENEATH_BAMBOO_PODZOL_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> =
388    LazyLock::new(|| {
389        RegistryTag::new(vec![
390            BlockKind::GrassBlock,
391            BlockKind::Dirt,
392            BlockKind::CoarseDirt,
393            BlockKind::Podzol,
394            BlockKind::MuddyMangroveRoots,
395            BlockKind::Mycelium,
396            BlockKind::MossBlock,
397            BlockKind::RootedDirt,
398            BlockKind::Mud,
399            BlockKind::PaleMossBlock,
400        ])
401    });
402pub static BENEATH_TREE_PODZOL_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> =
403    LazyLock::new(|| {
404        RegistryTag::new(vec![
405            BlockKind::GrassBlock,
406            BlockKind::Dirt,
407            BlockKind::CoarseDirt,
408            BlockKind::Podzol,
409            BlockKind::MuddyMangroveRoots,
410            BlockKind::Mycelium,
411            BlockKind::MossBlock,
412            BlockKind::RootedDirt,
413            BlockKind::Mud,
414            BlockKind::PaleMossBlock,
415        ])
416    });
417pub static BIRCH_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
418    RegistryTag::new(vec![
419        BlockKind::BirchLog,
420        BlockKind::StrippedBirchLog,
421        BlockKind::BirchWood,
422        BlockKind::StrippedBirchWood,
423    ])
424});
425pub static BLOCKS_WIND_CHARGE_EXPLOSIONS: LazyLock<RegistryTag<BlockKind>> =
426    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Bedrock, BlockKind::Barrier]));
427pub static BUTTONS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
428    RegistryTag::new(vec![
429        BlockKind::StoneButton,
430        BlockKind::OakButton,
431        BlockKind::SpruceButton,
432        BlockKind::BirchButton,
433        BlockKind::JungleButton,
434        BlockKind::AcaciaButton,
435        BlockKind::CherryButton,
436        BlockKind::DarkOakButton,
437        BlockKind::PaleOakButton,
438        BlockKind::MangroveButton,
439        BlockKind::BambooButton,
440        BlockKind::CrimsonButton,
441        BlockKind::WarpedButton,
442        BlockKind::PolishedBlackstoneButton,
443    ])
444});
445pub static CAMEL_SAND_STEP_SOUND_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
446    RegistryTag::new(vec![
447        BlockKind::Sand,
448        BlockKind::SuspiciousSand,
449        BlockKind::RedSand,
450        BlockKind::WhiteConcretePowder,
451        BlockKind::OrangeConcretePowder,
452        BlockKind::MagentaConcretePowder,
453        BlockKind::LightBlueConcretePowder,
454        BlockKind::YellowConcretePowder,
455        BlockKind::LimeConcretePowder,
456        BlockKind::PinkConcretePowder,
457        BlockKind::GrayConcretePowder,
458        BlockKind::LightGrayConcretePowder,
459        BlockKind::CyanConcretePowder,
460        BlockKind::PurpleConcretePowder,
461        BlockKind::BlueConcretePowder,
462        BlockKind::BrownConcretePowder,
463        BlockKind::GreenConcretePowder,
464        BlockKind::RedConcretePowder,
465        BlockKind::BlackConcretePowder,
466    ])
467});
468pub static CAMELS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
469    RegistryTag::new(vec![
470        BlockKind::Sand,
471        BlockKind::SuspiciousSand,
472        BlockKind::RedSand,
473    ])
474});
475pub static CAMPFIRES: LazyLock<RegistryTag<BlockKind>> =
476    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Campfire, BlockKind::SoulCampfire]));
477pub static CAN_GLIDE_THROUGH: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
478    RegistryTag::new(vec![
479        BlockKind::Vine,
480        BlockKind::WeepingVines,
481        BlockKind::WeepingVinesPlant,
482        BlockKind::TwistingVines,
483        BlockKind::TwistingVinesPlant,
484        BlockKind::CaveVines,
485        BlockKind::CaveVinesPlant,
486    ])
487});
488pub static CANDLE_CAKES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
489    RegistryTag::new(vec![
490        BlockKind::CandleCake,
491        BlockKind::WhiteCandleCake,
492        BlockKind::OrangeCandleCake,
493        BlockKind::MagentaCandleCake,
494        BlockKind::LightBlueCandleCake,
495        BlockKind::YellowCandleCake,
496        BlockKind::LimeCandleCake,
497        BlockKind::PinkCandleCake,
498        BlockKind::GrayCandleCake,
499        BlockKind::LightGrayCandleCake,
500        BlockKind::CyanCandleCake,
501        BlockKind::PurpleCandleCake,
502        BlockKind::BlueCandleCake,
503        BlockKind::BrownCandleCake,
504        BlockKind::GreenCandleCake,
505        BlockKind::RedCandleCake,
506        BlockKind::BlackCandleCake,
507    ])
508});
509pub static CANDLES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
510    RegistryTag::new(vec![
511        BlockKind::Candle,
512        BlockKind::WhiteCandle,
513        BlockKind::OrangeCandle,
514        BlockKind::MagentaCandle,
515        BlockKind::LightBlueCandle,
516        BlockKind::YellowCandle,
517        BlockKind::LimeCandle,
518        BlockKind::PinkCandle,
519        BlockKind::GrayCandle,
520        BlockKind::LightGrayCandle,
521        BlockKind::CyanCandle,
522        BlockKind::PurpleCandle,
523        BlockKind::BlueCandle,
524        BlockKind::BrownCandle,
525        BlockKind::GreenCandle,
526        BlockKind::RedCandle,
527        BlockKind::BlackCandle,
528    ])
529});
530pub static CANNOT_REPLACE_BELOW_TREE_TRUNK: LazyLock<RegistryTag<BlockKind>> =
531    LazyLock::new(|| {
532        RegistryTag::new(vec![
533            BlockKind::Dirt,
534            BlockKind::CoarseDirt,
535            BlockKind::Podzol,
536            BlockKind::MuddyMangroveRoots,
537            BlockKind::MossBlock,
538            BlockKind::RootedDirt,
539            BlockKind::Mud,
540            BlockKind::PaleMossBlock,
541        ])
542    });
543pub static CANNOT_SUPPORT_KELP: LazyLock<RegistryTag<BlockKind>> =
544    LazyLock::new(|| RegistryTag::new(vec![BlockKind::MagmaBlock]));
545pub static CANNOT_SUPPORT_SEAGRASS: LazyLock<RegistryTag<BlockKind>> =
546    LazyLock::new(|| RegistryTag::new(vec![BlockKind::MagmaBlock]));
547pub static CANNOT_SUPPORT_SNOW_LAYER: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
548    RegistryTag::new(vec![
549        BlockKind::Ice,
550        BlockKind::Barrier,
551        BlockKind::PackedIce,
552    ])
553});
554pub static CAULDRONS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
555    RegistryTag::new(vec![
556        BlockKind::Cauldron,
557        BlockKind::WaterCauldron,
558        BlockKind::LavaCauldron,
559        BlockKind::PowderSnowCauldron,
560    ])
561});
562pub static CAVE_VINES: LazyLock<RegistryTag<BlockKind>> =
563    LazyLock::new(|| RegistryTag::new(vec![BlockKind::CaveVines, BlockKind::CaveVinesPlant]));
564pub static CEILING_HANGING_SIGNS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
565    RegistryTag::new(vec![
566        BlockKind::OakHangingSign,
567        BlockKind::SpruceHangingSign,
568        BlockKind::BirchHangingSign,
569        BlockKind::AcaciaHangingSign,
570        BlockKind::CherryHangingSign,
571        BlockKind::JungleHangingSign,
572        BlockKind::DarkOakHangingSign,
573        BlockKind::PaleOakHangingSign,
574        BlockKind::CrimsonHangingSign,
575        BlockKind::WarpedHangingSign,
576        BlockKind::MangroveHangingSign,
577        BlockKind::BambooHangingSign,
578    ])
579});
580pub static CHAINS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
581    RegistryTag::new(vec![
582        BlockKind::IronChain,
583        BlockKind::CopperChain,
584        BlockKind::ExposedCopperChain,
585        BlockKind::WeatheredCopperChain,
586        BlockKind::OxidizedCopperChain,
587        BlockKind::WaxedCopperChain,
588        BlockKind::WaxedExposedCopperChain,
589        BlockKind::WaxedWeatheredCopperChain,
590        BlockKind::WaxedOxidizedCopperChain,
591    ])
592});
593pub static CHERRY_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
594    RegistryTag::new(vec![
595        BlockKind::CherryLog,
596        BlockKind::StrippedCherryLog,
597        BlockKind::CherryWood,
598        BlockKind::StrippedCherryWood,
599    ])
600});
601pub static CLIMBABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
602    RegistryTag::new(vec![
603        BlockKind::Ladder,
604        BlockKind::Vine,
605        BlockKind::Scaffolding,
606        BlockKind::WeepingVines,
607        BlockKind::WeepingVinesPlant,
608        BlockKind::TwistingVines,
609        BlockKind::TwistingVinesPlant,
610        BlockKind::CaveVines,
611        BlockKind::CaveVinesPlant,
612    ])
613});
614pub static COAL_ORES: LazyLock<RegistryTag<BlockKind>> =
615    LazyLock::new(|| RegistryTag::new(vec![BlockKind::CoalOre, BlockKind::DeepslateCoalOre]));
616pub static COMBINATION_STEP_SOUND_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
617    RegistryTag::new(vec![
618        BlockKind::Snow,
619        BlockKind::ResinClump,
620        BlockKind::WhiteCarpet,
621        BlockKind::OrangeCarpet,
622        BlockKind::MagentaCarpet,
623        BlockKind::LightBlueCarpet,
624        BlockKind::YellowCarpet,
625        BlockKind::LimeCarpet,
626        BlockKind::PinkCarpet,
627        BlockKind::GrayCarpet,
628        BlockKind::LightGrayCarpet,
629        BlockKind::CyanCarpet,
630        BlockKind::PurpleCarpet,
631        BlockKind::BlueCarpet,
632        BlockKind::BrownCarpet,
633        BlockKind::GreenCarpet,
634        BlockKind::RedCarpet,
635        BlockKind::BlackCarpet,
636        BlockKind::WarpedRoots,
637        BlockKind::NetherSprouts,
638        BlockKind::CrimsonRoots,
639        BlockKind::MossCarpet,
640        BlockKind::PaleMossCarpet,
641    ])
642});
643pub static COMPLETES_FIND_TREE_TUTORIAL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
644    RegistryTag::new(vec![
645        BlockKind::PaleOakWood,
646        BlockKind::OakLog,
647        BlockKind::SpruceLog,
648        BlockKind::BirchLog,
649        BlockKind::JungleLog,
650        BlockKind::AcaciaLog,
651        BlockKind::CherryLog,
652        BlockKind::DarkOakLog,
653        BlockKind::PaleOakLog,
654        BlockKind::MangroveLog,
655        BlockKind::StrippedSpruceLog,
656        BlockKind::StrippedBirchLog,
657        BlockKind::StrippedJungleLog,
658        BlockKind::StrippedAcaciaLog,
659        BlockKind::StrippedCherryLog,
660        BlockKind::StrippedDarkOakLog,
661        BlockKind::StrippedPaleOakLog,
662        BlockKind::StrippedOakLog,
663        BlockKind::StrippedMangroveLog,
664        BlockKind::OakWood,
665        BlockKind::SpruceWood,
666        BlockKind::BirchWood,
667        BlockKind::JungleWood,
668        BlockKind::AcaciaWood,
669        BlockKind::CherryWood,
670        BlockKind::DarkOakWood,
671        BlockKind::MangroveWood,
672        BlockKind::StrippedOakWood,
673        BlockKind::StrippedSpruceWood,
674        BlockKind::StrippedBirchWood,
675        BlockKind::StrippedJungleWood,
676        BlockKind::StrippedAcaciaWood,
677        BlockKind::StrippedCherryWood,
678        BlockKind::StrippedDarkOakWood,
679        BlockKind::StrippedPaleOakWood,
680        BlockKind::StrippedMangroveWood,
681        BlockKind::OakLeaves,
682        BlockKind::SpruceLeaves,
683        BlockKind::BirchLeaves,
684        BlockKind::JungleLeaves,
685        BlockKind::AcaciaLeaves,
686        BlockKind::CherryLeaves,
687        BlockKind::DarkOakLeaves,
688        BlockKind::PaleOakLeaves,
689        BlockKind::MangroveLeaves,
690        BlockKind::AzaleaLeaves,
691        BlockKind::FloweringAzaleaLeaves,
692        BlockKind::NetherWartBlock,
693        BlockKind::WarpedStem,
694        BlockKind::StrippedWarpedStem,
695        BlockKind::WarpedHyphae,
696        BlockKind::StrippedWarpedHyphae,
697        BlockKind::WarpedWartBlock,
698        BlockKind::CrimsonStem,
699        BlockKind::StrippedCrimsonStem,
700        BlockKind::CrimsonHyphae,
701        BlockKind::StrippedCrimsonHyphae,
702    ])
703});
704pub static CONCRETE_POWDER: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
705    RegistryTag::new(vec![
706        BlockKind::WhiteConcretePowder,
707        BlockKind::OrangeConcretePowder,
708        BlockKind::MagentaConcretePowder,
709        BlockKind::LightBlueConcretePowder,
710        BlockKind::YellowConcretePowder,
711        BlockKind::LimeConcretePowder,
712        BlockKind::PinkConcretePowder,
713        BlockKind::GrayConcretePowder,
714        BlockKind::LightGrayConcretePowder,
715        BlockKind::CyanConcretePowder,
716        BlockKind::PurpleConcretePowder,
717        BlockKind::BlueConcretePowder,
718        BlockKind::BrownConcretePowder,
719        BlockKind::GreenConcretePowder,
720        BlockKind::RedConcretePowder,
721        BlockKind::BlackConcretePowder,
722    ])
723});
724pub static CONVERTIBLE_TO_MUD: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
725    RegistryTag::new(vec![
726        BlockKind::Dirt,
727        BlockKind::CoarseDirt,
728        BlockKind::RootedDirt,
729    ])
730});
731pub static COPPER: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
732    RegistryTag::new(vec![
733        BlockKind::CopperBlock,
734        BlockKind::ExposedCopper,
735        BlockKind::WeatheredCopper,
736        BlockKind::OxidizedCopper,
737        BlockKind::WaxedCopperBlock,
738        BlockKind::WaxedWeatheredCopper,
739        BlockKind::WaxedExposedCopper,
740        BlockKind::WaxedOxidizedCopper,
741    ])
742});
743pub static COPPER_CHESTS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
744    RegistryTag::new(vec![
745        BlockKind::CopperChest,
746        BlockKind::ExposedCopperChest,
747        BlockKind::WeatheredCopperChest,
748        BlockKind::OxidizedCopperChest,
749        BlockKind::WaxedCopperChest,
750        BlockKind::WaxedExposedCopperChest,
751        BlockKind::WaxedWeatheredCopperChest,
752        BlockKind::WaxedOxidizedCopperChest,
753    ])
754});
755pub static COPPER_GOLEM_STATUES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
756    RegistryTag::new(vec![
757        BlockKind::CopperGolemStatue,
758        BlockKind::ExposedCopperGolemStatue,
759        BlockKind::WeatheredCopperGolemStatue,
760        BlockKind::OxidizedCopperGolemStatue,
761        BlockKind::WaxedCopperGolemStatue,
762        BlockKind::WaxedExposedCopperGolemStatue,
763        BlockKind::WaxedWeatheredCopperGolemStatue,
764        BlockKind::WaxedOxidizedCopperGolemStatue,
765    ])
766});
767pub static COPPER_ORES: LazyLock<RegistryTag<BlockKind>> =
768    LazyLock::new(|| RegistryTag::new(vec![BlockKind::CopperOre, BlockKind::DeepslateCopperOre]));
769pub static CORAL_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
770    RegistryTag::new(vec![
771        BlockKind::TubeCoralBlock,
772        BlockKind::BrainCoralBlock,
773        BlockKind::BubbleCoralBlock,
774        BlockKind::FireCoralBlock,
775        BlockKind::HornCoralBlock,
776    ])
777});
778pub static CORAL_PLANTS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
779    RegistryTag::new(vec![
780        BlockKind::TubeCoral,
781        BlockKind::BrainCoral,
782        BlockKind::BubbleCoral,
783        BlockKind::FireCoral,
784        BlockKind::HornCoral,
785    ])
786});
787pub static CORALS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
788    RegistryTag::new(vec![
789        BlockKind::TubeCoral,
790        BlockKind::BrainCoral,
791        BlockKind::BubbleCoral,
792        BlockKind::FireCoral,
793        BlockKind::HornCoral,
794        BlockKind::TubeCoralFan,
795        BlockKind::BrainCoralFan,
796        BlockKind::BubbleCoralFan,
797        BlockKind::FireCoralFan,
798        BlockKind::HornCoralFan,
799    ])
800});
801pub static CRIMSON_STEMS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
802    RegistryTag::new(vec![
803        BlockKind::CrimsonStem,
804        BlockKind::StrippedCrimsonStem,
805        BlockKind::CrimsonHyphae,
806        BlockKind::StrippedCrimsonHyphae,
807    ])
808});
809pub static CROPS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
810    RegistryTag::new(vec![
811        BlockKind::Wheat,
812        BlockKind::PumpkinStem,
813        BlockKind::MelonStem,
814        BlockKind::Carrots,
815        BlockKind::Potatoes,
816        BlockKind::TorchflowerCrop,
817        BlockKind::PitcherCrop,
818        BlockKind::Beetroots,
819    ])
820});
821pub static CRYSTAL_SOUND_BLOCKS: LazyLock<RegistryTag<BlockKind>> =
822    LazyLock::new(|| RegistryTag::new(vec![BlockKind::AmethystBlock, BlockKind::BuddingAmethyst]));
823pub static DAMPENS_VIBRATIONS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
824    RegistryTag::new(vec![
825        BlockKind::WhiteWool,
826        BlockKind::OrangeWool,
827        BlockKind::MagentaWool,
828        BlockKind::LightBlueWool,
829        BlockKind::YellowWool,
830        BlockKind::LimeWool,
831        BlockKind::PinkWool,
832        BlockKind::GrayWool,
833        BlockKind::LightGrayWool,
834        BlockKind::CyanWool,
835        BlockKind::PurpleWool,
836        BlockKind::BlueWool,
837        BlockKind::BrownWool,
838        BlockKind::GreenWool,
839        BlockKind::RedWool,
840        BlockKind::BlackWool,
841        BlockKind::WhiteCarpet,
842        BlockKind::OrangeCarpet,
843        BlockKind::MagentaCarpet,
844        BlockKind::LightBlueCarpet,
845        BlockKind::YellowCarpet,
846        BlockKind::LimeCarpet,
847        BlockKind::PinkCarpet,
848        BlockKind::GrayCarpet,
849        BlockKind::LightGrayCarpet,
850        BlockKind::CyanCarpet,
851        BlockKind::PurpleCarpet,
852        BlockKind::BlueCarpet,
853        BlockKind::BrownCarpet,
854        BlockKind::GreenCarpet,
855        BlockKind::RedCarpet,
856        BlockKind::BlackCarpet,
857    ])
858});
859pub static DARK_OAK_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
860    RegistryTag::new(vec![
861        BlockKind::DarkOakLog,
862        BlockKind::StrippedDarkOakLog,
863        BlockKind::DarkOakWood,
864        BlockKind::StrippedDarkOakWood,
865    ])
866});
867pub static DEEPSLATE_ORE_REPLACEABLES: LazyLock<RegistryTag<BlockKind>> =
868    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Tuff, BlockKind::Deepslate]));
869pub static DIAMOND_ORES: LazyLock<RegistryTag<BlockKind>> =
870    LazyLock::new(|| RegistryTag::new(vec![BlockKind::DiamondOre, BlockKind::DeepslateDiamondOre]));
871pub static DIRT: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
872    RegistryTag::new(vec![
873        BlockKind::Dirt,
874        BlockKind::CoarseDirt,
875        BlockKind::RootedDirt,
876    ])
877});
878pub static DOES_NOT_BLOCK_HOPPERS: LazyLock<RegistryTag<BlockKind>> =
879    LazyLock::new(|| RegistryTag::new(vec![BlockKind::BeeNest, BlockKind::Beehive]));
880pub static DOORS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
881    RegistryTag::new(vec![
882        BlockKind::OakDoor,
883        BlockKind::IronDoor,
884        BlockKind::SpruceDoor,
885        BlockKind::BirchDoor,
886        BlockKind::JungleDoor,
887        BlockKind::AcaciaDoor,
888        BlockKind::CherryDoor,
889        BlockKind::DarkOakDoor,
890        BlockKind::PaleOakDoor,
891        BlockKind::MangroveDoor,
892        BlockKind::BambooDoor,
893        BlockKind::CrimsonDoor,
894        BlockKind::WarpedDoor,
895        BlockKind::CopperDoor,
896        BlockKind::ExposedCopperDoor,
897        BlockKind::OxidizedCopperDoor,
898        BlockKind::WeatheredCopperDoor,
899        BlockKind::WaxedCopperDoor,
900        BlockKind::WaxedExposedCopperDoor,
901        BlockKind::WaxedOxidizedCopperDoor,
902        BlockKind::WaxedWeatheredCopperDoor,
903    ])
904});
905pub static DRAGON_IMMUNE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
906    RegistryTag::new(vec![
907        BlockKind::Bedrock,
908        BlockKind::MovingPiston,
909        BlockKind::Obsidian,
910        BlockKind::IronBars,
911        BlockKind::EndPortal,
912        BlockKind::EndPortalFrame,
913        BlockKind::EndStone,
914        BlockKind::CommandBlock,
915        BlockKind::Barrier,
916        BlockKind::EndGateway,
917        BlockKind::RepeatingCommandBlock,
918        BlockKind::ChainCommandBlock,
919        BlockKind::StructureBlock,
920        BlockKind::Jigsaw,
921        BlockKind::TestBlock,
922        BlockKind::TestInstanceBlock,
923        BlockKind::CryingObsidian,
924        BlockKind::RespawnAnchor,
925        BlockKind::ReinforcedDeepslate,
926    ])
927});
928pub static DRAGON_TRANSPARENT: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
929    RegistryTag::new(vec![BlockKind::Fire, BlockKind::SoulFire, BlockKind::Light])
930});
931pub static DRIPSTONE_REPLACEABLE_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
932    RegistryTag::new(vec![
933        BlockKind::Stone,
934        BlockKind::Granite,
935        BlockKind::Diorite,
936        BlockKind::Andesite,
937        BlockKind::Tuff,
938        BlockKind::Deepslate,
939    ])
940});
941pub static EDIBLE_FOR_SHEEP: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
942    RegistryTag::new(vec![
943        BlockKind::ShortGrass,
944        BlockKind::Fern,
945        BlockKind::ShortDryGrass,
946        BlockKind::TallDryGrass,
947    ])
948});
949pub static EMERALD_ORES: LazyLock<RegistryTag<BlockKind>> =
950    LazyLock::new(|| RegistryTag::new(vec![BlockKind::EmeraldOre, BlockKind::DeepslateEmeraldOre]));
951pub static ENABLES_BUBBLE_COLUMN_DRAG_DOWN: LazyLock<RegistryTag<BlockKind>> =
952    LazyLock::new(|| RegistryTag::new(vec![BlockKind::MagmaBlock]));
953pub static ENABLES_BUBBLE_COLUMN_PUSH_UP: LazyLock<RegistryTag<BlockKind>> =
954    LazyLock::new(|| RegistryTag::new(vec![BlockKind::SoulSand]));
955pub static ENCHANTMENT_POWER_PROVIDER: LazyLock<RegistryTag<BlockKind>> =
956    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Bookshelf]));
957pub static ENCHANTMENT_POWER_TRANSMITTER: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
958    RegistryTag::new(vec![
959        BlockKind::Air,
960        BlockKind::Water,
961        BlockKind::Lava,
962        BlockKind::ShortGrass,
963        BlockKind::Fern,
964        BlockKind::DeadBush,
965        BlockKind::Bush,
966        BlockKind::ShortDryGrass,
967        BlockKind::TallDryGrass,
968        BlockKind::Seagrass,
969        BlockKind::TallSeagrass,
970        BlockKind::Fire,
971        BlockKind::SoulFire,
972        BlockKind::Snow,
973        BlockKind::Vine,
974        BlockKind::GlowLichen,
975        BlockKind::ResinClump,
976        BlockKind::Light,
977        BlockKind::TallGrass,
978        BlockKind::LargeFern,
979        BlockKind::StructureVoid,
980        BlockKind::VoidAir,
981        BlockKind::CaveAir,
982        BlockKind::BubbleColumn,
983        BlockKind::WarpedRoots,
984        BlockKind::NetherSprouts,
985        BlockKind::CrimsonRoots,
986        BlockKind::LeafLitter,
987        BlockKind::HangingRoots,
988    ])
989});
990pub static ENDERMAN_HOLDABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
991    RegistryTag::new(vec![
992        BlockKind::GrassBlock,
993        BlockKind::Dirt,
994        BlockKind::CoarseDirt,
995        BlockKind::Podzol,
996        BlockKind::Sand,
997        BlockKind::RedSand,
998        BlockKind::Gravel,
999        BlockKind::MuddyMangroveRoots,
1000        BlockKind::Dandelion,
1001        BlockKind::GoldenDandelion,
1002        BlockKind::Torchflower,
1003        BlockKind::Poppy,
1004        BlockKind::BlueOrchid,
1005        BlockKind::Allium,
1006        BlockKind::AzureBluet,
1007        BlockKind::RedTulip,
1008        BlockKind::OrangeTulip,
1009        BlockKind::WhiteTulip,
1010        BlockKind::PinkTulip,
1011        BlockKind::OxeyeDaisy,
1012        BlockKind::Cornflower,
1013        BlockKind::WitherRose,
1014        BlockKind::LilyOfTheValley,
1015        BlockKind::BrownMushroom,
1016        BlockKind::RedMushroom,
1017        BlockKind::Tnt,
1018        BlockKind::Cactus,
1019        BlockKind::CactusFlower,
1020        BlockKind::Clay,
1021        BlockKind::CarvedPumpkin,
1022        BlockKind::Pumpkin,
1023        BlockKind::Melon,
1024        BlockKind::Mycelium,
1025        BlockKind::WarpedNylium,
1026        BlockKind::WarpedFungus,
1027        BlockKind::WarpedRoots,
1028        BlockKind::CrimsonNylium,
1029        BlockKind::CrimsonFungus,
1030        BlockKind::CrimsonRoots,
1031        BlockKind::MossBlock,
1032        BlockKind::RootedDirt,
1033        BlockKind::Mud,
1034        BlockKind::PaleMossBlock,
1035        BlockKind::OpenEyeblossom,
1036        BlockKind::ClosedEyeblossom,
1037    ])
1038});
1039pub static FALL_DAMAGE_RESETTING: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1040    RegistryTag::new(vec![
1041        BlockKind::Cobweb,
1042        BlockKind::Ladder,
1043        BlockKind::Vine,
1044        BlockKind::Scaffolding,
1045        BlockKind::SweetBerryBush,
1046        BlockKind::WeepingVines,
1047        BlockKind::WeepingVinesPlant,
1048        BlockKind::TwistingVines,
1049        BlockKind::TwistingVinesPlant,
1050        BlockKind::CaveVines,
1051        BlockKind::CaveVinesPlant,
1052    ])
1053});
1054pub static FEATURES_CANNOT_REPLACE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1055    RegistryTag::new(vec![
1056        BlockKind::Bedrock,
1057        BlockKind::Spawner,
1058        BlockKind::Chest,
1059        BlockKind::EndPortalFrame,
1060        BlockKind::ReinforcedDeepslate,
1061        BlockKind::TrialSpawner,
1062        BlockKind::Vault,
1063    ])
1064});
1065pub static FENCE_GATES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1066    RegistryTag::new(vec![
1067        BlockKind::OakFenceGate,
1068        BlockKind::SpruceFenceGate,
1069        BlockKind::BirchFenceGate,
1070        BlockKind::JungleFenceGate,
1071        BlockKind::AcaciaFenceGate,
1072        BlockKind::CherryFenceGate,
1073        BlockKind::DarkOakFenceGate,
1074        BlockKind::PaleOakFenceGate,
1075        BlockKind::MangroveFenceGate,
1076        BlockKind::BambooFenceGate,
1077        BlockKind::CrimsonFenceGate,
1078        BlockKind::WarpedFenceGate,
1079    ])
1080});
1081pub static FENCES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1082    RegistryTag::new(vec![
1083        BlockKind::OakFence,
1084        BlockKind::NetherBrickFence,
1085        BlockKind::SpruceFence,
1086        BlockKind::BirchFence,
1087        BlockKind::JungleFence,
1088        BlockKind::AcaciaFence,
1089        BlockKind::CherryFence,
1090        BlockKind::DarkOakFence,
1091        BlockKind::PaleOakFence,
1092        BlockKind::MangroveFence,
1093        BlockKind::BambooFence,
1094        BlockKind::CrimsonFence,
1095        BlockKind::WarpedFence,
1096    ])
1097});
1098pub static FIRE: LazyLock<RegistryTag<BlockKind>> =
1099    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Fire, BlockKind::SoulFire]));
1100pub static FLOWER_POTS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1101    RegistryTag::new(vec![
1102        BlockKind::FlowerPot,
1103        BlockKind::PottedTorchflower,
1104        BlockKind::PottedOakSapling,
1105        BlockKind::PottedSpruceSapling,
1106        BlockKind::PottedBirchSapling,
1107        BlockKind::PottedJungleSapling,
1108        BlockKind::PottedAcaciaSapling,
1109        BlockKind::PottedCherrySapling,
1110        BlockKind::PottedDarkOakSapling,
1111        BlockKind::PottedPaleOakSapling,
1112        BlockKind::PottedMangrovePropagule,
1113        BlockKind::PottedFern,
1114        BlockKind::PottedDandelion,
1115        BlockKind::PottedGoldenDandelion,
1116        BlockKind::PottedPoppy,
1117        BlockKind::PottedBlueOrchid,
1118        BlockKind::PottedAllium,
1119        BlockKind::PottedAzureBluet,
1120        BlockKind::PottedRedTulip,
1121        BlockKind::PottedOrangeTulip,
1122        BlockKind::PottedWhiteTulip,
1123        BlockKind::PottedPinkTulip,
1124        BlockKind::PottedOxeyeDaisy,
1125        BlockKind::PottedCornflower,
1126        BlockKind::PottedLilyOfTheValley,
1127        BlockKind::PottedWitherRose,
1128        BlockKind::PottedRedMushroom,
1129        BlockKind::PottedBrownMushroom,
1130        BlockKind::PottedDeadBush,
1131        BlockKind::PottedCactus,
1132        BlockKind::PottedBamboo,
1133        BlockKind::PottedCrimsonFungus,
1134        BlockKind::PottedWarpedFungus,
1135        BlockKind::PottedCrimsonRoots,
1136        BlockKind::PottedWarpedRoots,
1137        BlockKind::PottedAzaleaBush,
1138        BlockKind::PottedFloweringAzaleaBush,
1139        BlockKind::PottedOpenEyeblossom,
1140        BlockKind::PottedClosedEyeblossom,
1141    ])
1142});
1143pub static FLOWERS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1144    RegistryTag::new(vec![
1145        BlockKind::MangrovePropagule,
1146        BlockKind::CherryLeaves,
1147        BlockKind::FloweringAzaleaLeaves,
1148        BlockKind::Dandelion,
1149        BlockKind::GoldenDandelion,
1150        BlockKind::Torchflower,
1151        BlockKind::Poppy,
1152        BlockKind::BlueOrchid,
1153        BlockKind::Allium,
1154        BlockKind::AzureBluet,
1155        BlockKind::RedTulip,
1156        BlockKind::OrangeTulip,
1157        BlockKind::WhiteTulip,
1158        BlockKind::PinkTulip,
1159        BlockKind::OxeyeDaisy,
1160        BlockKind::Cornflower,
1161        BlockKind::WitherRose,
1162        BlockKind::LilyOfTheValley,
1163        BlockKind::CactusFlower,
1164        BlockKind::Sunflower,
1165        BlockKind::Lilac,
1166        BlockKind::RoseBush,
1167        BlockKind::Peony,
1168        BlockKind::ChorusFlower,
1169        BlockKind::PitcherPlant,
1170        BlockKind::SporeBlossom,
1171        BlockKind::FloweringAzalea,
1172        BlockKind::PinkPetals,
1173        BlockKind::Wildflowers,
1174        BlockKind::OpenEyeblossom,
1175        BlockKind::ClosedEyeblossom,
1176    ])
1177});
1178pub static FOREST_ROCK_CAN_PLACE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1179    RegistryTag::new(vec![
1180        BlockKind::Stone,
1181        BlockKind::Granite,
1182        BlockKind::Diorite,
1183        BlockKind::Andesite,
1184        BlockKind::GrassBlock,
1185        BlockKind::Dirt,
1186        BlockKind::CoarseDirt,
1187        BlockKind::Podzol,
1188        BlockKind::MuddyMangroveRoots,
1189        BlockKind::Mycelium,
1190        BlockKind::Tuff,
1191        BlockKind::MossBlock,
1192        BlockKind::RootedDirt,
1193        BlockKind::Mud,
1194        BlockKind::Deepslate,
1195        BlockKind::PaleMossBlock,
1196    ])
1197});
1198pub static FOXES_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1199    RegistryTag::new(vec![
1200        BlockKind::GrassBlock,
1201        BlockKind::CoarseDirt,
1202        BlockKind::Podzol,
1203        BlockKind::Snow,
1204        BlockKind::SnowBlock,
1205    ])
1206});
1207pub static FROG_PREFER_JUMP_TO: LazyLock<RegistryTag<BlockKind>> =
1208    LazyLock::new(|| RegistryTag::new(vec![BlockKind::LilyPad, BlockKind::BigDripleaf]));
1209pub static FROGS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1210    RegistryTag::new(vec![
1211        BlockKind::GrassBlock,
1212        BlockKind::MangroveRoots,
1213        BlockKind::MuddyMangroveRoots,
1214        BlockKind::Mud,
1215    ])
1216});
1217pub static GEODE_INVALID_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1218    RegistryTag::new(vec![
1219        BlockKind::Bedrock,
1220        BlockKind::Water,
1221        BlockKind::Lava,
1222        BlockKind::Ice,
1223        BlockKind::PackedIce,
1224        BlockKind::BlueIce,
1225    ])
1226});
1227pub static GOATS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1228    RegistryTag::new(vec![
1229        BlockKind::Stone,
1230        BlockKind::GrassBlock,
1231        BlockKind::Gravel,
1232        BlockKind::Snow,
1233        BlockKind::SnowBlock,
1234        BlockKind::PackedIce,
1235    ])
1236});
1237pub static GOLD_ORES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1238    RegistryTag::new(vec![
1239        BlockKind::GoldOre,
1240        BlockKind::DeepslateGoldOre,
1241        BlockKind::NetherGoldOre,
1242    ])
1243});
1244pub static GRASS_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1245    RegistryTag::new(vec![
1246        BlockKind::GrassBlock,
1247        BlockKind::Podzol,
1248        BlockKind::Mycelium,
1249    ])
1250});
1251pub static GROWS_CROPS: LazyLock<RegistryTag<BlockKind>> =
1252    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Farmland]));
1253pub static GUARDED_BY_PIGLINS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1254    RegistryTag::new(vec![
1255        BlockKind::GoldOre,
1256        BlockKind::DeepslateGoldOre,
1257        BlockKind::NetherGoldOre,
1258        BlockKind::GoldBlock,
1259        BlockKind::Chest,
1260        BlockKind::EnderChest,
1261        BlockKind::TrappedChest,
1262        BlockKind::ShulkerBox,
1263        BlockKind::WhiteShulkerBox,
1264        BlockKind::OrangeShulkerBox,
1265        BlockKind::MagentaShulkerBox,
1266        BlockKind::LightBlueShulkerBox,
1267        BlockKind::YellowShulkerBox,
1268        BlockKind::LimeShulkerBox,
1269        BlockKind::PinkShulkerBox,
1270        BlockKind::GrayShulkerBox,
1271        BlockKind::LightGrayShulkerBox,
1272        BlockKind::CyanShulkerBox,
1273        BlockKind::PurpleShulkerBox,
1274        BlockKind::BlueShulkerBox,
1275        BlockKind::BrownShulkerBox,
1276        BlockKind::GreenShulkerBox,
1277        BlockKind::RedShulkerBox,
1278        BlockKind::BlackShulkerBox,
1279        BlockKind::Barrel,
1280        BlockKind::GildedBlackstone,
1281        BlockKind::CopperChest,
1282        BlockKind::ExposedCopperChest,
1283        BlockKind::WeatheredCopperChest,
1284        BlockKind::OxidizedCopperChest,
1285        BlockKind::WaxedCopperChest,
1286        BlockKind::WaxedExposedCopperChest,
1287        BlockKind::WaxedWeatheredCopperChest,
1288        BlockKind::WaxedOxidizedCopperChest,
1289        BlockKind::RawGoldBlock,
1290    ])
1291});
1292pub static HAPPY_GHAST_AVOIDS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1293    RegistryTag::new(vec![
1294        BlockKind::WitherRose,
1295        BlockKind::Fire,
1296        BlockKind::Cactus,
1297        BlockKind::MagmaBlock,
1298        BlockKind::SweetBerryBush,
1299        BlockKind::PointedDripstone,
1300    ])
1301});
1302pub static HOGLIN_REPELLENTS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1303    RegistryTag::new(vec![
1304        BlockKind::NetherPortal,
1305        BlockKind::WarpedFungus,
1306        BlockKind::RespawnAnchor,
1307        BlockKind::PottedWarpedFungus,
1308    ])
1309});
1310pub static HUGE_BROWN_MUSHROOM_CAN_PLACE_ON: LazyLock<RegistryTag<BlockKind>> =
1311    LazyLock::new(|| {
1312        RegistryTag::new(vec![
1313            BlockKind::GrassBlock,
1314            BlockKind::Dirt,
1315            BlockKind::CoarseDirt,
1316            BlockKind::Podzol,
1317            BlockKind::Podzol,
1318            BlockKind::MuddyMangroveRoots,
1319            BlockKind::Mycelium,
1320            BlockKind::Mycelium,
1321            BlockKind::WarpedNylium,
1322            BlockKind::CrimsonNylium,
1323            BlockKind::MossBlock,
1324            BlockKind::RootedDirt,
1325            BlockKind::Mud,
1326            BlockKind::PaleMossBlock,
1327        ])
1328    });
1329pub static HUGE_RED_MUSHROOM_CAN_PLACE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1330    RegistryTag::new(vec![
1331        BlockKind::GrassBlock,
1332        BlockKind::Dirt,
1333        BlockKind::CoarseDirt,
1334        BlockKind::Podzol,
1335        BlockKind::Podzol,
1336        BlockKind::MuddyMangroveRoots,
1337        BlockKind::Mycelium,
1338        BlockKind::Mycelium,
1339        BlockKind::WarpedNylium,
1340        BlockKind::CrimsonNylium,
1341        BlockKind::MossBlock,
1342        BlockKind::RootedDirt,
1343        BlockKind::Mud,
1344        BlockKind::PaleMossBlock,
1345    ])
1346});
1347pub static ICE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1348    RegistryTag::new(vec![
1349        BlockKind::Ice,
1350        BlockKind::PackedIce,
1351        BlockKind::FrostedIce,
1352        BlockKind::BlueIce,
1353    ])
1354});
1355pub static ICE_SPIKE_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1356    RegistryTag::new(vec![
1357        BlockKind::GrassBlock,
1358        BlockKind::Dirt,
1359        BlockKind::CoarseDirt,
1360        BlockKind::Podzol,
1361        BlockKind::MuddyMangroveRoots,
1362        BlockKind::Ice,
1363        BlockKind::SnowBlock,
1364        BlockKind::Mycelium,
1365        BlockKind::MossBlock,
1366        BlockKind::RootedDirt,
1367        BlockKind::Mud,
1368        BlockKind::PaleMossBlock,
1369    ])
1370});
1371pub static IMPERMEABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1372    RegistryTag::new(vec![
1373        BlockKind::Glass,
1374        BlockKind::WhiteStainedGlass,
1375        BlockKind::OrangeStainedGlass,
1376        BlockKind::MagentaStainedGlass,
1377        BlockKind::LightBlueStainedGlass,
1378        BlockKind::YellowStainedGlass,
1379        BlockKind::LimeStainedGlass,
1380        BlockKind::PinkStainedGlass,
1381        BlockKind::GrayStainedGlass,
1382        BlockKind::LightGrayStainedGlass,
1383        BlockKind::CyanStainedGlass,
1384        BlockKind::PurpleStainedGlass,
1385        BlockKind::BlueStainedGlass,
1386        BlockKind::BrownStainedGlass,
1387        BlockKind::GreenStainedGlass,
1388        BlockKind::RedStainedGlass,
1389        BlockKind::BlackStainedGlass,
1390        BlockKind::Barrier,
1391        BlockKind::TintedGlass,
1392    ])
1393});
1394pub static INCORRECT_FOR_COPPER_TOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1395    RegistryTag::new(vec![
1396        BlockKind::GoldOre,
1397        BlockKind::DeepslateGoldOre,
1398        BlockKind::GoldBlock,
1399        BlockKind::Obsidian,
1400        BlockKind::DiamondOre,
1401        BlockKind::DeepslateDiamondOre,
1402        BlockKind::DiamondBlock,
1403        BlockKind::RedstoneOre,
1404        BlockKind::DeepslateRedstoneOre,
1405        BlockKind::EmeraldOre,
1406        BlockKind::DeepslateEmeraldOre,
1407        BlockKind::EmeraldBlock,
1408        BlockKind::NetheriteBlock,
1409        BlockKind::AncientDebris,
1410        BlockKind::CryingObsidian,
1411        BlockKind::RespawnAnchor,
1412        BlockKind::RawGoldBlock,
1413    ])
1414});
1415pub static INCORRECT_FOR_DIAMOND_TOOL: LazyLock<RegistryTag<BlockKind>> =
1416    LazyLock::new(|| RegistryTag::new(vec![]));
1417pub static INCORRECT_FOR_GOLD_TOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1418    RegistryTag::new(vec![
1419        BlockKind::GoldOre,
1420        BlockKind::DeepslateGoldOre,
1421        BlockKind::IronOre,
1422        BlockKind::DeepslateIronOre,
1423        BlockKind::LapisOre,
1424        BlockKind::DeepslateLapisOre,
1425        BlockKind::LapisBlock,
1426        BlockKind::GoldBlock,
1427        BlockKind::IronBlock,
1428        BlockKind::Obsidian,
1429        BlockKind::DiamondOre,
1430        BlockKind::DeepslateDiamondOre,
1431        BlockKind::DiamondBlock,
1432        BlockKind::RedstoneOre,
1433        BlockKind::DeepslateRedstoneOre,
1434        BlockKind::EmeraldOre,
1435        BlockKind::DeepslateEmeraldOre,
1436        BlockKind::EmeraldBlock,
1437        BlockKind::NetheriteBlock,
1438        BlockKind::AncientDebris,
1439        BlockKind::CryingObsidian,
1440        BlockKind::RespawnAnchor,
1441        BlockKind::CopperBlock,
1442        BlockKind::ExposedCopper,
1443        BlockKind::WeatheredCopper,
1444        BlockKind::OxidizedCopper,
1445        BlockKind::CopperOre,
1446        BlockKind::DeepslateCopperOre,
1447        BlockKind::OxidizedCutCopper,
1448        BlockKind::WeatheredCutCopper,
1449        BlockKind::ExposedCutCopper,
1450        BlockKind::CutCopper,
1451        BlockKind::OxidizedChiseledCopper,
1452        BlockKind::WeatheredChiseledCopper,
1453        BlockKind::ExposedChiseledCopper,
1454        BlockKind::ChiseledCopper,
1455        BlockKind::WaxedOxidizedChiseledCopper,
1456        BlockKind::WaxedWeatheredChiseledCopper,
1457        BlockKind::WaxedExposedChiseledCopper,
1458        BlockKind::WaxedChiseledCopper,
1459        BlockKind::OxidizedCutCopperStairs,
1460        BlockKind::WeatheredCutCopperStairs,
1461        BlockKind::ExposedCutCopperStairs,
1462        BlockKind::CutCopperStairs,
1463        BlockKind::OxidizedCutCopperSlab,
1464        BlockKind::WeatheredCutCopperSlab,
1465        BlockKind::ExposedCutCopperSlab,
1466        BlockKind::CutCopperSlab,
1467        BlockKind::WaxedCopperBlock,
1468        BlockKind::WaxedWeatheredCopper,
1469        BlockKind::WaxedExposedCopper,
1470        BlockKind::WaxedOxidizedCopper,
1471        BlockKind::WaxedOxidizedCutCopper,
1472        BlockKind::WaxedWeatheredCutCopper,
1473        BlockKind::WaxedExposedCutCopper,
1474        BlockKind::WaxedCutCopper,
1475        BlockKind::WaxedOxidizedCutCopperStairs,
1476        BlockKind::WaxedWeatheredCutCopperStairs,
1477        BlockKind::WaxedExposedCutCopperStairs,
1478        BlockKind::WaxedCutCopperStairs,
1479        BlockKind::WaxedOxidizedCutCopperSlab,
1480        BlockKind::WaxedWeatheredCutCopperSlab,
1481        BlockKind::WaxedExposedCutCopperSlab,
1482        BlockKind::WaxedCutCopperSlab,
1483        BlockKind::CopperTrapdoor,
1484        BlockKind::ExposedCopperTrapdoor,
1485        BlockKind::OxidizedCopperTrapdoor,
1486        BlockKind::WeatheredCopperTrapdoor,
1487        BlockKind::WaxedCopperTrapdoor,
1488        BlockKind::WaxedExposedCopperTrapdoor,
1489        BlockKind::WaxedOxidizedCopperTrapdoor,
1490        BlockKind::WaxedWeatheredCopperTrapdoor,
1491        BlockKind::CopperGrate,
1492        BlockKind::ExposedCopperGrate,
1493        BlockKind::WeatheredCopperGrate,
1494        BlockKind::OxidizedCopperGrate,
1495        BlockKind::WaxedCopperGrate,
1496        BlockKind::WaxedExposedCopperGrate,
1497        BlockKind::WaxedWeatheredCopperGrate,
1498        BlockKind::WaxedOxidizedCopperGrate,
1499        BlockKind::CopperBulb,
1500        BlockKind::ExposedCopperBulb,
1501        BlockKind::WeatheredCopperBulb,
1502        BlockKind::OxidizedCopperBulb,
1503        BlockKind::WaxedCopperBulb,
1504        BlockKind::WaxedExposedCopperBulb,
1505        BlockKind::WaxedWeatheredCopperBulb,
1506        BlockKind::WaxedOxidizedCopperBulb,
1507        BlockKind::CopperChest,
1508        BlockKind::ExposedCopperChest,
1509        BlockKind::WeatheredCopperChest,
1510        BlockKind::OxidizedCopperChest,
1511        BlockKind::WaxedCopperChest,
1512        BlockKind::WaxedExposedCopperChest,
1513        BlockKind::WaxedWeatheredCopperChest,
1514        BlockKind::WaxedOxidizedCopperChest,
1515        BlockKind::LightningRod,
1516        BlockKind::ExposedLightningRod,
1517        BlockKind::WeatheredLightningRod,
1518        BlockKind::OxidizedLightningRod,
1519        BlockKind::WaxedLightningRod,
1520        BlockKind::WaxedExposedLightningRod,
1521        BlockKind::WaxedWeatheredLightningRod,
1522        BlockKind::WaxedOxidizedLightningRod,
1523        BlockKind::RawIronBlock,
1524        BlockKind::RawCopperBlock,
1525        BlockKind::RawGoldBlock,
1526        BlockKind::Crafter,
1527    ])
1528});
1529pub static INCORRECT_FOR_IRON_TOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1530    RegistryTag::new(vec![
1531        BlockKind::Obsidian,
1532        BlockKind::NetheriteBlock,
1533        BlockKind::AncientDebris,
1534        BlockKind::CryingObsidian,
1535        BlockKind::RespawnAnchor,
1536    ])
1537});
1538pub static INCORRECT_FOR_NETHERITE_TOOL: LazyLock<RegistryTag<BlockKind>> =
1539    LazyLock::new(|| RegistryTag::new(vec![]));
1540pub static INCORRECT_FOR_STONE_TOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1541    RegistryTag::new(vec![
1542        BlockKind::GoldOre,
1543        BlockKind::DeepslateGoldOre,
1544        BlockKind::GoldBlock,
1545        BlockKind::Obsidian,
1546        BlockKind::DiamondOre,
1547        BlockKind::DeepslateDiamondOre,
1548        BlockKind::DiamondBlock,
1549        BlockKind::RedstoneOre,
1550        BlockKind::DeepslateRedstoneOre,
1551        BlockKind::EmeraldOre,
1552        BlockKind::DeepslateEmeraldOre,
1553        BlockKind::EmeraldBlock,
1554        BlockKind::NetheriteBlock,
1555        BlockKind::AncientDebris,
1556        BlockKind::CryingObsidian,
1557        BlockKind::RespawnAnchor,
1558        BlockKind::RawGoldBlock,
1559    ])
1560});
1561pub static INCORRECT_FOR_WOODEN_TOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1562    RegistryTag::new(vec![
1563        BlockKind::GoldOre,
1564        BlockKind::DeepslateGoldOre,
1565        BlockKind::IronOre,
1566        BlockKind::DeepslateIronOre,
1567        BlockKind::LapisOre,
1568        BlockKind::DeepslateLapisOre,
1569        BlockKind::LapisBlock,
1570        BlockKind::GoldBlock,
1571        BlockKind::IronBlock,
1572        BlockKind::Obsidian,
1573        BlockKind::DiamondOre,
1574        BlockKind::DeepslateDiamondOre,
1575        BlockKind::DiamondBlock,
1576        BlockKind::RedstoneOre,
1577        BlockKind::DeepslateRedstoneOre,
1578        BlockKind::EmeraldOre,
1579        BlockKind::DeepslateEmeraldOre,
1580        BlockKind::EmeraldBlock,
1581        BlockKind::NetheriteBlock,
1582        BlockKind::AncientDebris,
1583        BlockKind::CryingObsidian,
1584        BlockKind::RespawnAnchor,
1585        BlockKind::CopperBlock,
1586        BlockKind::ExposedCopper,
1587        BlockKind::WeatheredCopper,
1588        BlockKind::OxidizedCopper,
1589        BlockKind::CopperOre,
1590        BlockKind::DeepslateCopperOre,
1591        BlockKind::OxidizedCutCopper,
1592        BlockKind::WeatheredCutCopper,
1593        BlockKind::ExposedCutCopper,
1594        BlockKind::CutCopper,
1595        BlockKind::OxidizedChiseledCopper,
1596        BlockKind::WeatheredChiseledCopper,
1597        BlockKind::ExposedChiseledCopper,
1598        BlockKind::ChiseledCopper,
1599        BlockKind::WaxedOxidizedChiseledCopper,
1600        BlockKind::WaxedWeatheredChiseledCopper,
1601        BlockKind::WaxedExposedChiseledCopper,
1602        BlockKind::WaxedChiseledCopper,
1603        BlockKind::OxidizedCutCopperStairs,
1604        BlockKind::WeatheredCutCopperStairs,
1605        BlockKind::ExposedCutCopperStairs,
1606        BlockKind::CutCopperStairs,
1607        BlockKind::OxidizedCutCopperSlab,
1608        BlockKind::WeatheredCutCopperSlab,
1609        BlockKind::ExposedCutCopperSlab,
1610        BlockKind::CutCopperSlab,
1611        BlockKind::WaxedCopperBlock,
1612        BlockKind::WaxedWeatheredCopper,
1613        BlockKind::WaxedExposedCopper,
1614        BlockKind::WaxedOxidizedCopper,
1615        BlockKind::WaxedOxidizedCutCopper,
1616        BlockKind::WaxedWeatheredCutCopper,
1617        BlockKind::WaxedExposedCutCopper,
1618        BlockKind::WaxedCutCopper,
1619        BlockKind::WaxedOxidizedCutCopperStairs,
1620        BlockKind::WaxedWeatheredCutCopperStairs,
1621        BlockKind::WaxedExposedCutCopperStairs,
1622        BlockKind::WaxedCutCopperStairs,
1623        BlockKind::WaxedOxidizedCutCopperSlab,
1624        BlockKind::WaxedWeatheredCutCopperSlab,
1625        BlockKind::WaxedExposedCutCopperSlab,
1626        BlockKind::WaxedCutCopperSlab,
1627        BlockKind::CopperTrapdoor,
1628        BlockKind::ExposedCopperTrapdoor,
1629        BlockKind::OxidizedCopperTrapdoor,
1630        BlockKind::WeatheredCopperTrapdoor,
1631        BlockKind::WaxedCopperTrapdoor,
1632        BlockKind::WaxedExposedCopperTrapdoor,
1633        BlockKind::WaxedOxidizedCopperTrapdoor,
1634        BlockKind::WaxedWeatheredCopperTrapdoor,
1635        BlockKind::CopperGrate,
1636        BlockKind::ExposedCopperGrate,
1637        BlockKind::WeatheredCopperGrate,
1638        BlockKind::OxidizedCopperGrate,
1639        BlockKind::WaxedCopperGrate,
1640        BlockKind::WaxedExposedCopperGrate,
1641        BlockKind::WaxedWeatheredCopperGrate,
1642        BlockKind::WaxedOxidizedCopperGrate,
1643        BlockKind::CopperBulb,
1644        BlockKind::ExposedCopperBulb,
1645        BlockKind::WeatheredCopperBulb,
1646        BlockKind::OxidizedCopperBulb,
1647        BlockKind::WaxedCopperBulb,
1648        BlockKind::WaxedExposedCopperBulb,
1649        BlockKind::WaxedWeatheredCopperBulb,
1650        BlockKind::WaxedOxidizedCopperBulb,
1651        BlockKind::CopperChest,
1652        BlockKind::ExposedCopperChest,
1653        BlockKind::WeatheredCopperChest,
1654        BlockKind::OxidizedCopperChest,
1655        BlockKind::WaxedCopperChest,
1656        BlockKind::WaxedExposedCopperChest,
1657        BlockKind::WaxedWeatheredCopperChest,
1658        BlockKind::WaxedOxidizedCopperChest,
1659        BlockKind::LightningRod,
1660        BlockKind::ExposedLightningRod,
1661        BlockKind::WeatheredLightningRod,
1662        BlockKind::OxidizedLightningRod,
1663        BlockKind::WaxedLightningRod,
1664        BlockKind::WaxedExposedLightningRod,
1665        BlockKind::WaxedWeatheredLightningRod,
1666        BlockKind::WaxedOxidizedLightningRod,
1667        BlockKind::RawIronBlock,
1668        BlockKind::RawCopperBlock,
1669        BlockKind::RawGoldBlock,
1670        BlockKind::Crafter,
1671    ])
1672});
1673pub static INFINIBURN_END: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1674    RegistryTag::new(vec![
1675        BlockKind::Bedrock,
1676        BlockKind::Netherrack,
1677        BlockKind::MagmaBlock,
1678    ])
1679});
1680pub static INFINIBURN_NETHER: LazyLock<RegistryTag<BlockKind>> =
1681    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Netherrack, BlockKind::MagmaBlock]));
1682pub static INFINIBURN_OVERWORLD: LazyLock<RegistryTag<BlockKind>> =
1683    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Netherrack, BlockKind::MagmaBlock]));
1684pub static INSIDE_STEP_SOUND_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1685    RegistryTag::new(vec![
1686        BlockKind::GlowLichen,
1687        BlockKind::LilyPad,
1688        BlockKind::SmallAmethystBud,
1689        BlockKind::PowderSnow,
1690        BlockKind::SculkVein,
1691        BlockKind::PinkPetals,
1692        BlockKind::Wildflowers,
1693        BlockKind::LeafLitter,
1694    ])
1695});
1696pub static INVALID_SPAWN_INSIDE: LazyLock<RegistryTag<BlockKind>> =
1697    LazyLock::new(|| RegistryTag::new(vec![BlockKind::EndPortal, BlockKind::EndGateway]));
1698pub static IRON_ORES: LazyLock<RegistryTag<BlockKind>> =
1699    LazyLock::new(|| RegistryTag::new(vec![BlockKind::IronOre, BlockKind::DeepslateIronOre]));
1700pub static JUNGLE_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1701    RegistryTag::new(vec![
1702        BlockKind::JungleLog,
1703        BlockKind::StrippedJungleLog,
1704        BlockKind::JungleWood,
1705        BlockKind::StrippedJungleWood,
1706    ])
1707});
1708pub static LANTERNS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1709    RegistryTag::new(vec![
1710        BlockKind::Lantern,
1711        BlockKind::SoulLantern,
1712        BlockKind::CopperLantern,
1713        BlockKind::ExposedCopperLantern,
1714        BlockKind::WeatheredCopperLantern,
1715        BlockKind::OxidizedCopperLantern,
1716        BlockKind::WaxedCopperLantern,
1717        BlockKind::WaxedExposedCopperLantern,
1718        BlockKind::WaxedWeatheredCopperLantern,
1719        BlockKind::WaxedOxidizedCopperLantern,
1720    ])
1721});
1722pub static LAPIS_ORES: LazyLock<RegistryTag<BlockKind>> =
1723    LazyLock::new(|| RegistryTag::new(vec![BlockKind::LapisOre, BlockKind::DeepslateLapisOre]));
1724pub static LAVA_POOL_STONE_CANNOT_REPLACE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1725    RegistryTag::new(vec![
1726        BlockKind::PaleOakWood,
1727        BlockKind::Bedrock,
1728        BlockKind::OakLog,
1729        BlockKind::SpruceLog,
1730        BlockKind::BirchLog,
1731        BlockKind::JungleLog,
1732        BlockKind::AcaciaLog,
1733        BlockKind::CherryLog,
1734        BlockKind::DarkOakLog,
1735        BlockKind::PaleOakLog,
1736        BlockKind::MangroveLog,
1737        BlockKind::StrippedSpruceLog,
1738        BlockKind::StrippedBirchLog,
1739        BlockKind::StrippedJungleLog,
1740        BlockKind::StrippedAcaciaLog,
1741        BlockKind::StrippedCherryLog,
1742        BlockKind::StrippedDarkOakLog,
1743        BlockKind::StrippedPaleOakLog,
1744        BlockKind::StrippedOakLog,
1745        BlockKind::StrippedMangroveLog,
1746        BlockKind::OakWood,
1747        BlockKind::SpruceWood,
1748        BlockKind::BirchWood,
1749        BlockKind::JungleWood,
1750        BlockKind::AcaciaWood,
1751        BlockKind::CherryWood,
1752        BlockKind::DarkOakWood,
1753        BlockKind::MangroveWood,
1754        BlockKind::StrippedOakWood,
1755        BlockKind::StrippedSpruceWood,
1756        BlockKind::StrippedBirchWood,
1757        BlockKind::StrippedJungleWood,
1758        BlockKind::StrippedAcaciaWood,
1759        BlockKind::StrippedCherryWood,
1760        BlockKind::StrippedDarkOakWood,
1761        BlockKind::StrippedPaleOakWood,
1762        BlockKind::StrippedMangroveWood,
1763        BlockKind::OakLeaves,
1764        BlockKind::SpruceLeaves,
1765        BlockKind::BirchLeaves,
1766        BlockKind::JungleLeaves,
1767        BlockKind::AcaciaLeaves,
1768        BlockKind::CherryLeaves,
1769        BlockKind::DarkOakLeaves,
1770        BlockKind::PaleOakLeaves,
1771        BlockKind::MangroveLeaves,
1772        BlockKind::AzaleaLeaves,
1773        BlockKind::FloweringAzaleaLeaves,
1774        BlockKind::Spawner,
1775        BlockKind::Chest,
1776        BlockKind::EndPortalFrame,
1777        BlockKind::WarpedStem,
1778        BlockKind::StrippedWarpedStem,
1779        BlockKind::WarpedHyphae,
1780        BlockKind::StrippedWarpedHyphae,
1781        BlockKind::CrimsonStem,
1782        BlockKind::StrippedCrimsonStem,
1783        BlockKind::CrimsonHyphae,
1784        BlockKind::StrippedCrimsonHyphae,
1785        BlockKind::ReinforcedDeepslate,
1786        BlockKind::TrialSpawner,
1787        BlockKind::Vault,
1788    ])
1789});
1790pub static LEAVES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1791    RegistryTag::new(vec![
1792        BlockKind::OakLeaves,
1793        BlockKind::SpruceLeaves,
1794        BlockKind::BirchLeaves,
1795        BlockKind::JungleLeaves,
1796        BlockKind::AcaciaLeaves,
1797        BlockKind::CherryLeaves,
1798        BlockKind::DarkOakLeaves,
1799        BlockKind::PaleOakLeaves,
1800        BlockKind::MangroveLeaves,
1801        BlockKind::AzaleaLeaves,
1802        BlockKind::FloweringAzaleaLeaves,
1803    ])
1804});
1805pub static LIGHTNING_RODS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1806    RegistryTag::new(vec![
1807        BlockKind::LightningRod,
1808        BlockKind::ExposedLightningRod,
1809        BlockKind::WeatheredLightningRod,
1810        BlockKind::OxidizedLightningRod,
1811        BlockKind::WaxedLightningRod,
1812        BlockKind::WaxedExposedLightningRod,
1813        BlockKind::WaxedWeatheredLightningRod,
1814        BlockKind::WaxedOxidizedLightningRod,
1815    ])
1816});
1817pub static LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1818    RegistryTag::new(vec![
1819        BlockKind::PaleOakWood,
1820        BlockKind::OakLog,
1821        BlockKind::SpruceLog,
1822        BlockKind::BirchLog,
1823        BlockKind::JungleLog,
1824        BlockKind::AcaciaLog,
1825        BlockKind::CherryLog,
1826        BlockKind::DarkOakLog,
1827        BlockKind::PaleOakLog,
1828        BlockKind::MangroveLog,
1829        BlockKind::StrippedSpruceLog,
1830        BlockKind::StrippedBirchLog,
1831        BlockKind::StrippedJungleLog,
1832        BlockKind::StrippedAcaciaLog,
1833        BlockKind::StrippedCherryLog,
1834        BlockKind::StrippedDarkOakLog,
1835        BlockKind::StrippedPaleOakLog,
1836        BlockKind::StrippedOakLog,
1837        BlockKind::StrippedMangroveLog,
1838        BlockKind::OakWood,
1839        BlockKind::SpruceWood,
1840        BlockKind::BirchWood,
1841        BlockKind::JungleWood,
1842        BlockKind::AcaciaWood,
1843        BlockKind::CherryWood,
1844        BlockKind::DarkOakWood,
1845        BlockKind::MangroveWood,
1846        BlockKind::StrippedOakWood,
1847        BlockKind::StrippedSpruceWood,
1848        BlockKind::StrippedBirchWood,
1849        BlockKind::StrippedJungleWood,
1850        BlockKind::StrippedAcaciaWood,
1851        BlockKind::StrippedCherryWood,
1852        BlockKind::StrippedDarkOakWood,
1853        BlockKind::StrippedPaleOakWood,
1854        BlockKind::StrippedMangroveWood,
1855        BlockKind::WarpedStem,
1856        BlockKind::StrippedWarpedStem,
1857        BlockKind::WarpedHyphae,
1858        BlockKind::StrippedWarpedHyphae,
1859        BlockKind::CrimsonStem,
1860        BlockKind::StrippedCrimsonStem,
1861        BlockKind::CrimsonHyphae,
1862        BlockKind::StrippedCrimsonHyphae,
1863    ])
1864});
1865pub static LOGS_THAT_BURN: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1866    RegistryTag::new(vec![
1867        BlockKind::PaleOakWood,
1868        BlockKind::OakLog,
1869        BlockKind::SpruceLog,
1870        BlockKind::BirchLog,
1871        BlockKind::JungleLog,
1872        BlockKind::AcaciaLog,
1873        BlockKind::CherryLog,
1874        BlockKind::DarkOakLog,
1875        BlockKind::PaleOakLog,
1876        BlockKind::MangroveLog,
1877        BlockKind::StrippedSpruceLog,
1878        BlockKind::StrippedBirchLog,
1879        BlockKind::StrippedJungleLog,
1880        BlockKind::StrippedAcaciaLog,
1881        BlockKind::StrippedCherryLog,
1882        BlockKind::StrippedDarkOakLog,
1883        BlockKind::StrippedPaleOakLog,
1884        BlockKind::StrippedOakLog,
1885        BlockKind::StrippedMangroveLog,
1886        BlockKind::OakWood,
1887        BlockKind::SpruceWood,
1888        BlockKind::BirchWood,
1889        BlockKind::JungleWood,
1890        BlockKind::AcaciaWood,
1891        BlockKind::CherryWood,
1892        BlockKind::DarkOakWood,
1893        BlockKind::MangroveWood,
1894        BlockKind::StrippedOakWood,
1895        BlockKind::StrippedSpruceWood,
1896        BlockKind::StrippedBirchWood,
1897        BlockKind::StrippedJungleWood,
1898        BlockKind::StrippedAcaciaWood,
1899        BlockKind::StrippedCherryWood,
1900        BlockKind::StrippedDarkOakWood,
1901        BlockKind::StrippedPaleOakWood,
1902        BlockKind::StrippedMangroveWood,
1903    ])
1904});
1905pub static LUSH_GROUND_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1906    RegistryTag::new(vec![
1907        BlockKind::Stone,
1908        BlockKind::Granite,
1909        BlockKind::Diorite,
1910        BlockKind::Andesite,
1911        BlockKind::GrassBlock,
1912        BlockKind::Dirt,
1913        BlockKind::CoarseDirt,
1914        BlockKind::Podzol,
1915        BlockKind::Sand,
1916        BlockKind::Gravel,
1917        BlockKind::MuddyMangroveRoots,
1918        BlockKind::Clay,
1919        BlockKind::Mycelium,
1920        BlockKind::Tuff,
1921        BlockKind::CaveVines,
1922        BlockKind::CaveVinesPlant,
1923        BlockKind::MossBlock,
1924        BlockKind::RootedDirt,
1925        BlockKind::Mud,
1926        BlockKind::Deepslate,
1927        BlockKind::PaleMossBlock,
1928    ])
1929});
1930pub static MAINTAINS_FARMLAND: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1931    RegistryTag::new(vec![
1932        BlockKind::MovingPiston,
1933        BlockKind::Torchflower,
1934        BlockKind::Wheat,
1935        BlockKind::AttachedPumpkinStem,
1936        BlockKind::AttachedMelonStem,
1937        BlockKind::PumpkinStem,
1938        BlockKind::MelonStem,
1939        BlockKind::OakFenceGate,
1940        BlockKind::Carrots,
1941        BlockKind::Potatoes,
1942        BlockKind::SpruceFenceGate,
1943        BlockKind::BirchFenceGate,
1944        BlockKind::JungleFenceGate,
1945        BlockKind::AcaciaFenceGate,
1946        BlockKind::CherryFenceGate,
1947        BlockKind::DarkOakFenceGate,
1948        BlockKind::PaleOakFenceGate,
1949        BlockKind::MangroveFenceGate,
1950        BlockKind::BambooFenceGate,
1951        BlockKind::TorchflowerCrop,
1952        BlockKind::PitcherCrop,
1953        BlockKind::Beetroots,
1954        BlockKind::CrimsonFenceGate,
1955        BlockKind::WarpedFenceGate,
1956    ])
1957});
1958pub static MANGROVE_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1959    RegistryTag::new(vec![
1960        BlockKind::MangroveLog,
1961        BlockKind::StrippedMangroveLog,
1962        BlockKind::MangroveWood,
1963        BlockKind::StrippedMangroveWood,
1964    ])
1965});
1966pub static MANGROVE_LOGS_CAN_GROW_THROUGH: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1967    RegistryTag::new(vec![
1968        BlockKind::MangrovePropagule,
1969        BlockKind::MangroveLog,
1970        BlockKind::MangroveRoots,
1971        BlockKind::MuddyMangroveRoots,
1972        BlockKind::MangroveLeaves,
1973        BlockKind::Vine,
1974        BlockKind::MossCarpet,
1975        BlockKind::Mud,
1976    ])
1977});
1978pub static MANGROVE_ROOTS_CAN_GROW_THROUGH: LazyLock<RegistryTag<BlockKind>> =
1979    LazyLock::new(|| {
1980        RegistryTag::new(vec![
1981            BlockKind::MangrovePropagule,
1982            BlockKind::MangroveRoots,
1983            BlockKind::MuddyMangroveRoots,
1984            BlockKind::Snow,
1985            BlockKind::Vine,
1986            BlockKind::MossCarpet,
1987            BlockKind::Mud,
1988        ])
1989    });
1990pub static MINEABLE_AXE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
1991    RegistryTag::new(vec![
1992        BlockKind::OakPlanks,
1993        BlockKind::SprucePlanks,
1994        BlockKind::BirchPlanks,
1995        BlockKind::JunglePlanks,
1996        BlockKind::AcaciaPlanks,
1997        BlockKind::CherryPlanks,
1998        BlockKind::DarkOakPlanks,
1999        BlockKind::PaleOakWood,
2000        BlockKind::PaleOakPlanks,
2001        BlockKind::MangrovePlanks,
2002        BlockKind::BambooPlanks,
2003        BlockKind::BambooMosaic,
2004        BlockKind::OakLog,
2005        BlockKind::SpruceLog,
2006        BlockKind::BirchLog,
2007        BlockKind::JungleLog,
2008        BlockKind::AcaciaLog,
2009        BlockKind::CherryLog,
2010        BlockKind::DarkOakLog,
2011        BlockKind::PaleOakLog,
2012        BlockKind::MangroveLog,
2013        BlockKind::MangroveRoots,
2014        BlockKind::BambooBlock,
2015        BlockKind::StrippedSpruceLog,
2016        BlockKind::StrippedBirchLog,
2017        BlockKind::StrippedJungleLog,
2018        BlockKind::StrippedAcaciaLog,
2019        BlockKind::StrippedCherryLog,
2020        BlockKind::StrippedDarkOakLog,
2021        BlockKind::StrippedPaleOakLog,
2022        BlockKind::StrippedOakLog,
2023        BlockKind::StrippedMangroveLog,
2024        BlockKind::StrippedBambooBlock,
2025        BlockKind::OakWood,
2026        BlockKind::SpruceWood,
2027        BlockKind::BirchWood,
2028        BlockKind::JungleWood,
2029        BlockKind::AcaciaWood,
2030        BlockKind::CherryWood,
2031        BlockKind::DarkOakWood,
2032        BlockKind::MangroveWood,
2033        BlockKind::StrippedOakWood,
2034        BlockKind::StrippedSpruceWood,
2035        BlockKind::StrippedBirchWood,
2036        BlockKind::StrippedJungleWood,
2037        BlockKind::StrippedAcaciaWood,
2038        BlockKind::StrippedCherryWood,
2039        BlockKind::StrippedDarkOakWood,
2040        BlockKind::StrippedPaleOakWood,
2041        BlockKind::StrippedMangroveWood,
2042        BlockKind::NoteBlock,
2043        BlockKind::Bookshelf,
2044        BlockKind::ChiseledBookshelf,
2045        BlockKind::AcaciaShelf,
2046        BlockKind::BambooShelf,
2047        BlockKind::BirchShelf,
2048        BlockKind::CherryShelf,
2049        BlockKind::CrimsonShelf,
2050        BlockKind::DarkOakShelf,
2051        BlockKind::JungleShelf,
2052        BlockKind::MangroveShelf,
2053        BlockKind::OakShelf,
2054        BlockKind::PaleOakShelf,
2055        BlockKind::SpruceShelf,
2056        BlockKind::WarpedShelf,
2057        BlockKind::CreakingHeart,
2058        BlockKind::OakStairs,
2059        BlockKind::Chest,
2060        BlockKind::CraftingTable,
2061        BlockKind::OakSign,
2062        BlockKind::SpruceSign,
2063        BlockKind::BirchSign,
2064        BlockKind::AcaciaSign,
2065        BlockKind::CherrySign,
2066        BlockKind::JungleSign,
2067        BlockKind::DarkOakSign,
2068        BlockKind::PaleOakSign,
2069        BlockKind::MangroveSign,
2070        BlockKind::BambooSign,
2071        BlockKind::OakDoor,
2072        BlockKind::Ladder,
2073        BlockKind::OakWallSign,
2074        BlockKind::SpruceWallSign,
2075        BlockKind::BirchWallSign,
2076        BlockKind::AcaciaWallSign,
2077        BlockKind::CherryWallSign,
2078        BlockKind::JungleWallSign,
2079        BlockKind::DarkOakWallSign,
2080        BlockKind::PaleOakWallSign,
2081        BlockKind::MangroveWallSign,
2082        BlockKind::BambooWallSign,
2083        BlockKind::OakHangingSign,
2084        BlockKind::SpruceHangingSign,
2085        BlockKind::BirchHangingSign,
2086        BlockKind::AcaciaHangingSign,
2087        BlockKind::CherryHangingSign,
2088        BlockKind::JungleHangingSign,
2089        BlockKind::DarkOakHangingSign,
2090        BlockKind::PaleOakHangingSign,
2091        BlockKind::CrimsonHangingSign,
2092        BlockKind::WarpedHangingSign,
2093        BlockKind::MangroveHangingSign,
2094        BlockKind::BambooHangingSign,
2095        BlockKind::OakWallHangingSign,
2096        BlockKind::SpruceWallHangingSign,
2097        BlockKind::BirchWallHangingSign,
2098        BlockKind::AcaciaWallHangingSign,
2099        BlockKind::CherryWallHangingSign,
2100        BlockKind::JungleWallHangingSign,
2101        BlockKind::DarkOakWallHangingSign,
2102        BlockKind::PaleOakWallHangingSign,
2103        BlockKind::MangroveWallHangingSign,
2104        BlockKind::CrimsonWallHangingSign,
2105        BlockKind::WarpedWallHangingSign,
2106        BlockKind::BambooWallHangingSign,
2107        BlockKind::OakPressurePlate,
2108        BlockKind::SprucePressurePlate,
2109        BlockKind::BirchPressurePlate,
2110        BlockKind::JunglePressurePlate,
2111        BlockKind::AcaciaPressurePlate,
2112        BlockKind::CherryPressurePlate,
2113        BlockKind::DarkOakPressurePlate,
2114        BlockKind::PaleOakPressurePlate,
2115        BlockKind::MangrovePressurePlate,
2116        BlockKind::BambooPressurePlate,
2117        BlockKind::Jukebox,
2118        BlockKind::OakFence,
2119        BlockKind::CarvedPumpkin,
2120        BlockKind::JackOLantern,
2121        BlockKind::OakTrapdoor,
2122        BlockKind::SpruceTrapdoor,
2123        BlockKind::BirchTrapdoor,
2124        BlockKind::JungleTrapdoor,
2125        BlockKind::AcaciaTrapdoor,
2126        BlockKind::CherryTrapdoor,
2127        BlockKind::DarkOakTrapdoor,
2128        BlockKind::PaleOakTrapdoor,
2129        BlockKind::MangroveTrapdoor,
2130        BlockKind::BambooTrapdoor,
2131        BlockKind::BrownMushroomBlock,
2132        BlockKind::RedMushroomBlock,
2133        BlockKind::MushroomStem,
2134        BlockKind::Pumpkin,
2135        BlockKind::Melon,
2136        BlockKind::Vine,
2137        BlockKind::GlowLichen,
2138        BlockKind::OakFenceGate,
2139        BlockKind::Cocoa,
2140        BlockKind::SpruceStairs,
2141        BlockKind::BirchStairs,
2142        BlockKind::JungleStairs,
2143        BlockKind::OakButton,
2144        BlockKind::SpruceButton,
2145        BlockKind::BirchButton,
2146        BlockKind::JungleButton,
2147        BlockKind::AcaciaButton,
2148        BlockKind::CherryButton,
2149        BlockKind::DarkOakButton,
2150        BlockKind::PaleOakButton,
2151        BlockKind::MangroveButton,
2152        BlockKind::BambooButton,
2153        BlockKind::TrappedChest,
2154        BlockKind::DaylightDetector,
2155        BlockKind::AcaciaStairs,
2156        BlockKind::CherryStairs,
2157        BlockKind::DarkOakStairs,
2158        BlockKind::PaleOakStairs,
2159        BlockKind::MangroveStairs,
2160        BlockKind::BambooStairs,
2161        BlockKind::BambooMosaicStairs,
2162        BlockKind::WhiteBanner,
2163        BlockKind::OrangeBanner,
2164        BlockKind::MagentaBanner,
2165        BlockKind::LightBlueBanner,
2166        BlockKind::YellowBanner,
2167        BlockKind::LimeBanner,
2168        BlockKind::PinkBanner,
2169        BlockKind::GrayBanner,
2170        BlockKind::LightGrayBanner,
2171        BlockKind::CyanBanner,
2172        BlockKind::PurpleBanner,
2173        BlockKind::BlueBanner,
2174        BlockKind::BrownBanner,
2175        BlockKind::GreenBanner,
2176        BlockKind::RedBanner,
2177        BlockKind::BlackBanner,
2178        BlockKind::WhiteWallBanner,
2179        BlockKind::OrangeWallBanner,
2180        BlockKind::MagentaWallBanner,
2181        BlockKind::LightBlueWallBanner,
2182        BlockKind::YellowWallBanner,
2183        BlockKind::LimeWallBanner,
2184        BlockKind::PinkWallBanner,
2185        BlockKind::GrayWallBanner,
2186        BlockKind::LightGrayWallBanner,
2187        BlockKind::CyanWallBanner,
2188        BlockKind::PurpleWallBanner,
2189        BlockKind::BlueWallBanner,
2190        BlockKind::BrownWallBanner,
2191        BlockKind::GreenWallBanner,
2192        BlockKind::RedWallBanner,
2193        BlockKind::BlackWallBanner,
2194        BlockKind::OakSlab,
2195        BlockKind::SpruceSlab,
2196        BlockKind::BirchSlab,
2197        BlockKind::JungleSlab,
2198        BlockKind::AcaciaSlab,
2199        BlockKind::CherrySlab,
2200        BlockKind::DarkOakSlab,
2201        BlockKind::PaleOakSlab,
2202        BlockKind::MangroveSlab,
2203        BlockKind::BambooSlab,
2204        BlockKind::BambooMosaicSlab,
2205        BlockKind::SpruceFenceGate,
2206        BlockKind::BirchFenceGate,
2207        BlockKind::JungleFenceGate,
2208        BlockKind::AcaciaFenceGate,
2209        BlockKind::CherryFenceGate,
2210        BlockKind::DarkOakFenceGate,
2211        BlockKind::PaleOakFenceGate,
2212        BlockKind::MangroveFenceGate,
2213        BlockKind::BambooFenceGate,
2214        BlockKind::SpruceFence,
2215        BlockKind::BirchFence,
2216        BlockKind::JungleFence,
2217        BlockKind::AcaciaFence,
2218        BlockKind::CherryFence,
2219        BlockKind::DarkOakFence,
2220        BlockKind::PaleOakFence,
2221        BlockKind::MangroveFence,
2222        BlockKind::BambooFence,
2223        BlockKind::SpruceDoor,
2224        BlockKind::BirchDoor,
2225        BlockKind::JungleDoor,
2226        BlockKind::AcaciaDoor,
2227        BlockKind::CherryDoor,
2228        BlockKind::DarkOakDoor,
2229        BlockKind::PaleOakDoor,
2230        BlockKind::MangroveDoor,
2231        BlockKind::BambooDoor,
2232        BlockKind::ChorusPlant,
2233        BlockKind::ChorusFlower,
2234        BlockKind::Bamboo,
2235        BlockKind::Loom,
2236        BlockKind::Barrel,
2237        BlockKind::CartographyTable,
2238        BlockKind::FletchingTable,
2239        BlockKind::Lectern,
2240        BlockKind::SmithingTable,
2241        BlockKind::Campfire,
2242        BlockKind::SoulCampfire,
2243        BlockKind::WarpedStem,
2244        BlockKind::StrippedWarpedStem,
2245        BlockKind::WarpedHyphae,
2246        BlockKind::StrippedWarpedHyphae,
2247        BlockKind::CrimsonStem,
2248        BlockKind::StrippedCrimsonStem,
2249        BlockKind::CrimsonHyphae,
2250        BlockKind::StrippedCrimsonHyphae,
2251        BlockKind::CrimsonPlanks,
2252        BlockKind::WarpedPlanks,
2253        BlockKind::CrimsonSlab,
2254        BlockKind::WarpedSlab,
2255        BlockKind::CrimsonPressurePlate,
2256        BlockKind::WarpedPressurePlate,
2257        BlockKind::CrimsonFence,
2258        BlockKind::WarpedFence,
2259        BlockKind::CrimsonTrapdoor,
2260        BlockKind::WarpedTrapdoor,
2261        BlockKind::CrimsonFenceGate,
2262        BlockKind::WarpedFenceGate,
2263        BlockKind::CrimsonStairs,
2264        BlockKind::WarpedStairs,
2265        BlockKind::CrimsonButton,
2266        BlockKind::WarpedButton,
2267        BlockKind::CrimsonDoor,
2268        BlockKind::WarpedDoor,
2269        BlockKind::CrimsonSign,
2270        BlockKind::WarpedSign,
2271        BlockKind::CrimsonWallSign,
2272        BlockKind::WarpedWallSign,
2273        BlockKind::Composter,
2274        BlockKind::BeeNest,
2275        BlockKind::Beehive,
2276        BlockKind::BigDripleaf,
2277        BlockKind::BigDripleafStem,
2278    ])
2279});
2280pub static MINEABLE_HOE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
2281    RegistryTag::new(vec![
2282        BlockKind::OakLeaves,
2283        BlockKind::SpruceLeaves,
2284        BlockKind::BirchLeaves,
2285        BlockKind::JungleLeaves,
2286        BlockKind::AcaciaLeaves,
2287        BlockKind::CherryLeaves,
2288        BlockKind::DarkOakLeaves,
2289        BlockKind::PaleOakLeaves,
2290        BlockKind::MangroveLeaves,
2291        BlockKind::AzaleaLeaves,
2292        BlockKind::FloweringAzaleaLeaves,
2293        BlockKind::Sponge,
2294        BlockKind::WetSponge,
2295        BlockKind::HayBlock,
2296        BlockKind::NetherWartBlock,
2297        BlockKind::DriedKelpBlock,
2298        BlockKind::WarpedWartBlock,
2299        BlockKind::Shroomlight,
2300        BlockKind::Target,
2301        BlockKind::SculkSensor,
2302        BlockKind::CalibratedSculkSensor,
2303        BlockKind::Sculk,
2304        BlockKind::SculkVein,
2305        BlockKind::SculkCatalyst,
2306        BlockKind::SculkShrieker,
2307        BlockKind::MossCarpet,
2308        BlockKind::MossBlock,
2309        BlockKind::PaleMossBlock,
2310        BlockKind::PaleMossCarpet,
2311    ])
2312});
2313pub static MINEABLE_PICKAXE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
2314    RegistryTag::new(vec![
2315        BlockKind::Stone,
2316        BlockKind::Granite,
2317        BlockKind::PolishedGranite,
2318        BlockKind::Diorite,
2319        BlockKind::PolishedDiorite,
2320        BlockKind::Andesite,
2321        BlockKind::PolishedAndesite,
2322        BlockKind::Cobblestone,
2323        BlockKind::GoldOre,
2324        BlockKind::DeepslateGoldOre,
2325        BlockKind::IronOre,
2326        BlockKind::DeepslateIronOre,
2327        BlockKind::CoalOre,
2328        BlockKind::DeepslateCoalOre,
2329        BlockKind::NetherGoldOre,
2330        BlockKind::LapisOre,
2331        BlockKind::DeepslateLapisOre,
2332        BlockKind::LapisBlock,
2333        BlockKind::Dispenser,
2334        BlockKind::Sandstone,
2335        BlockKind::ChiseledSandstone,
2336        BlockKind::CutSandstone,
2337        BlockKind::PoweredRail,
2338        BlockKind::DetectorRail,
2339        BlockKind::StickyPiston,
2340        BlockKind::Piston,
2341        BlockKind::PistonHead,
2342        BlockKind::GoldBlock,
2343        BlockKind::IronBlock,
2344        BlockKind::Bricks,
2345        BlockKind::MossyCobblestone,
2346        BlockKind::Obsidian,
2347        BlockKind::Spawner,
2348        BlockKind::DiamondOre,
2349        BlockKind::DeepslateDiamondOre,
2350        BlockKind::DiamondBlock,
2351        BlockKind::Furnace,
2352        BlockKind::Rail,
2353        BlockKind::CobblestoneStairs,
2354        BlockKind::StonePressurePlate,
2355        BlockKind::IronDoor,
2356        BlockKind::RedstoneOre,
2357        BlockKind::DeepslateRedstoneOre,
2358        BlockKind::StoneButton,
2359        BlockKind::Ice,
2360        BlockKind::Netherrack,
2361        BlockKind::Basalt,
2362        BlockKind::PolishedBasalt,
2363        BlockKind::StoneBricks,
2364        BlockKind::MossyStoneBricks,
2365        BlockKind::CrackedStoneBricks,
2366        BlockKind::ChiseledStoneBricks,
2367        BlockKind::PackedMud,
2368        BlockKind::MudBricks,
2369        BlockKind::InfestedStone,
2370        BlockKind::InfestedCobblestone,
2371        BlockKind::InfestedStoneBricks,
2372        BlockKind::InfestedMossyStoneBricks,
2373        BlockKind::InfestedCrackedStoneBricks,
2374        BlockKind::InfestedChiseledStoneBricks,
2375        BlockKind::IronBars,
2376        BlockKind::CopperBars,
2377        BlockKind::ExposedCopperBars,
2378        BlockKind::WeatheredCopperBars,
2379        BlockKind::OxidizedCopperBars,
2380        BlockKind::WaxedCopperBars,
2381        BlockKind::WaxedExposedCopperBars,
2382        BlockKind::WaxedWeatheredCopperBars,
2383        BlockKind::WaxedOxidizedCopperBars,
2384        BlockKind::IronChain,
2385        BlockKind::CopperChain,
2386        BlockKind::ExposedCopperChain,
2387        BlockKind::WeatheredCopperChain,
2388        BlockKind::OxidizedCopperChain,
2389        BlockKind::WaxedCopperChain,
2390        BlockKind::WaxedExposedCopperChain,
2391        BlockKind::WaxedWeatheredCopperChain,
2392        BlockKind::WaxedOxidizedCopperChain,
2393        BlockKind::BrickStairs,
2394        BlockKind::StoneBrickStairs,
2395        BlockKind::MudBrickStairs,
2396        BlockKind::ResinBricks,
2397        BlockKind::ResinBrickStairs,
2398        BlockKind::ResinBrickSlab,
2399        BlockKind::ResinBrickWall,
2400        BlockKind::ResinBrickWall,
2401        BlockKind::ChiseledResinBricks,
2402        BlockKind::NetherBricks,
2403        BlockKind::NetherBrickFence,
2404        BlockKind::NetherBrickStairs,
2405        BlockKind::EnchantingTable,
2406        BlockKind::BrewingStand,
2407        BlockKind::Cauldron,
2408        BlockKind::WaterCauldron,
2409        BlockKind::LavaCauldron,
2410        BlockKind::PowderSnowCauldron,
2411        BlockKind::EndStone,
2412        BlockKind::SandstoneStairs,
2413        BlockKind::EmeraldOre,
2414        BlockKind::DeepslateEmeraldOre,
2415        BlockKind::EnderChest,
2416        BlockKind::EmeraldBlock,
2417        BlockKind::CobblestoneWall,
2418        BlockKind::MossyCobblestoneWall,
2419        BlockKind::Anvil,
2420        BlockKind::ChippedAnvil,
2421        BlockKind::DamagedAnvil,
2422        BlockKind::LightWeightedPressurePlate,
2423        BlockKind::HeavyWeightedPressurePlate,
2424        BlockKind::RedstoneBlock,
2425        BlockKind::NetherQuartzOre,
2426        BlockKind::Hopper,
2427        BlockKind::QuartzBlock,
2428        BlockKind::ChiseledQuartzBlock,
2429        BlockKind::QuartzPillar,
2430        BlockKind::QuartzStairs,
2431        BlockKind::ActivatorRail,
2432        BlockKind::Dropper,
2433        BlockKind::WhiteTerracotta,
2434        BlockKind::OrangeTerracotta,
2435        BlockKind::MagentaTerracotta,
2436        BlockKind::LightBlueTerracotta,
2437        BlockKind::YellowTerracotta,
2438        BlockKind::LimeTerracotta,
2439        BlockKind::PinkTerracotta,
2440        BlockKind::GrayTerracotta,
2441        BlockKind::LightGrayTerracotta,
2442        BlockKind::CyanTerracotta,
2443        BlockKind::PurpleTerracotta,
2444        BlockKind::BlueTerracotta,
2445        BlockKind::BrownTerracotta,
2446        BlockKind::GreenTerracotta,
2447        BlockKind::RedTerracotta,
2448        BlockKind::BlackTerracotta,
2449        BlockKind::IronTrapdoor,
2450        BlockKind::Prismarine,
2451        BlockKind::PrismarineBricks,
2452        BlockKind::DarkPrismarine,
2453        BlockKind::PrismarineStairs,
2454        BlockKind::PrismarineBrickStairs,
2455        BlockKind::DarkPrismarineStairs,
2456        BlockKind::PrismarineSlab,
2457        BlockKind::PrismarineBrickSlab,
2458        BlockKind::DarkPrismarineSlab,
2459        BlockKind::Terracotta,
2460        BlockKind::CoalBlock,
2461        BlockKind::PackedIce,
2462        BlockKind::RedSandstone,
2463        BlockKind::ChiseledRedSandstone,
2464        BlockKind::CutRedSandstone,
2465        BlockKind::RedSandstoneStairs,
2466        BlockKind::StoneSlab,
2467        BlockKind::SmoothStoneSlab,
2468        BlockKind::SandstoneSlab,
2469        BlockKind::CutSandstoneSlab,
2470        BlockKind::PetrifiedOakSlab,
2471        BlockKind::CobblestoneSlab,
2472        BlockKind::BrickSlab,
2473        BlockKind::StoneBrickSlab,
2474        BlockKind::MudBrickSlab,
2475        BlockKind::NetherBrickSlab,
2476        BlockKind::QuartzSlab,
2477        BlockKind::RedSandstoneSlab,
2478        BlockKind::CutRedSandstoneSlab,
2479        BlockKind::PurpurSlab,
2480        BlockKind::SmoothStone,
2481        BlockKind::SmoothSandstone,
2482        BlockKind::SmoothQuartz,
2483        BlockKind::SmoothRedSandstone,
2484        BlockKind::PurpurBlock,
2485        BlockKind::PurpurPillar,
2486        BlockKind::PurpurStairs,
2487        BlockKind::EndStoneBricks,
2488        BlockKind::MagmaBlock,
2489        BlockKind::RedNetherBricks,
2490        BlockKind::BoneBlock,
2491        BlockKind::Observer,
2492        BlockKind::ShulkerBox,
2493        BlockKind::WhiteShulkerBox,
2494        BlockKind::OrangeShulkerBox,
2495        BlockKind::MagentaShulkerBox,
2496        BlockKind::LightBlueShulkerBox,
2497        BlockKind::YellowShulkerBox,
2498        BlockKind::LimeShulkerBox,
2499        BlockKind::PinkShulkerBox,
2500        BlockKind::GrayShulkerBox,
2501        BlockKind::LightGrayShulkerBox,
2502        BlockKind::CyanShulkerBox,
2503        BlockKind::PurpleShulkerBox,
2504        BlockKind::BlueShulkerBox,
2505        BlockKind::BrownShulkerBox,
2506        BlockKind::GreenShulkerBox,
2507        BlockKind::RedShulkerBox,
2508        BlockKind::BlackShulkerBox,
2509        BlockKind::WhiteGlazedTerracotta,
2510        BlockKind::OrangeGlazedTerracotta,
2511        BlockKind::MagentaGlazedTerracotta,
2512        BlockKind::LightBlueGlazedTerracotta,
2513        BlockKind::YellowGlazedTerracotta,
2514        BlockKind::LimeGlazedTerracotta,
2515        BlockKind::PinkGlazedTerracotta,
2516        BlockKind::GrayGlazedTerracotta,
2517        BlockKind::LightGrayGlazedTerracotta,
2518        BlockKind::CyanGlazedTerracotta,
2519        BlockKind::PurpleGlazedTerracotta,
2520        BlockKind::BlueGlazedTerracotta,
2521        BlockKind::BrownGlazedTerracotta,
2522        BlockKind::GreenGlazedTerracotta,
2523        BlockKind::RedGlazedTerracotta,
2524        BlockKind::BlackGlazedTerracotta,
2525        BlockKind::WhiteConcrete,
2526        BlockKind::OrangeConcrete,
2527        BlockKind::MagentaConcrete,
2528        BlockKind::LightBlueConcrete,
2529        BlockKind::YellowConcrete,
2530        BlockKind::LimeConcrete,
2531        BlockKind::PinkConcrete,
2532        BlockKind::GrayConcrete,
2533        BlockKind::LightGrayConcrete,
2534        BlockKind::CyanConcrete,
2535        BlockKind::PurpleConcrete,
2536        BlockKind::BlueConcrete,
2537        BlockKind::BrownConcrete,
2538        BlockKind::GreenConcrete,
2539        BlockKind::RedConcrete,
2540        BlockKind::BlackConcrete,
2541        BlockKind::DeadTubeCoralBlock,
2542        BlockKind::DeadBrainCoralBlock,
2543        BlockKind::DeadBubbleCoralBlock,
2544        BlockKind::DeadFireCoralBlock,
2545        BlockKind::DeadHornCoralBlock,
2546        BlockKind::TubeCoralBlock,
2547        BlockKind::BrainCoralBlock,
2548        BlockKind::BubbleCoralBlock,
2549        BlockKind::FireCoralBlock,
2550        BlockKind::HornCoralBlock,
2551        BlockKind::DeadTubeCoral,
2552        BlockKind::DeadBrainCoral,
2553        BlockKind::DeadBubbleCoral,
2554        BlockKind::DeadFireCoral,
2555        BlockKind::DeadHornCoral,
2556        BlockKind::DeadTubeCoralFan,
2557        BlockKind::DeadBrainCoralFan,
2558        BlockKind::DeadBubbleCoralFan,
2559        BlockKind::DeadFireCoralFan,
2560        BlockKind::DeadHornCoralFan,
2561        BlockKind::DeadTubeCoralWallFan,
2562        BlockKind::DeadBrainCoralWallFan,
2563        BlockKind::DeadBubbleCoralWallFan,
2564        BlockKind::DeadFireCoralWallFan,
2565        BlockKind::DeadHornCoralWallFan,
2566        BlockKind::BlueIce,
2567        BlockKind::Conduit,
2568        BlockKind::PolishedGraniteStairs,
2569        BlockKind::SmoothRedSandstoneStairs,
2570        BlockKind::MossyStoneBrickStairs,
2571        BlockKind::PolishedDioriteStairs,
2572        BlockKind::MossyCobblestoneStairs,
2573        BlockKind::EndStoneBrickStairs,
2574        BlockKind::StoneStairs,
2575        BlockKind::SmoothSandstoneStairs,
2576        BlockKind::SmoothQuartzStairs,
2577        BlockKind::GraniteStairs,
2578        BlockKind::AndesiteStairs,
2579        BlockKind::RedNetherBrickStairs,
2580        BlockKind::PolishedAndesiteStairs,
2581        BlockKind::DioriteStairs,
2582        BlockKind::PolishedGraniteSlab,
2583        BlockKind::SmoothRedSandstoneSlab,
2584        BlockKind::MossyStoneBrickSlab,
2585        BlockKind::PolishedDioriteSlab,
2586        BlockKind::MossyCobblestoneSlab,
2587        BlockKind::EndStoneBrickSlab,
2588        BlockKind::SmoothSandstoneSlab,
2589        BlockKind::SmoothQuartzSlab,
2590        BlockKind::GraniteSlab,
2591        BlockKind::AndesiteSlab,
2592        BlockKind::RedNetherBrickSlab,
2593        BlockKind::PolishedAndesiteSlab,
2594        BlockKind::DioriteSlab,
2595        BlockKind::BrickWall,
2596        BlockKind::PrismarineWall,
2597        BlockKind::RedSandstoneWall,
2598        BlockKind::MossyStoneBrickWall,
2599        BlockKind::GraniteWall,
2600        BlockKind::StoneBrickWall,
2601        BlockKind::MudBrickWall,
2602        BlockKind::NetherBrickWall,
2603        BlockKind::AndesiteWall,
2604        BlockKind::RedNetherBrickWall,
2605        BlockKind::SandstoneWall,
2606        BlockKind::EndStoneBrickWall,
2607        BlockKind::DioriteWall,
2608        BlockKind::Smoker,
2609        BlockKind::BlastFurnace,
2610        BlockKind::Grindstone,
2611        BlockKind::Stonecutter,
2612        BlockKind::Bell,
2613        BlockKind::Lantern,
2614        BlockKind::SoulLantern,
2615        BlockKind::CopperLantern,
2616        BlockKind::ExposedCopperLantern,
2617        BlockKind::WeatheredCopperLantern,
2618        BlockKind::OxidizedCopperLantern,
2619        BlockKind::WaxedCopperLantern,
2620        BlockKind::WaxedExposedCopperLantern,
2621        BlockKind::WaxedWeatheredCopperLantern,
2622        BlockKind::WaxedOxidizedCopperLantern,
2623        BlockKind::WarpedNylium,
2624        BlockKind::CrimsonNylium,
2625        BlockKind::NetheriteBlock,
2626        BlockKind::AncientDebris,
2627        BlockKind::CryingObsidian,
2628        BlockKind::RespawnAnchor,
2629        BlockKind::Lodestone,
2630        BlockKind::Blackstone,
2631        BlockKind::BlackstoneStairs,
2632        BlockKind::BlackstoneWall,
2633        BlockKind::BlackstoneSlab,
2634        BlockKind::PolishedBlackstone,
2635        BlockKind::PolishedBlackstoneBricks,
2636        BlockKind::CrackedPolishedBlackstoneBricks,
2637        BlockKind::ChiseledPolishedBlackstone,
2638        BlockKind::PolishedBlackstoneBrickSlab,
2639        BlockKind::PolishedBlackstoneBrickStairs,
2640        BlockKind::PolishedBlackstoneBrickWall,
2641        BlockKind::GildedBlackstone,
2642        BlockKind::PolishedBlackstoneStairs,
2643        BlockKind::PolishedBlackstoneSlab,
2644        BlockKind::PolishedBlackstonePressurePlate,
2645        BlockKind::PolishedBlackstoneButton,
2646        BlockKind::PolishedBlackstoneWall,
2647        BlockKind::ChiseledNetherBricks,
2648        BlockKind::CrackedNetherBricks,
2649        BlockKind::QuartzBricks,
2650        BlockKind::AmethystBlock,
2651        BlockKind::BuddingAmethyst,
2652        BlockKind::AmethystCluster,
2653        BlockKind::LargeAmethystBud,
2654        BlockKind::MediumAmethystBud,
2655        BlockKind::SmallAmethystBud,
2656        BlockKind::Tuff,
2657        BlockKind::TuffSlab,
2658        BlockKind::TuffStairs,
2659        BlockKind::TuffWall,
2660        BlockKind::TuffWall,
2661        BlockKind::PolishedTuff,
2662        BlockKind::PolishedTuffSlab,
2663        BlockKind::PolishedTuffStairs,
2664        BlockKind::PolishedTuffWall,
2665        BlockKind::PolishedTuffWall,
2666        BlockKind::ChiseledTuff,
2667        BlockKind::TuffBricks,
2668        BlockKind::TuffBrickSlab,
2669        BlockKind::TuffBrickStairs,
2670        BlockKind::TuffBrickWall,
2671        BlockKind::TuffBrickWall,
2672        BlockKind::ChiseledTuffBricks,
2673        BlockKind::Calcite,
2674        BlockKind::CopperBlock,
2675        BlockKind::ExposedCopper,
2676        BlockKind::WeatheredCopper,
2677        BlockKind::OxidizedCopper,
2678        BlockKind::CopperOre,
2679        BlockKind::DeepslateCopperOre,
2680        BlockKind::OxidizedCutCopper,
2681        BlockKind::WeatheredCutCopper,
2682        BlockKind::ExposedCutCopper,
2683        BlockKind::CutCopper,
2684        BlockKind::OxidizedChiseledCopper,
2685        BlockKind::WeatheredChiseledCopper,
2686        BlockKind::ExposedChiseledCopper,
2687        BlockKind::ChiseledCopper,
2688        BlockKind::WaxedOxidizedChiseledCopper,
2689        BlockKind::WaxedWeatheredChiseledCopper,
2690        BlockKind::WaxedExposedChiseledCopper,
2691        BlockKind::WaxedChiseledCopper,
2692        BlockKind::OxidizedCutCopperStairs,
2693        BlockKind::WeatheredCutCopperStairs,
2694        BlockKind::ExposedCutCopperStairs,
2695        BlockKind::CutCopperStairs,
2696        BlockKind::OxidizedCutCopperSlab,
2697        BlockKind::WeatheredCutCopperSlab,
2698        BlockKind::ExposedCutCopperSlab,
2699        BlockKind::CutCopperSlab,
2700        BlockKind::WaxedCopperBlock,
2701        BlockKind::WaxedWeatheredCopper,
2702        BlockKind::WaxedExposedCopper,
2703        BlockKind::WaxedOxidizedCopper,
2704        BlockKind::WaxedOxidizedCutCopper,
2705        BlockKind::WaxedWeatheredCutCopper,
2706        BlockKind::WaxedExposedCutCopper,
2707        BlockKind::WaxedCutCopper,
2708        BlockKind::WaxedOxidizedCutCopperStairs,
2709        BlockKind::WaxedWeatheredCutCopperStairs,
2710        BlockKind::WaxedExposedCutCopperStairs,
2711        BlockKind::WaxedCutCopperStairs,
2712        BlockKind::WaxedOxidizedCutCopperSlab,
2713        BlockKind::WaxedWeatheredCutCopperSlab,
2714        BlockKind::WaxedExposedCutCopperSlab,
2715        BlockKind::WaxedCutCopperSlab,
2716        BlockKind::CopperDoor,
2717        BlockKind::ExposedCopperDoor,
2718        BlockKind::OxidizedCopperDoor,
2719        BlockKind::WeatheredCopperDoor,
2720        BlockKind::WaxedCopperDoor,
2721        BlockKind::WaxedExposedCopperDoor,
2722        BlockKind::WaxedOxidizedCopperDoor,
2723        BlockKind::WaxedWeatheredCopperDoor,
2724        BlockKind::CopperTrapdoor,
2725        BlockKind::ExposedCopperTrapdoor,
2726        BlockKind::OxidizedCopperTrapdoor,
2727        BlockKind::WeatheredCopperTrapdoor,
2728        BlockKind::WaxedCopperTrapdoor,
2729        BlockKind::WaxedExposedCopperTrapdoor,
2730        BlockKind::WaxedOxidizedCopperTrapdoor,
2731        BlockKind::WaxedWeatheredCopperTrapdoor,
2732        BlockKind::CopperGrate,
2733        BlockKind::ExposedCopperGrate,
2734        BlockKind::WeatheredCopperGrate,
2735        BlockKind::OxidizedCopperGrate,
2736        BlockKind::WaxedCopperGrate,
2737        BlockKind::WaxedExposedCopperGrate,
2738        BlockKind::WaxedWeatheredCopperGrate,
2739        BlockKind::WaxedOxidizedCopperGrate,
2740        BlockKind::CopperBulb,
2741        BlockKind::ExposedCopperBulb,
2742        BlockKind::WeatheredCopperBulb,
2743        BlockKind::OxidizedCopperBulb,
2744        BlockKind::WaxedCopperBulb,
2745        BlockKind::WaxedExposedCopperBulb,
2746        BlockKind::WaxedWeatheredCopperBulb,
2747        BlockKind::WaxedOxidizedCopperBulb,
2748        BlockKind::CopperChest,
2749        BlockKind::ExposedCopperChest,
2750        BlockKind::WeatheredCopperChest,
2751        BlockKind::OxidizedCopperChest,
2752        BlockKind::WaxedCopperChest,
2753        BlockKind::WaxedExposedCopperChest,
2754        BlockKind::WaxedWeatheredCopperChest,
2755        BlockKind::WaxedOxidizedCopperChest,
2756        BlockKind::CopperGolemStatue,
2757        BlockKind::ExposedCopperGolemStatue,
2758        BlockKind::WeatheredCopperGolemStatue,
2759        BlockKind::OxidizedCopperGolemStatue,
2760        BlockKind::WaxedCopperGolemStatue,
2761        BlockKind::WaxedExposedCopperGolemStatue,
2762        BlockKind::WaxedWeatheredCopperGolemStatue,
2763        BlockKind::WaxedOxidizedCopperGolemStatue,
2764        BlockKind::LightningRod,
2765        BlockKind::ExposedLightningRod,
2766        BlockKind::WeatheredLightningRod,
2767        BlockKind::OxidizedLightningRod,
2768        BlockKind::WaxedLightningRod,
2769        BlockKind::WaxedExposedLightningRod,
2770        BlockKind::WaxedWeatheredLightningRod,
2771        BlockKind::WaxedOxidizedLightningRod,
2772        BlockKind::PointedDripstone,
2773        BlockKind::DripstoneBlock,
2774        BlockKind::Deepslate,
2775        BlockKind::CobbledDeepslate,
2776        BlockKind::CobbledDeepslateStairs,
2777        BlockKind::CobbledDeepslateSlab,
2778        BlockKind::CobbledDeepslateWall,
2779        BlockKind::PolishedDeepslate,
2780        BlockKind::PolishedDeepslateStairs,
2781        BlockKind::PolishedDeepslateSlab,
2782        BlockKind::PolishedDeepslateWall,
2783        BlockKind::DeepslateTiles,
2784        BlockKind::DeepslateTileStairs,
2785        BlockKind::DeepslateTileSlab,
2786        BlockKind::DeepslateTileWall,
2787        BlockKind::DeepslateBricks,
2788        BlockKind::DeepslateBrickStairs,
2789        BlockKind::DeepslateBrickSlab,
2790        BlockKind::DeepslateBrickWall,
2791        BlockKind::ChiseledDeepslate,
2792        BlockKind::CrackedDeepslateBricks,
2793        BlockKind::CrackedDeepslateTiles,
2794        BlockKind::InfestedDeepslate,
2795        BlockKind::SmoothBasalt,
2796        BlockKind::RawIronBlock,
2797        BlockKind::RawCopperBlock,
2798        BlockKind::RawGoldBlock,
2799        BlockKind::Crafter,
2800        BlockKind::HeavyCore,
2801    ])
2802});
2803pub static MINEABLE_SHOVEL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
2804    RegistryTag::new(vec![
2805        BlockKind::GrassBlock,
2806        BlockKind::Dirt,
2807        BlockKind::CoarseDirt,
2808        BlockKind::Podzol,
2809        BlockKind::Sand,
2810        BlockKind::SuspiciousSand,
2811        BlockKind::RedSand,
2812        BlockKind::Gravel,
2813        BlockKind::SuspiciousGravel,
2814        BlockKind::MuddyMangroveRoots,
2815        BlockKind::Farmland,
2816        BlockKind::Snow,
2817        BlockKind::SnowBlock,
2818        BlockKind::Clay,
2819        BlockKind::SoulSand,
2820        BlockKind::SoulSoil,
2821        BlockKind::Mycelium,
2822        BlockKind::DirtPath,
2823        BlockKind::WhiteConcretePowder,
2824        BlockKind::OrangeConcretePowder,
2825        BlockKind::MagentaConcretePowder,
2826        BlockKind::LightBlueConcretePowder,
2827        BlockKind::YellowConcretePowder,
2828        BlockKind::LimeConcretePowder,
2829        BlockKind::PinkConcretePowder,
2830        BlockKind::GrayConcretePowder,
2831        BlockKind::LightGrayConcretePowder,
2832        BlockKind::CyanConcretePowder,
2833        BlockKind::PurpleConcretePowder,
2834        BlockKind::BlueConcretePowder,
2835        BlockKind::BrownConcretePowder,
2836        BlockKind::GreenConcretePowder,
2837        BlockKind::RedConcretePowder,
2838        BlockKind::BlackConcretePowder,
2839        BlockKind::RootedDirt,
2840        BlockKind::Mud,
2841    ])
2842});
2843pub static MOB_INTERACTABLE_DOORS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
2844    RegistryTag::new(vec![
2845        BlockKind::OakDoor,
2846        BlockKind::SpruceDoor,
2847        BlockKind::BirchDoor,
2848        BlockKind::JungleDoor,
2849        BlockKind::AcaciaDoor,
2850        BlockKind::CherryDoor,
2851        BlockKind::DarkOakDoor,
2852        BlockKind::PaleOakDoor,
2853        BlockKind::MangroveDoor,
2854        BlockKind::BambooDoor,
2855        BlockKind::CrimsonDoor,
2856        BlockKind::WarpedDoor,
2857        BlockKind::CopperDoor,
2858        BlockKind::ExposedCopperDoor,
2859        BlockKind::OxidizedCopperDoor,
2860        BlockKind::WeatheredCopperDoor,
2861        BlockKind::WaxedCopperDoor,
2862        BlockKind::WaxedExposedCopperDoor,
2863        BlockKind::WaxedOxidizedCopperDoor,
2864        BlockKind::WaxedWeatheredCopperDoor,
2865    ])
2866});
2867pub static MOOSHROOMS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> =
2868    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Mycelium]));
2869pub static MOSS_BLOCKS: LazyLock<RegistryTag<BlockKind>> =
2870    LazyLock::new(|| RegistryTag::new(vec![BlockKind::MossBlock, BlockKind::PaleMossBlock]));
2871pub static MOSS_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
2872    RegistryTag::new(vec![
2873        BlockKind::Stone,
2874        BlockKind::Granite,
2875        BlockKind::Diorite,
2876        BlockKind::Andesite,
2877        BlockKind::GrassBlock,
2878        BlockKind::Dirt,
2879        BlockKind::CoarseDirt,
2880        BlockKind::Podzol,
2881        BlockKind::MuddyMangroveRoots,
2882        BlockKind::Mycelium,
2883        BlockKind::Tuff,
2884        BlockKind::CaveVines,
2885        BlockKind::CaveVinesPlant,
2886        BlockKind::MossBlock,
2887        BlockKind::RootedDirt,
2888        BlockKind::Mud,
2889        BlockKind::Deepslate,
2890        BlockKind::PaleMossBlock,
2891    ])
2892});
2893pub static MUD: LazyLock<RegistryTag<BlockKind>> =
2894    LazyLock::new(|| RegistryTag::new(vec![BlockKind::MuddyMangroveRoots, BlockKind::Mud]));
2895pub static NEEDS_DIAMOND_TOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
2896    RegistryTag::new(vec![
2897        BlockKind::Obsidian,
2898        BlockKind::NetheriteBlock,
2899        BlockKind::AncientDebris,
2900        BlockKind::CryingObsidian,
2901        BlockKind::RespawnAnchor,
2902    ])
2903});
2904pub static NEEDS_IRON_TOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
2905    RegistryTag::new(vec![
2906        BlockKind::GoldOre,
2907        BlockKind::DeepslateGoldOre,
2908        BlockKind::GoldBlock,
2909        BlockKind::DiamondOre,
2910        BlockKind::DeepslateDiamondOre,
2911        BlockKind::DiamondBlock,
2912        BlockKind::RedstoneOre,
2913        BlockKind::DeepslateRedstoneOre,
2914        BlockKind::EmeraldOre,
2915        BlockKind::DeepslateEmeraldOre,
2916        BlockKind::EmeraldBlock,
2917        BlockKind::RawGoldBlock,
2918    ])
2919});
2920pub static NEEDS_STONE_TOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
2921    RegistryTag::new(vec![
2922        BlockKind::IronOre,
2923        BlockKind::DeepslateIronOre,
2924        BlockKind::LapisOre,
2925        BlockKind::DeepslateLapisOre,
2926        BlockKind::LapisBlock,
2927        BlockKind::IronBlock,
2928        BlockKind::CopperBlock,
2929        BlockKind::ExposedCopper,
2930        BlockKind::WeatheredCopper,
2931        BlockKind::OxidizedCopper,
2932        BlockKind::CopperOre,
2933        BlockKind::DeepslateCopperOre,
2934        BlockKind::OxidizedCutCopper,
2935        BlockKind::WeatheredCutCopper,
2936        BlockKind::ExposedCutCopper,
2937        BlockKind::CutCopper,
2938        BlockKind::OxidizedChiseledCopper,
2939        BlockKind::WeatheredChiseledCopper,
2940        BlockKind::ExposedChiseledCopper,
2941        BlockKind::ChiseledCopper,
2942        BlockKind::WaxedOxidizedChiseledCopper,
2943        BlockKind::WaxedWeatheredChiseledCopper,
2944        BlockKind::WaxedExposedChiseledCopper,
2945        BlockKind::WaxedChiseledCopper,
2946        BlockKind::OxidizedCutCopperStairs,
2947        BlockKind::WeatheredCutCopperStairs,
2948        BlockKind::ExposedCutCopperStairs,
2949        BlockKind::CutCopperStairs,
2950        BlockKind::OxidizedCutCopperSlab,
2951        BlockKind::WeatheredCutCopperSlab,
2952        BlockKind::ExposedCutCopperSlab,
2953        BlockKind::CutCopperSlab,
2954        BlockKind::WaxedCopperBlock,
2955        BlockKind::WaxedWeatheredCopper,
2956        BlockKind::WaxedExposedCopper,
2957        BlockKind::WaxedOxidizedCopper,
2958        BlockKind::WaxedOxidizedCutCopper,
2959        BlockKind::WaxedWeatheredCutCopper,
2960        BlockKind::WaxedExposedCutCopper,
2961        BlockKind::WaxedCutCopper,
2962        BlockKind::WaxedOxidizedCutCopperStairs,
2963        BlockKind::WaxedWeatheredCutCopperStairs,
2964        BlockKind::WaxedExposedCutCopperStairs,
2965        BlockKind::WaxedCutCopperStairs,
2966        BlockKind::WaxedOxidizedCutCopperSlab,
2967        BlockKind::WaxedWeatheredCutCopperSlab,
2968        BlockKind::WaxedExposedCutCopperSlab,
2969        BlockKind::WaxedCutCopperSlab,
2970        BlockKind::CopperTrapdoor,
2971        BlockKind::ExposedCopperTrapdoor,
2972        BlockKind::OxidizedCopperTrapdoor,
2973        BlockKind::WeatheredCopperTrapdoor,
2974        BlockKind::WaxedCopperTrapdoor,
2975        BlockKind::WaxedExposedCopperTrapdoor,
2976        BlockKind::WaxedOxidizedCopperTrapdoor,
2977        BlockKind::WaxedWeatheredCopperTrapdoor,
2978        BlockKind::CopperGrate,
2979        BlockKind::ExposedCopperGrate,
2980        BlockKind::WeatheredCopperGrate,
2981        BlockKind::OxidizedCopperGrate,
2982        BlockKind::WaxedCopperGrate,
2983        BlockKind::WaxedExposedCopperGrate,
2984        BlockKind::WaxedWeatheredCopperGrate,
2985        BlockKind::WaxedOxidizedCopperGrate,
2986        BlockKind::CopperBulb,
2987        BlockKind::ExposedCopperBulb,
2988        BlockKind::WeatheredCopperBulb,
2989        BlockKind::OxidizedCopperBulb,
2990        BlockKind::WaxedCopperBulb,
2991        BlockKind::WaxedExposedCopperBulb,
2992        BlockKind::WaxedWeatheredCopperBulb,
2993        BlockKind::WaxedOxidizedCopperBulb,
2994        BlockKind::CopperChest,
2995        BlockKind::ExposedCopperChest,
2996        BlockKind::WeatheredCopperChest,
2997        BlockKind::OxidizedCopperChest,
2998        BlockKind::WaxedCopperChest,
2999        BlockKind::WaxedExposedCopperChest,
3000        BlockKind::WaxedWeatheredCopperChest,
3001        BlockKind::WaxedOxidizedCopperChest,
3002        BlockKind::LightningRod,
3003        BlockKind::ExposedLightningRod,
3004        BlockKind::WeatheredLightningRod,
3005        BlockKind::OxidizedLightningRod,
3006        BlockKind::WaxedLightningRod,
3007        BlockKind::WaxedExposedLightningRod,
3008        BlockKind::WaxedWeatheredLightningRod,
3009        BlockKind::WaxedOxidizedLightningRod,
3010        BlockKind::RawIronBlock,
3011        BlockKind::RawCopperBlock,
3012        BlockKind::Crafter,
3013    ])
3014});
3015pub static NETHER_CARVER_REPLACEABLES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3016    RegistryTag::new(vec![
3017        BlockKind::Stone,
3018        BlockKind::Granite,
3019        BlockKind::Diorite,
3020        BlockKind::Andesite,
3021        BlockKind::GrassBlock,
3022        BlockKind::Dirt,
3023        BlockKind::CoarseDirt,
3024        BlockKind::Podzol,
3025        BlockKind::MuddyMangroveRoots,
3026        BlockKind::Netherrack,
3027        BlockKind::SoulSand,
3028        BlockKind::SoulSoil,
3029        BlockKind::Basalt,
3030        BlockKind::Mycelium,
3031        BlockKind::NetherWartBlock,
3032        BlockKind::WarpedNylium,
3033        BlockKind::WarpedWartBlock,
3034        BlockKind::CrimsonNylium,
3035        BlockKind::Blackstone,
3036        BlockKind::Tuff,
3037        BlockKind::MossBlock,
3038        BlockKind::RootedDirt,
3039        BlockKind::Mud,
3040        BlockKind::Deepslate,
3041        BlockKind::PaleMossBlock,
3042    ])
3043});
3044pub static NYLIUM: LazyLock<RegistryTag<BlockKind>> =
3045    LazyLock::new(|| RegistryTag::new(vec![BlockKind::WarpedNylium, BlockKind::CrimsonNylium]));
3046pub static OAK_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3047    RegistryTag::new(vec![
3048        BlockKind::OakLog,
3049        BlockKind::StrippedOakLog,
3050        BlockKind::OakWood,
3051        BlockKind::StrippedOakWood,
3052    ])
3053});
3054pub static OCCLUDES_VIBRATION_SIGNALS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3055    RegistryTag::new(vec![
3056        BlockKind::WhiteWool,
3057        BlockKind::OrangeWool,
3058        BlockKind::MagentaWool,
3059        BlockKind::LightBlueWool,
3060        BlockKind::YellowWool,
3061        BlockKind::LimeWool,
3062        BlockKind::PinkWool,
3063        BlockKind::GrayWool,
3064        BlockKind::LightGrayWool,
3065        BlockKind::CyanWool,
3066        BlockKind::PurpleWool,
3067        BlockKind::BlueWool,
3068        BlockKind::BrownWool,
3069        BlockKind::GreenWool,
3070        BlockKind::RedWool,
3071        BlockKind::BlackWool,
3072    ])
3073});
3074pub static OVERRIDES_MUSHROOM_LIGHT_REQUIREMENT: LazyLock<RegistryTag<BlockKind>> =
3075    LazyLock::new(|| {
3076        RegistryTag::new(vec![
3077            BlockKind::Podzol,
3078            BlockKind::Mycelium,
3079            BlockKind::WarpedNylium,
3080            BlockKind::CrimsonNylium,
3081        ])
3082    });
3083pub static OVERWORLD_CARVER_REPLACEABLES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3084    RegistryTag::new(vec![
3085        BlockKind::Stone,
3086        BlockKind::Granite,
3087        BlockKind::Diorite,
3088        BlockKind::Andesite,
3089        BlockKind::GrassBlock,
3090        BlockKind::Dirt,
3091        BlockKind::CoarseDirt,
3092        BlockKind::Podzol,
3093        BlockKind::Water,
3094        BlockKind::Sand,
3095        BlockKind::SuspiciousSand,
3096        BlockKind::RedSand,
3097        BlockKind::Gravel,
3098        BlockKind::SuspiciousGravel,
3099        BlockKind::IronOre,
3100        BlockKind::DeepslateIronOre,
3101        BlockKind::MuddyMangroveRoots,
3102        BlockKind::Sandstone,
3103        BlockKind::Snow,
3104        BlockKind::SnowBlock,
3105        BlockKind::Mycelium,
3106        BlockKind::WhiteTerracotta,
3107        BlockKind::OrangeTerracotta,
3108        BlockKind::MagentaTerracotta,
3109        BlockKind::LightBlueTerracotta,
3110        BlockKind::YellowTerracotta,
3111        BlockKind::LimeTerracotta,
3112        BlockKind::PinkTerracotta,
3113        BlockKind::GrayTerracotta,
3114        BlockKind::LightGrayTerracotta,
3115        BlockKind::CyanTerracotta,
3116        BlockKind::PurpleTerracotta,
3117        BlockKind::BlueTerracotta,
3118        BlockKind::BrownTerracotta,
3119        BlockKind::GreenTerracotta,
3120        BlockKind::RedTerracotta,
3121        BlockKind::BlackTerracotta,
3122        BlockKind::Terracotta,
3123        BlockKind::PackedIce,
3124        BlockKind::RedSandstone,
3125        BlockKind::Tuff,
3126        BlockKind::Calcite,
3127        BlockKind::PowderSnow,
3128        BlockKind::CopperOre,
3129        BlockKind::DeepslateCopperOre,
3130        BlockKind::MossBlock,
3131        BlockKind::RootedDirt,
3132        BlockKind::Mud,
3133        BlockKind::Deepslate,
3134        BlockKind::RawIronBlock,
3135        BlockKind::RawCopperBlock,
3136        BlockKind::PaleMossBlock,
3137    ])
3138});
3139pub static OVERWORLD_NATURAL_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3140    RegistryTag::new(vec![
3141        BlockKind::OakLog,
3142        BlockKind::SpruceLog,
3143        BlockKind::BirchLog,
3144        BlockKind::JungleLog,
3145        BlockKind::AcaciaLog,
3146        BlockKind::CherryLog,
3147        BlockKind::DarkOakLog,
3148        BlockKind::PaleOakLog,
3149        BlockKind::MangroveLog,
3150    ])
3151});
3152pub static PALE_OAK_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3153    RegistryTag::new(vec![
3154        BlockKind::PaleOakWood,
3155        BlockKind::PaleOakLog,
3156        BlockKind::StrippedPaleOakLog,
3157        BlockKind::StrippedPaleOakWood,
3158    ])
3159});
3160pub static PARROTS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3161    RegistryTag::new(vec![
3162        BlockKind::Air,
3163        BlockKind::GrassBlock,
3164        BlockKind::PaleOakWood,
3165        BlockKind::OakLog,
3166        BlockKind::SpruceLog,
3167        BlockKind::BirchLog,
3168        BlockKind::JungleLog,
3169        BlockKind::AcaciaLog,
3170        BlockKind::CherryLog,
3171        BlockKind::DarkOakLog,
3172        BlockKind::PaleOakLog,
3173        BlockKind::MangroveLog,
3174        BlockKind::StrippedSpruceLog,
3175        BlockKind::StrippedBirchLog,
3176        BlockKind::StrippedJungleLog,
3177        BlockKind::StrippedAcaciaLog,
3178        BlockKind::StrippedCherryLog,
3179        BlockKind::StrippedDarkOakLog,
3180        BlockKind::StrippedPaleOakLog,
3181        BlockKind::StrippedOakLog,
3182        BlockKind::StrippedMangroveLog,
3183        BlockKind::OakWood,
3184        BlockKind::SpruceWood,
3185        BlockKind::BirchWood,
3186        BlockKind::JungleWood,
3187        BlockKind::AcaciaWood,
3188        BlockKind::CherryWood,
3189        BlockKind::DarkOakWood,
3190        BlockKind::MangroveWood,
3191        BlockKind::StrippedOakWood,
3192        BlockKind::StrippedSpruceWood,
3193        BlockKind::StrippedBirchWood,
3194        BlockKind::StrippedJungleWood,
3195        BlockKind::StrippedAcaciaWood,
3196        BlockKind::StrippedCherryWood,
3197        BlockKind::StrippedDarkOakWood,
3198        BlockKind::StrippedPaleOakWood,
3199        BlockKind::StrippedMangroveWood,
3200        BlockKind::OakLeaves,
3201        BlockKind::SpruceLeaves,
3202        BlockKind::BirchLeaves,
3203        BlockKind::JungleLeaves,
3204        BlockKind::AcaciaLeaves,
3205        BlockKind::CherryLeaves,
3206        BlockKind::DarkOakLeaves,
3207        BlockKind::PaleOakLeaves,
3208        BlockKind::MangroveLeaves,
3209        BlockKind::AzaleaLeaves,
3210        BlockKind::FloweringAzaleaLeaves,
3211        BlockKind::WarpedStem,
3212        BlockKind::StrippedWarpedStem,
3213        BlockKind::WarpedHyphae,
3214        BlockKind::StrippedWarpedHyphae,
3215        BlockKind::CrimsonStem,
3216        BlockKind::StrippedCrimsonStem,
3217        BlockKind::CrimsonHyphae,
3218        BlockKind::StrippedCrimsonHyphae,
3219    ])
3220});
3221pub static PIGLIN_REPELLENTS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3222    RegistryTag::new(vec![
3223        BlockKind::SoulFire,
3224        BlockKind::SoulTorch,
3225        BlockKind::SoulWallTorch,
3226        BlockKind::SoulLantern,
3227        BlockKind::SoulCampfire,
3228    ])
3229});
3230pub static PLANKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3231    RegistryTag::new(vec![
3232        BlockKind::OakPlanks,
3233        BlockKind::SprucePlanks,
3234        BlockKind::BirchPlanks,
3235        BlockKind::JunglePlanks,
3236        BlockKind::AcaciaPlanks,
3237        BlockKind::CherryPlanks,
3238        BlockKind::DarkOakPlanks,
3239        BlockKind::PaleOakPlanks,
3240        BlockKind::MangrovePlanks,
3241        BlockKind::BambooPlanks,
3242        BlockKind::CrimsonPlanks,
3243        BlockKind::WarpedPlanks,
3244    ])
3245});
3246pub static POLAR_BEARS_SPAWNABLE_ON_ALTERNATE: LazyLock<RegistryTag<BlockKind>> =
3247    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Ice]));
3248pub static PORTALS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3249    RegistryTag::new(vec![
3250        BlockKind::NetherPortal,
3251        BlockKind::EndPortal,
3252        BlockKind::EndGateway,
3253    ])
3254});
3255pub static PRESSURE_PLATES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3256    RegistryTag::new(vec![
3257        BlockKind::StonePressurePlate,
3258        BlockKind::OakPressurePlate,
3259        BlockKind::SprucePressurePlate,
3260        BlockKind::BirchPressurePlate,
3261        BlockKind::JunglePressurePlate,
3262        BlockKind::AcaciaPressurePlate,
3263        BlockKind::CherryPressurePlate,
3264        BlockKind::DarkOakPressurePlate,
3265        BlockKind::PaleOakPressurePlate,
3266        BlockKind::MangrovePressurePlate,
3267        BlockKind::BambooPressurePlate,
3268        BlockKind::LightWeightedPressurePlate,
3269        BlockKind::HeavyWeightedPressurePlate,
3270        BlockKind::CrimsonPressurePlate,
3271        BlockKind::WarpedPressurePlate,
3272        BlockKind::PolishedBlackstonePressurePlate,
3273    ])
3274});
3275pub static PREVENT_MOB_SPAWNING_INSIDE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3276    RegistryTag::new(vec![
3277        BlockKind::PoweredRail,
3278        BlockKind::DetectorRail,
3279        BlockKind::Rail,
3280        BlockKind::ActivatorRail,
3281    ])
3282});
3283pub static PREVENTS_NEARBY_LEAF_DECAY: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3284    RegistryTag::new(vec![
3285        BlockKind::PaleOakWood,
3286        BlockKind::OakLog,
3287        BlockKind::SpruceLog,
3288        BlockKind::BirchLog,
3289        BlockKind::JungleLog,
3290        BlockKind::AcaciaLog,
3291        BlockKind::CherryLog,
3292        BlockKind::DarkOakLog,
3293        BlockKind::PaleOakLog,
3294        BlockKind::MangroveLog,
3295        BlockKind::StrippedSpruceLog,
3296        BlockKind::StrippedBirchLog,
3297        BlockKind::StrippedJungleLog,
3298        BlockKind::StrippedAcaciaLog,
3299        BlockKind::StrippedCherryLog,
3300        BlockKind::StrippedDarkOakLog,
3301        BlockKind::StrippedPaleOakLog,
3302        BlockKind::StrippedOakLog,
3303        BlockKind::StrippedMangroveLog,
3304        BlockKind::OakWood,
3305        BlockKind::SpruceWood,
3306        BlockKind::BirchWood,
3307        BlockKind::JungleWood,
3308        BlockKind::AcaciaWood,
3309        BlockKind::CherryWood,
3310        BlockKind::DarkOakWood,
3311        BlockKind::MangroveWood,
3312        BlockKind::StrippedOakWood,
3313        BlockKind::StrippedSpruceWood,
3314        BlockKind::StrippedBirchWood,
3315        BlockKind::StrippedJungleWood,
3316        BlockKind::StrippedAcaciaWood,
3317        BlockKind::StrippedCherryWood,
3318        BlockKind::StrippedDarkOakWood,
3319        BlockKind::StrippedPaleOakWood,
3320        BlockKind::StrippedMangroveWood,
3321        BlockKind::WarpedStem,
3322        BlockKind::StrippedWarpedStem,
3323        BlockKind::WarpedHyphae,
3324        BlockKind::StrippedWarpedHyphae,
3325        BlockKind::CrimsonStem,
3326        BlockKind::StrippedCrimsonStem,
3327        BlockKind::CrimsonHyphae,
3328        BlockKind::StrippedCrimsonHyphae,
3329    ])
3330});
3331pub static RABBITS_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3332    RegistryTag::new(vec![
3333        BlockKind::GrassBlock,
3334        BlockKind::Sand,
3335        BlockKind::Snow,
3336        BlockKind::SnowBlock,
3337    ])
3338});
3339pub static RAILS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3340    RegistryTag::new(vec![
3341        BlockKind::PoweredRail,
3342        BlockKind::DetectorRail,
3343        BlockKind::Rail,
3344        BlockKind::ActivatorRail,
3345    ])
3346});
3347pub static REDSTONE_ORES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3348    RegistryTag::new(vec![
3349        BlockKind::RedstoneOre,
3350        BlockKind::DeepslateRedstoneOre,
3351    ])
3352});
3353pub static REPLACEABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3354    RegistryTag::new(vec![
3355        BlockKind::Air,
3356        BlockKind::Water,
3357        BlockKind::Lava,
3358        BlockKind::ShortGrass,
3359        BlockKind::Fern,
3360        BlockKind::DeadBush,
3361        BlockKind::Bush,
3362        BlockKind::ShortDryGrass,
3363        BlockKind::TallDryGrass,
3364        BlockKind::Seagrass,
3365        BlockKind::TallSeagrass,
3366        BlockKind::Fire,
3367        BlockKind::SoulFire,
3368        BlockKind::Snow,
3369        BlockKind::Vine,
3370        BlockKind::GlowLichen,
3371        BlockKind::ResinClump,
3372        BlockKind::Light,
3373        BlockKind::TallGrass,
3374        BlockKind::LargeFern,
3375        BlockKind::StructureVoid,
3376        BlockKind::VoidAir,
3377        BlockKind::CaveAir,
3378        BlockKind::BubbleColumn,
3379        BlockKind::WarpedRoots,
3380        BlockKind::NetherSprouts,
3381        BlockKind::CrimsonRoots,
3382        BlockKind::LeafLitter,
3383        BlockKind::HangingRoots,
3384    ])
3385});
3386pub static REPLACEABLE_BY_MUSHROOMS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3387    RegistryTag::new(vec![
3388        BlockKind::Water,
3389        BlockKind::OakLeaves,
3390        BlockKind::SpruceLeaves,
3391        BlockKind::BirchLeaves,
3392        BlockKind::JungleLeaves,
3393        BlockKind::AcaciaLeaves,
3394        BlockKind::CherryLeaves,
3395        BlockKind::DarkOakLeaves,
3396        BlockKind::PaleOakLeaves,
3397        BlockKind::MangroveLeaves,
3398        BlockKind::AzaleaLeaves,
3399        BlockKind::FloweringAzaleaLeaves,
3400        BlockKind::ShortGrass,
3401        BlockKind::Fern,
3402        BlockKind::DeadBush,
3403        BlockKind::Bush,
3404        BlockKind::ShortDryGrass,
3405        BlockKind::TallDryGrass,
3406        BlockKind::Seagrass,
3407        BlockKind::TallSeagrass,
3408        BlockKind::Dandelion,
3409        BlockKind::GoldenDandelion,
3410        BlockKind::Torchflower,
3411        BlockKind::Poppy,
3412        BlockKind::BlueOrchid,
3413        BlockKind::Allium,
3414        BlockKind::AzureBluet,
3415        BlockKind::RedTulip,
3416        BlockKind::OrangeTulip,
3417        BlockKind::WhiteTulip,
3418        BlockKind::PinkTulip,
3419        BlockKind::OxeyeDaisy,
3420        BlockKind::Cornflower,
3421        BlockKind::WitherRose,
3422        BlockKind::LilyOfTheValley,
3423        BlockKind::BrownMushroom,
3424        BlockKind::RedMushroom,
3425        BlockKind::BrownMushroomBlock,
3426        BlockKind::RedMushroomBlock,
3427        BlockKind::Vine,
3428        BlockKind::GlowLichen,
3429        BlockKind::Sunflower,
3430        BlockKind::Lilac,
3431        BlockKind::RoseBush,
3432        BlockKind::Peony,
3433        BlockKind::TallGrass,
3434        BlockKind::LargeFern,
3435        BlockKind::PitcherPlant,
3436        BlockKind::WarpedRoots,
3437        BlockKind::NetherSprouts,
3438        BlockKind::CrimsonRoots,
3439        BlockKind::LeafLitter,
3440        BlockKind::HangingRoots,
3441        BlockKind::PaleMossCarpet,
3442        BlockKind::OpenEyeblossom,
3443        BlockKind::ClosedEyeblossom,
3444        BlockKind::FireflyBush,
3445    ])
3446});
3447pub static REPLACEABLE_BY_TREES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3448    RegistryTag::new(vec![
3449        BlockKind::Water,
3450        BlockKind::OakLeaves,
3451        BlockKind::SpruceLeaves,
3452        BlockKind::BirchLeaves,
3453        BlockKind::JungleLeaves,
3454        BlockKind::AcaciaLeaves,
3455        BlockKind::CherryLeaves,
3456        BlockKind::DarkOakLeaves,
3457        BlockKind::PaleOakLeaves,
3458        BlockKind::MangroveLeaves,
3459        BlockKind::AzaleaLeaves,
3460        BlockKind::FloweringAzaleaLeaves,
3461        BlockKind::ShortGrass,
3462        BlockKind::Fern,
3463        BlockKind::DeadBush,
3464        BlockKind::Bush,
3465        BlockKind::ShortDryGrass,
3466        BlockKind::TallDryGrass,
3467        BlockKind::Seagrass,
3468        BlockKind::TallSeagrass,
3469        BlockKind::Dandelion,
3470        BlockKind::GoldenDandelion,
3471        BlockKind::Torchflower,
3472        BlockKind::Poppy,
3473        BlockKind::BlueOrchid,
3474        BlockKind::Allium,
3475        BlockKind::AzureBluet,
3476        BlockKind::RedTulip,
3477        BlockKind::OrangeTulip,
3478        BlockKind::WhiteTulip,
3479        BlockKind::PinkTulip,
3480        BlockKind::OxeyeDaisy,
3481        BlockKind::Cornflower,
3482        BlockKind::WitherRose,
3483        BlockKind::LilyOfTheValley,
3484        BlockKind::Vine,
3485        BlockKind::GlowLichen,
3486        BlockKind::Sunflower,
3487        BlockKind::Lilac,
3488        BlockKind::RoseBush,
3489        BlockKind::Peony,
3490        BlockKind::TallGrass,
3491        BlockKind::LargeFern,
3492        BlockKind::PitcherPlant,
3493        BlockKind::WarpedRoots,
3494        BlockKind::NetherSprouts,
3495        BlockKind::CrimsonRoots,
3496        BlockKind::LeafLitter,
3497        BlockKind::HangingRoots,
3498        BlockKind::PaleMossCarpet,
3499        BlockKind::OpenEyeblossom,
3500        BlockKind::ClosedEyeblossom,
3501        BlockKind::FireflyBush,
3502    ])
3503});
3504pub static SAND: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3505    RegistryTag::new(vec![
3506        BlockKind::Sand,
3507        BlockKind::SuspiciousSand,
3508        BlockKind::RedSand,
3509    ])
3510});
3511pub static SAPLINGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3512    RegistryTag::new(vec![
3513        BlockKind::OakSapling,
3514        BlockKind::SpruceSapling,
3515        BlockKind::BirchSapling,
3516        BlockKind::JungleSapling,
3517        BlockKind::AcaciaSapling,
3518        BlockKind::CherrySapling,
3519        BlockKind::DarkOakSapling,
3520        BlockKind::PaleOakSapling,
3521        BlockKind::MangrovePropagule,
3522        BlockKind::Azalea,
3523        BlockKind::FloweringAzalea,
3524    ])
3525});
3526pub static SCULK_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3527    RegistryTag::new(vec![
3528        BlockKind::Stone,
3529        BlockKind::Granite,
3530        BlockKind::Diorite,
3531        BlockKind::Andesite,
3532        BlockKind::GrassBlock,
3533        BlockKind::Dirt,
3534        BlockKind::CoarseDirt,
3535        BlockKind::Podzol,
3536        BlockKind::Sand,
3537        BlockKind::RedSand,
3538        BlockKind::Gravel,
3539        BlockKind::MuddyMangroveRoots,
3540        BlockKind::Sandstone,
3541        BlockKind::Clay,
3542        BlockKind::Netherrack,
3543        BlockKind::SoulSand,
3544        BlockKind::SoulSoil,
3545        BlockKind::Basalt,
3546        BlockKind::Mycelium,
3547        BlockKind::EndStone,
3548        BlockKind::WhiteTerracotta,
3549        BlockKind::OrangeTerracotta,
3550        BlockKind::MagentaTerracotta,
3551        BlockKind::LightBlueTerracotta,
3552        BlockKind::YellowTerracotta,
3553        BlockKind::LimeTerracotta,
3554        BlockKind::PinkTerracotta,
3555        BlockKind::GrayTerracotta,
3556        BlockKind::LightGrayTerracotta,
3557        BlockKind::CyanTerracotta,
3558        BlockKind::PurpleTerracotta,
3559        BlockKind::BlueTerracotta,
3560        BlockKind::BrownTerracotta,
3561        BlockKind::GreenTerracotta,
3562        BlockKind::RedTerracotta,
3563        BlockKind::BlackTerracotta,
3564        BlockKind::Terracotta,
3565        BlockKind::RedSandstone,
3566        BlockKind::WarpedNylium,
3567        BlockKind::CrimsonNylium,
3568        BlockKind::Blackstone,
3569        BlockKind::Tuff,
3570        BlockKind::Calcite,
3571        BlockKind::DripstoneBlock,
3572        BlockKind::MossBlock,
3573        BlockKind::RootedDirt,
3574        BlockKind::Mud,
3575        BlockKind::Deepslate,
3576        BlockKind::SmoothBasalt,
3577        BlockKind::PaleMossBlock,
3578    ])
3579});
3580pub static SCULK_REPLACEABLE_WORLD_GEN: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3581    RegistryTag::new(vec![
3582        BlockKind::Stone,
3583        BlockKind::Granite,
3584        BlockKind::Diorite,
3585        BlockKind::Andesite,
3586        BlockKind::GrassBlock,
3587        BlockKind::Dirt,
3588        BlockKind::CoarseDirt,
3589        BlockKind::Podzol,
3590        BlockKind::Sand,
3591        BlockKind::RedSand,
3592        BlockKind::Gravel,
3593        BlockKind::MuddyMangroveRoots,
3594        BlockKind::Sandstone,
3595        BlockKind::Clay,
3596        BlockKind::Netherrack,
3597        BlockKind::SoulSand,
3598        BlockKind::SoulSoil,
3599        BlockKind::Basalt,
3600        BlockKind::Mycelium,
3601        BlockKind::EndStone,
3602        BlockKind::WhiteTerracotta,
3603        BlockKind::OrangeTerracotta,
3604        BlockKind::MagentaTerracotta,
3605        BlockKind::LightBlueTerracotta,
3606        BlockKind::YellowTerracotta,
3607        BlockKind::LimeTerracotta,
3608        BlockKind::PinkTerracotta,
3609        BlockKind::GrayTerracotta,
3610        BlockKind::LightGrayTerracotta,
3611        BlockKind::CyanTerracotta,
3612        BlockKind::PurpleTerracotta,
3613        BlockKind::BlueTerracotta,
3614        BlockKind::BrownTerracotta,
3615        BlockKind::GreenTerracotta,
3616        BlockKind::RedTerracotta,
3617        BlockKind::BlackTerracotta,
3618        BlockKind::Terracotta,
3619        BlockKind::RedSandstone,
3620        BlockKind::WarpedNylium,
3621        BlockKind::CrimsonNylium,
3622        BlockKind::Blackstone,
3623        BlockKind::Tuff,
3624        BlockKind::Calcite,
3625        BlockKind::DripstoneBlock,
3626        BlockKind::MossBlock,
3627        BlockKind::RootedDirt,
3628        BlockKind::Mud,
3629        BlockKind::Deepslate,
3630        BlockKind::CobbledDeepslate,
3631        BlockKind::PolishedDeepslate,
3632        BlockKind::DeepslateTiles,
3633        BlockKind::DeepslateBricks,
3634        BlockKind::CrackedDeepslateBricks,
3635        BlockKind::CrackedDeepslateTiles,
3636        BlockKind::SmoothBasalt,
3637        BlockKind::PaleMossBlock,
3638    ])
3639});
3640pub static SHULKER_BOXES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3641    RegistryTag::new(vec![
3642        BlockKind::ShulkerBox,
3643        BlockKind::WhiteShulkerBox,
3644        BlockKind::OrangeShulkerBox,
3645        BlockKind::MagentaShulkerBox,
3646        BlockKind::LightBlueShulkerBox,
3647        BlockKind::YellowShulkerBox,
3648        BlockKind::LimeShulkerBox,
3649        BlockKind::PinkShulkerBox,
3650        BlockKind::GrayShulkerBox,
3651        BlockKind::LightGrayShulkerBox,
3652        BlockKind::CyanShulkerBox,
3653        BlockKind::PurpleShulkerBox,
3654        BlockKind::BlueShulkerBox,
3655        BlockKind::BrownShulkerBox,
3656        BlockKind::GreenShulkerBox,
3657        BlockKind::RedShulkerBox,
3658        BlockKind::BlackShulkerBox,
3659    ])
3660});
3661pub static SIGNS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3662    RegistryTag::new(vec![
3663        BlockKind::OakSign,
3664        BlockKind::SpruceSign,
3665        BlockKind::BirchSign,
3666        BlockKind::AcaciaSign,
3667        BlockKind::CherrySign,
3668        BlockKind::JungleSign,
3669        BlockKind::DarkOakSign,
3670        BlockKind::PaleOakSign,
3671        BlockKind::MangroveSign,
3672        BlockKind::BambooSign,
3673        BlockKind::OakWallSign,
3674        BlockKind::SpruceWallSign,
3675        BlockKind::BirchWallSign,
3676        BlockKind::AcaciaWallSign,
3677        BlockKind::CherryWallSign,
3678        BlockKind::JungleWallSign,
3679        BlockKind::DarkOakWallSign,
3680        BlockKind::PaleOakWallSign,
3681        BlockKind::MangroveWallSign,
3682        BlockKind::BambooWallSign,
3683        BlockKind::CrimsonSign,
3684        BlockKind::WarpedSign,
3685        BlockKind::CrimsonWallSign,
3686        BlockKind::WarpedWallSign,
3687    ])
3688});
3689pub static SLABS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3690    RegistryTag::new(vec![
3691        BlockKind::ResinBrickSlab,
3692        BlockKind::PrismarineSlab,
3693        BlockKind::PrismarineBrickSlab,
3694        BlockKind::DarkPrismarineSlab,
3695        BlockKind::OakSlab,
3696        BlockKind::SpruceSlab,
3697        BlockKind::BirchSlab,
3698        BlockKind::JungleSlab,
3699        BlockKind::AcaciaSlab,
3700        BlockKind::CherrySlab,
3701        BlockKind::DarkOakSlab,
3702        BlockKind::PaleOakSlab,
3703        BlockKind::MangroveSlab,
3704        BlockKind::BambooSlab,
3705        BlockKind::BambooMosaicSlab,
3706        BlockKind::StoneSlab,
3707        BlockKind::SmoothStoneSlab,
3708        BlockKind::SandstoneSlab,
3709        BlockKind::CutSandstoneSlab,
3710        BlockKind::PetrifiedOakSlab,
3711        BlockKind::CobblestoneSlab,
3712        BlockKind::BrickSlab,
3713        BlockKind::StoneBrickSlab,
3714        BlockKind::MudBrickSlab,
3715        BlockKind::NetherBrickSlab,
3716        BlockKind::QuartzSlab,
3717        BlockKind::RedSandstoneSlab,
3718        BlockKind::CutRedSandstoneSlab,
3719        BlockKind::PurpurSlab,
3720        BlockKind::PolishedGraniteSlab,
3721        BlockKind::SmoothRedSandstoneSlab,
3722        BlockKind::MossyStoneBrickSlab,
3723        BlockKind::PolishedDioriteSlab,
3724        BlockKind::MossyCobblestoneSlab,
3725        BlockKind::EndStoneBrickSlab,
3726        BlockKind::SmoothSandstoneSlab,
3727        BlockKind::SmoothQuartzSlab,
3728        BlockKind::GraniteSlab,
3729        BlockKind::AndesiteSlab,
3730        BlockKind::RedNetherBrickSlab,
3731        BlockKind::PolishedAndesiteSlab,
3732        BlockKind::DioriteSlab,
3733        BlockKind::CrimsonSlab,
3734        BlockKind::WarpedSlab,
3735        BlockKind::BlackstoneSlab,
3736        BlockKind::PolishedBlackstoneBrickSlab,
3737        BlockKind::PolishedBlackstoneSlab,
3738        BlockKind::TuffSlab,
3739        BlockKind::PolishedTuffSlab,
3740        BlockKind::TuffBrickSlab,
3741        BlockKind::OxidizedCutCopperSlab,
3742        BlockKind::WeatheredCutCopperSlab,
3743        BlockKind::ExposedCutCopperSlab,
3744        BlockKind::CutCopperSlab,
3745        BlockKind::WaxedOxidizedCutCopperSlab,
3746        BlockKind::WaxedWeatheredCutCopperSlab,
3747        BlockKind::WaxedExposedCutCopperSlab,
3748        BlockKind::WaxedCutCopperSlab,
3749        BlockKind::CobbledDeepslateSlab,
3750        BlockKind::PolishedDeepslateSlab,
3751        BlockKind::DeepslateTileSlab,
3752        BlockKind::DeepslateBrickSlab,
3753    ])
3754});
3755pub static SMALL_FLOWERS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3756    RegistryTag::new(vec![
3757        BlockKind::Dandelion,
3758        BlockKind::GoldenDandelion,
3759        BlockKind::Torchflower,
3760        BlockKind::Poppy,
3761        BlockKind::BlueOrchid,
3762        BlockKind::Allium,
3763        BlockKind::AzureBluet,
3764        BlockKind::RedTulip,
3765        BlockKind::OrangeTulip,
3766        BlockKind::WhiteTulip,
3767        BlockKind::PinkTulip,
3768        BlockKind::OxeyeDaisy,
3769        BlockKind::Cornflower,
3770        BlockKind::WitherRose,
3771        BlockKind::LilyOfTheValley,
3772        BlockKind::OpenEyeblossom,
3773        BlockKind::ClosedEyeblossom,
3774    ])
3775});
3776pub static SMELTS_TO_GLASS: LazyLock<RegistryTag<BlockKind>> =
3777    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Sand, BlockKind::RedSand]));
3778pub static SNAPS_GOAT_HORN: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3779    RegistryTag::new(vec![
3780        BlockKind::Stone,
3781        BlockKind::IronOre,
3782        BlockKind::CoalOre,
3783        BlockKind::OakLog,
3784        BlockKind::SpruceLog,
3785        BlockKind::BirchLog,
3786        BlockKind::JungleLog,
3787        BlockKind::AcaciaLog,
3788        BlockKind::CherryLog,
3789        BlockKind::DarkOakLog,
3790        BlockKind::PaleOakLog,
3791        BlockKind::MangroveLog,
3792        BlockKind::EmeraldOre,
3793        BlockKind::PackedIce,
3794        BlockKind::CopperOre,
3795    ])
3796});
3797pub static SNIFFER_DIGGABLE_BLOCK: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3798    RegistryTag::new(vec![
3799        BlockKind::GrassBlock,
3800        BlockKind::Dirt,
3801        BlockKind::CoarseDirt,
3802        BlockKind::Podzol,
3803        BlockKind::MuddyMangroveRoots,
3804        BlockKind::MossBlock,
3805        BlockKind::RootedDirt,
3806        BlockKind::Mud,
3807        BlockKind::PaleMossBlock,
3808    ])
3809});
3810pub static SNIFFER_EGG_HATCH_BOOST: LazyLock<RegistryTag<BlockKind>> =
3811    LazyLock::new(|| RegistryTag::new(vec![BlockKind::MossBlock]));
3812pub static SNOW: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3813    RegistryTag::new(vec![
3814        BlockKind::Snow,
3815        BlockKind::SnowBlock,
3816        BlockKind::PowderSnow,
3817    ])
3818});
3819pub static SOUL_FIRE_BASE_BLOCKS: LazyLock<RegistryTag<BlockKind>> =
3820    LazyLock::new(|| RegistryTag::new(vec![BlockKind::SoulSand, BlockKind::SoulSoil]));
3821pub static SOUL_SPEED_BLOCKS: LazyLock<RegistryTag<BlockKind>> =
3822    LazyLock::new(|| RegistryTag::new(vec![BlockKind::SoulSand, BlockKind::SoulSoil]));
3823pub static SPRUCE_LOGS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3824    RegistryTag::new(vec![
3825        BlockKind::SpruceLog,
3826        BlockKind::StrippedSpruceLog,
3827        BlockKind::SpruceWood,
3828        BlockKind::StrippedSpruceWood,
3829    ])
3830});
3831pub static STAIRS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3832    RegistryTag::new(vec![
3833        BlockKind::OakStairs,
3834        BlockKind::CobblestoneStairs,
3835        BlockKind::BrickStairs,
3836        BlockKind::StoneBrickStairs,
3837        BlockKind::MudBrickStairs,
3838        BlockKind::ResinBrickStairs,
3839        BlockKind::NetherBrickStairs,
3840        BlockKind::SandstoneStairs,
3841        BlockKind::SpruceStairs,
3842        BlockKind::BirchStairs,
3843        BlockKind::JungleStairs,
3844        BlockKind::QuartzStairs,
3845        BlockKind::AcaciaStairs,
3846        BlockKind::CherryStairs,
3847        BlockKind::DarkOakStairs,
3848        BlockKind::PaleOakStairs,
3849        BlockKind::MangroveStairs,
3850        BlockKind::BambooStairs,
3851        BlockKind::BambooMosaicStairs,
3852        BlockKind::PrismarineStairs,
3853        BlockKind::PrismarineBrickStairs,
3854        BlockKind::DarkPrismarineStairs,
3855        BlockKind::RedSandstoneStairs,
3856        BlockKind::PurpurStairs,
3857        BlockKind::PolishedGraniteStairs,
3858        BlockKind::SmoothRedSandstoneStairs,
3859        BlockKind::MossyStoneBrickStairs,
3860        BlockKind::PolishedDioriteStairs,
3861        BlockKind::MossyCobblestoneStairs,
3862        BlockKind::EndStoneBrickStairs,
3863        BlockKind::StoneStairs,
3864        BlockKind::SmoothSandstoneStairs,
3865        BlockKind::SmoothQuartzStairs,
3866        BlockKind::GraniteStairs,
3867        BlockKind::AndesiteStairs,
3868        BlockKind::RedNetherBrickStairs,
3869        BlockKind::PolishedAndesiteStairs,
3870        BlockKind::DioriteStairs,
3871        BlockKind::CrimsonStairs,
3872        BlockKind::WarpedStairs,
3873        BlockKind::BlackstoneStairs,
3874        BlockKind::PolishedBlackstoneBrickStairs,
3875        BlockKind::PolishedBlackstoneStairs,
3876        BlockKind::TuffStairs,
3877        BlockKind::PolishedTuffStairs,
3878        BlockKind::TuffBrickStairs,
3879        BlockKind::OxidizedCutCopperStairs,
3880        BlockKind::WeatheredCutCopperStairs,
3881        BlockKind::ExposedCutCopperStairs,
3882        BlockKind::CutCopperStairs,
3883        BlockKind::WaxedOxidizedCutCopperStairs,
3884        BlockKind::WaxedWeatheredCutCopperStairs,
3885        BlockKind::WaxedExposedCutCopperStairs,
3886        BlockKind::WaxedCutCopperStairs,
3887        BlockKind::CobbledDeepslateStairs,
3888        BlockKind::PolishedDeepslateStairs,
3889        BlockKind::DeepslateTileStairs,
3890        BlockKind::DeepslateBrickStairs,
3891    ])
3892});
3893pub static STANDING_SIGNS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3894    RegistryTag::new(vec![
3895        BlockKind::OakSign,
3896        BlockKind::SpruceSign,
3897        BlockKind::BirchSign,
3898        BlockKind::AcaciaSign,
3899        BlockKind::CherrySign,
3900        BlockKind::JungleSign,
3901        BlockKind::DarkOakSign,
3902        BlockKind::PaleOakSign,
3903        BlockKind::MangroveSign,
3904        BlockKind::BambooSign,
3905        BlockKind::CrimsonSign,
3906        BlockKind::WarpedSign,
3907    ])
3908});
3909pub static STONE_BRICKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3910    RegistryTag::new(vec![
3911        BlockKind::StoneBricks,
3912        BlockKind::MossyStoneBricks,
3913        BlockKind::CrackedStoneBricks,
3914        BlockKind::ChiseledStoneBricks,
3915    ])
3916});
3917pub static STONE_BUTTONS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3918    RegistryTag::new(vec![
3919        BlockKind::StoneButton,
3920        BlockKind::PolishedBlackstoneButton,
3921    ])
3922});
3923pub static STONE_ORE_REPLACEABLES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3924    RegistryTag::new(vec![
3925        BlockKind::Stone,
3926        BlockKind::Granite,
3927        BlockKind::Diorite,
3928        BlockKind::Andesite,
3929    ])
3930});
3931pub static STONE_PRESSURE_PLATES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3932    RegistryTag::new(vec![
3933        BlockKind::StonePressurePlate,
3934        BlockKind::PolishedBlackstonePressurePlate,
3935    ])
3936});
3937pub static STRIDER_WARM_BLOCKS: LazyLock<RegistryTag<BlockKind>> =
3938    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Lava]));
3939pub static SUBSTRATE_OVERWORLD: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3940    RegistryTag::new(vec![
3941        BlockKind::GrassBlock,
3942        BlockKind::Dirt,
3943        BlockKind::CoarseDirt,
3944        BlockKind::Podzol,
3945        BlockKind::MuddyMangroveRoots,
3946        BlockKind::Mycelium,
3947        BlockKind::MossBlock,
3948        BlockKind::RootedDirt,
3949        BlockKind::Mud,
3950        BlockKind::PaleMossBlock,
3951    ])
3952});
3953pub static SUPPORT_OVERRIDE_CACTUS_FLOWER: LazyLock<RegistryTag<BlockKind>> =
3954    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Farmland, BlockKind::Cactus]));
3955pub static SUPPORT_OVERRIDE_SNOW_LAYER: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3956    RegistryTag::new(vec![
3957        BlockKind::SoulSand,
3958        BlockKind::HoneyBlock,
3959        BlockKind::Mud,
3960    ])
3961});
3962pub static SUPPORTS_AZALEA: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3963    RegistryTag::new(vec![
3964        BlockKind::GrassBlock,
3965        BlockKind::Dirt,
3966        BlockKind::CoarseDirt,
3967        BlockKind::Podzol,
3968        BlockKind::MuddyMangroveRoots,
3969        BlockKind::Farmland,
3970        BlockKind::Clay,
3971        BlockKind::Mycelium,
3972        BlockKind::MossBlock,
3973        BlockKind::RootedDirt,
3974        BlockKind::Mud,
3975        BlockKind::PaleMossBlock,
3976    ])
3977});
3978pub static SUPPORTS_BAMBOO: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
3979    RegistryTag::new(vec![
3980        BlockKind::GrassBlock,
3981        BlockKind::Dirt,
3982        BlockKind::CoarseDirt,
3983        BlockKind::Podzol,
3984        BlockKind::Sand,
3985        BlockKind::SuspiciousSand,
3986        BlockKind::RedSand,
3987        BlockKind::Gravel,
3988        BlockKind::SuspiciousGravel,
3989        BlockKind::MuddyMangroveRoots,
3990        BlockKind::Mycelium,
3991        BlockKind::BambooSapling,
3992        BlockKind::Bamboo,
3993        BlockKind::MossBlock,
3994        BlockKind::RootedDirt,
3995        BlockKind::Mud,
3996        BlockKind::PaleMossBlock,
3997    ])
3998});
3999pub static SUPPORTS_BIG_DRIPLEAF: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4000    RegistryTag::new(vec![
4001        BlockKind::GrassBlock,
4002        BlockKind::Dirt,
4003        BlockKind::CoarseDirt,
4004        BlockKind::Podzol,
4005        BlockKind::MuddyMangroveRoots,
4006        BlockKind::Farmland,
4007        BlockKind::Clay,
4008        BlockKind::Mycelium,
4009        BlockKind::MossBlock,
4010        BlockKind::MossBlock,
4011        BlockKind::RootedDirt,
4012        BlockKind::Mud,
4013    ])
4014});
4015pub static SUPPORTS_CACTUS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4016    RegistryTag::new(vec![
4017        BlockKind::Sand,
4018        BlockKind::SuspiciousSand,
4019        BlockKind::RedSand,
4020    ])
4021});
4022pub static SUPPORTS_CHORUS_FLOWER: LazyLock<RegistryTag<BlockKind>> =
4023    LazyLock::new(|| RegistryTag::new(vec![BlockKind::EndStone]));
4024pub static SUPPORTS_CHORUS_PLANT: LazyLock<RegistryTag<BlockKind>> =
4025    LazyLock::new(|| RegistryTag::new(vec![BlockKind::EndStone]));
4026pub static SUPPORTS_COCOA: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4027    RegistryTag::new(vec![
4028        BlockKind::JungleLog,
4029        BlockKind::StrippedJungleLog,
4030        BlockKind::JungleWood,
4031        BlockKind::StrippedJungleWood,
4032    ])
4033});
4034pub static SUPPORTS_CRIMSON_FUNGUS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4035    RegistryTag::new(vec![
4036        BlockKind::GrassBlock,
4037        BlockKind::Dirt,
4038        BlockKind::CoarseDirt,
4039        BlockKind::Podzol,
4040        BlockKind::MuddyMangroveRoots,
4041        BlockKind::Farmland,
4042        BlockKind::SoulSoil,
4043        BlockKind::Mycelium,
4044        BlockKind::Mycelium,
4045        BlockKind::WarpedNylium,
4046        BlockKind::CrimsonNylium,
4047        BlockKind::MossBlock,
4048        BlockKind::RootedDirt,
4049        BlockKind::Mud,
4050        BlockKind::PaleMossBlock,
4051    ])
4052});
4053pub static SUPPORTS_CRIMSON_ROOTS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4054    RegistryTag::new(vec![
4055        BlockKind::GrassBlock,
4056        BlockKind::Dirt,
4057        BlockKind::CoarseDirt,
4058        BlockKind::Podzol,
4059        BlockKind::MuddyMangroveRoots,
4060        BlockKind::Farmland,
4061        BlockKind::SoulSoil,
4062        BlockKind::Mycelium,
4063        BlockKind::WarpedNylium,
4064        BlockKind::CrimsonNylium,
4065        BlockKind::MossBlock,
4066        BlockKind::RootedDirt,
4067        BlockKind::Mud,
4068        BlockKind::PaleMossBlock,
4069    ])
4070});
4071pub static SUPPORTS_CROPS: LazyLock<RegistryTag<BlockKind>> =
4072    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Farmland]));
4073pub static SUPPORTS_DRY_VEGETATION: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4074    RegistryTag::new(vec![
4075        BlockKind::GrassBlock,
4076        BlockKind::Dirt,
4077        BlockKind::CoarseDirt,
4078        BlockKind::Podzol,
4079        BlockKind::Sand,
4080        BlockKind::SuspiciousSand,
4081        BlockKind::RedSand,
4082        BlockKind::MuddyMangroveRoots,
4083        BlockKind::Farmland,
4084        BlockKind::Mycelium,
4085        BlockKind::WhiteTerracotta,
4086        BlockKind::OrangeTerracotta,
4087        BlockKind::MagentaTerracotta,
4088        BlockKind::LightBlueTerracotta,
4089        BlockKind::YellowTerracotta,
4090        BlockKind::LimeTerracotta,
4091        BlockKind::PinkTerracotta,
4092        BlockKind::GrayTerracotta,
4093        BlockKind::LightGrayTerracotta,
4094        BlockKind::CyanTerracotta,
4095        BlockKind::PurpleTerracotta,
4096        BlockKind::BlueTerracotta,
4097        BlockKind::BrownTerracotta,
4098        BlockKind::GreenTerracotta,
4099        BlockKind::RedTerracotta,
4100        BlockKind::BlackTerracotta,
4101        BlockKind::Terracotta,
4102        BlockKind::MossBlock,
4103        BlockKind::RootedDirt,
4104        BlockKind::Mud,
4105        BlockKind::PaleMossBlock,
4106    ])
4107});
4108pub static SUPPORTS_FROGSPAWN: LazyLock<RegistryTag<BlockKind>> =
4109    LazyLock::new(|| RegistryTag::new(vec![]));
4110pub static SUPPORTS_HANGING_MANGROVE_PROPAGULE: LazyLock<RegistryTag<BlockKind>> =
4111    LazyLock::new(|| RegistryTag::new(vec![BlockKind::MangroveLeaves]));
4112pub static SUPPORTS_LILY_PAD: LazyLock<RegistryTag<BlockKind>> =
4113    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Ice, BlockKind::FrostedIce]));
4114pub static SUPPORTS_MANGROVE_PROPAGULE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4115    RegistryTag::new(vec![
4116        BlockKind::GrassBlock,
4117        BlockKind::Dirt,
4118        BlockKind::CoarseDirt,
4119        BlockKind::Podzol,
4120        BlockKind::MuddyMangroveRoots,
4121        BlockKind::Farmland,
4122        BlockKind::Clay,
4123        BlockKind::Mycelium,
4124        BlockKind::MossBlock,
4125        BlockKind::RootedDirt,
4126        BlockKind::Mud,
4127        BlockKind::PaleMossBlock,
4128    ])
4129});
4130pub static SUPPORTS_MELON_STEM: LazyLock<RegistryTag<BlockKind>> =
4131    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Farmland]));
4132pub static SUPPORTS_MELON_STEM_FRUIT: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4133    RegistryTag::new(vec![
4134        BlockKind::GrassBlock,
4135        BlockKind::Dirt,
4136        BlockKind::CoarseDirt,
4137        BlockKind::Podzol,
4138        BlockKind::MuddyMangroveRoots,
4139        BlockKind::Farmland,
4140        BlockKind::Mycelium,
4141        BlockKind::MossBlock,
4142        BlockKind::RootedDirt,
4143        BlockKind::Mud,
4144        BlockKind::PaleMossBlock,
4145    ])
4146});
4147pub static SUPPORTS_NETHER_SPROUTS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4148    RegistryTag::new(vec![
4149        BlockKind::GrassBlock,
4150        BlockKind::Dirt,
4151        BlockKind::CoarseDirt,
4152        BlockKind::Podzol,
4153        BlockKind::MuddyMangroveRoots,
4154        BlockKind::Farmland,
4155        BlockKind::SoulSoil,
4156        BlockKind::Mycelium,
4157        BlockKind::WarpedNylium,
4158        BlockKind::CrimsonNylium,
4159        BlockKind::MossBlock,
4160        BlockKind::RootedDirt,
4161        BlockKind::Mud,
4162        BlockKind::PaleMossBlock,
4163    ])
4164});
4165pub static SUPPORTS_NETHER_WART: LazyLock<RegistryTag<BlockKind>> =
4166    LazyLock::new(|| RegistryTag::new(vec![BlockKind::SoulSand]));
4167pub static SUPPORTS_PUMPKIN_STEM: LazyLock<RegistryTag<BlockKind>> =
4168    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Farmland]));
4169pub static SUPPORTS_PUMPKIN_STEM_FRUIT: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4170    RegistryTag::new(vec![
4171        BlockKind::GrassBlock,
4172        BlockKind::Dirt,
4173        BlockKind::CoarseDirt,
4174        BlockKind::Podzol,
4175        BlockKind::MuddyMangroveRoots,
4176        BlockKind::Farmland,
4177        BlockKind::Mycelium,
4178        BlockKind::MossBlock,
4179        BlockKind::RootedDirt,
4180        BlockKind::Mud,
4181        BlockKind::PaleMossBlock,
4182    ])
4183});
4184pub static SUPPORTS_SMALL_DRIPLEAF: LazyLock<RegistryTag<BlockKind>> =
4185    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Clay, BlockKind::MossBlock]));
4186pub static SUPPORTS_STEM_CROPS: LazyLock<RegistryTag<BlockKind>> =
4187    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Farmland]));
4188pub static SUPPORTS_STEM_FRUIT: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4189    RegistryTag::new(vec![
4190        BlockKind::GrassBlock,
4191        BlockKind::Dirt,
4192        BlockKind::CoarseDirt,
4193        BlockKind::Podzol,
4194        BlockKind::MuddyMangroveRoots,
4195        BlockKind::Farmland,
4196        BlockKind::Mycelium,
4197        BlockKind::MossBlock,
4198        BlockKind::RootedDirt,
4199        BlockKind::Mud,
4200        BlockKind::PaleMossBlock,
4201    ])
4202});
4203pub static SUPPORTS_SUGAR_CANE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4204    RegistryTag::new(vec![
4205        BlockKind::GrassBlock,
4206        BlockKind::Dirt,
4207        BlockKind::CoarseDirt,
4208        BlockKind::Podzol,
4209        BlockKind::Sand,
4210        BlockKind::SuspiciousSand,
4211        BlockKind::RedSand,
4212        BlockKind::MuddyMangroveRoots,
4213        BlockKind::Mycelium,
4214        BlockKind::MossBlock,
4215        BlockKind::RootedDirt,
4216        BlockKind::Mud,
4217        BlockKind::PaleMossBlock,
4218    ])
4219});
4220pub static SUPPORTS_SUGAR_CANE_ADJACENTLY: LazyLock<RegistryTag<BlockKind>> =
4221    LazyLock::new(|| RegistryTag::new(vec![BlockKind::FrostedIce]));
4222pub static SUPPORTS_VEGETATION: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4223    RegistryTag::new(vec![
4224        BlockKind::GrassBlock,
4225        BlockKind::Dirt,
4226        BlockKind::CoarseDirt,
4227        BlockKind::Podzol,
4228        BlockKind::MuddyMangroveRoots,
4229        BlockKind::Farmland,
4230        BlockKind::Mycelium,
4231        BlockKind::MossBlock,
4232        BlockKind::RootedDirt,
4233        BlockKind::Mud,
4234        BlockKind::PaleMossBlock,
4235    ])
4236});
4237pub static SUPPORTS_WARPED_FUNGUS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4238    RegistryTag::new(vec![
4239        BlockKind::GrassBlock,
4240        BlockKind::Dirt,
4241        BlockKind::CoarseDirt,
4242        BlockKind::Podzol,
4243        BlockKind::MuddyMangroveRoots,
4244        BlockKind::Farmland,
4245        BlockKind::SoulSoil,
4246        BlockKind::Mycelium,
4247        BlockKind::Mycelium,
4248        BlockKind::WarpedNylium,
4249        BlockKind::CrimsonNylium,
4250        BlockKind::MossBlock,
4251        BlockKind::RootedDirt,
4252        BlockKind::Mud,
4253        BlockKind::PaleMossBlock,
4254    ])
4255});
4256pub static SUPPORTS_WARPED_ROOTS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4257    RegistryTag::new(vec![
4258        BlockKind::GrassBlock,
4259        BlockKind::Dirt,
4260        BlockKind::CoarseDirt,
4261        BlockKind::Podzol,
4262        BlockKind::MuddyMangroveRoots,
4263        BlockKind::Farmland,
4264        BlockKind::SoulSoil,
4265        BlockKind::Mycelium,
4266        BlockKind::WarpedNylium,
4267        BlockKind::CrimsonNylium,
4268        BlockKind::MossBlock,
4269        BlockKind::RootedDirt,
4270        BlockKind::Mud,
4271        BlockKind::PaleMossBlock,
4272    ])
4273});
4274pub static SUPPORTS_WITHER_ROSE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4275    RegistryTag::new(vec![
4276        BlockKind::GrassBlock,
4277        BlockKind::Dirt,
4278        BlockKind::CoarseDirt,
4279        BlockKind::Podzol,
4280        BlockKind::MuddyMangroveRoots,
4281        BlockKind::Farmland,
4282        BlockKind::Netherrack,
4283        BlockKind::SoulSand,
4284        BlockKind::SoulSoil,
4285        BlockKind::Mycelium,
4286        BlockKind::MossBlock,
4287        BlockKind::RootedDirt,
4288        BlockKind::Mud,
4289        BlockKind::PaleMossBlock,
4290    ])
4291});
4292pub static SWORD_EFFICIENT: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4293    RegistryTag::new(vec![
4294        BlockKind::OakLeaves,
4295        BlockKind::SpruceLeaves,
4296        BlockKind::BirchLeaves,
4297        BlockKind::JungleLeaves,
4298        BlockKind::AcaciaLeaves,
4299        BlockKind::CherryLeaves,
4300        BlockKind::DarkOakLeaves,
4301        BlockKind::PaleOakLeaves,
4302        BlockKind::MangroveLeaves,
4303        BlockKind::AzaleaLeaves,
4304        BlockKind::FloweringAzaleaLeaves,
4305        BlockKind::CarvedPumpkin,
4306        BlockKind::JackOLantern,
4307        BlockKind::Pumpkin,
4308        BlockKind::Melon,
4309        BlockKind::Vine,
4310        BlockKind::GlowLichen,
4311        BlockKind::Cocoa,
4312        BlockKind::ChorusPlant,
4313        BlockKind::ChorusFlower,
4314        BlockKind::BigDripleaf,
4315        BlockKind::BigDripleafStem,
4316    ])
4317});
4318pub static SWORD_INSTANTLY_MINES: LazyLock<RegistryTag<BlockKind>> =
4319    LazyLock::new(|| RegistryTag::new(vec![BlockKind::BambooSapling, BlockKind::Bamboo]));
4320pub static TERRACOTTA: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4321    RegistryTag::new(vec![
4322        BlockKind::WhiteTerracotta,
4323        BlockKind::OrangeTerracotta,
4324        BlockKind::MagentaTerracotta,
4325        BlockKind::LightBlueTerracotta,
4326        BlockKind::YellowTerracotta,
4327        BlockKind::LimeTerracotta,
4328        BlockKind::PinkTerracotta,
4329        BlockKind::GrayTerracotta,
4330        BlockKind::LightGrayTerracotta,
4331        BlockKind::CyanTerracotta,
4332        BlockKind::PurpleTerracotta,
4333        BlockKind::BlueTerracotta,
4334        BlockKind::BrownTerracotta,
4335        BlockKind::GreenTerracotta,
4336        BlockKind::RedTerracotta,
4337        BlockKind::BlackTerracotta,
4338        BlockKind::Terracotta,
4339    ])
4340});
4341pub static TRAIL_RUINS_REPLACEABLE: LazyLock<RegistryTag<BlockKind>> =
4342    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Gravel]));
4343pub static TRAPDOORS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4344    RegistryTag::new(vec![
4345        BlockKind::OakTrapdoor,
4346        BlockKind::SpruceTrapdoor,
4347        BlockKind::BirchTrapdoor,
4348        BlockKind::JungleTrapdoor,
4349        BlockKind::AcaciaTrapdoor,
4350        BlockKind::CherryTrapdoor,
4351        BlockKind::DarkOakTrapdoor,
4352        BlockKind::PaleOakTrapdoor,
4353        BlockKind::MangroveTrapdoor,
4354        BlockKind::BambooTrapdoor,
4355        BlockKind::IronTrapdoor,
4356        BlockKind::CrimsonTrapdoor,
4357        BlockKind::WarpedTrapdoor,
4358        BlockKind::CopperTrapdoor,
4359        BlockKind::ExposedCopperTrapdoor,
4360        BlockKind::OxidizedCopperTrapdoor,
4361        BlockKind::WeatheredCopperTrapdoor,
4362        BlockKind::WaxedCopperTrapdoor,
4363        BlockKind::WaxedExposedCopperTrapdoor,
4364        BlockKind::WaxedOxidizedCopperTrapdoor,
4365        BlockKind::WaxedWeatheredCopperTrapdoor,
4366    ])
4367});
4368pub static TRIGGERS_AMBIENT_DESERT_DRY_VEGETATION_BLOCK_SOUNDS: LazyLock<RegistryTag<BlockKind>> =
4369    LazyLock::new(|| {
4370        RegistryTag::new(vec![
4371            BlockKind::Sand,
4372            BlockKind::RedSand,
4373            BlockKind::WhiteTerracotta,
4374            BlockKind::OrangeTerracotta,
4375            BlockKind::MagentaTerracotta,
4376            BlockKind::LightBlueTerracotta,
4377            BlockKind::YellowTerracotta,
4378            BlockKind::LimeTerracotta,
4379            BlockKind::PinkTerracotta,
4380            BlockKind::GrayTerracotta,
4381            BlockKind::LightGrayTerracotta,
4382            BlockKind::CyanTerracotta,
4383            BlockKind::PurpleTerracotta,
4384            BlockKind::BlueTerracotta,
4385            BlockKind::BrownTerracotta,
4386            BlockKind::GreenTerracotta,
4387            BlockKind::RedTerracotta,
4388            BlockKind::BlackTerracotta,
4389            BlockKind::Terracotta,
4390        ])
4391    });
4392pub static TRIGGERS_AMBIENT_DESERT_SAND_BLOCK_SOUNDS: LazyLock<RegistryTag<BlockKind>> =
4393    LazyLock::new(|| RegistryTag::new(vec![BlockKind::Sand, BlockKind::RedSand]));
4394pub static TRIGGERS_AMBIENT_DRIED_GHAST_BLOCK_SOUNDS: LazyLock<RegistryTag<BlockKind>> =
4395    LazyLock::new(|| RegistryTag::new(vec![BlockKind::SoulSand, BlockKind::SoulSoil]));
4396pub static UNDERWATER_BONEMEALS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4397    RegistryTag::new(vec![
4398        BlockKind::Seagrass,
4399        BlockKind::TubeCoral,
4400        BlockKind::BrainCoral,
4401        BlockKind::BubbleCoral,
4402        BlockKind::FireCoral,
4403        BlockKind::HornCoral,
4404        BlockKind::TubeCoralFan,
4405        BlockKind::BrainCoralFan,
4406        BlockKind::BubbleCoralFan,
4407        BlockKind::FireCoralFan,
4408        BlockKind::HornCoralFan,
4409        BlockKind::TubeCoralWallFan,
4410        BlockKind::BrainCoralWallFan,
4411        BlockKind::BubbleCoralWallFan,
4412        BlockKind::FireCoralWallFan,
4413        BlockKind::HornCoralWallFan,
4414    ])
4415});
4416pub static UNSTABLE_BOTTOM_CENTER: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4417    RegistryTag::new(vec![
4418        BlockKind::OakFenceGate,
4419        BlockKind::SpruceFenceGate,
4420        BlockKind::BirchFenceGate,
4421        BlockKind::JungleFenceGate,
4422        BlockKind::AcaciaFenceGate,
4423        BlockKind::CherryFenceGate,
4424        BlockKind::DarkOakFenceGate,
4425        BlockKind::PaleOakFenceGate,
4426        BlockKind::MangroveFenceGate,
4427        BlockKind::BambooFenceGate,
4428        BlockKind::CrimsonFenceGate,
4429        BlockKind::WarpedFenceGate,
4430    ])
4431});
4432pub static VALID_SPAWN: LazyLock<RegistryTag<BlockKind>> =
4433    LazyLock::new(|| RegistryTag::new(vec![BlockKind::GrassBlock, BlockKind::Podzol]));
4434pub static VIBRATION_RESONATORS: LazyLock<RegistryTag<BlockKind>> =
4435    LazyLock::new(|| RegistryTag::new(vec![BlockKind::AmethystBlock]));
4436pub static WALL_CORALS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4437    RegistryTag::new(vec![
4438        BlockKind::TubeCoralWallFan,
4439        BlockKind::BrainCoralWallFan,
4440        BlockKind::BubbleCoralWallFan,
4441        BlockKind::FireCoralWallFan,
4442        BlockKind::HornCoralWallFan,
4443    ])
4444});
4445pub static WALL_HANGING_SIGNS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4446    RegistryTag::new(vec![
4447        BlockKind::OakWallHangingSign,
4448        BlockKind::SpruceWallHangingSign,
4449        BlockKind::BirchWallHangingSign,
4450        BlockKind::AcaciaWallHangingSign,
4451        BlockKind::CherryWallHangingSign,
4452        BlockKind::JungleWallHangingSign,
4453        BlockKind::DarkOakWallHangingSign,
4454        BlockKind::PaleOakWallHangingSign,
4455        BlockKind::MangroveWallHangingSign,
4456        BlockKind::CrimsonWallHangingSign,
4457        BlockKind::WarpedWallHangingSign,
4458        BlockKind::BambooWallHangingSign,
4459    ])
4460});
4461pub static WALL_POST_OVERRIDE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4462    RegistryTag::new(vec![
4463        BlockKind::Torch,
4464        BlockKind::OakSign,
4465        BlockKind::SpruceSign,
4466        BlockKind::BirchSign,
4467        BlockKind::AcaciaSign,
4468        BlockKind::CherrySign,
4469        BlockKind::JungleSign,
4470        BlockKind::DarkOakSign,
4471        BlockKind::PaleOakSign,
4472        BlockKind::MangroveSign,
4473        BlockKind::BambooSign,
4474        BlockKind::OakWallSign,
4475        BlockKind::SpruceWallSign,
4476        BlockKind::BirchWallSign,
4477        BlockKind::AcaciaWallSign,
4478        BlockKind::CherryWallSign,
4479        BlockKind::JungleWallSign,
4480        BlockKind::DarkOakWallSign,
4481        BlockKind::PaleOakWallSign,
4482        BlockKind::MangroveWallSign,
4483        BlockKind::BambooWallSign,
4484        BlockKind::StonePressurePlate,
4485        BlockKind::OakPressurePlate,
4486        BlockKind::SprucePressurePlate,
4487        BlockKind::BirchPressurePlate,
4488        BlockKind::JunglePressurePlate,
4489        BlockKind::AcaciaPressurePlate,
4490        BlockKind::CherryPressurePlate,
4491        BlockKind::DarkOakPressurePlate,
4492        BlockKind::PaleOakPressurePlate,
4493        BlockKind::MangrovePressurePlate,
4494        BlockKind::BambooPressurePlate,
4495        BlockKind::RedstoneTorch,
4496        BlockKind::CactusFlower,
4497        BlockKind::SoulTorch,
4498        BlockKind::CopperTorch,
4499        BlockKind::Tripwire,
4500        BlockKind::LightWeightedPressurePlate,
4501        BlockKind::HeavyWeightedPressurePlate,
4502        BlockKind::WhiteBanner,
4503        BlockKind::OrangeBanner,
4504        BlockKind::MagentaBanner,
4505        BlockKind::LightBlueBanner,
4506        BlockKind::YellowBanner,
4507        BlockKind::LimeBanner,
4508        BlockKind::PinkBanner,
4509        BlockKind::GrayBanner,
4510        BlockKind::LightGrayBanner,
4511        BlockKind::CyanBanner,
4512        BlockKind::PurpleBanner,
4513        BlockKind::BlueBanner,
4514        BlockKind::BrownBanner,
4515        BlockKind::GreenBanner,
4516        BlockKind::RedBanner,
4517        BlockKind::BlackBanner,
4518        BlockKind::WhiteWallBanner,
4519        BlockKind::OrangeWallBanner,
4520        BlockKind::MagentaWallBanner,
4521        BlockKind::LightBlueWallBanner,
4522        BlockKind::YellowWallBanner,
4523        BlockKind::LimeWallBanner,
4524        BlockKind::PinkWallBanner,
4525        BlockKind::GrayWallBanner,
4526        BlockKind::LightGrayWallBanner,
4527        BlockKind::CyanWallBanner,
4528        BlockKind::PurpleWallBanner,
4529        BlockKind::BlueWallBanner,
4530        BlockKind::BrownWallBanner,
4531        BlockKind::GreenWallBanner,
4532        BlockKind::RedWallBanner,
4533        BlockKind::BlackWallBanner,
4534        BlockKind::CrimsonPressurePlate,
4535        BlockKind::WarpedPressurePlate,
4536        BlockKind::CrimsonSign,
4537        BlockKind::WarpedSign,
4538        BlockKind::CrimsonWallSign,
4539        BlockKind::WarpedWallSign,
4540        BlockKind::PolishedBlackstonePressurePlate,
4541    ])
4542});
4543pub static WALL_SIGNS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4544    RegistryTag::new(vec![
4545        BlockKind::OakWallSign,
4546        BlockKind::SpruceWallSign,
4547        BlockKind::BirchWallSign,
4548        BlockKind::AcaciaWallSign,
4549        BlockKind::CherryWallSign,
4550        BlockKind::JungleWallSign,
4551        BlockKind::DarkOakWallSign,
4552        BlockKind::PaleOakWallSign,
4553        BlockKind::MangroveWallSign,
4554        BlockKind::BambooWallSign,
4555        BlockKind::CrimsonWallSign,
4556        BlockKind::WarpedWallSign,
4557    ])
4558});
4559pub static WALLS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4560    RegistryTag::new(vec![
4561        BlockKind::ResinBrickWall,
4562        BlockKind::CobblestoneWall,
4563        BlockKind::MossyCobblestoneWall,
4564        BlockKind::BrickWall,
4565        BlockKind::PrismarineWall,
4566        BlockKind::RedSandstoneWall,
4567        BlockKind::MossyStoneBrickWall,
4568        BlockKind::GraniteWall,
4569        BlockKind::StoneBrickWall,
4570        BlockKind::MudBrickWall,
4571        BlockKind::NetherBrickWall,
4572        BlockKind::AndesiteWall,
4573        BlockKind::RedNetherBrickWall,
4574        BlockKind::SandstoneWall,
4575        BlockKind::EndStoneBrickWall,
4576        BlockKind::DioriteWall,
4577        BlockKind::BlackstoneWall,
4578        BlockKind::PolishedBlackstoneBrickWall,
4579        BlockKind::PolishedBlackstoneWall,
4580        BlockKind::TuffWall,
4581        BlockKind::PolishedTuffWall,
4582        BlockKind::TuffBrickWall,
4583        BlockKind::CobbledDeepslateWall,
4584        BlockKind::PolishedDeepslateWall,
4585        BlockKind::DeepslateTileWall,
4586        BlockKind::DeepslateBrickWall,
4587    ])
4588});
4589pub static WARPED_STEMS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4590    RegistryTag::new(vec![
4591        BlockKind::WarpedStem,
4592        BlockKind::StrippedWarpedStem,
4593        BlockKind::WarpedHyphae,
4594        BlockKind::StrippedWarpedHyphae,
4595    ])
4596});
4597pub static WART_BLOCKS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4598    RegistryTag::new(vec![BlockKind::NetherWartBlock, BlockKind::WarpedWartBlock])
4599});
4600pub static WITHER_IMMUNE: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4601    RegistryTag::new(vec![
4602        BlockKind::Bedrock,
4603        BlockKind::MovingPiston,
4604        BlockKind::EndPortal,
4605        BlockKind::EndPortalFrame,
4606        BlockKind::CommandBlock,
4607        BlockKind::Barrier,
4608        BlockKind::Light,
4609        BlockKind::EndGateway,
4610        BlockKind::RepeatingCommandBlock,
4611        BlockKind::ChainCommandBlock,
4612        BlockKind::StructureBlock,
4613        BlockKind::Jigsaw,
4614        BlockKind::TestBlock,
4615        BlockKind::TestInstanceBlock,
4616        BlockKind::ReinforcedDeepslate,
4617    ])
4618});
4619pub static WITHER_SUMMON_BASE_BLOCKS: LazyLock<RegistryTag<BlockKind>> =
4620    LazyLock::new(|| RegistryTag::new(vec![BlockKind::SoulSand, BlockKind::SoulSoil]));
4621pub static WOLVES_SPAWNABLE_ON: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4622    RegistryTag::new(vec![
4623        BlockKind::GrassBlock,
4624        BlockKind::CoarseDirt,
4625        BlockKind::Podzol,
4626        BlockKind::Snow,
4627        BlockKind::SnowBlock,
4628    ])
4629});
4630pub static WOODEN_BUTTONS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4631    RegistryTag::new(vec![
4632        BlockKind::OakButton,
4633        BlockKind::SpruceButton,
4634        BlockKind::BirchButton,
4635        BlockKind::JungleButton,
4636        BlockKind::AcaciaButton,
4637        BlockKind::CherryButton,
4638        BlockKind::DarkOakButton,
4639        BlockKind::PaleOakButton,
4640        BlockKind::MangroveButton,
4641        BlockKind::BambooButton,
4642        BlockKind::CrimsonButton,
4643        BlockKind::WarpedButton,
4644    ])
4645});
4646pub static WOODEN_DOORS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4647    RegistryTag::new(vec![
4648        BlockKind::OakDoor,
4649        BlockKind::SpruceDoor,
4650        BlockKind::BirchDoor,
4651        BlockKind::JungleDoor,
4652        BlockKind::AcaciaDoor,
4653        BlockKind::CherryDoor,
4654        BlockKind::DarkOakDoor,
4655        BlockKind::PaleOakDoor,
4656        BlockKind::MangroveDoor,
4657        BlockKind::BambooDoor,
4658        BlockKind::CrimsonDoor,
4659        BlockKind::WarpedDoor,
4660    ])
4661});
4662pub static WOODEN_FENCES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4663    RegistryTag::new(vec![
4664        BlockKind::OakFence,
4665        BlockKind::SpruceFence,
4666        BlockKind::BirchFence,
4667        BlockKind::JungleFence,
4668        BlockKind::AcaciaFence,
4669        BlockKind::CherryFence,
4670        BlockKind::DarkOakFence,
4671        BlockKind::PaleOakFence,
4672        BlockKind::MangroveFence,
4673        BlockKind::BambooFence,
4674        BlockKind::CrimsonFence,
4675        BlockKind::WarpedFence,
4676    ])
4677});
4678pub static WOODEN_PRESSURE_PLATES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4679    RegistryTag::new(vec![
4680        BlockKind::OakPressurePlate,
4681        BlockKind::SprucePressurePlate,
4682        BlockKind::BirchPressurePlate,
4683        BlockKind::JunglePressurePlate,
4684        BlockKind::AcaciaPressurePlate,
4685        BlockKind::CherryPressurePlate,
4686        BlockKind::DarkOakPressurePlate,
4687        BlockKind::PaleOakPressurePlate,
4688        BlockKind::MangrovePressurePlate,
4689        BlockKind::BambooPressurePlate,
4690        BlockKind::CrimsonPressurePlate,
4691        BlockKind::WarpedPressurePlate,
4692    ])
4693});
4694pub static WOODEN_SHELVES: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4695    RegistryTag::new(vec![
4696        BlockKind::AcaciaShelf,
4697        BlockKind::BambooShelf,
4698        BlockKind::BirchShelf,
4699        BlockKind::CherryShelf,
4700        BlockKind::CrimsonShelf,
4701        BlockKind::DarkOakShelf,
4702        BlockKind::JungleShelf,
4703        BlockKind::MangroveShelf,
4704        BlockKind::OakShelf,
4705        BlockKind::PaleOakShelf,
4706        BlockKind::SpruceShelf,
4707        BlockKind::WarpedShelf,
4708    ])
4709});
4710pub static WOODEN_SLABS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4711    RegistryTag::new(vec![
4712        BlockKind::OakSlab,
4713        BlockKind::SpruceSlab,
4714        BlockKind::BirchSlab,
4715        BlockKind::JungleSlab,
4716        BlockKind::AcaciaSlab,
4717        BlockKind::CherrySlab,
4718        BlockKind::DarkOakSlab,
4719        BlockKind::PaleOakSlab,
4720        BlockKind::MangroveSlab,
4721        BlockKind::BambooSlab,
4722        BlockKind::CrimsonSlab,
4723        BlockKind::WarpedSlab,
4724    ])
4725});
4726pub static WOODEN_STAIRS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4727    RegistryTag::new(vec![
4728        BlockKind::OakStairs,
4729        BlockKind::SpruceStairs,
4730        BlockKind::BirchStairs,
4731        BlockKind::JungleStairs,
4732        BlockKind::AcaciaStairs,
4733        BlockKind::CherryStairs,
4734        BlockKind::DarkOakStairs,
4735        BlockKind::PaleOakStairs,
4736        BlockKind::MangroveStairs,
4737        BlockKind::BambooStairs,
4738        BlockKind::CrimsonStairs,
4739        BlockKind::WarpedStairs,
4740    ])
4741});
4742pub static WOODEN_TRAPDOORS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4743    RegistryTag::new(vec![
4744        BlockKind::OakTrapdoor,
4745        BlockKind::SpruceTrapdoor,
4746        BlockKind::BirchTrapdoor,
4747        BlockKind::JungleTrapdoor,
4748        BlockKind::AcaciaTrapdoor,
4749        BlockKind::CherryTrapdoor,
4750        BlockKind::DarkOakTrapdoor,
4751        BlockKind::PaleOakTrapdoor,
4752        BlockKind::MangroveTrapdoor,
4753        BlockKind::BambooTrapdoor,
4754        BlockKind::CrimsonTrapdoor,
4755        BlockKind::WarpedTrapdoor,
4756    ])
4757});
4758pub static WOOL: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4759    RegistryTag::new(vec![
4760        BlockKind::WhiteWool,
4761        BlockKind::OrangeWool,
4762        BlockKind::MagentaWool,
4763        BlockKind::LightBlueWool,
4764        BlockKind::YellowWool,
4765        BlockKind::LimeWool,
4766        BlockKind::PinkWool,
4767        BlockKind::GrayWool,
4768        BlockKind::LightGrayWool,
4769        BlockKind::CyanWool,
4770        BlockKind::PurpleWool,
4771        BlockKind::BlueWool,
4772        BlockKind::BrownWool,
4773        BlockKind::GreenWool,
4774        BlockKind::RedWool,
4775        BlockKind::BlackWool,
4776    ])
4777});
4778pub static WOOL_CARPETS: LazyLock<RegistryTag<BlockKind>> = LazyLock::new(|| {
4779    RegistryTag::new(vec![
4780        BlockKind::WhiteCarpet,
4781        BlockKind::OrangeCarpet,
4782        BlockKind::MagentaCarpet,
4783        BlockKind::LightBlueCarpet,
4784        BlockKind::YellowCarpet,
4785        BlockKind::LimeCarpet,
4786        BlockKind::PinkCarpet,
4787        BlockKind::GrayCarpet,
4788        BlockKind::LightGrayCarpet,
4789        BlockKind::CyanCarpet,
4790        BlockKind::PurpleCarpet,
4791        BlockKind::BlueCarpet,
4792        BlockKind::BrownCarpet,
4793        BlockKind::GreenCarpet,
4794        BlockKind::RedCarpet,
4795        BlockKind::BlackCarpet,
4796    ])
4797});