no need for creating new arrays when rotating