Program: 30634
Project: 30634
Buggy source:
@Override public void run(){
  try {
    try {
      TickHandler.instance.registerCraftingSimulation(world,this);
      handlepausing();
      Stopwatch timer=Stopwatch.createStarted();
      MECraftingInventory meci=new MECraftingInventory(original,true,false,true);
      meci.ignore(output);
      tree.request(meci,output.getStackSize(),actionSrc);
      tree.dive(this);
      for (      String s : opsAndMultiplier.keySet()) {
        twoIntegers ti=opsAndMultiplier.get(s);
        AELog.crafting(s + "String_Node_Str" + ti.times+ "String_Node_Str"+ (ti.perOp * ti.times));
      }
      AELog.crafting("String_Node_Str" + getByteTotal() + "String_Node_Str"+ timer.elapsed(TimeUnit.MILLISECONDS)+ "String_Node_Str");
    }
 catch (    CraftBranchFailure e) {
      simulate=true;
      try {
        Stopwatch timer=Stopwatch.createStarted();
        MECraftingInventory meci=new MECraftingInventory(original,true,false,true);
        meci.ignore(output);
        tree.setSimulate();
        tree.request(meci,output.getStackSize(),actionSrc);
        tree.dive(this);
        for (        String s : opsAndMultiplier.keySet()) {
          twoIntegers ti=opsAndMultiplier.get(s);
          AELog.crafting(s + "String_Node_Str" + ti.times+ "String_Node_Str"+ (ti.perOp * ti.times));
        }
        AELog.crafting("String_Node_Str" + getByteTotal() + "String_Node_Str"+ timer.elapsed(TimeUnit.MILLISECONDS)+ "String_Node_Str");
      }
 catch (      CraftBranchFailure e1) {
        AELog.error(e1);
      }
catch (      CraftingCalculationFailure f) {
        AELog.error(f);
      }
catch (      InterruptedException e1) {
        AELog.crafting("String_Node_Str");
        finish();
        return;
      }
    }
catch (    CraftingCalculationFailure f) {
      AELog.error(f);
    }
catch (    InterruptedException e1) {
      AELog.crafting("String_Node_Str");
      finish();
      return;
    }
    log("String_Node_Str");
  }
 catch (  Throwable t) {
    finish();
    throw new RuntimeException(t);
  }
  finish();
}

Fixed version (ground truth):
@Override public void run(){
  try {
    try {
      TickHandler.instance.registerCraftingSimulation(world,this);
      handlepausing();
      Stopwatch timer=Stopwatch.createStarted();
      MECraftingInventory meci=new MECraftingInventory(original,true,false,true);
      meci.ignore(output);
      availableCheck=new MECraftingInventory(original,false,false,false);
      tree.request(meci,output.getStackSize(),actionSrc);
      tree.dive(this);
      for (      String s : opsAndMultiplier.keySet()) {
        twoIntegers ti=opsAndMultiplier.get(s);
        AELog.crafting(s + "String_Node_Str" + ti.times+ "String_Node_Str"+ (ti.perOp * ti.times));
      }
      AELog.crafting("String_Node_Str" + getByteTotal() + "String_Node_Str"+ timer.elapsed(TimeUnit.MILLISECONDS)+ "String_Node_Str");
    }
 catch (    CraftBranchFailure e) {
      simulate=true;
      try {
        Stopwatch timer=Stopwatch.createStarted();
        MECraftingInventory meci=new MECraftingInventory(original,true,false,true);
        meci.ignore(output);
        availableCheck=new MECraftingInventory(original,false,false,false);
        tree.setSimulate();
        tree.request(meci,output.getStackSize(),actionSrc);
        tree.dive(this);
        for (        String s : opsAndMultiplier.keySet()) {
          twoIntegers ti=opsAndMultiplier.get(s);
          AELog.crafting(s + "String_Node_Str" + ti.times+ "String_Node_Str"+ (ti.perOp * ti.times));
        }
        AELog.crafting("String_Node_Str" + getByteTotal() + "String_Node_Str"+ timer.elapsed(TimeUnit.MILLISECONDS)+ "String_Node_Str");
      }
 catch (      CraftBranchFailure e1) {
        AELog.error(e1);
      }
catch (      CraftingCalculationFailure f) {
        AELog.error(f);
      }
catch (      InterruptedException e1) {
        AELog.crafting("String_Node_Str");
        finish();
        return;
      }
    }
catch (    CraftingCalculationFailure f) {
      AELog.error(f);
    }
catch (    InterruptedException e1) {
      AELog.crafting("String_Node_Str");
      finish();
      return;
    }
    log("String_Node_Str");
  }
 catch (  Throwable t) {
    finish();
    throw new RuntimeException(t);
  }
  finish();
}