code: func FlatUpdate(f1, f2 map[string]string) error {
  	conflict := false
  	for k2, v2 := range f2 {
  		if v1, ok := f1[k2]; ok {
  			f1[k2] = v1 + ";" + v2
  			conflict = true
  		} else {
  			f1[k2] = v2
  		}
  	}
  	if conflict {
  		return fmt.Errorf("keys conflict")
  	} else {
  		return nil
  	}
  }
docs: // Update a Flat representation by adding elements of the second
  // one. If two elements use same keys, values are separated with
  // ';'. In this case, it returns an error but the update has been
  // realized.