updated with horizontal scroll