CMS FHIR Prototype Measure Calculation Tool IG, published by HL7 International - [Some] Work Group. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/cqframework/mct-ig/ and changes regularly. See the Directory of published versions
| Draft as of 2026-02-27 |
@prefix fhir: <http://hl7.org/fhir/> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . # - resource ------------------------------------------------------------------- a fhir:Library ; fhir:nodeRole fhir:treeRoot ; fhir:id [ fhir:v "FHIRHelpers"] ; # fhir:text [ fhir:status [ fhir:v "extensions" ] ; fhir:div [ fhir:v "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n <table class=\"grid dict\">\n \n <tr>\n <th scope=\"row\"><b>Id: </b></th>\n <td style=\"padding-left: 4px;\">FHIRHelpers</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Url: </b></th>\n <td style=\"padding-left: 4px;\"><a href=\"Library-FHIRHelpers.html\">FHIR Helpers</a></td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Version: </b></th>\n <td style=\"padding-left: 4px;\">0.1.0</td>\n </tr>\n \n \n \n <tr>\n <th scope=\"row\"><b>Name: </b></th>\n <td style=\"padding-left: 4px;\">FHIRHelpers</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Title: </b></th>\n <td style=\"padding-left: 4px;\">FHIR Helpers</td>\n </tr>\n \n \n \n <tr>\n <th scope=\"row\"><b>Status: </b></th>\n <td style=\"padding-left: 4px;\">draft</td>\n </tr>\n \n \n \n <tr>\n <th scope=\"row\"><b>Type: </b></th>\n <td style=\"padding-left: 4px;\">\n \n \n \n <p style=\"margin-bottom: 5px;\">\n <b>system: </b> <span><a href=\"http://terminology.hl7.org/7.0.1/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n </p>\n \n \n <p style=\"margin-bottom: 5px;\">\n <b>code: </b> <span>logic-library</span>\n </p>\n \n \n \n \n \n </td>\n </tr>\n \n \n \n <tr>\n <th scope=\"row\"><b>Date: </b></th>\n <td style=\"padding-left: 4px;\">2026-02-27 18:11:00+0000</td>\n </tr>\n \n \n <tr>\n <th scope=\"row\"><b>Publisher: </b></th>\n <td style=\"padding-left: 4px;\">HL7 International - [Some] Work Group</td>\n </tr>\n \n \n \n \n \n \n <tr>\n <th scope=\"row\"><b>Jurisdiction: </b></th>\n <td style=\"padding-left: 4px;\">US</td>\n </tr>\n \n \n \n \n \n \n \n \n \n \n \n \n <tr>\n <td colspan=\"2\">\n <table>\n <tr><th><a id=\"cql-content\"><b>Content: </b></a> text/cql</th></tr>\n <tr><td><pre><code class=\"language-cql\">/*#xD;\n@author: Bryn Rhodes#xD;\n@description: This library defines functions to convert between FHIR#xD;\n data types and CQL system-defined types, as well as functions to support#xD;\n FHIRPath implementation. For more information, the FHIRHelpers wiki page:#xD;\n https://github.com/cqframework/clinical_quality_language/wiki/FHIRHelpers#xD;\n@allowFluent: true#xD;\n#xD;\n@update: Refresh based on AU 2022 content; version 4.0.012 for use in the ecqm-content-qicore-2022 repository#xD;\n@update: Added ToValueSet function; version 4.0.013 for use in the ecqm-content-qicore-2022 repository#xD;\n*/#xD;\nlibrary FHIRHelpers version '4.0.013'#xD;\n#xD;\nusing FHIR version '4.0.1'#xD;\n#xD;\ndefine function ToInterval(period FHIR.Period):#xD;\n if period is null then#xD;\n null#xD;\n else#xD;\n if period.&quot;start&quot; is null then#xD;\n Interval(period.&quot;start&quot;.value, period.&quot;end&quot;.value]#xD;\n else#xD;\n Interval[period.&quot;start&quot;.value, period.&quot;end&quot;.value]#xD;\n#xD;\ndefine function ToCalendarUnit(unit System.String):#xD;\n case unit#xD;\n when 'ms' then 'millisecond'#xD;\n when 's' then 'second'#xD;\n when 'min' then 'minute'#xD;\n when 'h' then 'hour'#xD;\n when 'd' then 'day'#xD;\n when 'wk' then 'week'#xD;\n when 'mo' then 'month'#xD;\n when 'a' then 'year'#xD;\n else unit#xD;\n end#xD;\n#xD;\ndefine function ToQuantity(quantity FHIR.Quantity):#xD;\n case#xD;\n when quantity is null then null#xD;\n when quantity.value is null then null#xD;\n when quantity.comparator is not null then#xD;\n Message(null, true, 'FHIRHelpers.ToQuantity.ComparatorQuantityNotSupported', 'Error', 'FHIR Quantity value has a comparator and cannot be converted to a System.Quantity value.')#xD;\n when quantity.system is null or quantity.system.value = 'http://unitsofmeasure.org'#xD;\n or quantity.system.value = 'http://hl7.org/fhirpath/CodeSystem/calendar-units' then#xD;\n System.Quantity { value: quantity.value.value, unit: ToCalendarUnit(Coalesce(quantity.code.value, quantity.unit.value, '1')) }#xD;\n else#xD;\n Message(null, true, 'FHIRHelpers.ToQuantity.InvalidFHIRQuantity', 'Error', 'Invalid FHIR Quantity code: ' &amp; quantity.unit.value &amp; ' (' &amp; quantity.system.value &amp; '|' &amp; quantity.code.value &amp; ')')#xD;\n end#xD;\n#xD;\ndefine function ToQuantityIgnoringComparator(quantity FHIR.Quantity):#xD;\n case#xD;\n when quantity is null then null#xD;\n when quantity.value is null then null#xD;\n when quantity.system is null or quantity.system.value = 'http://unitsofmeasure.org'#xD;\n or quantity.system.value = 'http://hl7.org/fhirpath/CodeSystem/calendar-units' then#xD;\n System.Quantity { value: quantity.value.value, unit: ToCalendarUnit(Coalesce(quantity.code.value, quantity.unit.value, '1')) }#xD;\n else#xD;\n Message(null, true, 'FHIRHelpers.ToQuantity.InvalidFHIRQuantity', 'Error', 'Invalid FHIR Quantity code: ' &amp; quantity.unit.value &amp; ' (' &amp; quantity.system.value &amp; '|' &amp; quantity.code.value &amp; ')')#xD;\n end#xD;\n#xD;\ndefine function ToInterval(quantity FHIR.Quantity):#xD;\n if quantity is null then null else#xD;\n case quantity.comparator.value#xD;\n when '&lt;' then#xD;\n Interval[#xD;\n null,#xD;\n ToQuantityIgnoringComparator(quantity)#xD;\n )#xD;\n when '&lt;=' then#xD;\n Interval[#xD;\n null,#xD;\n ToQuantityIgnoringComparator(quantity)#xD;\n ]#xD;\n when '&gt;=' then#xD;\n Interval[#xD;\n ToQuantityIgnoringComparator(quantity),#xD;\n null#xD;\n ]#xD;\n when '&gt;' then#xD;\n Interval(#xD;\n ToQuantityIgnoringComparator(quantity),#xD;\n null#xD;\n ]#xD;\n else#xD;\n Interval[ToQuantity(quantity), ToQuantity(quantity)]#xD;\n end#xD;\n#xD;\ndefine function ToRatio(ratio FHIR.Ratio):#xD;\n if ratio is null then#xD;\n null#xD;\n else#xD;\n System.Ratio { numerator: ToQuantity(ratio.numerator), denominator: ToQuantity(ratio.denominator) }#xD;\n#xD;\ndefine function ToInterval(range FHIR.Range):#xD;\n if range is null then#xD;\n null#xD;\n else#xD;\n Interval[ToQuantity(range.low), ToQuantity(range.high)]#xD;\n#xD;\ndefine function ToCode(coding FHIR.Coding):#xD;\n if coding is null then#xD;\n null#xD;\n else#xD;\n System.Code {#xD;\n code: coding.code.value,#xD;\n system: coding.system.value,#xD;\n version: coding.version.value,#xD;\n display: coding.display.value#xD;\n }#xD;\n#xD;\ndefine function ToConcept(concept FHIR.CodeableConcept):#xD;\n if concept is null then#xD;\n null#xD;\n else#xD;\n System.Concept {#xD;\n codes: concept.coding C return ToCode(C),#xD;\n display: concept.text.value#xD;\n }#xD;\n#xD;\ndefine function ToValueSet(uri String):#xD;\n if uri is null then#xD;\n null#xD;\n else#xD;\n System.ValueSet {#xD;\n id: uri#xD;\n }#xD;\n#xD;\ndefine function reference(reference String):#xD;\n if reference is null then#xD;\n null#xD;\n else#xD;\n Reference { reference: string { value: reference } }#xD;\n#xD;\ndefine function ToValue(value Choice&lt;base64Binary,#xD;\n boolean,#xD;\n canonical,#xD;\n code,#xD;\n date,#xD;\n dateTime,#xD;\n decimal,#xD;\n id,#xD;\n instant,#xD;\n integer,#xD;\n markdown,#xD;\n oid,#xD;\n positiveInt,#xD;\n string,#xD;\n time,#xD;\n unsignedInt,#xD;\n uri,#xD;\n url,#xD;\n uuid,#xD;\n Address,#xD;\n Age,#xD;\n Annotation,#xD;\n Attachment,#xD;\n CodeableConcept,#xD;\n Coding,#xD;\n ContactPoint,#xD;\n Count,#xD;\n Distance,#xD;\n Duration,#xD;\n HumanName,#xD;\n Identifier,#xD;\n Money,#xD;\n Period,#xD;\n Quantity,#xD;\n Range,#xD;\n Ratio,#xD;\n Reference,#xD;\n SampledData,#xD;\n Signature,#xD;\n Timing,#xD;\n ContactDetail,#xD;\n Contributor,#xD;\n DataRequirement,#xD;\n Expression,#xD;\n ParameterDefinition,#xD;\n RelatedArtifact,#xD;\n TriggerDefinition,#xD;\n UsageContext,#xD;\n Dosage,#xD;\n Meta&gt;):#xD;\n case#xD;\n when value is base64Binary then (value as base64Binary).value#xD;\n when value is boolean then (value as boolean).value#xD;\n when value is canonical then (value as canonical).value#xD;\n when value is code then (value as code).value#xD;\n when value is date then (value as date).value#xD;\n when value is dateTime then (value as dateTime).value#xD;\n when value is decimal then (value as decimal).value#xD;\n when value is id then (value as id).value#xD;\n when value is instant then (value as instant).value#xD;\n when value is integer then (value as integer).value#xD;\n when value is markdown then (value as markdown).value#xD;\n when value is oid then (value as oid).value#xD;\n when value is positiveInt then (value as positiveInt).value#xD;\n when value is string then (value as string).value#xD;\n when value is time then (value as time).value#xD;\n when value is unsignedInt then (value as unsignedInt).value#xD;\n when value is uri then (value as uri).value#xD;\n when value is url then (value as url).value#xD;\n when value is uuid then (value as uuid).value#xD;\n when value is Age then ToQuantity(value as Age)#xD;\n when value is CodeableConcept then ToConcept(value as CodeableConcept)#xD;\n when value is Coding then ToCode(value as Coding)#xD;\n when value is Count then ToQuantity(value as Count)#xD;\n when value is Distance then ToQuantity(value as Distance)#xD;\n when value is Duration then ToQuantity(value as Duration)#xD;\n when value is Quantity then ToQuantity(value as Quantity)#xD;\n when value is Range then ToInterval(value as Range)#xD;\n when value is Period then ToInterval(value as Period)#xD;\n when value is Ratio then ToRatio(value as Ratio)#xD;\n else value as Choice&lt;Address,#xD;\n Annotation,#xD;\n Attachment,#xD;\n ContactPoint,#xD;\n HumanName,#xD;\n Identifier,#xD;\n Money,#xD;\n Reference,#xD;\n SampledData,#xD;\n Signature,#xD;\n Timing,#xD;\n ContactDetail,#xD;\n Contributor,#xD;\n DataRequirement,#xD;\n Expression,#xD;\n ParameterDefinition,#xD;\n RelatedArtifact,#xD;\n TriggerDefinition,#xD;\n UsageContext,#xD;\n Dosage,#xD;\n Meta&gt;#xD;\n end#xD;\n#xD;\ndefine function resolve(reference String) returns Resource: external#xD;\ndefine function resolve(reference Reference) returns Resource: external#xD;\ndefine function reference(resource Resource) returns Reference: external#xD;\ndefine function extension(element Element, url String) returns List&lt;Extension&gt;: external#xD;\ndefine function extension(resource DomainResource, url String) returns List&lt;Extension&gt;: external#xD;\ndefine function modifierExtension(element BackboneElement, url String) returns List&lt;Extension&gt;: external#xD;\ndefine function modifierExtension(resource DomainResource, url String) returns List&lt;Extension&gt;: external#xD;\ndefine function hasValue(element Element) returns Boolean: external#xD;\ndefine function getValue(element Element) returns Any: external#xD;\ndefine function ofType(identifier String) returns List&lt;Any&gt;: external#xD;\ndefine function is(identifier String) returns Boolean: external#xD;\ndefine function as(identifier String) returns Any: external#xD;\ndefine function elementDefinition(element Element) returns ElementDefinition: external#xD;\ndefine function slice(element Element, url String, name String) returns List&lt;Element&gt;: external#xD;\ndefine function checkModifiers(resource Resource) returns Resource: external#xD;\ndefine function checkModifiers(resource Resource, modifier String) returns Resource: external#xD;\ndefine function checkModifiers(element Element) returns Element: external#xD;\ndefine function checkModifiers(element Element, modifier String) returns Element: external#xD;\ndefine function conformsTo(resource Resource, structure String) returns Boolean: external#xD;\ndefine function memberOf(code code, valueSet String) returns Boolean: external#xD;\ndefine function memberOf(coding Coding, valueSet String) returns Boolean: external#xD;\ndefine function memberOf(concept CodeableConcept, valueSet String) returns Boolean: external#xD;\ndefine function subsumes(coding Coding, subsumedCoding Coding) returns Boolean: external#xD;\ndefine function subsumes(concept CodeableConcept, subsumedConcept CodeableConcept) returns Boolean: external#xD;\ndefine function subsumedBy(coding Coding, subsumingCoding Coding) returns Boolean: external#xD;\ndefine function subsumedBy(concept CodeableConcept, subsumingConcept CodeableConcept) returns Boolean: external#xD;\ndefine function htmlChecks(element Element) returns Boolean: external#xD;\n#xD;\ndefine function ToString(value AccountStatus): value.value#xD;\ndefine function ToString(value ActionCardinalityBehavior): value.value#xD;\ndefine function ToString(value ActionConditionKind): value.value#xD;\ndefine function ToString(value ActionGroupingBehavior): value.value#xD;\ndefine function ToString(value ActionParticipantType): value.value#xD;\ndefine function ToString(value ActionPrecheckBehavior): value.value#xD;\ndefine function ToString(value ActionRelationshipType): value.value#xD;\ndefine function ToString(value ActionRequiredBehavior): value.value#xD;\ndefine function ToString(value ActionSelectionBehavior): value.value#xD;\ndefine function ToString(value ActivityDefinitionKind): value.value#xD;\ndefine function ToString(value ActivityParticipantType): value.value#xD;\ndefine function ToString(value AddressType): value.value#xD;\ndefine function ToString(value AddressUse): value.value#xD;\ndefine function ToString(value AdministrativeGender): value.value#xD;\ndefine function ToString(value AdverseEventActuality): value.value#xD;\ndefine function ToString(value AggregationMode): value.value#xD;\ndefine function ToString(value AllergyIntoleranceCategory): value.value#xD;\ndefine function ToString(value AllergyIntoleranceCriticality): value.value#xD;\ndefine function ToString(value AllergyIntoleranceSeverity): value.value#xD;\ndefine function ToString(value AllergyIntoleranceType): value.value#xD;\ndefine function ToString(value AppointmentStatus): value.value#xD;\ndefine function ToString(value AssertionDirectionType): value.value#xD;\ndefine function ToString(value AssertionOperatorType): value.value#xD;\ndefine function ToString(value AssertionResponseTypes): value.value#xD;\ndefine function ToString(value AuditEventAction): value.value#xD;\ndefine function ToString(value AuditEventAgentNetworkType): value.value#xD;\ndefine function ToString(value AuditEventOutcome): value.value#xD;\ndefine function ToString(value BindingStrength): value.value#xD;\ndefine function ToString(value BiologicallyDerivedProductCategory): value.value#xD;\ndefine function ToString(value BiologicallyDerivedProductStatus): value.value#xD;\ndefine function ToString(value BiologicallyDerivedProductStorageScale): value.value#xD;\ndefine function ToString(value BundleType): value.value#xD;\ndefine function ToString(value CapabilityStatementKind): value.value#xD;\ndefine function ToString(value CarePlanActivityKind): value.value#xD;\ndefine function ToString(value CarePlanActivityStatus): value.value#xD;\ndefine function ToString(value CarePlanIntent): value.value#xD;\ndefine function ToString(value CarePlanStatus): value.value#xD;\ndefine function ToString(value CareTeamStatus): value.value#xD;\ndefine function ToString(value CatalogEntryRelationType): value.value#xD;\ndefine function ToString(value ChargeItemDefinitionPriceComponentType): value.value#xD;\ndefine function ToString(value ChargeItemStatus): value.value#xD;\ndefine function ToString(value ClaimResponseStatus): value.value#xD;\ndefine function ToString(value ClaimStatus): value.value#xD;\ndefine function ToString(value ClinicalImpressionStatus): value.value#xD;\ndefine function ToString(value CodeSearchSupport): value.value#xD;\ndefine function ToString(value CodeSystemContentMode): value.value#xD;\ndefine function ToString(value CodeSystemHierarchyMeaning): value.value#xD;\ndefine function ToString(value CommunicationPriority): value.value#xD;\ndefine function ToString(value CommunicationRequestStatus): value.value#xD;\ndefine function ToString(value CommunicationStatus): value.value#xD;\ndefine function ToString(value CompartmentCode): value.value#xD;\ndefine function ToString(value CompartmentType): value.value#xD;\ndefine function ToString(value CompositionAttestationMode): value.value#xD;\ndefine function ToString(value CompositionStatus): value.value#xD;\ndefine function ToString(value ConceptMapEquivalence): value.value#xD;\ndefine function ToString(value ConceptMapGroupUnmappedMode): value.value#xD;\ndefine function ToString(value ConditionalDeleteStatus): value.value#xD;\ndefine function ToString(value ConditionalReadStatus): value.value#xD;\ndefine function ToString(value ConsentDataMeaning): value.value#xD;\ndefine function ToString(value ConsentProvisionType): value.value#xD;\ndefine function ToString(value ConsentState): value.value#xD;\ndefine function ToString(value ConstraintSeverity): value.value#xD;\ndefine function ToString(value ContactPointSystem): value.value#xD;\ndefine function ToString(value ContactPointUse): value.value#xD;\ndefine function ToString(value ContractPublicationStatus): value.value#xD;\ndefine function ToString(value ContractStatus): value.value#xD;\ndefine function ToString(value ContributorType): value.value#xD;\ndefine function ToString(value CoverageStatus): value.value#xD;\ndefine function ToString(value CurrencyCode): value.value#xD;\ndefine function ToString(value DayOfWeek): value.value#xD;\ndefine function ToString(value DaysOfWeek): value.value#xD;\ndefine function ToString(value DetectedIssueSeverity): value.value#xD;\ndefine function ToString(value DetectedIssueStatus): value.value#xD;\ndefine function ToString(value DeviceMetricCalibrationState): value.value#xD;\ndefine function ToString(value DeviceMetricCalibrationType): value.value#xD;\ndefine function ToString(value DeviceMetricCategory): value.value#xD;\ndefine function ToString(value DeviceMetricColor): value.value#xD;\ndefine function ToString(value DeviceMetricOperationalStatus): value.value#xD;\ndefine function ToString(value DeviceNameType): value.value#xD;\ndefine function ToString(value DeviceRequestStatus): value.value#xD;\ndefine function ToString(value DeviceUseStatementStatus): value.value#xD;\ndefine function ToString(value DiagnosticReportStatus): value.value#xD;\ndefine function ToString(value DiscriminatorType): value.value#xD;\ndefine function ToString(value DocumentConfidentiality): value.value#xD;\ndefine function ToString(value DocumentMode): value.value#xD;\ndefine function ToString(value DocumentReferenceStatus): value.value#xD;\ndefine function ToString(value DocumentRelationshipType): value.value#xD;\ndefine function ToString(value EligibilityRequestPurpose): value.value#xD;\ndefine function ToString(value EligibilityRequestStatus): value.value#xD;\ndefine function ToString(value EligibilityResponsePurpose): value.value#xD;\ndefine function ToString(value EligibilityResponseStatus): value.value#xD;\ndefine function ToString(value EnableWhenBehavior): value.value#xD;\ndefine function ToString(value EncounterLocationStatus): value.value#xD;\ndefine function ToString(value EncounterStatus): value.value#xD;\ndefine function ToString(value EndpointStatus): value.value#xD;\ndefine function ToString(value EnrollmentRequestStatus): value.value#xD;\ndefine function ToString(value EnrollmentResponseStatus): value.value#xD;\ndefine function ToString(value EpisodeOfCareStatus): value.value#xD;\ndefine function ToString(value EventCapabilityMode): value.value#xD;\ndefine function ToString(value EventTiming): value.value#xD;\ndefine function ToString(value EvidenceVariableType): value.value#xD;\ndefine function ToString(value ExampleScenarioActorType): value.value#xD;\ndefine function ToString(value ExplanationOfBenefitStatus): value.value#xD;\ndefine function ToString(value ExposureState): value.value#xD;\ndefine function ToString(value ExtensionContextType): value.value#xD;\ndefine function ToString(value FHIRAllTypes): value.value#xD;\ndefine function ToString(value FHIRDefinedType): value.value#xD;\ndefine function ToString(value FHIRDeviceStatus): value.value#xD;\ndefine function ToString(value FHIRResourceType): value.value#xD;\ndefine function ToString(value FHIRSubstanceStatus): value.value#xD;\ndefine function ToString(value FHIRVersion): value.value#xD;\ndefine function ToString(value FamilyHistoryStatus): value.value#xD;\ndefine function ToString(value FilterOperator): value.value#xD;\ndefine function ToString(value FlagStatus): value.value#xD;\ndefine function ToString(value GoalLifecycleStatus): value.value#xD;\ndefine function ToString(value GraphCompartmentRule): value.value#xD;\ndefine function ToString(value GraphCompartmentUse): value.value#xD;\ndefine function ToString(value GroupMeasure): value.value#xD;\ndefine function ToString(value GroupType): value.value#xD;\ndefine function ToString(value GuidanceResponseStatus): value.value#xD;\ndefine function ToString(value GuidePageGeneration): value.value#xD;\ndefine function ToString(value GuideParameterCode): value.value#xD;\ndefine function ToString(value HTTPVerb): value.value#xD;\ndefine function ToString(value IdentifierUse): value.value#xD;\ndefine function ToString(value IdentityAssuranceLevel): value.value#xD;\ndefine function ToString(value ImagingStudyStatus): value.value#xD;\ndefine function ToString(value ImmunizationEvaluationStatus): value.value#xD;\ndefine function ToString(value ImmunizationStatus): value.value#xD;\ndefine function ToString(value InvoicePriceComponentType): value.value#xD;\ndefine function ToString(value InvoiceStatus): value.value#xD;\ndefine function ToString(value IssueSeverity): value.value#xD;\ndefine function ToString(value IssueType): value.value#xD;\ndefine function ToString(value LinkType): value.value#xD;\ndefine function ToString(value LinkageType): value.value#xD;\ndefine function ToString(value ListMode): value.value#xD;\ndefine function ToString(value ListStatus): value.value#xD;\ndefine function ToString(value LocationMode): value.value#xD;\ndefine function ToString(value LocationStatus): value.value#xD;\ndefine function ToString(value MeasureReportStatus): value.value#xD;\ndefine function ToString(value MeasureReportType): value.value#xD;\ndefine function ToString(value MediaStatus): value.value#xD;\ndefine function ToString(value MedicationAdministrationStatus): value.value#xD;\ndefine function ToString(value MedicationDispenseStatus): value.value#xD;\ndefine function ToString(value MedicationKnowledgeStatus): value.value#xD;\ndefine function ToString(value MedicationRequestIntent): value.value#xD;\ndefine function ToString(value MedicationRequestPriority): value.value#xD;\ndefine function ToString(value MedicationRequestStatus): value.value#xD;\ndefine function ToString(value MedicationStatementStatus): value.value#xD;\ndefine function ToString(value MedicationStatus): value.value#xD;\ndefine function ToString(value MessageSignificanceCategory): value.value#xD;\ndefine function ToString(value Messageheader_Response_Request): value.value#xD;\ndefine function ToString(value MimeType): value.value#xD;\ndefine function ToString(value NameUse): value.value#xD;\ndefine function ToString(value NamingSystemIdentifierType): value.value#xD;\ndefine function ToString(value NamingSystemType): value.value#xD;\ndefine function ToString(value NarrativeStatus): value.value#xD;\ndefine function ToString(value NoteType): value.value#xD;\ndefine function ToString(value NutritiionOrderIntent): value.value#xD;\ndefine function ToString(value NutritionOrderStatus): value.value#xD;\ndefine function ToString(value ObservationDataType): value.value#xD;\ndefine function ToString(value ObservationRangeCategory): value.value#xD;\ndefine function ToString(value ObservationStatus): value.value#xD;\ndefine function ToString(value OperationKind): value.value#xD;\ndefine function ToString(value OperationParameterUse): value.value#xD;\ndefine function ToString(value OrientationType): value.value#xD;\ndefine function ToString(value ParameterUse): value.value#xD;\ndefine function ToString(value ParticipantRequired): value.value#xD;\ndefine function ToString(value ParticipantStatus): value.value#xD;\ndefine function ToString(value ParticipationStatus): value.value#xD;\ndefine function ToString(value PaymentNoticeStatus): value.value#xD;\ndefine function ToString(value PaymentReconciliationStatus): value.value#xD;\ndefine function ToString(value ProcedureStatus): value.value#xD;\ndefine function ToString(value PropertyRepresentation): value.value#xD;\ndefine function ToString(value PropertyType): value.value#xD;\ndefine function ToString(value ProvenanceEntityRole): value.value#xD;\ndefine function ToString(value PublicationStatus): value.value#xD;\ndefine function ToString(value QualityType): value.value#xD;\ndefine function ToString(value QuantityComparator): value.value#xD;\ndefine function ToString(value QuestionnaireItemOperator): value.value#xD;\ndefine function ToString(value QuestionnaireItemType): value.value#xD;\ndefine function ToString(value QuestionnaireResponseStatus): value.value#xD;\ndefine function ToString(value ReferenceHandlingPolicy): value.value#xD;\ndefine function ToString(value ReferenceVersionRules): value.value#xD;\ndefine function ToString(value ReferredDocumentStatus): value.value#xD;\ndefine function ToString(value RelatedArtifactType): value.value#xD;\ndefine function ToString(value RemittanceOutcome): value.value#xD;\ndefine function ToString(value RepositoryType): value.value#xD;\ndefine function ToString(value RequestIntent): value.value#xD;\ndefine function ToString(value RequestPriority): value.value#xD;\ndefine function ToString(value RequestStatus): value.value#xD;\ndefine function ToString(value ResearchElementType): value.value#xD;\ndefine function ToString(value ResearchStudyStatus): value.value#xD;\ndefine function ToString(value ResearchSubjectStatus): value.value#xD;\ndefine function ToString(value ResourceType): value.value#xD;\ndefine function ToString(value ResourceVersionPolicy): value.value#xD;\ndefine function ToString(value ResponseType): value.value#xD;\ndefine function ToString(value RestfulCapabilityMode): value.value#xD;\ndefine function ToString(value RiskAssessmentStatus): value.value#xD;\ndefine function ToString(value SPDXLicense): value.value#xD;\ndefine function ToString(value SearchComparator): value.value#xD;\ndefine function ToString(value SearchEntryMode): value.value#xD;\ndefine function ToString(value SearchModifierCode): value.value#xD;\ndefine function ToString(value SearchParamType): value.value#xD;\ndefine function ToString(value SectionMode): value.value#xD;\ndefine function ToString(value SequenceType): value.value#xD;\ndefine function ToString(value ServiceRequestIntent): value.value#xD;\ndefine function ToString(value ServiceRequestPriority): value.value#xD;\ndefine function ToString(value ServiceRequestStatus): value.value#xD;\ndefine function ToString(value SlicingRules): value.value#xD;\ndefine function ToString(value SlotStatus): value.value#xD;\ndefine function ToString(value SortDirection): value.value#xD;\ndefine function ToString(value SpecimenContainedPreference): value.value#xD;\ndefine function ToString(value SpecimenStatus): value.value#xD;\ndefine function ToString(value Status): value.value#xD;\ndefine function ToString(value StrandType): value.value#xD;\ndefine function ToString(value StructureDefinitionKind): value.value#xD;\ndefine function ToString(value StructureMapContextType): value.value#xD;\ndefine function ToString(value StructureMapGroupTypeMode): value.value#xD;\ndefine function ToString(value StructureMapInputMode): value.value#xD;\ndefine function ToString(value StructureMapModelMode): value.value#xD;\ndefine function ToString(value StructureMapSourceListMode): value.value#xD;\ndefine function ToString(value StructureMapTargetListMode): value.value#xD;\ndefine function ToString(value StructureMapTransform): value.value#xD;\ndefine function ToString(value SubscriptionChannelType): value.value#xD;\ndefine function ToString(value SubscriptionStatus): value.value#xD;\ndefine function ToString(value SupplyDeliveryStatus): value.value#xD;\ndefine function ToString(value SupplyRequestStatus): value.value#xD;\ndefine function ToString(value SystemRestfulInteraction): value.value#xD;\ndefine function ToString(value TaskIntent): value.value#xD;\ndefine function ToString(value TaskPriority): value.value#xD;\ndefine function ToString(value TaskStatus): value.value#xD;\ndefine function ToString(value TestReportActionResult): value.value#xD;\ndefine function ToString(value TestReportParticipantType): value.value#xD;\ndefine function ToString(value TestReportResult): value.value#xD;\ndefine function ToString(value TestReportStatus): value.value#xD;\ndefine function ToString(value TestScriptRequestMethodCode): value.value#xD;\ndefine function ToString(value TriggerType): value.value#xD;\ndefine function ToString(value TypeDerivationRule): value.value#xD;\ndefine function ToString(value TypeRestfulInteraction): value.value#xD;\ndefine function ToString(value UDIEntryType): value.value#xD;\ndefine function ToString(value UnitsOfTime): value.value#xD;\ndefine function ToString(value Use): value.value#xD;\ndefine function ToString(value VariableType): value.value#xD;\ndefine function ToString(value VisionBase): value.value#xD;\ndefine function ToString(value VisionEyes): value.value#xD;\ndefine function ToString(value VisionStatus): value.value#xD;\ndefine function ToString(value XPathUsageType): value.value#xD;\ndefine function ToString(value base64Binary): value.value#xD;\ndefine function ToBoolean(value boolean): value.value#xD;\ndefine function ToDate(value date): value.value#xD;\ndefine function ToDateTime(value dateTime): value.value#xD;\ndefine function ToDecimal(value decimal): value.value#xD;\ndefine function ToDateTime(value instant): value.value#xD;\ndefine function ToInteger(value integer): value.value#xD;\ndefine function ToString(value string): value.value#xD;\ndefine function ToTime(value time): value.value#xD;\ndefine function ToString(value uri): value.value#xD;\ndefine function ToString(value xhtml): value.value#xD;\n</code></pre></td></tr>\n </table>\n </td>\n </tr>\n \n \n \n </table>\n</div>"^^rdf:XMLLiteral ] ] ; # fhir:extension ( [ fhir:url [ fhir:v "http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-softwaresystem"^^xsd:anyURI ; fhir:l <http://hl7.org/fhir/us/cqfmeasures/StructureDefinition/cqfm-softwaresystem> ] ; fhir:value [ a fhir:Reference ; fhir:l fhir:Device/cqf-tooling ; fhir:reference [ fhir:v "Device/cqf-tooling" ] ] ] ) ; # fhir:url [ fhir:v "http://cms.gov/fhir/mct/Library/FHIRHelpers"^^xsd:anyURI ; fhir:l <http://cms.gov/fhir/mct/Library/FHIRHelpers> ] ; # fhir:version [ fhir:v "0.1.0"] ; # fhir:name [ fhir:v "FHIRHelpers"] ; # fhir:title [ fhir:v "FHIR Helpers"] ; # fhir:status [ fhir:v "draft"] ; # fhir:type [ ( fhir:coding [ fhir:system [ fhir:v "http://terminology.hl7.org/CodeSystem/library-type"^^xsd:anyURI ; fhir:l <http://terminology.hl7.org/CodeSystem/library-type> ] ; fhir:code [ fhir:v "logic-library" ] ] ) ] ; # fhir:date [ fhir:v "2026-02-27T18:11:00+00:00"^^xsd:dateTime] ; # fhir:publisher [ fhir:v "HL7 International - [Some] Work Group"] ; # fhir:contact ( [ ( fhir:telecom [ fhir:system [ fhir:v "url" ] ; fhir:value [ fhir:v "http://hl7.org/Special/committees/[something]" ] ] ) ] ) ; # fhir:jurisdiction ( [ ( fhir:coding [ fhir:system [ fhir:v "urn:iso:std:iso:3166"^^xsd:anyURI ; fhir:l <urn:iso:std:iso:3166> ] ; fhir:code [ fhir:v "US" ] ] ) ] ) ; # fhir:content ( [ fhir:contentType [ fhir:v "text/cql" ] ; fhir:data [ fhir:v "LyoNCkBhdXRob3I6IEJyeW4gUmhvZGVzDQpAZGVzY3JpcHRpb246IFRoaXMgbGlicmFyeSBkZWZpbmVzIGZ1bmN0aW9ucyB0byBjb252ZXJ0IGJldHdlZW4gRkhJUg0KIGRhdGEgdHlwZXMgYW5kIENRTCBzeXN0ZW0tZGVmaW5lZCB0eXBlcywgYXMgd2VsbCBhcyBmdW5jdGlvbnMgdG8gc3VwcG9ydA0KIEZISVJQYXRoIGltcGxlbWVudGF0aW9uLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgdGhlIEZISVJIZWxwZXJzIHdpa2kgcGFnZToNCiBodHRwczovL2dpdGh1Yi5jb20vY3FmcmFtZXdvcmsvY2xpbmljYWxfcXVhbGl0eV9sYW5ndWFnZS93aWtpL0ZISVJIZWxwZXJzDQpAYWxsb3dGbHVlbnQ6IHRydWUNCg0KQHVwZGF0ZTogUmVmcmVzaCBiYXNlZCBvbiBBVSAyMDIyIGNvbnRlbnQ7IHZlcnNpb24gNC4wLjAxMiBmb3IgdXNlIGluIHRoZSBlY3FtLWNvbnRlbnQtcWljb3JlLTIwMjIgcmVwb3NpdG9yeQ0KQHVwZGF0ZTogQWRkZWQgVG9WYWx1ZVNldCBmdW5jdGlvbjsgdmVyc2lvbiA0LjAuMDEzIGZvciB1c2UgaW4gdGhlIGVjcW0tY29udGVudC1xaWNvcmUtMjAyMiByZXBvc2l0b3J5DQoqLw0KbGlicmFyeSBGSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMDEzJw0KDQp1c2luZyBGSElSIHZlcnNpb24gJzQuMC4xJw0KDQpkZWZpbmUgZnVuY3Rpb24gVG9JbnRlcnZhbChwZXJpb2QgRkhJUi5QZXJpb2QpOg0KICAgIGlmIHBlcmlvZCBpcyBudWxsIHRoZW4NCiAgICAgICAgbnVsbA0KICAgIGVsc2UNCiAgICAgICAgaWYgcGVyaW9kLiJzdGFydCIgaXMgbnVsbCB0aGVuDQogICAgICAgICAgICBJbnRlcnZhbChwZXJpb2QuInN0YXJ0Ii52YWx1ZSwgcGVyaW9kLiJlbmQiLnZhbHVlXQ0KICAgICAgICBlbHNlDQogICAgICAgICAgICBJbnRlcnZhbFtwZXJpb2QuInN0YXJ0Ii52YWx1ZSwgcGVyaW9kLiJlbmQiLnZhbHVlXQ0KDQpkZWZpbmUgZnVuY3Rpb24gVG9DYWxlbmRhclVuaXQodW5pdCBTeXN0ZW0uU3RyaW5nKToNCiAgICBjYXNlIHVuaXQNCiAgICAgICAgd2hlbiAnbXMnIHRoZW4gJ21pbGxpc2Vjb25kJw0KICAgICAgICB3aGVuICdzJyB0aGVuICdzZWNvbmQnDQogICAgICAgIHdoZW4gJ21pbicgdGhlbiAnbWludXRlJw0KICAgICAgICB3aGVuICdoJyB0aGVuICdob3VyJw0KICAgICAgICB3aGVuICdkJyB0aGVuICdkYXknDQogICAgICAgIHdoZW4gJ3drJyB0aGVuICd3ZWVrJw0KICAgICAgICB3aGVuICdtbycgdGhlbiAnbW9udGgnDQogICAgICAgIHdoZW4gJ2EnIHRoZW4gJ3llYXInDQogICAgICAgIGVsc2UgdW5pdA0KICAgIGVuZA0KDQpkZWZpbmUgZnVuY3Rpb24gVG9RdWFudGl0eShxdWFudGl0eSBGSElSLlF1YW50aXR5KToNCiAgICBjYXNlDQogICAgICAgIHdoZW4gcXVhbnRpdHkgaXMgbnVsbCB0aGVuIG51bGwNCiAgICAgICAgd2hlbiBxdWFudGl0eS52YWx1ZSBpcyBudWxsIHRoZW4gbnVsbA0KICAgICAgICB3aGVuIHF1YW50aXR5LmNvbXBhcmF0b3IgaXMgbm90IG51bGwgdGhlbg0KICAgICAgICAgICAgTWVzc2FnZShudWxsLCB0cnVlLCAnRkhJUkhlbHBlcnMuVG9RdWFudGl0eS5Db21wYXJhdG9yUXVhbnRpdHlOb3RTdXBwb3J0ZWQnLCAnRXJyb3InLCAnRkhJUiBRdWFudGl0eSB2YWx1ZSBoYXMgYSBjb21wYXJhdG9yIGFuZCBjYW5ub3QgYmUgY29udmVydGVkIHRvIGEgU3lzdGVtLlF1YW50aXR5IHZhbHVlLicpDQogICAgICAgIHdoZW4gcXVhbnRpdHkuc3lzdGVtIGlzIG51bGwgb3IgcXVhbnRpdHkuc3lzdGVtLnZhbHVlID0gJ2h0dHA6Ly91bml0c29mbWVhc3VyZS5vcmcnDQogICAgICAgICAgICAgIG9yIHF1YW50aXR5LnN5c3RlbS52YWx1ZSA9ICdodHRwOi8vaGw3Lm9yZy9maGlycGF0aC9Db2RlU3lzdGVtL2NhbGVuZGFyLXVuaXRzJyB0aGVuDQogICAgICAgICAgICBTeXN0ZW0uUXVhbnRpdHkgeyB2YWx1ZTogcXVhbnRpdHkudmFsdWUudmFsdWUsIHVuaXQ6IFRvQ2FsZW5kYXJVbml0KENvYWxlc2NlKHF1YW50aXR5LmNvZGUudmFsdWUsIHF1YW50aXR5LnVuaXQudmFsdWUsICcxJykpIH0NCiAgICAgICAgZWxzZQ0KICAgICAgICAgICAgTWVzc2FnZShudWxsLCB0cnVlLCAnRkhJUkhlbHBlcnMuVG9RdWFudGl0eS5JbnZhbGlkRkhJUlF1YW50aXR5JywgJ0Vycm9yJywgJ0ludmFsaWQgRkhJUiBRdWFudGl0eSBjb2RlOiAnICYgcXVhbnRpdHkudW5pdC52YWx1ZSAmICcgKCcgJiBxdWFudGl0eS5zeXN0ZW0udmFsdWUgJiAnfCcgJiBxdWFudGl0eS5jb2RlLnZhbHVlICYgJyknKQ0KICAgIGVuZA0KDQpkZWZpbmUgZnVuY3Rpb24gVG9RdWFudGl0eUlnbm9yaW5nQ29tcGFyYXRvcihxdWFudGl0eSBGSElSLlF1YW50aXR5KToNCiAgICBjYXNlDQogICAgICAgIHdoZW4gcXVhbnRpdHkgaXMgbnVsbCB0aGVuIG51bGwNCiAgICAgICAgd2hlbiBxdWFudGl0eS52YWx1ZSBpcyBudWxsIHRoZW4gbnVsbA0KICAgICAgICB3aGVuIHF1YW50aXR5LnN5c3RlbSBpcyBudWxsIG9yIHF1YW50aXR5LnN5c3RlbS52YWx1ZSA9ICdodHRwOi8vdW5pdHNvZm1lYXN1cmUub3JnJw0KICAgICAgICAgICAgICBvciBxdWFudGl0eS5zeXN0ZW0udmFsdWUgPSAnaHR0cDovL2hsNy5vcmcvZmhpcnBhdGgvQ29kZVN5c3RlbS9jYWxlbmRhci11bml0cycgdGhlbg0KICAgICAgICAgICAgU3lzdGVtLlF1YW50aXR5IHsgdmFsdWU6IHF1YW50aXR5LnZhbHVlLnZhbHVlLCB1bml0OiBUb0NhbGVuZGFyVW5pdChDb2FsZXNjZShxdWFudGl0eS5jb2RlLnZhbHVlLCBxdWFudGl0eS51bml0LnZhbHVlLCAnMScpKSB9DQogICAgICAgIGVsc2UNCiAgICAgICAgICAgIE1lc3NhZ2UobnVsbCwgdHJ1ZSwgJ0ZISVJIZWxwZXJzLlRvUXVhbnRpdHkuSW52YWxpZEZISVJRdWFudGl0eScsICdFcnJvcicsICdJbnZhbGlkIEZISVIgUXVhbnRpdHkgY29kZTogJyAmIHF1YW50aXR5LnVuaXQudmFsdWUgJiAnICgnICYgcXVhbnRpdHkuc3lzdGVtLnZhbHVlICYgJ3wnICYgcXVhbnRpdHkuY29kZS52YWx1ZSAmICcpJykNCiAgICBlbmQNCg0KZGVmaW5lIGZ1bmN0aW9uIFRvSW50ZXJ2YWwocXVhbnRpdHkgRkhJUi5RdWFudGl0eSk6DQogICAgaWYgcXVhbnRpdHkgaXMgbnVsbCB0aGVuIG51bGwgZWxzZQ0KICAgICAgICBjYXNlIHF1YW50aXR5LmNvbXBhcmF0b3IudmFsdWUNCiAgICAgICAgICAgIHdoZW4gJzwnIHRoZW4NCiAgICAgICAgICAgICAgICBJbnRlcnZhbFsNCiAgICAgICAgICAgICAgICAgICAgbnVsbCwNCiAgICAgICAgICAgICAgICAgICAgVG9RdWFudGl0eUlnbm9yaW5nQ29tcGFyYXRvcihxdWFudGl0eSkNCiAgICAgICAgICAgICAgICApDQogICAgICAgICAgICB3aGVuICc8PScgdGhlbg0KICAgICAgICAgICAgICAgIEludGVydmFsWw0KICAgICAgICAgICAgICAgICAgICBudWxsLA0KICAgICAgICAgICAgICAgICAgICBUb1F1YW50aXR5SWdub3JpbmdDb21wYXJhdG9yKHF1YW50aXR5KQ0KICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgIHdoZW4gJz49JyB0aGVuDQogICAgICAgICAgICAgICAgSW50ZXJ2YWxbDQogICAgICAgICAgICAgICAgICAgIFRvUXVhbnRpdHlJZ25vcmluZ0NvbXBhcmF0b3IocXVhbnRpdHkpLA0KICAgICAgICAgICAgICAgICAgICBudWxsDQogICAgICAgICAgICAgICAgXQ0KICAgICAgICAgICAgd2hlbiAnPicgdGhlbg0KICAgICAgICAgICAgICAgIEludGVydmFsKA0KICAgICAgICAgICAgICAgICAgICBUb1F1YW50aXR5SWdub3JpbmdDb21wYXJhdG9yKHF1YW50aXR5KSwNCiAgICAgICAgICAgICAgICAgICAgbnVsbA0KICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgIGVsc2UNCiAgICAgICAgICAgICAgICBJbnRlcnZhbFtUb1F1YW50aXR5KHF1YW50aXR5KSwgVG9RdWFudGl0eShxdWFudGl0eSldDQogICAgICAgIGVuZA0KDQpkZWZpbmUgZnVuY3Rpb24gVG9SYXRpbyhyYXRpbyBGSElSLlJhdGlvKToNCiAgICBpZiByYXRpbyBpcyBudWxsIHRoZW4NCiAgICAgICAgbnVsbA0KICAgIGVsc2UNCiAgICAgICAgU3lzdGVtLlJhdGlvIHsgbnVtZXJhdG9yOiBUb1F1YW50aXR5KHJhdGlvLm51bWVyYXRvciksIGRlbm9taW5hdG9yOiBUb1F1YW50aXR5KHJhdGlvLmRlbm9taW5hdG9yKSB9DQoNCmRlZmluZSBmdW5jdGlvbiBUb0ludGVydmFsKHJhbmdlIEZISVIuUmFuZ2UpOg0KICAgIGlmIHJhbmdlIGlzIG51bGwgdGhlbg0KICAgICAgICBudWxsDQogICAgZWxzZQ0KICAgICAgICBJbnRlcnZhbFtUb1F1YW50aXR5KHJhbmdlLmxvdyksIFRvUXVhbnRpdHkocmFuZ2UuaGlnaCldDQoNCmRlZmluZSBmdW5jdGlvbiBUb0NvZGUoY29kaW5nIEZISVIuQ29kaW5nKToNCiAgICBpZiBjb2RpbmcgaXMgbnVsbCB0aGVuDQogICAgICAgIG51bGwNCiAgICBlbHNlDQogICAgICAgIFN5c3RlbS5Db2RlIHsNCiAgICAgICAgICBjb2RlOiBjb2RpbmcuY29kZS52YWx1ZSwNCiAgICAgICAgICBzeXN0ZW06IGNvZGluZy5zeXN0ZW0udmFsdWUsDQogICAgICAgICAgdmVyc2lvbjogY29kaW5nLnZlcnNpb24udmFsdWUsDQogICAgICAgICAgZGlzcGxheTogY29kaW5nLmRpc3BsYXkudmFsdWUNCiAgICAgICAgfQ0KDQpkZWZpbmUgZnVuY3Rpb24gVG9Db25jZXB0KGNvbmNlcHQgRkhJUi5Db2RlYWJsZUNvbmNlcHQpOg0KICAgIGlmIGNvbmNlcHQgaXMgbnVsbCB0aGVuDQogICAgICAgIG51bGwNCiAgICBlbHNlDQogICAgICAgIFN5c3RlbS5Db25jZXB0IHsNCiAgICAgICAgICAgIGNvZGVzOiBjb25jZXB0LmNvZGluZyBDIHJldHVybiBUb0NvZGUoQyksDQogICAgICAgICAgICBkaXNwbGF5OiBjb25jZXB0LnRleHQudmFsdWUNCiAgICAgICAgfQ0KDQpkZWZpbmUgZnVuY3Rpb24gVG9WYWx1ZVNldCh1cmkgU3RyaW5nKToNCiAgICBpZiB1cmkgaXMgbnVsbCB0aGVuDQogICAgICAgIG51bGwNCiAgICBlbHNlDQogICAgICAgIFN5c3RlbS5WYWx1ZVNldCB7DQogICAgICAgICAgICBpZDogdXJpDQogICAgICAgIH0NCg0KZGVmaW5lIGZ1bmN0aW9uIHJlZmVyZW5jZShyZWZlcmVuY2UgU3RyaW5nKToNCiAgICBpZiByZWZlcmVuY2UgaXMgbnVsbCB0aGVuDQogICAgICAgIG51bGwNCiAgICBlbHNlDQogICAgICAgIFJlZmVyZW5jZSB7IHJlZmVyZW5jZTogc3RyaW5nIHsgdmFsdWU6IHJlZmVyZW5jZSB9IH0NCg0KZGVmaW5lIGZ1bmN0aW9uIFRvVmFsdWUodmFsdWUgQ2hvaWNlPGJhc2U2NEJpbmFyeSwNCiAgICAgICAgYm9vbGVhbiwNCiAgICAgICAgY2Fub25pY2FsLA0KICAgICAgICBjb2RlLA0KICAgICAgICBkYXRlLA0KICAgICAgICBkYXRlVGltZSwNCiAgICAgICAgZGVjaW1hbCwNCiAgICAgICAgaWQsDQogICAgICAgIGluc3RhbnQsDQogICAgICAgIGludGVnZXIsDQogICAgICAgIG1hcmtkb3duLA0KICAgICAgICBvaWQsDQogICAgICAgIHBvc2l0aXZlSW50LA0KICAgICAgICBzdHJpbmcsDQogICAgICAgIHRpbWUsDQogICAgICAgIHVuc2lnbmVkSW50LA0KICAgICAgICB1cmksDQogICAgICAgIHVybCwNCiAgICAgICAgdXVpZCwNCiAgICAgICAgQWRkcmVzcywNCiAgICAgICAgQWdlLA0KICAgICAgICBBbm5vdGF0aW9uLA0KICAgICAgICBBdHRhY2htZW50LA0KICAgICAgICBDb2RlYWJsZUNvbmNlcHQsDQogICAgICAgIENvZGluZywNCiAgICAgICAgQ29udGFjdFBvaW50LA0KICAgICAgICBDb3VudCwNCiAgICAgICAgRGlzdGFuY2UsDQogICAgICAgIER1cmF0aW9uLA0KICAgICAgICBIdW1hbk5hbWUsDQogICAgICAgIElkZW50aWZpZXIsDQogICAgICAgIE1vbmV5LA0KICAgICAgICBQZXJpb2QsDQogICAgICAgIFF1YW50aXR5LA0KICAgICAgICBSYW5nZSwNCiAgICAgICAgUmF0aW8sDQogICAgICAgIFJlZmVyZW5jZSwNCiAgICAgICAgU2FtcGxlZERhdGEsDQogICAgICAgIFNpZ25hdHVyZSwNCiAgICAgICAgVGltaW5nLA0KICAgICAgICBDb250YWN0RGV0YWlsLA0KICAgICAgICBDb250cmlidXRvciwNCiAgICAgICAgRGF0YVJlcXVpcmVtZW50LA0KICAgICAgICBFeHByZXNzaW9uLA0KICAgICAgICBQYXJhbWV0ZXJEZWZpbml0aW9uLA0KICAgICAgICBSZWxhdGVkQXJ0aWZhY3QsDQogICAgICAgIFRyaWdnZXJEZWZpbml0aW9uLA0KICAgICAgICBVc2FnZUNvbnRleHQsDQogICAgICAgIERvc2FnZSwNCiAgICAgICAgTWV0YT4pOg0KICAgIGNhc2UNCiAgICAgIHdoZW4gdmFsdWUgaXMgYmFzZTY0QmluYXJ5IHRoZW4gKHZhbHVlIGFzIGJhc2U2NEJpbmFyeSkudmFsdWUNCiAgICAgIHdoZW4gdmFsdWUgaXMgYm9vbGVhbiB0aGVuICh2YWx1ZSBhcyBib29sZWFuKS52YWx1ZQ0KICAgICAgd2hlbiB2YWx1ZSBpcyBjYW5vbmljYWwgdGhlbiAodmFsdWUgYXMgY2Fub25pY2FsKS52YWx1ZQ0KICAgICAgd2hlbiB2YWx1ZSBpcyBjb2RlIHRoZW4gKHZhbHVlIGFzIGNvZGUpLnZhbHVlDQogICAgICB3aGVuIHZhbHVlIGlzIGRhdGUgdGhlbiAodmFsdWUgYXMgZGF0ZSkudmFsdWUNCiAgICAgIHdoZW4gdmFsdWUgaXMgZGF0ZVRpbWUgdGhlbiAodmFsdWUgYXMgZGF0ZVRpbWUpLnZhbHVlDQogICAgICB3aGVuIHZhbHVlIGlzIGRlY2ltYWwgdGhlbiAodmFsdWUgYXMgZGVjaW1hbCkudmFsdWUNCiAgICAgIHdoZW4gdmFsdWUgaXMgaWQgdGhlbiAodmFsdWUgYXMgaWQpLnZhbHVlDQogICAgICB3aGVuIHZhbHVlIGlzIGluc3RhbnQgdGhlbiAodmFsdWUgYXMgaW5zdGFudCkudmFsdWUNCiAgICAgIHdoZW4gdmFsdWUgaXMgaW50ZWdlciB0aGVuICh2YWx1ZSBhcyBpbnRlZ2VyKS52YWx1ZQ0KICAgICAgd2hlbiB2YWx1ZSBpcyBtYXJrZG93biB0aGVuICh2YWx1ZSBhcyBtYXJrZG93bikudmFsdWUNCiAgICAgIHdoZW4gdmFsdWUgaXMgb2lkIHRoZW4gKHZhbHVlIGFzIG9pZCkudmFsdWUNCiAgICAgIHdoZW4gdmFsdWUgaXMgcG9zaXRpdmVJbnQgdGhlbiAodmFsdWUgYXMgcG9zaXRpdmVJbnQpLnZhbHVlDQogICAgICB3aGVuIHZhbHVlIGlzIHN0cmluZyB0aGVuICh2YWx1ZSBhcyBzdHJpbmcpLnZhbHVlDQogICAgICB3aGVuIHZhbHVlIGlzIHRpbWUgdGhlbiAodmFsdWUgYXMgdGltZSkudmFsdWUNCiAgICAgIHdoZW4gdmFsdWUgaXMgdW5zaWduZWRJbnQgdGhlbiAodmFsdWUgYXMgdW5zaWduZWRJbnQpLnZhbHVlDQogICAgICB3aGVuIHZhbHVlIGlzIHVyaSB0aGVuICh2YWx1ZSBhcyB1cmkpLnZhbHVlDQogICAgICB3aGVuIHZhbHVlIGlzIHVybCB0aGVuICh2YWx1ZSBhcyB1cmwpLnZhbHVlDQogICAgICB3aGVuIHZhbHVlIGlzIHV1aWQgdGhlbiAodmFsdWUgYXMgdXVpZCkudmFsdWUNCiAgICAgIHdoZW4gdmFsdWUgaXMgQWdlIHRoZW4gVG9RdWFudGl0eSh2YWx1ZSBhcyBBZ2UpDQogICAgICB3aGVuIHZhbHVlIGlzIENvZGVhYmxlQ29uY2VwdCB0aGVuIFRvQ29uY2VwdCh2YWx1ZSBhcyBDb2RlYWJsZUNvbmNlcHQpDQogICAgICB3aGVuIHZhbHVlIGlzIENvZGluZyB0aGVuIFRvQ29kZSh2YWx1ZSBhcyBDb2RpbmcpDQogICAgICB3aGVuIHZhbHVlIGlzIENvdW50IHRoZW4gVG9RdWFudGl0eSh2YWx1ZSBhcyBDb3VudCkNCiAgICAgIHdoZW4gdmFsdWUgaXMgRGlzdGFuY2UgdGhlbiBUb1F1YW50aXR5KHZhbHVlIGFzIERpc3RhbmNlKQ0KICAgICAgd2hlbiB2YWx1ZSBpcyBEdXJhdGlvbiB0aGVuIFRvUXVhbnRpdHkodmFsdWUgYXMgRHVyYXRpb24pDQogICAgICB3aGVuIHZhbHVlIGlzIFF1YW50aXR5IHRoZW4gVG9RdWFudGl0eSh2YWx1ZSBhcyBRdWFudGl0eSkNCiAgICAgIHdoZW4gdmFsdWUgaXMgUmFuZ2UgdGhlbiBUb0ludGVydmFsKHZhbHVlIGFzIFJhbmdlKQ0KICAgICAgd2hlbiB2YWx1ZSBpcyBQZXJpb2QgdGhlbiBUb0ludGVydmFsKHZhbHVlIGFzIFBlcmlvZCkNCiAgICAgIHdoZW4gdmFsdWUgaXMgUmF0aW8gdGhlbiBUb1JhdGlvKHZhbHVlIGFzIFJhdGlvKQ0KICAgICAgZWxzZSB2YWx1ZSBhcyBDaG9pY2U8QWRkcmVzcywNCiAgICAgICAgQW5ub3RhdGlvbiwNCiAgICAgICAgQXR0YWNobWVudCwNCiAgICAgICAgQ29udGFjdFBvaW50LA0KICAgICAgICBIdW1hbk5hbWUsDQogICAgICAgIElkZW50aWZpZXIsDQogICAgICAgIE1vbmV5LA0KICAgICAgICBSZWZlcmVuY2UsDQogICAgICAgIFNhbXBsZWREYXRhLA0KICAgICAgICBTaWduYXR1cmUsDQogICAgICAgIFRpbWluZywNCiAgICAgICAgQ29udGFjdERldGFpbCwNCiAgICAgICAgQ29udHJpYnV0b3IsDQogICAgICAgIERhdGFSZXF1aXJlbWVudCwNCiAgICAgICAgRXhwcmVzc2lvbiwNCiAgICAgICAgUGFyYW1ldGVyRGVmaW5pdGlvbiwNCiAgICAgICAgUmVsYXRlZEFydGlmYWN0LA0KICAgICAgICBUcmlnZ2VyRGVmaW5pdGlvbiwNCiAgICAgICAgVXNhZ2VDb250ZXh0LA0KICAgICAgICBEb3NhZ2UsDQogICAgICAgIE1ldGE+DQogICAgZW5kDQoNCmRlZmluZSBmdW5jdGlvbiByZXNvbHZlKHJlZmVyZW5jZSBTdHJpbmcpIHJldHVybnMgUmVzb3VyY2U6IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gcmVzb2x2ZShyZWZlcmVuY2UgUmVmZXJlbmNlKSByZXR1cm5zIFJlc291cmNlOiBleHRlcm5hbA0KZGVmaW5lIGZ1bmN0aW9uIHJlZmVyZW5jZShyZXNvdXJjZSBSZXNvdXJjZSkgcmV0dXJucyBSZWZlcmVuY2U6IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gZXh0ZW5zaW9uKGVsZW1lbnQgRWxlbWVudCwgdXJsIFN0cmluZykgcmV0dXJucyBMaXN0PEV4dGVuc2lvbj46IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gZXh0ZW5zaW9uKHJlc291cmNlIERvbWFpblJlc291cmNlLCB1cmwgU3RyaW5nKSByZXR1cm5zIExpc3Q8RXh0ZW5zaW9uPjogZXh0ZXJuYWwNCmRlZmluZSBmdW5jdGlvbiBtb2RpZmllckV4dGVuc2lvbihlbGVtZW50IEJhY2tib25lRWxlbWVudCwgdXJsIFN0cmluZykgcmV0dXJucyBMaXN0PEV4dGVuc2lvbj46IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gbW9kaWZpZXJFeHRlbnNpb24ocmVzb3VyY2UgRG9tYWluUmVzb3VyY2UsIHVybCBTdHJpbmcpIHJldHVybnMgTGlzdDxFeHRlbnNpb24+OiBleHRlcm5hbA0KZGVmaW5lIGZ1bmN0aW9uIGhhc1ZhbHVlKGVsZW1lbnQgRWxlbWVudCkgcmV0dXJucyBCb29sZWFuOiBleHRlcm5hbA0KZGVmaW5lIGZ1bmN0aW9uIGdldFZhbHVlKGVsZW1lbnQgRWxlbWVudCkgcmV0dXJucyBBbnk6IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gb2ZUeXBlKGlkZW50aWZpZXIgU3RyaW5nKSByZXR1cm5zIExpc3Q8QW55PjogZXh0ZXJuYWwNCmRlZmluZSBmdW5jdGlvbiBpcyhpZGVudGlmaWVyIFN0cmluZykgcmV0dXJucyBCb29sZWFuOiBleHRlcm5hbA0KZGVmaW5lIGZ1bmN0aW9uIGFzKGlkZW50aWZpZXIgU3RyaW5nKSByZXR1cm5zIEFueTogZXh0ZXJuYWwNCmRlZmluZSBmdW5jdGlvbiBlbGVtZW50RGVmaW5pdGlvbihlbGVtZW50IEVsZW1lbnQpIHJldHVybnMgRWxlbWVudERlZmluaXRpb246IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gc2xpY2UoZWxlbWVudCBFbGVtZW50LCB1cmwgU3RyaW5nLCBuYW1lIFN0cmluZykgcmV0dXJucyBMaXN0PEVsZW1lbnQ+OiBleHRlcm5hbA0KZGVmaW5lIGZ1bmN0aW9uIGNoZWNrTW9kaWZpZXJzKHJlc291cmNlIFJlc291cmNlKSByZXR1cm5zIFJlc291cmNlOiBleHRlcm5hbA0KZGVmaW5lIGZ1bmN0aW9uIGNoZWNrTW9kaWZpZXJzKHJlc291cmNlIFJlc291cmNlLCBtb2RpZmllciBTdHJpbmcpIHJldHVybnMgUmVzb3VyY2U6IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gY2hlY2tNb2RpZmllcnMoZWxlbWVudCBFbGVtZW50KSByZXR1cm5zIEVsZW1lbnQ6IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gY2hlY2tNb2RpZmllcnMoZWxlbWVudCBFbGVtZW50LCBtb2RpZmllciBTdHJpbmcpIHJldHVybnMgRWxlbWVudDogZXh0ZXJuYWwNCmRlZmluZSBmdW5jdGlvbiBjb25mb3Jtc1RvKHJlc291cmNlIFJlc291cmNlLCBzdHJ1Y3R1cmUgU3RyaW5nKSByZXR1cm5zIEJvb2xlYW46IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gbWVtYmVyT2YoY29kZSBjb2RlLCB2YWx1ZVNldCBTdHJpbmcpIHJldHVybnMgQm9vbGVhbjogZXh0ZXJuYWwNCmRlZmluZSBmdW5jdGlvbiBtZW1iZXJPZihjb2RpbmcgQ29kaW5nLCB2YWx1ZVNldCBTdHJpbmcpIHJldHVybnMgQm9vbGVhbjogZXh0ZXJuYWwNCmRlZmluZSBmdW5jdGlvbiBtZW1iZXJPZihjb25jZXB0IENvZGVhYmxlQ29uY2VwdCwgdmFsdWVTZXQgU3RyaW5nKSByZXR1cm5zIEJvb2xlYW46IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gc3Vic3VtZXMoY29kaW5nIENvZGluZywgc3Vic3VtZWRDb2RpbmcgQ29kaW5nKSByZXR1cm5zIEJvb2xlYW46IGV4dGVybmFsDQpkZWZpbmUgZnVuY3Rpb24gc3Vic3VtZXMoY29uY2VwdCBDb2RlYWJsZUNvbmNlcHQsIHN1YnN1bWVkQ29uY2VwdCBDb2RlYWJsZUNvbmNlcHQpIHJldHVybnMgQm9vbGVhbjogZXh0ZXJuYWwNCmRlZmluZSBmdW5jdGlvbiBzdWJzdW1lZEJ5KGNvZGluZyBDb2RpbmcsIHN1YnN1bWluZ0NvZGluZyBDb2RpbmcpIHJldHVybnMgQm9vbGVhbjogZXh0ZXJuYWwNCmRlZmluZSBmdW5jdGlvbiBzdWJzdW1lZEJ5KGNvbmNlcHQgQ29kZWFibGVDb25jZXB0LCBzdWJzdW1pbmdDb25jZXB0IENvZGVhYmxlQ29uY2VwdCkgcmV0dXJucyBCb29sZWFuOiBleHRlcm5hbA0KZGVmaW5lIGZ1bmN0aW9uIGh0bWxDaGVja3MoZWxlbWVudCBFbGVtZW50KSByZXR1cm5zIEJvb2xlYW46IGV4dGVybmFsDQoNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBY2NvdW50U3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBY3Rpb25DYXJkaW5hbGl0eUJlaGF2aW9yKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBY3Rpb25Db25kaXRpb25LaW5kKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBY3Rpb25Hcm91cGluZ0JlaGF2aW9yKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBY3Rpb25QYXJ0aWNpcGFudFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFjdGlvblByZWNoZWNrQmVoYXZpb3IpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFjdGlvblJlbGF0aW9uc2hpcFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFjdGlvblJlcXVpcmVkQmVoYXZpb3IpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFjdGlvblNlbGVjdGlvbkJlaGF2aW9yKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBY3Rpdml0eURlZmluaXRpb25LaW5kKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBY3Rpdml0eVBhcnRpY2lwYW50VHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQWRkcmVzc1R5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFkZHJlc3NVc2UpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFkbWluaXN0cmF0aXZlR2VuZGVyKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBZHZlcnNlRXZlbnRBY3R1YWxpdHkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFnZ3JlZ2F0aW9uTW9kZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQWxsZXJneUludG9sZXJhbmNlQ2F0ZWdvcnkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFsbGVyZ3lJbnRvbGVyYW5jZUNyaXRpY2FsaXR5KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBBbGxlcmd5SW50b2xlcmFuY2VTZXZlcml0eSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQWxsZXJneUludG9sZXJhbmNlVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQXBwb2ludG1lbnRTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFzc2VydGlvbkRpcmVjdGlvblR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEFzc2VydGlvbk9wZXJhdG9yVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQXNzZXJ0aW9uUmVzcG9uc2VUeXBlcyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQXVkaXRFdmVudEFjdGlvbik6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQXVkaXRFdmVudEFnZW50TmV0d29ya1R5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEF1ZGl0RXZlbnRPdXRjb21lKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBCaW5kaW5nU3RyZW5ndGgpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEJpb2xvZ2ljYWxseURlcml2ZWRQcm9kdWN0Q2F0ZWdvcnkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEJpb2xvZ2ljYWxseURlcml2ZWRQcm9kdWN0U3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBCaW9sb2dpY2FsbHlEZXJpdmVkUHJvZHVjdFN0b3JhZ2VTY2FsZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQnVuZGxlVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ2FwYWJpbGl0eVN0YXRlbWVudEtpbmQpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENhcmVQbGFuQWN0aXZpdHlLaW5kKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDYXJlUGxhbkFjdGl2aXR5U3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDYXJlUGxhbkludGVudCk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ2FyZVBsYW5TdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENhcmVUZWFtU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDYXRhbG9nRW50cnlSZWxhdGlvblR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENoYXJnZUl0ZW1EZWZpbml0aW9uUHJpY2VDb21wb25lbnRUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDaGFyZ2VJdGVtU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDbGFpbVJlc3BvbnNlU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDbGFpbVN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ2xpbmljYWxJbXByZXNzaW9uU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDb2RlU2VhcmNoU3VwcG9ydCk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29kZVN5c3RlbUNvbnRlbnRNb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDb2RlU3lzdGVtSGllcmFyY2h5TWVhbmluZyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29tbXVuaWNhdGlvblByaW9yaXR5KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDb21tdW5pY2F0aW9uUmVxdWVzdFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29tbXVuaWNhdGlvblN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29tcGFydG1lbnRDb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDb21wYXJ0bWVudFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENvbXBvc2l0aW9uQXR0ZXN0YXRpb25Nb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDb21wb3NpdGlvblN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29uY2VwdE1hcEVxdWl2YWxlbmNlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDb25jZXB0TWFwR3JvdXBVbm1hcHBlZE1vZGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENvbmRpdGlvbmFsRGVsZXRlU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDb25kaXRpb25hbFJlYWRTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENvbnNlbnREYXRhTWVhbmluZyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29uc2VudFByb3Zpc2lvblR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENvbnNlbnRTdGF0ZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29uc3RyYWludFNldmVyaXR5KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBDb250YWN0UG9pbnRTeXN0ZW0pOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENvbnRhY3RQb2ludFVzZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29udHJhY3RQdWJsaWNhdGlvblN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ29udHJhY3RTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIENvbnRyaWJ1dG9yVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgQ292ZXJhZ2VTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEN1cnJlbmN5Q29kZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRGF5T2ZXZWVrKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBEYXlzT2ZXZWVrKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBEZXRlY3RlZElzc3VlU2V2ZXJpdHkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIERldGVjdGVkSXNzdWVTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIERldmljZU1ldHJpY0NhbGlicmF0aW9uU3RhdGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIERldmljZU1ldHJpY0NhbGlicmF0aW9uVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRGV2aWNlTWV0cmljQ2F0ZWdvcnkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIERldmljZU1ldHJpY0NvbG9yKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBEZXZpY2VNZXRyaWNPcGVyYXRpb25hbFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRGV2aWNlTmFtZVR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIERldmljZVJlcXVlc3RTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIERldmljZVVzZVN0YXRlbWVudFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRGlhZ25vc3RpY1JlcG9ydFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRGlzY3JpbWluYXRvclR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIERvY3VtZW50Q29uZmlkZW50aWFsaXR5KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBEb2N1bWVudE1vZGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIERvY3VtZW50UmVmZXJlbmNlU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBEb2N1bWVudFJlbGF0aW9uc2hpcFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEVsaWdpYmlsaXR5UmVxdWVzdFB1cnBvc2UpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEVsaWdpYmlsaXR5UmVxdWVzdFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRWxpZ2liaWxpdHlSZXNwb25zZVB1cnBvc2UpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEVsaWdpYmlsaXR5UmVzcG9uc2VTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEVuYWJsZVdoZW5CZWhhdmlvcik6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRW5jb3VudGVyTG9jYXRpb25TdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEVuY291bnRlclN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRW5kcG9pbnRTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEVucm9sbG1lbnRSZXF1ZXN0U3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBFbnJvbGxtZW50UmVzcG9uc2VTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEVwaXNvZGVPZkNhcmVTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEV2ZW50Q2FwYWJpbGl0eU1vZGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEV2ZW50VGltaW5nKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBFdmlkZW5jZVZhcmlhYmxlVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRXhhbXBsZVNjZW5hcmlvQWN0b3JUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBFeHBsYW5hdGlvbk9mQmVuZWZpdFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRXhwb3N1cmVTdGF0ZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRXh0ZW5zaW9uQ29udGV4dFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEZISVJBbGxUeXBlcyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRkhJUkRlZmluZWRUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBGSElSRGV2aWNlU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBGSElSUmVzb3VyY2VUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBGSElSU3Vic3RhbmNlU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBGSElSVmVyc2lvbik6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRmFtaWx5SGlzdG9yeVN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgRmlsdGVyT3BlcmF0b3IpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEZsYWdTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEdvYWxMaWZlY3ljbGVTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEdyYXBoQ29tcGFydG1lbnRSdWxlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBHcmFwaENvbXBhcnRtZW50VXNlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBHcm91cE1lYXN1cmUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEdyb3VwVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgR3VpZGFuY2VSZXNwb25zZVN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgR3VpZGVQYWdlR2VuZXJhdGlvbik6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgR3VpZGVQYXJhbWV0ZXJDb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBIVFRQVmVyYik6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgSWRlbnRpZmllclVzZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgSWRlbnRpdHlBc3N1cmFuY2VMZXZlbCk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgSW1hZ2luZ1N0dWR5U3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBJbW11bml6YXRpb25FdmFsdWF0aW9uU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBJbW11bml6YXRpb25TdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEludm9pY2VQcmljZUNvbXBvbmVudFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIEludm9pY2VTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIElzc3VlU2V2ZXJpdHkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIElzc3VlVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgTGlua1R5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIExpbmthZ2VUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBMaXN0TW9kZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgTGlzdFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgTG9jYXRpb25Nb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBMb2NhdGlvblN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgTWVhc3VyZVJlcG9ydFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgTWVhc3VyZVJlcG9ydFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE1lZGlhU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBNZWRpY2F0aW9uQWRtaW5pc3RyYXRpb25TdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE1lZGljYXRpb25EaXNwZW5zZVN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgTWVkaWNhdGlvbktub3dsZWRnZVN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgTWVkaWNhdGlvblJlcXVlc3RJbnRlbnQpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE1lZGljYXRpb25SZXF1ZXN0UHJpb3JpdHkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE1lZGljYXRpb25SZXF1ZXN0U3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBNZWRpY2F0aW9uU3RhdGVtZW50U3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBNZWRpY2F0aW9uU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBNZXNzYWdlU2lnbmlmaWNhbmNlQ2F0ZWdvcnkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE1lc3NhZ2VoZWFkZXJfUmVzcG9uc2VfUmVxdWVzdCk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgTWltZVR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE5hbWVVc2UpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE5hbWluZ1N5c3RlbUlkZW50aWZpZXJUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBOYW1pbmdTeXN0ZW1UeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBOYXJyYXRpdmVTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE5vdGVUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBOdXRyaXRpaW9uT3JkZXJJbnRlbnQpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE51dHJpdGlvbk9yZGVyU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBPYnNlcnZhdGlvbkRhdGFUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBPYnNlcnZhdGlvblJhbmdlQ2F0ZWdvcnkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE9ic2VydmF0aW9uU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBPcGVyYXRpb25LaW5kKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBPcGVyYXRpb25QYXJhbWV0ZXJVc2UpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIE9yaWVudGF0aW9uVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUGFyYW1ldGVyVXNlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBQYXJ0aWNpcGFudFJlcXVpcmVkKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBQYXJ0aWNpcGFudFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUGFydGljaXBhdGlvblN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUGF5bWVudE5vdGljZVN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUGF5bWVudFJlY29uY2lsaWF0aW9uU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBQcm9jZWR1cmVTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFByb3BlcnR5UmVwcmVzZW50YXRpb24pOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFByb3BlcnR5VHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUHJvdmVuYW5jZUVudGl0eVJvbGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFB1YmxpY2F0aW9uU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBRdWFsaXR5VHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUXVhbnRpdHlDb21wYXJhdG9yKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBRdWVzdGlvbm5haXJlSXRlbU9wZXJhdG9yKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBRdWVzdGlvbm5haXJlSXRlbVR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFF1ZXN0aW9ubmFpcmVSZXNwb25zZVN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUmVmZXJlbmNlSGFuZGxpbmdQb2xpY3kpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFJlZmVyZW5jZVZlcnNpb25SdWxlcyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUmVmZXJyZWREb2N1bWVudFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUmVsYXRlZEFydGlmYWN0VHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUmVtaXR0YW5jZU91dGNvbWUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFJlcG9zaXRvcnlUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBSZXF1ZXN0SW50ZW50KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBSZXF1ZXN0UHJpb3JpdHkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFJlcXVlc3RTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFJlc2VhcmNoRWxlbWVudFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFJlc2VhcmNoU3R1ZHlTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFJlc2VhcmNoU3ViamVjdFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUmVzb3VyY2VUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBSZXNvdXJjZVZlcnNpb25Qb2xpY3kpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFJlc3BvbnNlVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgUmVzdGZ1bENhcGFiaWxpdHlNb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBSaXNrQXNzZXNzbWVudFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU1BEWExpY2Vuc2UpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFNlYXJjaENvbXBhcmF0b3IpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFNlYXJjaEVudHJ5TW9kZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU2VhcmNoTW9kaWZpZXJDb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTZWFyY2hQYXJhbVR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFNlY3Rpb25Nb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTZXF1ZW5jZVR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFNlcnZpY2VSZXF1ZXN0SW50ZW50KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTZXJ2aWNlUmVxdWVzdFByaW9yaXR5KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTZXJ2aWNlUmVxdWVzdFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU2xpY2luZ1J1bGVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTbG90U3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTb3J0RGlyZWN0aW9uKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTcGVjaW1lbkNvbnRhaW5lZFByZWZlcmVuY2UpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFNwZWNpbWVuU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFN0cmFuZFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFN0cnVjdHVyZURlZmluaXRpb25LaW5kKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTdHJ1Y3R1cmVNYXBDb250ZXh0VHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU3RydWN0dXJlTWFwR3JvdXBUeXBlTW9kZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU3RydWN0dXJlTWFwSW5wdXRNb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTdHJ1Y3R1cmVNYXBNb2RlbE1vZGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFN0cnVjdHVyZU1hcFNvdXJjZUxpc3RNb2RlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTdHJ1Y3R1cmVNYXBUYXJnZXRMaXN0TW9kZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU3RydWN0dXJlTWFwVHJhbnNmb3JtKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTdWJzY3JpcHRpb25DaGFubmVsVHlwZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU3Vic2NyaXB0aW9uU3RhdHVzKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBTdXBwbHlEZWxpdmVyeVN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU3VwcGx5UmVxdWVzdFN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgU3lzdGVtUmVzdGZ1bEludGVyYWN0aW9uKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBUYXNrSW50ZW50KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBUYXNrUHJpb3JpdHkpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFRhc2tTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFRlc3RSZXBvcnRBY3Rpb25SZXN1bHQpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFRlc3RSZXBvcnRQYXJ0aWNpcGFudFR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFRlc3RSZXBvcnRSZXN1bHQpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFRlc3RSZXBvcnRTdGF0dXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFRlc3RTY3JpcHRSZXF1ZXN0TWV0aG9kQ29kZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgVHJpZ2dlclR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFR5cGVEZXJpdmF0aW9uUnVsZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgVHlwZVJlc3RmdWxJbnRlcmFjdGlvbik6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgVURJRW50cnlUeXBlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBVbml0c09mVGltZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgVXNlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSBWYXJpYWJsZVR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFZpc2lvbkJhc2UpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFZpc2lvbkV5ZXMpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIFZpc2lvblN0YXR1cyk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgWFBhdGhVc2FnZVR5cGUpOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvU3RyaW5nKHZhbHVlIGJhc2U2NEJpbmFyeSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9Cb29sZWFuKHZhbHVlIGJvb2xlYW4pOiB2YWx1ZS52YWx1ZQ0KZGVmaW5lIGZ1bmN0aW9uIFRvRGF0ZSh2YWx1ZSBkYXRlKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb0RhdGVUaW1lKHZhbHVlIGRhdGVUaW1lKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb0RlY2ltYWwodmFsdWUgZGVjaW1hbCk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9EYXRlVGltZSh2YWx1ZSBpbnN0YW50KTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb0ludGVnZXIodmFsdWUgaW50ZWdlcik6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgc3RyaW5nKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1RpbWUodmFsdWUgdGltZSk6IHZhbHVlLnZhbHVlDQpkZWZpbmUgZnVuY3Rpb24gVG9TdHJpbmcodmFsdWUgdXJpKTogdmFsdWUudmFsdWUNCmRlZmluZSBmdW5jdGlvbiBUb1N0cmluZyh2YWx1ZSB4aHRtbCk6IHZhbHVlLnZhbHVlDQo="^^xsd:base64Binary ] ] ) . #
IG © 2022+ HL7 International - [Some] Work Group. Package cms.fhir.mct#0.1.0 based on FHIR 4.0.1. Generated 2026-02-27
Links: Table of Contents |
QA Report
| Version History
|