refactor sortable