lmul optimised