Optimised for speed