// Custom marshaller to add the resourceType property, as required by the specification
17085
func (resource *Organization) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Organization"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Organization), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
330244
func (resource *Composition) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Composition"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Composition), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
463825
func (resource *Coverage) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Coverage"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Coverage), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
545413
func (resource *ReferralRequest) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "ReferralRequest"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to ReferralRequest), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
326725
func (resource *ImagingStudy) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "ImagingStudy"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to ImagingStudy), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
602821
func (r Resource) MarshalJSON() ([]byte, error) {
	if !r.IsValid() {
		return nil, fmt.Errorf("invalid resource %v", r)
	}

	return json.Marshal(r.String())
}
1067642
func (resource *BodySite) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "BodySite"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to BodySite), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
1256980
func (resource *ClinicalImpression) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "ClinicalImpression"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to ClinicalImpression), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
1370006
func (resource *EligibilityResponse) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "EligibilityResponse"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to EligibilityResponse), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
834883
func (resource *ImplementationGuide) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "ImplementationGuide"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to ImplementationGuide), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
819985
func (resource *Order) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Order"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Order), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
523336
func (resource *RelatedPerson) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "RelatedPerson"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to RelatedPerson), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
799743
func (resource *Account) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Account"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Account), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
251366
func (resource *DataElement) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "DataElement"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to DataElement), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
688911
func (resource *Device) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Device"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Device), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
149234
func (resource *HealthcareService) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "HealthcareService"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to HealthcareService), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
627498
func (resource *EpisodeOfCare) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "EpisodeOfCare"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to EpisodeOfCare), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}