improve ordering