code: def test_multioutput_direct_equivalence_tabular_linear_regression(fh):
      """Test multioutput and direct strategies with linear regression.
  
      Regressor should produce same predictions
      """
      y, X = make_forecasting_problem(make_X=True)
      y_train, y_test, X_train, X_test = temporal_train_test_split(
          y, X, fh=fh
      )
  
      estimator = LinearRegression()
      direct = make_reduction(estimator, strategy="direct")
      multioutput = make_reduction(estimator, strategy="multioutput")
  
      y_pred_direct = direct.fit(y_train, X_train, fh=fh).predict(
          fh, X_test
      )
      y_pred_multioutput = multioutput.fit(
          y_train, X_train, fh=fh
      ).predict(fh, X_test)
  
      np.testing.assert_array_almost_equal(
          y_pred_direct.to_numpy(), y_pred_multioutput.to_numpy()
      )
  
imports: import numpy
  import pandas
  import pytest
  from sklearn.base import BaseEstimator, RegressorMixin
  from sklearn.dummy import DummyRegressor
  from sklearn.linear_model import LinearRegression
  from sklearn.pipeline import make_pipeline
  from sktime.datasets import load_airline
  from sktime.forecasting.base import ForecastingHorizon
  from sktime.forecasting.compose import DirectTabularRegressionForecaster, DirectTimeSeriesRegressionForecaster, DirRecTabularRegressionForecaster, DirRecTimeSeriesRegressionForecaster, MultioutputTabularRegressionForecaster, MultioutputTimeSeriesRegressionForecaster, RecursiveTabularRegressionForecaster, RecursiveTimeSeriesRegressionForecaster, make_reduction
  from sktime.forecasting.compose._reduce import _sliding_window_transform
  from sktime.forecasting.tests._config import TEST_OOS_FHS, TEST_WINDOW_LENGTHS_INT
  from sktime.performance_metrics.forecasting import mean_absolute_percentage_error
  from sktime.regression.base import BaseRegressor
  from sktime.regression.interval_based import TimeSeriesForestRegressor
  from sktime.split import SlidingWindowSplitter, temporal_train_test_split
  from sktime.split.tests.test_split import _get_windows
  from sktime.transformations.panel.reduce import Tabularizer
  from sktime.utils._testing.forecasting import make_forecasting_problem
  from sktime.utils.validation.forecasting import check_fh
label_desc: Use image node_id 13 for calling a global function with example usage: test_multioutput_direct_equivalence_tabular_linear_regression(fh) without return types