extracted scrollable directive