add fast sort