The Matrix Resurrections is now playing in theaters and on HBO Max (you can check out our review here), so we decided to take a closer look at some of the more spoiler-y elements of this fourth instalment in the sci-fi franchise.
We've already outlined how Neo and Trinity are brought back to life, and here you'll find a breakdown of every returning character - some of whom look very different to the last time we saw them.
As previously reported, Yahya Abdul-Mateen II plays Morpheus, but not the younger version of Laurence Fishburne's character most of us assumed. This Morpheus is actually a construct created by Neo (Keanu Reeves), and can't take human form outside the Matrix.
Priyanka Chopra, meanwhile, plays an older incarnation of the "exile without a purpose" introduced in Reloaded, Sati. She keeps an eye on "Thomas" as one of his game developer colleagues and ends up devising the plan to take down The Analyst (Neil Patrick Harris).
The trailers included some big hints that Jonathan Groff would be playing Agent Smith, and sure enough, Neo's megalomaniacal nemesis returns for another showdown wearing a new face. Fortunately for Neo, Smith ultimately decides to help him take down The Analyst (his motivations are... a little murky).
Jada Pinkett Smith is also back on board as Niobe (now at least 85), who leads the free people of Io (a human city built from the ruins of Zion). She's initially reluctant to help, but relents and agrees to help Neo rescue Trinity from the machines.
Lambert Wilson reprises the role of The Merovingian for one action sequence. Now an exile, the Frenchman hurls insults at Neo and his crew as they battle other exiles, and is extremely irritating.
Finally, it's suggested - but not confirmed - that The Analyst is another incarnation of The Architect from Reloaded. He's still a horrible bastard.
Did you watch The Matrix Resurrections yet? If so, did you notice any more returning characters? Drop us a comment down below.