in place sort