added neon optimizations