updated with carousel