expanded numpy part