This is the kind of film that gives me hope for the human race.

In recent years we've seen the rise of Trump and the far right, as the rich get richer, the poor and immigrant get blamed, and people rely more on emotion and anger rather than logic and empathy.

Then along comes Sorry to Bother You and it's like a shaft of light in a darkening world.

Boots Riley's debut film centres on Cassius Green (superbly played by Lakeith Stanfield, who also stars in the excellent Atlanta), a man with zero prospects, who is financially bereft, and living in a garage. The only positive in his life is his girlfriend Detroit (an even more impressive Tessa Thompson), an optimistic artist who's also a political activist.

Cassius lands a job in tele sales and, thanks to an experienced co-worker (played by Danny Glover), discovers that he can earn well and climb the company ladder - where he later meets the appalling Steve Lift, played to Silicon Valley perfection by Armie Hammer - by putting on what's described as his 'white voice'.

But as Cassius finds his way up the pecking order, he soon discovers that success comes at a price, and he's soon alienating his workplace friends, who feel he's selling-out to the corporate world while they go on strike over awful working conditions.

And while the plot grows increasingly bizarre and tangential as Cassius climbs, you're left in no doubt that the current, almost completely unfettered version of capitalism is a real threat to the future of the human race.

The film's highly amusing and defiantly original, which is no mean achievement given the subject matter. It's also bursting with ideas, and the final third is like an audiovisual avalanche, there's so much going on. In some ways it reminds me of De La Soul's debut album Three Feet High and Rising.

Boots Riley has long been a left-wing activist, as well as rapper, producer, screenwriter, and now film director. Sorry to Bother You - which he also wrote - is an audacious debut.

This is seditionary cinema that'll put a smile on your face.