class_docstr: A context manager for doing a "deep suppression" of stdout and stderr in
  Python, i.e. will suppress all print, even if the print originates in a
  compiled C/Fortran sub-function.
  
  This will not suppress raised exceptions, since exceptions are printed
  to stderr just before a script exits, and after the context manager has
  exited (at least, I think that is why it lets exceptions through).
  
  Source: https://github.com/facebook/prophet/issues/223#issuecomment-326455744
code: def __init__(self):
      # Open a pair of null files
      self.null_fds = [os.open(os.devnull, os.O_RDWR) for x in range(2)]
      # Save the actual stdout (1) and stderr (2) file descriptors.
      self.save_fds = [os.dup(1), os.dup(2)]
  
imports: import copy
  import logging
  import os
  from typing import Iterable, List, Tuple, Union
  import warnings
  import numpy
  import pandas
  import prophet
  import prophet.serialize
  from merlion.models.automl.seasonality import SeasonalityModel
  from merlion.models.forecast.base import ForecasterExogBase, ForecasterExogConfig
  from merlion.utils import TimeSeries, UnivariateTimeSeries, to_pd_datetime, to_timestamp
label_desc: Use image node_id 1 to create a new _suppress_stdout_stderr object from inherited base classes: object with example: obj = _suppress_stdout_stderr()