docs: def set_annotation(i, k, v):
      """
      >>> x = {}
      >>> set_annotation(x, 'marker', 'a')
      >>> annotation(x, 'marker')
      ['a']
      """
      if not isinstance(i, dict):
          raise ValueError("Can only annotate dictionaries")
  
      if not isinstance(v, list):
          v = [v]
  
      if k in i:
          ev = i.get(k)
          if isinstance(ev, list):
              ev.extend(v)
      else:
          i[k] = v