code: func FieldByIndexesReadOnly(v reflect.Value, indexes []int) reflect.Value {
  	for _, i := range indexes {
  		v = reflect.Indirect(v).Field(i)
  	}
  	return v
  }
docs: // FieldByIndexesReadOnly returns a value for a particular struct traversal,
  // but is not concerned with allocating nil pointers because the value is
  // going to be used for reading and not setting.