public ItemStack extractBits(final int slot,final int amount,final boolean simulate){
  final ItemStack contents=getStackInSlot(slot);
  if (contents != null && amount > 0) {
    contents.stackSize=Math.min(amount,contents.stackSize);
    if (!simulate) {
      final int oldBits=bits;
      bits-=contents.stackSize;
      if (bits == 0) {
        myFluid=null;
      }
      if (bits != oldBits) {
        saveAndUpdate();
      }
    }
    return contents;
  }
  return null;
}

public ItemStack extractBits ( final int slot , final int amount , final boolean simulate ) { final ItemStack contents = getStackInSlot ( slot ) ; if ( contents != null && amount > 0 ) { contents . stackSize = Math . min ( amount , contents . stackSize ) ; if ( ! simulate ) { final int oldBits = bits ; bits -= contents . stackSize ; if ( bits == 0 ) { myFluid = null ; } if ( bits != oldBits ) { saveAndUpdate ( ) ; } } return contents ; } return null ; }
dosn ' t limit to stack size . . .
