private boolean addResultToInventory(TileEntityDispenser te, ItemStack result) {
   int size = te.getSizeInventory();
   int i;
   ItemStack itemstack;
   for (i = 0; i < size; ++i) {
     itemstack = te.getStackInSlot(i);
     if (itemstack != null
         && itemstack.isItemEqual(result)
         && itemstack.stackSize + result.stackSize <= itemstack.getMaxStackSize()) {
       itemstack.stackSize += result.stackSize;
       return true;
     }
   }
   for (i = 0; i < size; ++i) {
     itemstack = te.getStackInSlot(i);
     if (itemstack == null || itemstack.itemID == 0) {
       te.setInventorySlotContents(i, result);
       return true;
     }
   }
   return false;
 }