code: def _interpolate_with_angles(
      clons, clats, csatz, src_resolution, dst_resolution
  ):
      from geotiepoints.modisinterpolator import (
          modis_1km_to_250m,
          modis_1km_to_500m,
          modis_5km_to_1km,
      )
  
      # (src_res, dst_res, is satz not None) -> interp function
      interpolation_functions = {
          (5000, 1000): modis_5km_to_1km,
          (1000, 500): modis_1km_to_500m,
          (1000, 250): modis_1km_to_250m,
      }
      return _find_and_run_interpolation(
          interpolation_functions,
          src_resolution,
          dst_resolution,
          (clons, clats, csatz),
      )
  
imports: from __future__ import annotations
  import logging
  import re
  from ast import literal_eval
  from contextlib import suppress
  from datetime import datetime
  import numpy
  import xarray
  from pyhdf.error import HDF4Error
  from pyhdf.SD import SD
  from satpy import DataID
  from satpy.readers.file_handlers import BaseFileHandler
  from satpy.utils import normalize_low_res_chunks
label_desc: Use image node_id 2 for calling a global function with example usage: _interpolate_with_angles(clons, clats, csatz, src_resolution, dst_resolution) and returns: _find_and_run_interpolation