more correct sort