sorting and patterns