/**
  * Get an array of list_id => number of subscribers
  *
  * @return array
  */
 public function get_subscriber_counts()
 {
     // get from transient
     $list_counts = get_transient('mc4wp_list_counts');
     if (is_array($list_counts)) {
         return $list_counts;
     }
     // transient not valid, fetch from API
     try {
         $lists = $this->api->get_lists(array('count' => 100, 'fields' => 'lists.id,lists.stats'));
     } catch (MC4WP_API_Exception $e) {
         return array();
     }
     $list_counts = array();
     // we got a valid response
     foreach ($lists as $list) {
         $list_counts["{$list->id}"] = $list->stats->member_count;
     }
     $seconds = 3600;
     /**
      * Filters the cache time for MailChimp lists configuration, in seconds. Defaults to 3600 seconds (1 hour).
      *
      * @since 2.0
      * @param int $seconds
      */
     $transient_lifetime = (int) apply_filters('mc4wp_lists_count_cache_time', $seconds);
     set_transient('mc4wp_list_counts', $list_counts, $transient_lifetime);
     // bail
     return $list_counts;
 }