while (i--) is fastest and might be possible with having length