code: def test_save_load_model(dill):
      """Save/load Model with/without dill."""
      if dill:
          pytest.importorskip("dill")
      else:
          lmfit.jsonutils.HAS_DILL = False
  
      # create/save Model and perform some tests
      model, _pars = create_model_params(x, y)
      save_model(model, SAVE_MODEL)
  
      file_exists = wait_for_file(SAVE_MODEL, timeout=10)
      assert file_exists
  
      with open(SAVE_MODEL) as fh:
          text = fh.read()
      assert 1000 < len(text) < 2500
  
      # load the Model, perform fit and assert results
      saved_model = load_model(SAVE_MODEL)
      params = saved_model.make_params()
  
      params["exp_decay"].set(100)
      params["exp_amplitude"].set(100)
      params["g1_center"].set(105, min=75, max=125)
      params["g1_sigma"].set(15, min=3)
      params["g1_amplitude"].set(2000, min=10)
  
      params["g2_center"].set(155, min=125, max=175)
      params["g2_sigma"].set(15, min=3)
      params["g2_amplitude"].set(2000, min=10)
  
      result = saved_model.fit(y, params, x=x)
      check_fit_results(result)
  
      clear_savefile(SAVE_MODEL)
  
imports: import json
  import os
  import time
  import numpy
  from numpy.testing import assert_allclose
  import pytest
  from lmfit import Parameters
  import lmfit.jsonutils
  from lmfit.lineshapes import gaussian, lorentzian
  from lmfit.model import Model, ModelResult, load_model, load_modelresult, save_model, save_modelresult
  from lmfit.models import ExponentialModel, ExpressionModel, GaussianModel, VoigtModel
label_desc: Use image node_id 5 for calling a global function with example usage: test_save_load_model(dill) without return types