See more of the story

"Toy Story 4" hung onto the top spot in its second week in theaters and the horror sequel "Annabelle Comes Home" opened in line with expectations, but the Cinderella story of the weekend was actually the third-place movie: "Yesterday."

The Danny Boyle-directed musical romantic comedy featuring the music of the Beatles debuted well over industry expectations, earning an estimated $17 million from North American theaters.

Starring Himesh Patel, "Yesterday" imagines a world where only one man remembers the music of the Beatles and decides to present their catalog of hits as his own.

Although critics were mixed, audiences ­— which were 56% female and 75% over age 25 — embraced the film with an A- CinemaScore and a 90% audience score on Rotten Tomatoes.

Universal's President of Domestic Theatrical Distribution Jim Orr says he tries to use the word "thrilled" judiciously, but that it applies here.

"Among all of the sequels and all of the explosions of the summer, this is a very charming, original, whimsical musical romance with iconic music and amazing performances … [and direction]," Orr said. "All of that adds up to a great, great run at the domestic box office."

Estimated ticket sales for Friday through Sunday:

1. "Toy Story 4," $57.9 million.

2. "Annabelle Comes Home," $20.4 million.

3. "Yesterday," $17 million.

4. "Aladdin," $9.3 million.

5. "The Secret Life of Pets 2," $7.1 million.

6. "Men in Black: International," $6.6 million.

7. "Avengers: Endgame," $5.5 million.

8. "Child's Play," $4.3 million.

9. "Rocketman," $3.9 million.

10. "John Wick: Chapter 3," $3.2 million.