if(c == 0) c = o1.getValue2() - o2.getValue2();
return c;
}});
boolean sended = false;
for(Triplet<Integer, Integer, CCSinkResponder> triple:posibilities) {
CCSinkResponder sink = triple.getValue3();
if(sink.getCanSink() < 0) continue;
stack = invUtil.getStackInSlot(slot);
if(stack == null || stack.stackSize <= 0) continue;
int amount = Math.min(stack.stackSize, sink.getCanSink());
ItemStack extracted = invUtil.decrStackSize(slot, amount);
_service.sendStack(extracted, sink.getRouterId(), ItemSendMode.Fast, null);
sended = true;
}
return sended;
}