code: def get_anomaly_score(
      self,
      time_series: TimeSeries,
      time_series_prev: TimeSeries = None,
      exog_data=None,
  ) -> TimeSeries:
      if self.online_updates:
          time_series, time_series_prev = self.transform_time_series(
              time_series, time_series_prev
          )
          if time_series_prev is None:
              full_ts = time_series
          else:
              full_ts = time_series_prev + time_series
          forecast, err = self.update(
              full_ts.to_pd(), train_cadence=pd.to_timedelta(0)
          )
          forecast, err = [
              x.bisect(time_series.t0, t_in_left=False)[1]
              for x in [forecast, err]
          ]
          return TimeSeries.from_pd(
              self.forecast_to_anom_score(time_series, forecast, err)
          )
      else:
          return super().get_anomaly_score(
              time_series, time_series_prev
          )
  
file_path: merlion/merlion/models/anomaly/forecast_based/mses.py
imports: import pandas
  from merlion.models.anomaly.forecast_based.base import ForecastingDetectorBase
  from merlion.models.anomaly.base import DetectorConfig
  from merlion.models.forecast.smoother import MSESConfig, MSES, MSESTrainConfig
  from merlion.post_process.threshold import AggregateAlarms
  from merlion.utils.time_series import TimeSeries
label_desc: Use image node_id 3 for calling the MSESDetector obj's underlying member method code with example usage: obj.get_anomaly_score(time_series, time_series_prev, exog_data) and returns: TimeSeries, super