--- a/net/minecraft/world/gen/feature/Feature.java
+++ b/net/minecraft/world/gen/feature/Feature.java
@@ -15,7 +15,7 @@
 import net.minecraft.world.gen.feature.structure.BasaltDeltasStructure;
 import net.minecraft.world.gen.feature.structure.NetherackBlobReplacementStructure;
 
-public abstract class Feature<FC extends IFeatureConfig> {
+public abstract class Feature<FC extends IFeatureConfig> extends net.minecraftforge.registries.ForgeRegistryEntry<Feature<?>> {
    public static final Feature<NoFeatureConfig> field_227245_q_ = func_214468_a("no_op", new NoOpFeature(NoFeatureConfig.field_236558_a_));
    public static final Feature<BaseTreeFeatureConfig> field_236291_c_ = func_214468_a("tree", new TreeFeature(BaseTreeFeatureConfig.field_236676_a_));
    public static final FlowersFeature<BlockClusterFeatureConfig> field_227247_y_ = func_214468_a("flower", new DefaultFlowersFeature(BlockClusterFeatureConfig.field_236587_a_));
@@ -97,11 +97,11 @@
    public abstract boolean func_241855_a(ISeedReader p_241855_1_, ChunkGenerator p_241855_2_, Random p_241855_3_, BlockPos p_241855_4_, FC p_241855_5_);
 
    protected static boolean func_227249_a_(Block p_227249_0_) {
-      return p_227249_0_ == Blocks.field_150348_b || p_227249_0_ == Blocks.field_196650_c || p_227249_0_ == Blocks.field_196654_e || p_227249_0_ == Blocks.field_196656_g;
+      return net.minecraftforge.common.Tags.Blocks.STONE.func_230235_a_(p_227249_0_);
    }
 
    public static boolean func_227250_b_(Block p_227250_0_) {
-      return p_227250_0_ == Blocks.field_150346_d || p_227250_0_ == Blocks.field_196658_i || p_227250_0_ == Blocks.field_196661_l || p_227250_0_ == Blocks.field_196660_k || p_227250_0_ == Blocks.field_150391_bh;
+      return net.minecraftforge.common.Tags.Blocks.DIRT.func_230235_a_(p_227250_0_);
    }
 
    public static boolean func_236293_a_(IWorldGenerationBaseReader p_236293_0_, BlockPos p_236293_1_) {
