James McAvoy has a ball in this enjoyably silly psychological thriller, written and directed by M Night Shyamalan.

Snatched from a mall car park, three teens (Anya Taylor-Joy, Haley Lu Richardson and Jessica Sula) are held in a puzzling underground lair.

In due course, the women discover that their abductor (McAvoy) has 23 distinct personalities and, as they encounter the likes of lisping nine-year-old Hedwig, gay fashionista Barry and prim-and-proper Patricia, they try to play them off against each other to escape.

Shyamalan inevitably has a hokey twist up his sleeve, which is something of a let down. However, the film supplies mystery, suspense, creepy trepidation and enjoyable chills, and McAvoy, providing menace, pathos and humour as he rattles back and forth between the kidnapper’s different personalities, is a blast.