and software optimizations