code: func (r *newValueReader) ReadField(address []string) (FieldReadResult, error) {
  	addrKey := strings.Join(address, ".")
  	v, err := r.MapFieldReader.ReadField(address)
  	if err != nil {
  		return FieldReadResult{}, err
  	}
  	for computedKey := range r.computedKeys {
  		if childAddrOf(addrKey, computedKey) {
  			if strings.HasSuffix(addrKey, ".#") {
  				// This is a count value for a list or set that has been marked as
  				// computed, or a sub-list/sub-set of a complex resource that has
  				// been marked as computed.  We need to pass through to other readers
  				// so that an accurate previous count can be fetched for the diff.
  				v.Exists = false
  			}
  			v.Computed = true
  		}
  	}
  
  	return v, nil
  }
docs: // ReadField reads the values from the underlying writer, returning the
  // computed value if it is found as well.