code: func (item *MultiGetItem) Source() (interface{}, error) {
  	source := make(map[string]interface{})
  
  	source["_id"] = item.id
  
  	if item.index != "" {
  		source["_index"] = item.index
  	}
  	if item.typ != "" {
  		source["_type"] = item.typ
  	}
  	if item.fsc != nil {
  		src, err := item.fsc.Source()
  		if err != nil {
  			return nil, err
  		}
  		source["_source"] = src
  	}
  	if item.routing != "" {
  		source["_routing"] = item.routing
  	}
  	if len(item.storedFields) > 0 {
  		source["stored_fields"] = strings.Join(item.storedFields, ",")
  	}
  	if item.version != nil {
  		source["version"] = fmt.Sprintf("%d", *item.version)
  	}
  	if item.versionType != "" {
  		source["version_type"] = item.versionType
  	}
  
  	return source, nil
  }
docs: // Source returns the serialized JSON to be sent to Elasticsearch as
  // part of a MultiGet search.