code: func (r *Resource) UnmarshalJSON(data []byte) error {
  	var ccResource struct {
  		FilePath    string   `json:"path,omitempty"`
  		Mode        string   `json:"mode,omitempty"`
  		Checksum    Checksum `json:"checksum"`
  		SizeInBytes int64    `json:"size_in_bytes"`
  	}
  
  	err := cloudcontroller.DecodeJSON(data, &ccResource)
  	if err != nil {
  		return err
  	}
  
  	r.FilePath = ccResource.FilePath
  	r.SizeInBytes = ccResource.SizeInBytes
  	r.Checksum = ccResource.Checksum
  	mode, err := strconv.ParseUint(ccResource.Mode, 8, 32)
  	if err != nil {
  		return err
  	}
  
  	r.Mode = os.FileMode(mode)
  	return nil
  }
docs: // UnmarshalJSON helps unmarshal a Cloud Controller Resource response.