add sorting data function