candidateStack = container.getItemStack(i);
if (candidateStack != null) {
List<InvTweaksItemTreeItem> candidateItems = tree.getItems(
getItemID(candidateStack),
getItemDamage(candidateStack));
if (tree.matches(candidateItems, rule.getKeyword())) {
// Choose tool of highest damage value
if (getMaxStackSize(candidateStack) == 1) {
if ((replacementStack == null || getItemDamage(candidateStack) > getItemDamage(replacementStack)) &&
(!refillBeforeBreak || getMaxDamage(getItem(candidateStack)) - getItemDamage(candidateStack)
> InvTweaksConst.AUTO_REFILL_DAMAGE_TRESHOLD)) {