public SinkReply sinksItem(ItemIdentifier item, int bestPriority, int bestCustomPriority, boolean allowDefault, boolean includeInTransit) {
if(bestPriority > _sinkReply.fixedPriority.ordinal() || (bestPriority == _sinkReply.fixedPriority.ordinal() && bestCustomPriority >= _sinkReply.customPriority)) return null;
IInventoryUtil targetInventory = _service.getSneakyInventory(false);
if (targetInventory == null) return null;
if (!targetInventory.containsUndamagedItem(item.getUndamaged())) return null;
if(_service.canUseEnergy(3)) {
return _sinkReply;
}
return null;