// Path: src/main/java/buildcraftAdditions/api/recipe/refinery/IRefineryRecipeManager.java
// public interface IRefineryRecipeManager {
// 
// 	void addRecipe(FluidStack input, FluidStack output, int requiredHeat);
// 
// 	void addRecipe(IRefineryRecipe recipe);
// 
// 	void removeRecipe(FluidStack input);
// 
// 	IRefineryRecipe getRecipe(FluidStack input);
// 
// 	List<? extends IRefineryRecipe> getRecipes();
// 
// }


import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import net.minecraftforge.fluids.FluidStack;
import buildcraftAdditions.api.recipe.refinery.IRefineryRecipe;
import buildcraftAdditions.api.recipe.refinery.IRefineryRecipeManager;
import buildcraftAdditions.core.Logger;
			Logger.error("Was trying to add: Input: " + input + " Output: " + output + " Required heat: " + requiredHeat);
			return;
		}
		IRefineryRecipe recipe = getRecipe(input);
		if (recipe != null) {
			Logger.error("A refinery recipe with input  " + input + " is already registered! Skipping.");
			Logger.error("Was trying to add: Input: " + input + " Output: " + output + " Required heat: " + requiredHeat);
			Logger.error("Found: Input: " + input + " Output: " + recipe.getOutput() + " Required heat: " + recipe.getRequiredHeat());
			return;
		}
		recipes.add(new RefineryRecipe(input, output, requiredHeat));
	}

	@Override
	public void addRecipe(IRefineryRecipe recipe) {
		if (recipe == null || recipe.getInput() == null || recipe.getOutput() == null || recipe.getRequiredHeat() < 0) {
			Logger.error("Tried to register an invalid cooling tower recipe! Skipping.");
			Logger.error("Was trying to add: " + recipe);
		}
		IRefineryRecipe refineryRecipe = getRecipe(recipe.getInput());
		if (refineryRecipe != null) {
			Logger.error("A refinery recipe with input  " + recipe.getInput() + " is already registered! Skipping.");
			Logger.error("Was trying to add: Input: " + recipe.getInput() + " Output: " + recipe.getInput() + " Required heat: " + recipe.getRequiredHeat());
			Logger.error("Found: Input: " + refineryRecipe.getInput() + " Output: " + refineryRecipe.getOutput() + " Required heat: " + refineryRecipe.getRequiredHeat());
			return;
		}
		recipes.add(recipe);
	}

	@Override
// Path: src/main/java/buildcraftAdditions/api/recipe/refinery/IRefineryRecipeManager.java
// public interface IRefineryRecipeManager {
// 
// 	void addRecipe(FluidStack input, FluidStack output, int requiredHeat);
// 
// 	void addRecipe(IRefineryRecipe recipe);
// 
// 	void removeRecipe(FluidStack input);
// 
// 	IRefineryRecipe getRecipe(FluidStack input);
// 
// 	List<? extends IRefineryRecipe> getRecipes();
// 
// }


// Path: src/main/java/buildcraftAdditions/recipe/refinery/RefineryRecipeManager.java
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import net.minecraftforge.fluids.FluidStack;
import buildcraftAdditions.api.recipe.refinery.IRefineryRecipe;
import buildcraftAdditions.api.recipe.refinery.IRefineryRecipeManager;
import buildcraftAdditions.core.Logger;

			Logger.error("Was trying to add: Input: " + input + " Output: " + output + " Required heat: " + requiredHeat);
			return;
		}
		IRefineryRecipe recipe = getRecipe(input);
		if (recipe != null) {
			Logger.error("A refinery recipe with input  " + input + " is already registered! Skipping.");
			Logger.error("Was trying to add: Input: " + input + " Output: " + output + " Required heat: " + requiredHeat);
			Logger.error("Found: Input: " + input + " Output: " + recipe.getOutput() + " Required heat: " + recipe.getRequiredHeat());
			return;
		}
		recipes.add(new RefineryRecipe(input, output, requiredHeat));
	}

	@Override
	public void addRecipe(IRefineryRecipe recipe) {
		if (recipe == null || recipe.getInput() == null || recipe.getOutput() == null || recipe.getRequiredHeat() < 0) {
			Logger.error("Tried to register an invalid cooling tower recipe! Skipping.");
			Logger.error("Was trying to add: " + recipe);
		}
		IRefineryRecipe refineryRecipe = getRecipe(recipe.getInput());
		if (refineryRecipe != null) {
			Logger.error("A refinery recipe with input  " + recipe.getInput() + " is already registered! Skipping.");
			Logger.error("Was trying to add: Input: " + recipe.getInput() + " Output: " + recipe.getInput() + " Required heat: " + recipe.getRequiredHeat());
			Logger.error("Found: Input: " + refineryRecipe.getInput() + " Output: " + refineryRecipe.getOutput() + " Required heat: " + refineryRecipe.getRequiredHeat());
			return;
		}
		recipes.add(recipe);
	}

	@Override
	public void removeRecipe(FluidStack input) {