add 15 kinds of sorting