};
}
static const SpeexSBMode * sb_wb_mode (void){  const SpeexMode * nb_mode;  const SpeexSubmode ** submodes;  int low_quality_map[11] = {1, 8, 2, 3, 4, 5, 5, 6, 6, 7, 7};  int quality_map[11] = {1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 4};  SpeexSBMode * ret;  nb_mode = speex_nb_mode_new ();  if (nb_mode == NULL) return NULL;  submodes = (const SpeexSubmode **)    speex_alloc (sizeof (SpeexSubmode *) * SB_SUBMODES);  if (submodes == NULL) return NULL;  memset (submodes, 0, sizeof (submodes));  if (!(submodes[1] = wb_submode1())) goto sb_1;  if (!(submodes[2] = wb_submode2())) goto sb_2;  if (!(submodes[3] = wb_submode3())) goto sb_3;  if (!(submodes[4] = wb_submode4())) goto sb_4;  ret = sb_mode_new (   nb_mode,   160,    /*frameSize*/   40,     /*subframeSize*/   8,     /*lpcSize*/   640,    /*bufSize*/#ifdef FIXED_POINT   29491, 19661, /* gamma1, gamma2 */#else   0.9, 0.6, /* gamma1, gamma2 */#endif   .001,   /*lag_factor*/   1.0001, /*lpc_floor*/   0.9,   submodes,   3,   low_quality_map,   quality_map,   vbr_hb_thresh,   5   );  if (ret == NULL) goto sb_4;  /* If sb_mode_new() was successful, the references to submodes have been   * copied into ret->submodes[], and it's safe to free submodes.   */  speex_free (submodes);  return ret;  /* Cleanup on memory allocation errors */ sb_4: speex_submode_free (submodes[4]); sb_3: speex_submode_free (submodes[3]); sb_2: speex_submode_free (submodes[2]); sb_1: speex_submode_free (submodes[1]);  speex_free (submodes);  return NULL;};