from typing import List


def parse_cannot_cast_exception(text: str) -> List[str]:
    if "cannot cast " not in text:
        return []
    struct_comparison_text = text.split("cannot cast ")[1]
    structs = struct_comparison_text.split(" to ")
    struct1 = structs[0]
    struct2 = structs[1]
    struct2 = struct2.split(") AS")[0]
    # struct1 = 'array<struct<id:null,extension:null,code:struct<id:null,extension:null,coding:array<struct<id:null,extension:null,system:string,version:null,code:string,display:null,userSelected:null>>,text:null>,identifier:null,period:null,issuer:null>>'
    # struct1 = "array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,high:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,coding:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>,valueMoney:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,low:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,high:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>>,valueReference:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,display:string>>>,modifierExtension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,high:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,coding:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>,valueMoney:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,low:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,high:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>>,valueReference:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,display:string>>>,identifier:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,valueMoney:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,low:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,high:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>>,valueReference:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,coding:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,display:string>>>,code:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,valueMoney:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,low:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,high:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>>,valueReference:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>>,coding:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,period:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,valueMoney:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,low:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,high:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>>,valueReference:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>>,start:string,end:string>,issuer:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>,valueMoney:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,low:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,high:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>>,valueReference:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string,extension:array<struct<id:string>>,coding:array<struct<id:string>>,text:string>,valueCoding:struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>,valueCount:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueIdentifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,valueMoney:struct<id:string,extension:array<struct<id:string>>,value:int,currency:string>,valuePeriod:struct<id:string,extension:array<struct<id:string>>,start:string,end:string>,valueQuantity:struct<id:string,extension:array<struct<id:string>>,value:int,comparator:string,unit:string,system:string,code:string>,valueRange:struct<id:string,extension:array<struct<id:string>>,low:struct<id:string>,high:struct<id:string>>,valueReference:struct<id:string,extension:array<struct<id:string>>,reference:string,type:string,identifier:struct<id:string>,display:string>>>,use:string,type:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,coding:array<struct<id:string,extension:array<struct<id:string>>,system:string,version:string,code:string,display:string,userSelected:boolean>>,text:string>,system:string,value:string,period:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,start:string,end:string>,assigner:struct<id:string,extension:array<struct<id:string,extension:array<struct<id:string>>,url:string,valueBoolean:boolean,valueCode:string,valueDate:string,valueDateTime:string,valueDecimal:int,valueId:string,valueInteger:int,valuePositiveInt:int,valueString:string,valueTime:string,valueUnsignedInt:int,valueUri:string,valueUrl:string,valueCodeableConcept:struct<id:string>,valueCoding:struct<id:string>,valueCount:struct<id:string>,valueIdentifier:struct<id:string>,valueMoney:struct<id:string>,valuePeriod:struct<id:string>,valueQuantity:struct<id:string>,valueRange:struct<id:string>,valueReference:struct<id:string>>>,reference:string,type:string,identifier:struct<id:string,extension:array<struct<id:string>>,use:string,type:struct<id:string>,system:string,value:string,period:struct<id:string>,assigner:struct<id:string>>,display:string>>,display:string>>>"
    return [parse_struct(struct1), parse_struct(struct2)]


def parse_struct(struct1: str) -> str:
    remaining_text = struct1.replace("'", "")
    stack = []
    formatted_struct1 = ""
    last_item_was_letter = False
    while remaining_text:
        if remaining_text.startswith("array<"):
            remaining_text = remaining_text[6:]
            formatted_struct1 += "["
            stack.append("[")
            last_item_was_letter = False
        elif remaining_text.startswith("struct<"):
            remaining_text = remaining_text[7:]
            formatted_struct1 += "{"
            stack.append("{")
            last_item_was_letter = False
        elif remaining_text.startswith(">"):
            remaining_text = remaining_text[1:]
            if last_item_was_letter:
                formatted_struct1 += '"'
            if len(stack) > 0:
                pop = stack.pop()
                if pop == "[":
                    formatted_struct1 += "]"
                else:
                    formatted_struct1 += "}"
            last_item_was_letter = False
        else:
            item = remaining_text[0]
            remaining_text = remaining_text[1:]
            if item == ":":
                if last_item_was_letter:
                    formatted_struct1 += '"'
                formatted_struct1 += ":"
                last_item_was_letter = False
            elif item == ",":
                if last_item_was_letter:
                    formatted_struct1 += '"'
                formatted_struct1 += ","
                last_item_was_letter = False
            else:
                if not last_item_was_letter:
                    formatted_struct1 += '"'
                last_item_was_letter = True
                formatted_struct1 += item
    return formatted_struct1
