code: def interpolate_attitude_prediction(
      attitude_prediction, observation_time
  ):
      """Interpolate attitude prediction at given observation time."""
      angle_between_earth_and_sun = interpolate_angles(
          observation_time,
          attitude_prediction.prediction_times,
          attitude_prediction.attitude.angle_between_earth_and_sun,
      )
      angle_between_sat_spin_and_z_axis = interpolate_angles(
          observation_time,
          attitude_prediction.prediction_times,
          attitude_prediction.attitude.angle_between_sat_spin_and_z_axis,
      )
      angle_between_sat_spin_and_yz_plane = interpolate_angles(
          observation_time,
          attitude_prediction.prediction_times,
          attitude_prediction.attitude.angle_between_sat_spin_and_yz_plane,
      )
      return Attitude(
          angle_between_earth_and_sun,
          angle_between_sat_spin_and_z_axis,
          angle_between_sat_spin_and_yz_plane,
      )
  
imports: from collections import namedtuple
  import dask.array
  import numba
  import numpy
  from satpy.utils import get_legacy_chunk_size
label_desc: Use image node_id 31 for calling a global function with example usage: interpolate_attitude_prediction(attitude_prediction, observation_time) and returns: Attitude