upgrade the order method