code: func (r *RemoteImageService) ImageStatus(image *runtimeapi.ImageSpec) (*runtimeapi.Image, error) {
  	ctx, cancel := getContextWithTimeout(r.timeout)
  	defer cancel()
  
  	resp, err := r.imageClient.ImageStatus(ctx, &runtimeapi.ImageStatusRequest{
  		Image: image,
  	})
  	if err != nil {
  		klog.Errorf("ImageStatus %q from image service failed: %v", image.Image, err)
  		return nil, err
  	}
  
  	if resp.Image != nil {
  		if resp.Image.Id == "" || resp.Image.Size_ == 0 {
  			errorMessage := fmt.Sprintf("Id or size of image %q is not set", image.Image)
  			klog.Errorf("ImageStatus failed: %s", errorMessage)
  			return nil, errors.New(errorMessage)
  		}
  	}
  
  	return resp.Image, nil
  }
docs: // ImageStatus returns the status of the image.