code: def __call__(
      self, denoiser, x, cond, uc=None, num_steps=None, **kwargs
  ):
      (
          x,
          s_in,
          sigmas,
          num_sigmas,
          cond,
          uc,
      ) = self.prepare_sampling_loop(x, cond, uc, num_steps)
  
      ds = []
      sigmas_cpu = sigmas.detach().cpu().numpy()
      for i in self.get_sigma_gen(num_sigmas):
          sigma = s_in * sigmas[i]
          denoised = denoiser(
              *self.guider.prepare_inputs(x, sigma, cond, uc), **kwargs
          )
          denoised = self.guider(denoised, sigma)
          d = to_d(x, sigma, denoised)
          ds.append(d)
          if len(ds) > self.order:
              ds.pop(0)
          cur_order = min(i + 1, self.order)
          coeffs = [
              linear_multistep_coeff(cur_order, sigmas_cpu, i, j)
              for j in range(cur_order)
          ]
          x = x + sum(
              coeff * d for coeff, d in zip(coeffs, reversed(ds))
          )
  
      return x
  
imports: from typing import Dict, Union
  import torch
  from omegaconf import ListConfig, OmegaConf
  from tqdm import tqdm
  from ...modules.diffusionmodules.sampling_utils import get_ancestral_step, linear_multistep_coeff, to_d, to_neg_log_sigma, to_sigma
  from ...util import append_dims, default, instantiate_from_config
label_desc: Use image node_id 2 for calling the LinearMultistepSampler obj's underlying member method code with example usage: obj.__call__(denoiser, x, cond, uc, num_steps) and returns: x