private boolean checkPourIntoBakingContainer(State state, ObjectInstance pouringContainer,
			ObjectInstance receivingContainer) {
		/**
		 * If the container is empty then we only want to add in ingredients that we must
		 * bake, as per the recipe.
		 * Conversely, if the container is not empty:
		 * a) If it contains an already baked ingredient, then we can assume that we don't need to
		 * put the container back in the oven, and therefore we can add any ingredients.
		 * b) If all of the ingredients are non-bakeed, then we must assume that this container is meant
		 * to go in the oven in the near future, and therefore we will only add any ingredients
		 * that the recipe calls for to be baked.
		 */
		Set<String> pouringContentNames = ContainerFactory.getContentNames(pouringContainer);
		if (ContainerFactory.isEmptyContainer(receivingContainer) || 
				!ContainerFactory.hasABakedContent(state, receivingContainer)) {
			for (String name : pouringContentNames) {
				if (!this.checkBakingIngredient(state.getObject(name))) {
					return false;
				}
			}
		}
		ObjectInstance space = state.getObject(ContainerFactory.getSpaceName(receivingContainer));
		boolean willBake = SpaceFactory.isSwitchable(space) && SpaceFactory.getOnOff(space);
		if (willBake) {
			for (String name : pouringContentNames) {
				if (!this.checkBakingIngredient(state.getObject(name))) {
					return false;
				}
			}
		}
		return true;
	}