BlockData bd = BlockData.fromItemStack(item);
count.put(bd, item.getAmount() + count.get(bd));
}
Map.Entry<BlockData, Integer> best = null;
for (Map.Entry<BlockData, Integer> entry : count.entrySet())
if (best == null || entry.getValue() > best.getValue()) best = entry;
return best == null ? null : best.getKey();
}
}