Optimise speed and portability, thanks to major changes by @viscosity