add sortor impl & test class