public static void Add(ref Delivery first, ref Delivery last, Delivery delivery)
{
Fx.Assert(delivery.Previous == null && delivery.Next == null, "delivery is already in a list");
if (first == null)
{
Fx.Assert(last == null, "last must be null when first is null");
first = last = delivery;
}
else
{
last.Next = delivery;
delivery.Previous = last;
last = delivery;
}
}