public int pushItem(IInventory target,
@Arg(name = "direction", description = "The direction of the other inventory. (north, south, east, west, up or down)") ForgeDirection direction,
@Arg(name = "slot", description = "The slot in the current inventory that you're pushing from") int fromSlot,
@Optionals @Arg(name = "maxAmount", description = "The maximum amount of items you want to push") Integer maxAmount,
@Arg(name = "intoSlot", description = "The slot in the other inventory that you want to push into") Integer intoSlot) {
<BUG>final IInventory otherInventory = getNeighborInventory(target, direction);
final IInventory thisInventory = InventoryUtils.getInventory(target);
if (otherInventory == null || otherInventory == target) return 0;
if (maxAmount == null) maxAmount = 64;</BUG>
if (intoSlot == null) intoSlot = 0;

public int pushItem(IInventory target,
@Arg(name = "direction", description = "The direction of the other inventory. (north, south, east, west, up or down)") ForgeDirection direction,
@Arg(name = "slot", description = "The slot in the current inventory that you're pushing from") int fromSlot,
@Optionals @Arg(name = "maxAmount", description = "The maximum amount of items you want to push") Integer maxAmount,
@Arg(name = "intoSlot", description = "The slot in the other inventory that you want to push into") Integer intoSlot) {
final IInventory otherInventory = getNeighborInventory(target, direction);
Preconditions.checkNotNull(otherInventory, "Other inventory not found");
final IInventory thisInventory = InventoryUtils.getInventory(target);
if (otherInventory == target) return 0;
if (maxAmount == null) maxAmount = 64;
if (intoSlot == null) intoSlot = 0;
