private boolean func_92031_b(Slot p_92031_1_) {
    boolean var2 = p_92031_1_ == null || !p_92031_1_.func_75216_d();
    if (p_92031_1_ != null
        && p_92031_1_.func_75216_d()
        && this.field_85050_q != null
        && ItemStack.func_77970_a(p_92031_1_.func_75211_c(), this.field_85050_q)) {
      var2 |=
          p_92031_1_.func_75211_c().field_77994_a + this.field_85050_q.field_77994_a
              <= this.field_85050_q.func_77976_d();
    }

    return var2;
  }
  public ItemStack func_82846_b(EntityPlayer p_82846_1_, int p_82846_2_) {
    ItemStack var3 = null;
    Slot var4 = (Slot) this.field_75151_b.get(p_82846_2_);
    if (var4 != null && var4.func_75216_d()) {
      ItemStack var5 = var4.func_75211_c();
      var3 = var5.func_77946_l();
      if (p_82846_2_ == 2) {
        if (!this.func_75135_a(var5, 3, 39, true)) {
          return null;
        }

        var4.func_75220_a(var5, var3);
      } else if (p_82846_2_ != 1 && p_82846_2_ != 0) {
        if (FurnaceRecipes.func_77602_a().func_77603_b(var5.func_77973_b().field_77779_bT)
            != null) {
          if (!this.func_75135_a(var5, 0, 1, false)) {
            return null;
          }
        } else if (TileEntityFurnace.func_70401_b(var5)) {
          if (!this.func_75135_a(var5, 1, 2, false)) {
            return null;
          }
        } else if (p_82846_2_ >= 3 && p_82846_2_ < 30) {
          if (!this.func_75135_a(var5, 30, 39, false)) {
            return null;
          }
        } else if (p_82846_2_ >= 30 && p_82846_2_ < 39 && !this.func_75135_a(var5, 3, 30, false)) {
          return null;
        }
      } else if (!this.func_75135_a(var5, 3, 39, false)) {
        return null;
      }

      if (var5.field_77994_a == 0) {
        var4.func_75215_d((ItemStack) null);
      } else {
        var4.func_75218_e();
      }

      if (var5.field_77994_a == var3.field_77994_a) {
        return null;
      }

      var4.func_82870_a(p_82846_1_, var5);
    }

    return var3;
  }
  protected void func_73864_a(int p_73864_1_, int p_73864_2_, int p_73864_3_) {
    super.func_73864_a(p_73864_1_, p_73864_2_, p_73864_3_);
    boolean var4 = p_73864_3_ == this.field_73882_e.field_71474_y.field_74322_I.field_74512_d + 100;
    if (p_73864_3_ == 0 || p_73864_3_ == 1 || var4) {
      Slot var5 = this.func_74187_b(p_73864_1_, p_73864_2_);
      int var6 = this.field_74198_m;
      int var7 = this.field_74197_n;
      boolean var8 =
          p_73864_1_ < var6
              || p_73864_2_ < var7
              || p_73864_1_ >= var6 + this.field_74194_b
              || p_73864_2_ >= var7 + this.field_74195_c;
      int var9 = -1;
      if (var5 != null) {
        var9 = var5.field_75222_d;
      }

      if (var8) {
        var9 = -999;
      }

      if (this.field_73882_e.field_71474_y.field_85185_A
          && var8
          && this.field_73882_e.field_71439_g.field_71071_by.func_70445_o() == null) {
        this.field_73882_e.func_71373_a((GuiScreen) null);
        return;
      }

      if (var9 != -1) {
        if (this.field_73882_e.field_71474_y.field_85185_A) {
          if (var5 != null && var5.func_75216_d()) {
            this.field_85051_p = var5;
            this.field_85050_q = null;
            this.field_90018_r = p_73864_3_ == 1;
          } else {
            this.field_85051_p = null;
          }
        } else if (var4) {
          this.func_74191_a(var5, var9, p_73864_3_, 3);
        } else {
          boolean var10 = var9 != -999 && (Keyboard.isKeyDown(42) || Keyboard.isKeyDown(54));
          this.func_74191_a(var5, var9, p_73864_3_, var10 ? 1 : 0);
        }
      }
    }
  }
  public ItemStack func_82846_b(EntityPlayer p_82846_1_, int p_82846_2_) {
    ItemStack var3 = null;
    Slot var4 = (Slot) this.field_75151_b.get(p_82846_2_);
    if (var4 != null && var4.func_75216_d()) {
      ItemStack var5 = var4.func_75211_c();
      var3 = var5.func_77946_l();
      if (p_82846_2_ < this.field_75154_f * 9) {
        if (!this.func_75135_a(var5, this.field_75154_f * 9, this.field_75151_b.size(), true)) {
          return null;
        }
      } else if (!this.func_75135_a(var5, 0, this.field_75154_f * 9, false)) {
        return null;
      }

      if (var5.field_77994_a == 0) {
        var4.func_75215_d((ItemStack) null);
      } else {
        var4.func_75218_e();
      }
    }

    return var3;
  }