WARNING: MINOR SPOILERS FOR THE WITCHER SEASON 3 VOLUME 2.
Much like the books it's based on, there are so many threads making up The Witcher season 3 volume 2. Some of them are magic. Some of them are, distinctly, not.
Volume 2 sees our heroes forced apart once again as all-out war finally comes. It's the most danger we've ever seen them in, with Ciri (Freya Allan) having to keep herself alive, Yennefer (Anya Chalotra) attempting to put things right at Aretuza and Geralt (Henry Cavill) - well, you'll see.
First of all - those moments of magic should be recognised. So many of the cast are mesmerising, not least MyAnna Buring as Tissaia de Vries, Cassie Clare as Philippa, and Mecia Simson as Francesca, who all get spectacular opportunities to shine.
Plus, volume 2 certainly provides some of the action we were missing in volume 1. Episode 6 on its own is a five-star instalment, and it's what fans have waited for - with showdown after showdown and a genuinely chilling ending.
More like this
Every character we care about has an exciting or interesting journey, with it all being tied to a central story - and there's not a moment wasted. It's genuinely edge-of-your-seat stuff.
Unfortunately, the final two episodes fail to live up to the opener.
We go on to see Ciri cut off from everything she knows, dealing with a life-or-death situation and the terrors of her own mind. It's an interesting idea in theory, but in practice, the seventh outing drags - especially with the knowledge that we've only got one episode left to wrap everything up.
It brings up some intriguing ideas, which are revisited next episode, but it falls short on impact.
The finale, meanwhile, has some beautiful moments here and there. Once again, plenty of our cast shine, with some threads being wonderfully tied together.
Cavill's final scenes are, unfortunately, somewhat inconsequential, and while the very final moments of the season set up season 4, we have to wonder how much viewers really care.
There are also plenty of logistical problems, and the biggest ones could have been predicted - firstly with Netflix's commitment to a two-part release. It just hasn't worked in this case, with fans who have had to wait a month to see out the last part of the season only being rewarded with three pretty disjointed episodes.
The other problem is the ending. While cast and crew didn't know this at the time of filming, season 3 will be the end of an era for the show, and will be the last time we see Henry Cavill in the leading role as Geralt of Rivia.
Unfortunately, season 3 ends not with a bang but with a whimper.
So, what will happen with season 4? Some fans have made it clear that they won't be tuning in past Cavill's exit, with Liam Hemsworth set to take over in the role.
It's going to be a difficult transition for The Witcher - and whether season 3 has done enough to keep viewers hanging on? Well, only time will tell.