text_a: it 's good , hard-edged stuff , violent and a bit exploitative but also nicely done , morally alert and street-smart .
text_b: even accepting this in the right frame of mind can only provide it with so much leniency .