/**
  * Override TreeRouteStack::factory()
  *
  * Overrides TreeRouteStack::factory() in order to inject the configured
  * translator_text_domain, if present, prior to returning the instance.
  *
  * @param array $options
  * @return self
  */
 public static function factory($options = [])
 {
     $instance = parent::factory($options);
     $flatOptions = $options;
     if ($flatOptions instanceof Traversable) {
         $flatOptions = iterator_to_array($flatOptions);
     }
     if (isset($flatOptions['translator_text_domain'])) {
         $instance->setTranslatorTextDomain($flatOptions['translator_text_domain']);
     }
     return $instance;
 }