--- a/net/minecraft/item/AxeItem.java
+++ b/net/minecraft/item/AxeItem.java
@@ -22,7 +22,7 @@
    protected static final Map<Block, Block> field_203176_a = (new Builder<Block, Block>()).put(Blocks.field_196626_Q, Blocks.field_209389_ab).put(Blocks.field_196617_K, Blocks.field_203204_R).put(Blocks.field_196639_V, Blocks.field_209394_ag).put(Blocks.field_196623_P, Blocks.field_203209_W).put(Blocks.field_196637_U, Blocks.field_209393_af).put(Blocks.field_196621_O, Blocks.field_203208_V).put(Blocks.field_196631_S, Blocks.field_209391_ad).put(Blocks.field_196619_M, Blocks.field_203206_T).put(Blocks.field_196634_T, Blocks.field_209392_ae).put(Blocks.field_196620_N, Blocks.field_203207_U).put(Blocks.field_196629_R, Blocks.field_209390_ac).put(Blocks.field_196618_L, Blocks.field_203205_S).put(Blocks.field_235368_mh_, Blocks.field_235369_mi_).put(Blocks.field_235370_mj_, Blocks.field_235371_mk_).put(Blocks.field_235377_mq_, Blocks.field_235378_mr_).put(Blocks.field_235379_ms_, Blocks.field_235380_mt_).build();
 
    public AxeItem(IItemTier p_i48530_1_, float p_i48530_2_, float p_i48530_3_, Item.Properties p_i48530_4_) {
-      super(p_i48530_2_, p_i48530_3_, p_i48530_1_, field_150917_d_, p_i48530_4_);
+      super(p_i48530_2_, p_i48530_3_, p_i48530_1_, field_150917_d_, p_i48530_4_.addToolType(net.minecraftforge.common.ToolType.AXE, p_i48530_1_.func_200925_d()));
    }
 
    public float func_150893_a(ItemStack p_150893_1_, BlockState p_150893_2_) {
@@ -34,12 +34,12 @@
       World world = p_195939_1_.func_195991_k();
       BlockPos blockpos = p_195939_1_.func_195995_a();
       BlockState blockstate = world.func_180495_p(blockpos);
-      Block block = field_203176_a.get(blockstate.func_177230_c());
+      BlockState block = blockstate.getToolModifiedState(world, blockpos, p_195939_1_.func_195999_j(), p_195939_1_.func_195996_i(), net.minecraftforge.common.ToolType.AXE);
       if (block != null) {
          PlayerEntity playerentity = p_195939_1_.func_195999_j();
          world.func_184133_a(playerentity, blockpos, SoundEvents.field_203255_y, SoundCategory.BLOCKS, 1.0F, 1.0F);
          if (!world.field_72995_K) {
-            world.func_180501_a(blockpos, block.func_176223_P().func_206870_a(RotatedPillarBlock.field_176298_M, blockstate.func_177229_b(RotatedPillarBlock.field_176298_M)), 11);
+            world.func_180501_a(blockpos, block, 11);
             if (playerentity != null) {
                p_195939_1_.func_195996_i().func_222118_a(1, playerentity, (p_220040_1_) -> {
                   p_220040_1_.func_213334_d(p_195939_1_.func_221531_n());
@@ -52,4 +52,10 @@
          return ActionResultType.PASS;
       }
    }
+
+   @javax.annotation.Nullable
+   public static BlockState getAxeStrippingState(BlockState originalState) {
+      Block block = field_203176_a.get(originalState.func_177230_c());
+      return block != null ? block.func_176223_P().func_206870_a(RotatedPillarBlock.field_176298_M, originalState.func_177229_b(RotatedPillarBlock.field_176298_M)) : null;
+   }
 }
