def METHOD_NAME():
    """Tests that differencer inverse always computes inverse via cumsum.
    Test case by ilkersigirci in #3345 (simplified)
    Failure mode:
    previous versions "remembered" the fit data, which can lead to unexpected
    output in the case of pipelining forecasters with a Differencer, see # 3345
    """
    import numpy as np
    from sktime.forecasting.base import ForecastingHorizon
    from sktime.forecasting.model_selection import temporal_train_test_split
    from sktime.forecasting.naive import NaiveForecaster
    from sktime.transformations.series.difference import Differencer
    y = load_airline()
    y_train, y_test = temporal_train_test_split(y=y, test_size=30)
    fh_out = np.arange(1, len(y_test) + 1)
    fh_ins = ForecastingHorizon(y_train.index, is_relative=False)[1:]
    pipe = Differencer() * NaiveForecaster()
    pipe.fit(y=y_train)
    pipe_ins = pipe.predict(fh=fh_ins)
    pipe.predict(fh=fh_out)
    naive_model = NaiveForecaster()
    naive_model.fit(y=y_train)
    model_ins = naive_model.predict(fh=fh_ins)
    naive_model.predict(fh=fh_out)
    # pipe output should not be similar to train input
    assert not np.allclose(y_train[1:].to_numpy(), pipe_ins.to_numpy())
    # pipe output should be similar to model output
    assert np.allclose(pipe_ins.to_numpy(), model_ins.to_numpy())
    # (first element can be different)
    # model output should not be similar to train input
    assert not np.allclose(y_train[1:].to_numpy(), model_ins.to_numpy())