Koko-di Koko-da

***

Reviewed by: Amber Wilkinson

Koko-di Koko-da
"We don't see the much of the immediate aftermath of death here, but instead are treated to the way grief can linger, catching anger and guilt in its wake" | Photo: Courtesy of Sundance Film Festival

Writer/director Jonas Nyholm likes his absurdity to come with an edge of danger as evidenced in his genre-bending The Giant, which mixed the neo-realist tale of an autistic boules player with fantastical sequences. In the decidedly darker follow-up, he focuses on the point at which the fantastical impinges on the everyday to sinister effect. Children's rhymes and folklore, of course, have long had the propensity to take on darker tones, from Risselty Rosselty in The Birds to the permutation of One, Two Buckle My Shoe in A Nightmare On Elm Street.

Here, its the Nordic children's song Vår tupp är död (Our Rooster's Dead) which takes centre stage - proving that it isn't just British kids' songs that have sinister themes - and which holds the Koko-di Koko-da lines of the title. It's the tinny little tune that is also played by a little girl's musical box seen near the start of this film - before the nightmare begins - its looping nature an augur of what is to come. It's almost Maja's (Katarina Jacobson) eighth birthday and the toy, which has a trio of cartoonish characters and a dog loping round it is a special gift bought for her by parents Elin (Ylva Gallon) and Tobias (Leif Edlund) will be the last one they will ever buy for her before their lives are subsumed by grief. Already there are hints of oddness, bunny make-up, an entertainment couple who could have dropped by from Royston Vasey, and soon these nightmarish elements, comical in the light of day, will begin to rule the roost.

We don't see the much of the immediate aftermath of death here, but instead are treated to the way grief can linger, catching anger and guilt in its wake. Three years on, the couple go on a camping trip and soon find themselves off the beaten track in a forest that is as much metaphorical as physical. Here, the trio from the music box, who we have already glimpsed in an eerie prologue, arrive on the scene to wreak death in multiple forms. Mog (Sixties Danish singing star Peter Belli) is a dapper looking leader in a straw boater, followed by wall of muscle Sampo (Morad Khatchadorian), who carries with him a dead dog, and Cherry (Brandy Litmanen), who looks as though she might have just crawled up out of the nearest well - and they also possess a snarling dog.

We watch as the couple bicker, squabble and meet all manner of unpleasant deaths, with Tobias singled out for special opprobrium, as the story, like the musical box's tune, repeatedly loops back on itself, showing how they are fighting with the demons in their head as much as the horror characters. One of the issues with The Giant was that it was so structurally loose it started to flap about - and here the opposite problem applies, as Nyholm is so rigorous in form that the brutal repetition begins to undermine rather than enhance the film's emotional resonance. He has a great eye for an image, though, whether its the shocking sight of the after effects of each death scene as the camera pulls away or the two desperately melancholic shadow puppet shows that explore Elin and Tobias' loss. He has a feel for emotional resonance and I'm still looking forward to the day he strikes the balance between atmosphere and structure, the result could well be a classic. Until that time, expect to have this film's eerie tune stuck in your head.

Reviewed on: 29 Mar 2019
Share this with others on...
As a couple goes on a trip to find their way back to each other, a sideshow artist and his shady entourage emerge from the woods, terrorsing them, luring them deeper and deeper into a maelstrom of psychological terror.
Amazon link

Director: Johannes Nyholm

Writer: Johannes Nyholm

Starring: Leif Edlund, Ylva Gallon, Peter Belli, Katarina Jacobson

Year: 2019

Runtime: 87 minutes

Country: Sweden, Denmark


Search database:



DJDT

Versions

Time

Settings from settings.local

Headers

Request

SQL queries from 1 connection

Templates (9 rendered)

Cache calls from 2 backends

Signals