ordered trait