code: func (m *Meta) PopulateFromTouchedIn(t *Meta) {
  	t.detectTouchedFlags()
  	left := m.fieldsMap()
  	right := t.fieldsMap()
  	for k, l := range left {
  		r := right[k]
  		if _, yes := t.touched[r]; yes {
  			// Do *l = *r.
  			switch l.(type) {
  			case *string:
  				*(l.(*string)) = *(r.(*string))
  			case *bool:
  				*(l.(*bool)) = *(r.(*bool))
  			case *[]string:
  				*(l.(*[]string)) = append([]string(nil), *(r.(*[]string))...)
  			default:
  				panic("impossible")
  			}
  		}
  	}
  }
docs: // PopulateFromTouchedIn takes all touched values in `t` and copies them to
  // `m`, overriding what's in `m`.