how many episodes will the flash season 8 have