code: func (h *handler) fetchScanFunc(br blob.Ref, searchFunc func(blob.Ref) (*search.SearchResult, error)) (mediaObject, error) {
  	var mo mediaObject
  	res, err := searchFunc(br)
  	if err != nil {
  		return mo, err
  	}
  	if len(res.Blobs) != 1 {
  		return mo, os.ErrNotExist
  	}
  	if res.Describe == nil || len(res.Describe.Meta) == 0 {
  		return mo, errors.New("scan permanode was not described")
  	}
  	for _, des := range res.Describe.Meta {
  		if des.Permanode == nil {
  			continue
  		}
  		scan, err := h.describeScan(des)
  		if err != nil {
  			return mo, fmt.Errorf("error describing scan %v: %v", des.BlobRef, err)
  		}
  		return scan, nil
  	}
  	return mo, os.ErrNotExist
  }
docs: // returns os.ErrNotExist when scan was not found