add sorting
add loading bar