
(object Petal
    version    	50
    _written   	"Rose 8.5.0503.xxx"
    charSet    	0)

(object Class_Category "EMOF"
    is_unit    	TRUE
    is_loaded  	TRUE
    attributes 	(list Attribute_Set
	(object Attribute
	    tool       	"Ecore"
	    name       	"basePackage"
	    value      	(value Text "org.omg.qvt"))
	(object Attribute
	    tool       	"Ecore"
	    name       	"nsPrefix"
	    value      	(value Text "emof"))
	(object Attribute
	    tool       	"Ecore"
	    name       	"nsURI"
	    value      	(value Text "http://schema.omg.org/spec/QVT/1.1/emof.xml"))
	(object Attribute
	    tool       	"Ecore"
	    name       	"packageName"
	    value      	(value Text "EMOF"))
	(object Attribute
	    tool       	"Ecore"
	    name       	"prefix"
	    value      	(value Text "EMOF")))
    quid       	"41506831024B"
    visible_categories 	(list visibility_relationship_list
	(object Visibility_Relationship
	    quid       	"46D9309E0071"
	    supplier   	"Logical View::PrimitiveTypes"
	    quidu      	"46D9305D0032"))
    exportControl 	"Public"
    logical_models 	(list unit_reference_list
	(object Class "Class"
	    quid       	"401DAE57014A"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40C8BB460259"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "isAbstract"
		    quid       	"40CB37790264"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038"
		    initv      	"false")))
	(object Class "DataType"
	    quid       	"40C78CD10047"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40C8BD0F03BF"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7")))
	(object Class "Element"
	    quid       	"40C96ABE02EC"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"428B5D05034C"
		    supplier   	"Logical View::EMOF::Object"
		    quidu      	"40CB3AB40137"))
	    operations 	(list Operations
		(object Operation "getMetaClass"
		    quid       	"3E5D727903E2"
		    result     	"Class"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"401DAE57014A")
		(object Operation "container"
		    quid       	"3E19CDC602D3"
		    result     	"Element"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40C96ABE02EC")
		(object Operation "equals"
		    quid       	"3E19CDD000B0"
		    parameters 	(list Parameters
			(object Parameter "object"
			    quid       	"46E1175000EB"
			    type       	"Object"
			    quidu      	"40CB3AB40137"))
		    result     	"Boolean"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2ECB0038")
		(object Operation "get"
		    quid       	"3E19CDDE0345"
		    parameters 	(list Parameters
			(object Parameter "property"
			    quid       	"3E19CDF7025B"
			    type       	"Property"
			    quidu      	"401DADC101B3"))
		    result     	"Object"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB3AB40137")
		(object Operation "set"
		    quid       	"3E19CDF7023D"
		    parameters 	(list Parameters
			(object Parameter "property"
			    quid       	"3E19CE0B00F1"
			    type       	"Property"
			    quidu      	"401DADC101B3")
			(object Parameter "object"
			    quid       	"46E11755008D"
			    type       	"Object"
			    quidu      	"40CB3AB40137"))
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0)
		(object Operation "isSet"
		    quid       	"3E19CE0B00DD"
		    parameters 	(list Parameters
			(object Parameter "property"
			    quid       	"3E19CE1803A3"
			    type       	"Property"
			    quidu      	"401DADC101B3"))
		    result     	"Boolean"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2ECB0038")
		(object Operation "unset"
		    quid       	"3E19CE18038F"
		    parameters 	(list Parameters
			(object Parameter "property"
			    quid       	"3E19CE2B02CE"
			    type       	"Property"
			    quidu      	"401DADC101B3"))
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0))
	    abstract   	TRUE)
	(object Class "Tag"
	    quid       	"40C93A5E0393"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4166BC650106"
		    supplier   	"Logical View::EMOF::Element"
		    quidu      	"40C96ABE02EC"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "value"
		    quid       	"40C93A6E0011"
		    type       	"String"
		    quidu      	"40CB2EDE0252")
		(object ClassAttribute "name"
		    quid       	"40FD1A2D0151"
		    stereotype 	"id"
		    type       	"String"
		    quidu      	"40CB2EDE0252")))
	(object Class "Enumeration"
	    quid       	"40CB2DC702A1"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40CB2FD303BD"
		    supplier   	"Logical View::EMOF::DataType"
		    quidu      	"40C78CD10047")))
	(object Class "NamedElement"
	    quid       	"40C71FFB0153"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40C96AC7021D"
		    supplier   	"Logical View::EMOF::Element"
		    quidu      	"40C96ABE02EC"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "name"
		    quid       	"40C72008024C"
		    stereotype 	"id"
		    type       	"String"
		    quidu      	"40CB2EDE0252"))
	    abstract   	TRUE)
	(object Class "Extent"
	    quid       	"406C80C10117"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40C7212C0116"
		    supplier   	"Logical View::EMOF::Object"
		    quidu      	"40CB3AB40137"))
	    operations 	(list Operations
		(object Operation "useContainment"
		    quid       	"3E628AB703DE"
		    result     	"Boolean"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2ECB0038")
		(object Operation "elements"
		    quid       	"3E5D7212036C"
		    result     	"ReflectiveSequence"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"3E6167610024")))
	(object Class "Object"
	    quid       	"40CB3AB40137")
	(object Class "Operation"
	    quid       	"401DACA501B4"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40C721350304"
		    supplier   	"Logical View::EMOF::TypedElement"
		    quidu      	"401DB04002F2")
		(object Inheritance_Relationship
		    quid       	"428B5A440388"
		    supplier   	"Logical View::EMOF::MultiplicityElement"
		    quidu      	"40CB3A62025B")))
	(object Class "MultiplicityElement"
	    quid       	"40CB3A62025B"
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "isOrdered"
		    quid       	"40CB3A710249"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038"
		    initv      	"false")
		(object ClassAttribute "isUnique"
		    quid       	"40CB3A78031B"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038"
		    initv      	"true")
		(object ClassAttribute "lower"
		    quid       	"40CB3A7D02A0"
		    type       	"Integer"
		    quidu      	"40CB2F0E025B"
		    initv      	"1")
		(object ClassAttribute "upper"
		    quid       	"40CB3A950254"
		    type       	"UnlimitedNatural"
		    quidu      	"40CB2F2E0366"
		    initv      	"1"))
	    abstract   	TRUE)
	(object Class "Package"
	    quid       	"401DAF280336"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40C7213A0347"
		    supplier   	"Logical View::EMOF::NamedElement"
		    quidu      	"40C71FFB0153"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "uri"
		    quid       	"40FD178003B9"
		    type       	"String"
		    quidu      	"40CB2EDE0252")))
	(object Class "Type"
	    quid       	"40C78BB303B7"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40C720EF03DF"
		    supplier   	"Logical View::EMOF::NamedElement"
		    quidu      	"40C71FFB0153"))
	    operations 	(list Operations
		(object Operation "isInstance"
		    quid       	"3E56350C01CF"
		    parameters 	(list Parameters
			(object Parameter "object"
			    quid       	"46E1176D0196"
			    type       	"Object"
			    quidu      	"40CB3AB40137"))
		    result     	"Boolean"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2ECB0038"))
	    abstract   	TRUE)
	(object Class "Parameter"
	    quid       	"401DABF00182"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"405AF3D00086"
		    supplier   	"Logical View::EMOF::TypedElement"
		    quidu      	"401DB04002F2")
		(object Inheritance_Relationship
		    quid       	"428B5A400314"
		    supplier   	"Logical View::EMOF::MultiplicityElement"
		    quidu      	"40CB3A62025B")))
	(object Class "EnumerationLiteral"
	    quid       	"40CB2DD003D0"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40CB30A4013D"
		    supplier   	"Logical View::EMOF::NamedElement"
		    quidu      	"40C71FFB0153")))
	(object Class "Property"
	    quid       	"401DADC101B3"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40FD1028037B"
		    supplier   	"Logical View::EMOF::TypedElement"
		    quidu      	"401DB04002F2")
		(object Inheritance_Relationship
		    quid       	"428B5A3D00B6"
		    supplier   	"Logical View::EMOF::MultiplicityElement"
		    quidu      	"40CB3A62025B"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "isReadOnly"
		    quid       	"40C939450028"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038"
		    initv      	"false")
		(object ClassAttribute "isDerived"
		    quid       	"40C939B200F7"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038"
		    initv      	"false")
		(object ClassAttribute "isComposite"
		    quid       	"40CB38240179"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038"
		    initv      	"false")
		(object ClassAttribute "isID"
		    quid       	"40CB382A03C7"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038")
		(object ClassAttribute "default"
		    quid       	"40FD3C080280"
		    type       	"String"
		    quidu      	"40CB2EDE0252"))
	    cardinality 	(value Cardinality "0..1"))
	(object Class "TypedElement"
	    quid       	"401DB04002F2"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40C72126038E"
		    supplier   	"Logical View::EMOF::NamedElement"
		    quidu      	"40C71FFB0153"))
	    abstract   	TRUE)
	(object Class "PrimitiveType"
	    quid       	"40CB2DBF02B4"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40CB2FD00156"
		    supplier   	"Logical View::EMOF::DataType"
		    quidu      	"40C78CD10047")))
	(object Class "URIExtent"
	    quid       	"40FD18CB0008"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"40FD191B0270"
		    supplier   	"Logical View::EMOF::Extent"
		    quidu      	"406C80C10117"))
	    operations 	(list Operations
		(object Operation "contextURI"
		    quid       	"3E553DD20382"
		    result     	"String"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2EDE0252")
		(object Operation "uri"
		    quid       	"3E62B77700A2"
		    parameters 	(list Parameters
			(object Parameter "element"
			    quid       	"46E118BE00BC"
			    type       	"Element"
			    quidu      	"40C96ABE02EC"))
		    result     	"String"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2EDE0252")
		(object Operation "element"
		    quid       	"3E62B7830348"
		    parameters 	(list Parameters
			(object Parameter "uri"
			    quid       	"3E62B78B0317"
			    type       	"String"
			    quidu      	"40CB2EDE0252"))
		    result     	"Element"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40C96ABE02EC")))
	(object Class "Comment"
	    quid       	"428B5D6A03A3"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"428B5DE10214"
		    supplier   	"Logical View::EMOF::Element"
		    quidu      	"40C96ABE02EC"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "body"
		    attributes 	(list Attribute_Set)
		    quid       	"46E1194500FA"
		    type       	"String"
		    quidu      	"40CB2EDE0252")))
	(object Class "ReflectiveCollection"
	    quid       	"3E9F1969031C"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"46DFF8520151"
		    supplier   	"Logical View::EMOF::Object"
		    quidu      	"40CB3AB40137"))
	    operations 	(list Operations
		(object Operation "add"
		    quid       	"3E9F19BC0177"
		    parameters 	(list Parameters
			(object Parameter "object"
			    quid       	"46DFF90E005E"
			    type       	"Object"
			    quidu      	"40CB3AB40137"))
		    result     	"Boolean"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2ECB0038")
		(object Operation "addAll"
		    quid       	"3E9F19C6006D"
		    parameters 	(list Parameters
			(object Parameter "objects"
			    quid       	"46DFF91201F4"
			    type       	"ReflectiveSequence"
			    quidu      	"3E6167610024"))
		    result     	"Boolean"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2ECB0038")
		(object Operation "clear"
		    quid       	"3E9F19D001E4"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0)
		(object Operation "remove"
		    quid       	"3E6167610030"
		    parameters 	(list Parameters
			(object Parameter "object"
			    quid       	"46DFF91E0158"
			    type       	"Object"
			    quidu      	"40CB3AB40137"))
		    result     	"Boolean"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2ECB0038")
		(object Operation "size"
		    quid       	"3E6167610037"
		    result     	"Integer"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2F0E025B")))
	(object Class "ReflectiveSequence"
	    quid       	"3E6167610024"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"3E6167610025"
		    supplier   	"Logical View::EMOF::ReflectiveCollection"
		    quidu      	"3E9F1969031C"))
	    operations 	(list Operations
		(object Operation "add"
		    quid       	"3E6167610028"
		    parameters 	(list Parameters
			(object Parameter "index"
			    quid       	"3E6167610029"
			    type       	"Integer"
			    quidu      	"40CB2F0E025B")
			(object Parameter "object"
			    quid       	"46DFF8D300DE"
			    type       	"Object"
			    quidu      	"40CB3AB40137"))
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0)
		(object Operation "get"
		    quid       	"3E616761002E"
		    parameters 	(list Parameters
			(object Parameter "index"
			    quid       	"3E616761002F"
			    type       	"Integer"
			    quidu      	"40CB2F0E025B"))
		    result     	"Object"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB3AB40137")
		(object Operation "remove"
		    quid       	"3E6167610032"
		    parameters 	(list Parameters
			(object Parameter "index"
			    quid       	"3E6167610033"
			    type       	"Integer"
			    quidu      	"40CB2F0E025B"))
		    result     	"Object"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB3AB40137")
		(object Operation "set"
		    quid       	"3E6167610034"
		    parameters 	(list Parameters
			(object Parameter "index"
			    quid       	"3E6167610035"
			    type       	"Integer"
			    quidu      	"40CB2F0E025B")
			(object Parameter "object"
			    quid       	"46DFF8CF039D"
			    type       	"Object"
			    quidu      	"40CB3AB40137"))
		    result     	"Object"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB3AB40137")))
	(object Class "Factory"
	    quid       	"3E553D13014D"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"46DFEA310167"
		    supplier   	"Logical View::EMOF::Element"
		    quidu      	"40C96ABE02EC"))
	    operations 	(list Operations
		(object Operation "createFromString"
		    quid       	"3E55411E00E7"
		    parameters 	(list Parameters
			(object Parameter "dataType"
			    quid       	"3E55412D02BF"
			    type       	"DataType"
			    quidu      	"40C78CD10047")
			(object Parameter "string"
			    quid       	"3E55412D02DD"
			    type       	"String"
			    quidu      	"40CB2EDE0252"))
		    result     	"Object"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB3AB40137")
		(object Operation "convertToString"
		    quid       	"3E55412D02B5"
		    parameters 	(list Parameters
			(object Parameter "dataType"
			    quid       	"3E55413E0350"
			    type       	"DataType"
			    quidu      	"40C78CD10047")
			(object Parameter "object"
			    quid       	"46DFFA2002B4"
			    type       	"Object"
			    quidu      	"40CB3AB40137"))
		    result     	"String"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40CB2EDE0252")
		(object Operation "create"
		    quid       	"3E55413E033C"
		    parameters 	(list Parameters
			(object Parameter "metaClass"
			    quid       	"3E5541470046"
			    type       	"Class"
			    quidu      	"401DAE57014A"))
		    result     	"Element"
		    concurrency 	"Sequential"
		    opExportControl 	"Public"
		    uid        	0
		    quidu      	"40C96ABE02EC")))
	(object Association "$UNNAMED$0"
	    quid       	"428B5DF50209"
	    roles      	(list role_list
		(object Role "ownedComment"
		    quid       	"428B5DFB014A"
		    label      	"ownedComment"
		    supplier   	"Logical View::EMOF::Comment"
		    quidu      	"428B5D6A03A3"
		    client_cardinality 	(value cardinality "*")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$1"
		    quid       	"428B5DFB014C"
		    supplier   	"Logical View::EMOF::Element"
		    quidu      	"40C96ABE02EC"
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$2"
	    quid       	"428B5E1400CE"
	    roles      	(list role_list
		(object Role "annotatedElement"
		    quid       	"428B5E140381"
		    label      	"annotatedElement"
		    supplier   	"Logical View::EMOF::NamedElement"
		    quidu      	"40C71FFB0153"
		    client_cardinality 	(value cardinality "*")
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$3"
		    quid       	"428B5E140395"
		    supplier   	"Logical View::EMOF::Comment"
		    quidu      	"428B5D6A03A3")))
	(object Association "$UNNAMED$4"
	    quid       	"401DAE9E00DE"
	    roles      	(list role_list
		(object Role "ownedAttribute"
		    quid       	"401DAE9F00B8"
		    label      	"ownedAttribute"
		    supplier   	"Logical View::EMOF::Property"
		    quidu      	"401DADC101B3"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "class"
		    quid       	"401DAE9F00BA"
		    label      	"class"
		    supplier   	"Logical View::EMOF::Class"
		    quidu      	"401DAE57014A"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$5"
	    quid       	"401DAEA10382"
	    roles      	(list role_list
		(object Role "ownedOperation"
		    quid       	"401DAEA20365"
		    label      	"ownedOperation"
		    supplier   	"Logical View::EMOF::Operation"
		    quidu      	"401DACA501B4"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "class"
		    quid       	"401DAEA20370"
		    label      	"class"
		    supplier   	"Logical View::EMOF::Class"
		    quidu      	"401DAE57014A"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$6"
	    quid       	"401DAEB8008C"
	    roles      	(list role_list
		(object Role "ownedParameter"
		    quid       	"401DAEB90119"
		    label      	"ownedParameter"
		    supplier   	"Logical View::EMOF::Parameter"
		    quidu      	"401DABF00182"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "operation"
		    quid       	"401DAEB9011B"
		    label      	"operation"
		    supplier   	"Logical View::EMOF::Operation"
		    quidu      	"401DACA501B4"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE
		    is_aggregate 	TRUE))
	    Constraints 	"ordered")
	(object Association "$UNNAMED$7"
	    quid       	"401DAF3400E4"
	    roles      	(list role_list
		(object Role "ownedType"
		    quid       	"401DAF340351"
		    label      	"ownedType"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"
		    client_cardinality 	(value cardinality "*")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "package "
		    quid       	"401DAF340353"
		    label      	"package "
		    supplier   	"Logical View::EMOF::Package"
		    quidu      	"401DAF280336"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$8"
	    quid       	"40C9329A0305"
	    roles      	(list role_list
		(object Role "superClass"
		    quid       	"40C9329F00EF"
		    label      	"superClass"
		    supplier   	"Logical View::EMOF::Class"
		    quidu      	"401DAE57014A"
		    client_cardinality 	(value cardinality "*")
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$9"
		    quid       	"40C9329F0103"
		    supplier   	"Logical View::EMOF::Class"
		    quidu      	"401DAE57014A")))
	(object Association "$UNNAMED$10"
	    quid       	"40CB30360012"
	    roles      	(list role_list
		(object Role "ownedLiteral"
		    quid       	"40CB30360257"
		    label      	"ownedLiteral"
		    supplier   	"Logical View::EMOF::EnumerationLiteral"
		    quidu      	"40CB2DD003D0"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "enumeration"
		    quid       	"40CB30360261"
		    label      	"enumeration"
		    supplier   	"Logical View::EMOF::Enumeration"
		    quidu      	"40CB2DC702A1"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$11"
	    quid       	"40D034FE0047"
	    roles      	(list role_list
		(object Role "nestedPackage"
		    quid       	"40D035000307"
		    label      	"nestedPackage"
		    supplier   	"Logical View::EMOF::Package"
		    quidu      	"401DAF280336"
		    client_cardinality 	(value cardinality "*")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "nestingPackage"
		    quid       	"40D035000311"
		    label      	"nestingPackage"
		    supplier   	"Logical View::EMOF::Package"
		    quidu      	"401DAF280336"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$12"
	    quid       	"40CF7B1D00F6"
	    roles      	(list role_list
		(object Role "raisedException"
		    quid       	"40CF7B1F033D"
		    label      	"raisedException"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"
		    client_cardinality 	(value cardinality "*")
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$13"
		    quid       	"40CF7B1F0351"
		    supplier   	"Logical View::EMOF::Operation"
		    quidu      	"401DACA501B4"
		    client_cardinality 	(value cardinality "*"))))
	(object Association "$UNNAMED$14"
	    quid       	"40C93AA40221"
	    roles      	(list role_list
		(object Role "element"
		    quid       	"40C93AA701A3"
		    label      	"element"
		    supplier   	"Logical View::EMOF::Element"
		    quidu      	"40C96ABE02EC"
		    client_cardinality 	(value cardinality "*")
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$15"
		    quid       	"40C93AA701AD"
		    supplier   	"Logical View::EMOF::Tag"
		    quidu      	"40C93A5E0393")))
	(object Association "$UNNAMED$16"
	    quid       	"40CF7B86018D"
	    roles      	(list role_list
		(object Role "opposite"
		    quid       	"40CF7B8901E1"
		    label      	"opposite"
		    supplier   	"Logical View::EMOF::Property"
		    quidu      	"401DADC101B3"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$17"
		    quid       	"40CF7B8901F5"
		    supplier   	"Logical View::EMOF::Property"
		    quidu      	"401DADC101B3")))
	(object Association "$UNNAMED$18"
	    quid       	"40C78C4F0361"
	    roles      	(list role_list
		(object Role "type"
		    quid       	"40C78C500362"
		    label      	"type"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$19"
		    quid       	"40C78C500364"
		    supplier   	"Logical View::EMOF::TypedElement"
		    quidu      	"401DB04002F2"
		    client_cardinality 	(value cardinality "*"))))
	(object Association "$UNNAMED$20"
	    quid       	"46DFF9A00336"
	    roles      	(list role_list
		(object Role "package"
		    quid       	"46DFF9A200F4"
		    label      	"package"
		    supplier   	"Logical View::EMOF::Package"
		    quidu      	"401DAF280336"
		    client_cardinality 	(value cardinality "1")
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$21"
		    quid       	"46DFF9A20123"
		    supplier   	"Logical View::EMOF::Factory"
		    quidu      	"3E553D13014D"
		    client_cardinality 	(value cardinality "0..*")))))
    logical_presentations 	(list unit_reference_list
	(object ClassDiagram "EMOF"
	    quid       	"40FD30690070"
	    title      	"EMOF"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	7687
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::DataType" @1
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(400, 459)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@1
			location   	(298, 418)
			fill_color 	13434879
			nlines     	1
			max_width  	204
			justify    	0
			label      	"DataType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C78CD10047"
		    width      	222
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Property" @2
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(835, 731)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@2
			location   	(743, 690)
			fill_color 	16777215
			nlines     	1
			max_width  	184
			justify    	0
			label      	"Property")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DADC101B3"
		    width      	202
		    height     	107
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$16" @3
		    location   	(562, 720)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CF7B86018D"
		    roleview_list 	(list RoleViews
			(object RoleView "opposite" @4
			    Parent_View 	@3
			    location   	(-142, -160)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @5
				Parent_View 	@4
				location   	(605, 781)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	156
				justify    	0
				label      	"+opposite"
				pctDist    	0.363636
				height     	30
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CF7B8901E1"
			    client     	@3
			    supplier   	@2
			    vertices   	(list Points
				(562, 720)
				(562, 751)
				(734, 751))
			    line_style 	3
			    origin_attachment 	(562, 720)
			    terminal_attachment 	(734, 751)
			    label      	(object SegLabel @6
				Parent_View 	@4
				location   	(713, 805)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	68
				justify    	0
				label      	"0..1"
				pctDist    	0.896373
				height     	54
				orientation 	1))
			(object RoleView "$UNNAMED$17" @7
			    Parent_View 	@3
			    location   	(-142, -160)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @8
				Parent_View 	@7
				location   	(595, 710)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	206
				justify    	0
				label      	""
				pctDist    	0.309645
				height     	20
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CF7B8901F5"
			    client     	@3
			    supplier   	@2
			    vertices   	(list Points
				(562, 720)
				(562, 690)
				(734, 690))
			    line_style 	3
			    origin_attachment 	(562, 720)
			    terminal_attachment 	(734, 690))))
		(object ClassView "Class" "Logical View::EMOF::Package" @9
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(422, 217)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@9
			location   	(326, 161)
			fill_color 	16777215
			nlines     	1
			max_width  	192
			justify    	0
			label      	"Package")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DAF280336"
		    width      	210
		    height     	136
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$11" @10
		    location   	(175, 199)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40D034FE0047"
		    roleview_list 	(list RoleViews
			(object RoleView "nestedPackage" @11
			    Parent_View 	@10
			    location   	(-337, -41)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @12
				Parent_View 	@11
				location   	(231, 277)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	252
				justify    	0
				label      	"+nestedPackage"
				pctDist    	0.517442
				height     	41
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40D035000307"
			    client     	@10
			    supplier   	@9
			    vertices   	(list Points
				(175, 199)
				(175, 236)
				(317, 236))
			    line_style 	3
			    origin_attachment 	(175, 199)
			    terminal_attachment 	(317, 236)
			    label      	(object SegLabel @13
				Parent_View 	@11
				location   	(268, 218)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.727778
				height     	19
				orientation 	0))
			(object RoleView "nestingPackage" @14
			    Parent_View 	@10
			    location   	(-337, -41)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @15
				Parent_View 	@14
				location   	(220, 140)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	262
				justify    	0
				label      	"+nestingPackage"
				pctDist    	0.457895
				height     	23
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40D035000311"
			    client     	@10
			    supplier   	@9
			    vertices   	(list Points
				(175, 199)
				(175, 162)
				(317, 162))
			    line_style 	3
			    origin_attachment 	(175, 199)
			    terminal_attachment 	(317, 162)
			    label      	(object SegLabel @16
				Parent_View 	@14
				location   	(268, 187)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	68
				justify    	0
				label      	"0..1"
				pctDist    	0.724490
				height     	25
				orientation 	1))))
		(object ClassView "Class" "Logical View::EMOF::Class" @17
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1003, 456)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@17
			location   	(725, 400)
			fill_color 	16777215
			nlines     	1
			max_width  	556
			justify    	0
			label      	"Class")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DAE57014A"
		    width      	574
		    height     	136
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$8" @18
		    location   	(1100, 318)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C9329A0305"
		    roleview_list 	(list RoleViews
			(object RoleView "superClass" @19
			    Parent_View 	@18
			    location   	(188, -370)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @20
				Parent_View 	@19
				location   	(1185, 329)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	184
				justify    	0
				label      	"+superClass"
				pctDist    	0.562500
				height     	20
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9329F00EF"
			    client     	@18
			    supplier   	@17
			    vertices   	(list Points
				(1100, 318)
				(1165, 318)
				(1165, 388))
			    line_style 	3
			    origin_attachment 	(1100, 318)
			    terminal_attachment 	(1165, 388)
			    label      	(object SegLabel @21
				Parent_View 	@19
				location   	(1185, 358)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.788793
				height     	20
				orientation 	0))
			(object RoleView "$UNNAMED$9" @22
			    Parent_View 	@18
			    location   	(188, -370)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @23
				Parent_View 	@22
				location   	(1078, 300)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	214
				justify    	0
				label      	""
				pctDist    	0.166667
				height     	19
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9329F0103"
			    client     	@18
			    supplier   	@17
			    vertices   	(list Points
				(1100, 318)
				(1034, 318)
				(1034, 388))
			    line_style 	3
			    origin_attachment 	(1100, 318)
			    terminal_attachment 	(1034, 388))))
		(object AssociationViewNew "$UNNAMED$4" @24
		    location   	(782, 601)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"401DAE9E00DE"
		    roleview_list 	(list RoleViews
			(object RoleView "ownedAttribute" @25
			    Parent_View 	@24
			    location   	(334, 153)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @26
				Parent_View 	@25
				location   	(703, 619)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	334
				justify    	0
				label      	"+ownedAttribute"
				pctDist    	0.246753
				height     	80
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAE9F00B8"
			    client     	@24
			    supplier   	@2
			    vertices   	(list Points
				(782, 601)
				(782, 678))
			    line_style 	3
			    origin_attachment 	(782, 601)
			    terminal_attachment 	(782, 678)
			    label      	(object SegLabel @27
				Parent_View 	@25
				location   	(820, 671)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.920455
				height     	38
				orientation 	0)
			    label      	(object SegLabel @28
				Parent_View 	@25
				location   	(923, 648)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	3
				anchor_loc 	1
				nlines     	1
				max_width  	142
				justify    	0
				label      	"{ordered}"
				pctDist    	0.623377
				height     	141
				orientation 	0))
			(object RoleView "class" @29
			    Parent_View 	@24
			    location   	(334, 153)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @30
				Parent_View 	@29
				location   	(698, 554)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	100
				justify    	0
				label      	"+class"
				pctDist    	0.623377
				height     	85
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAE9F00BA"
			    client     	@24
			    supplier   	@17
			    vertices   	(list Points
				(782, 601)
				(782, 524))
			    line_style 	3
			    origin_attachment 	(782, 601)
			    terminal_attachment 	(782, 524)
			    label      	(object SegLabel @31
				Parent_View 	@29
				location   	(844, 557)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	30
				justify    	0
				label      	"0..1"
				pctDist    	0.571429
				height     	62
				orientation 	1))))
		(object ClassView "Class" "Logical View::EMOF::Type" @32
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(934, 217)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@32
			location   	(853, 176)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C78BB303B7"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritTreeView "" @33
		    location   	(934, 365)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@32
		    vertices   	(list Points
			(934, 365)
			(934, 270)))
		(object AssociationViewNew "$UNNAMED$7" @34
		    location   	(685, 228)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"401DAF3400E4"
		    roleview_list 	(list RoleViews
			(object RoleView "ownedType" @35
			    Parent_View 	@34
			    location   	(285, 36)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @36
				Parent_View 	@35
				location   	(740, 263)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	230
				justify    	0
				label      	"+ownedType"
				pctDist    	0.347222
				height     	35
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAF340351"
			    client     	@34
			    supplier   	@32
			    vertices   	(list Points
				(685, 228)
				(844, 228))
			    line_style 	3
			    origin_attachment 	(685, 228)
			    terminal_attachment 	(844, 228)
			    label      	(object SegLabel @37
				Parent_View 	@35
				location   	(824, 193)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.879630
				height     	36
				orientation 	0))
			(object RoleView "package " @38
			    Parent_View 	@34
			    location   	(285, 36)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @39
				Parent_View 	@38
				location   	(631, 185)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	152
				justify    	0
				label      	"+package "
				pctDist    	0.345070
				height     	44
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAF340353"
			    client     	@34
			    supplier   	@9
			    vertices   	(list Points
				(685, 228)
				(527, 228))
			    line_style 	3
			    origin_attachment 	(685, 228)
			    terminal_attachment 	(527, 228)
			    label      	(object SegLabel @40
				Parent_View 	@38
				location   	(544, 282)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	30
				justify    	0
				label      	"0..1"
				pctDist    	0.900452
				height     	54
				orientation 	0))))
		(object InheritView "" @41
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C8BD0F03BF"
		    client     	@1
		    supplier   	@32
		    vertices   	(list Points
			(504, 406)
			(504, 365))
		    line_style 	3
		    origin_attachment 	(504, 406)
		    terminal_attachment 	(504, 365)
		    drawSupplier 	@33)
		(object InheritView "" @42
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C8BB460259"
		    client     	@17
		    supplier   	@32
		    vertices   	(list Points
			(985, 387)
			(985, 365))
		    line_style 	3
		    origin_attachment 	(985, 387)
		    terminal_attachment 	(985, 365)
		    drawSupplier 	@33)
		(object ClassView "Class" "Logical View::EMOF::Parameter" @43
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1268, 732)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@43
			location   	(1154, 691)
			fill_color 	16777215
			nlines     	1
			max_width  	228
			justify    	0
			label      	"Parameter")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DABF00182"
		    width      	246
		    height     	107
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Operation" @44
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1690, 456)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@44
			location   	(1589, 415)
			fill_color 	16777215
			nlines     	1
			max_width  	202
			justify    	0
			label      	"Operation")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DACA501B4"
		    width      	220
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$5" @45
		    location   	(1435, 472)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"401DAEA10382"
		    roleview_list 	(list RoleViews
			(object RoleView "ownedOperation" @46
			    Parent_View 	@45
			    location   	(987, 24)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @47
				Parent_View 	@46
				location   	(1523, 539)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	274
				justify    	0
				label      	"+ownedOperation"
				pctDist    	0.616071
				height     	67
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAEA20365"
			    client     	@45
			    supplier   	@44
			    vertices   	(list Points
				(1435, 472)
				(1580, 472))
			    line_style 	3
			    origin_attachment 	(1435, 472)
			    terminal_attachment 	(1580, 472)
			    label      	(object SegLabel @48
				Parent_View 	@46
				location   	(1566, 434)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900990
				height     	39
				orientation 	0)
			    label      	(object SegLabel @49
				Parent_View 	@46
				location   	(1537, 374)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	3
				anchor_loc 	1
				nlines     	1
				max_width  	142
				justify    	0
				label      	"{ordered}"
				pctDist    	0.705357
				height     	99
				orientation 	0))
			(object RoleView "class" @50
			    Parent_View 	@45
			    location   	(987, 24)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @51
				Parent_View 	@50
				location   	(1332, 515)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	100
				justify    	0
				label      	"+class"
				pctDist    	0.713043
				height     	43
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAEA20370"
			    client     	@45
			    supplier   	@17
			    vertices   	(list Points
				(1435, 472)
				(1290, 472))
			    line_style 	3
			    origin_attachment 	(1435, 472)
			    terminal_attachment 	(1290, 472)
			    label      	(object SegLabel @52
				Parent_View 	@50
				location   	(1351, 426)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	30
				justify    	0
				label      	"0..1"
				pctDist    	0.580357
				height     	47
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$12" @53
		    location   	(1459, 202)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CF7B1D00F6"
		    roleview_list 	(list RoleViews
			(object RoleView "raisedException" @54
			    Parent_View 	@53
			    location   	(115, -502)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @55
				Parent_View 	@54
				location   	(1279, 178)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	264
				justify    	0
				label      	"+raisedException"
				pctDist    	0.416076
				height     	25
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CF7B1F033D"
			    client     	@53
			    supplier   	@32
			    vertices   	(list Points
				(1459, 202)
				(1024, 202))
			    line_style 	3
			    origin_attachment 	(1459, 202)
			    terminal_attachment 	(1024, 202)
			    label      	(object SegLabel @56
				Parent_View 	@54
				location   	(1115, 225)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.790210
				height     	23
				orientation 	0))
			(object RoleView "$UNNAMED$13" @57
			    Parent_View 	@53
			    location   	(115, -502)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CF7B1F0351"
			    client     	@53
			    supplier   	@44
			    vertices   	(list Points
				(1459, 202)
				(1694, 202)
				(1694, 403))
			    line_style 	3
			    origin_attachment 	(1459, 202)
			    terminal_attachment 	(1694, 403)
			    label      	(object SegLabel @58
				Parent_View 	@57
				location   	(1720, 354)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.888235
				height     	26
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$6" @59
		    location   	(1647, 689)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"401DAEB8008C"
		    roleview_list 	(list RoleViews
			(object RoleView "ownedParameter" @60
			    Parent_View 	@59
			    location   	(959, 17)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @61
				Parent_View 	@60
				location   	(1561, 668)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	280
				justify    	0
				label      	"+ownedParameter"
				pctDist    	0.334862
				height     	22
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAEB90119"
			    client     	@59
			    supplier   	@43
			    vertices   	(list Points
				(1647, 689)
				(1391, 689))
			    line_style 	3
			    origin_attachment 	(1647, 689)
			    terminal_attachment 	(1391, 689)
			    label      	(object SegLabel @62
				Parent_View 	@60
				location   	(1421, 713)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.881356
				height     	24
				orientation 	0)
			    label      	(object SegLabel @63
				Parent_View 	@60
				location   	(1486, 757)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	3
				anchor_loc 	1
				nlines     	1
				max_width  	142
				justify    	0
				label      	"{ordered}"
				pctDist    	0.627530
				height     	68
				orientation 	0))
			(object RoleView "operation" @64
			    Parent_View 	@59
			    location   	(959, 17)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @65
				Parent_View 	@64
				location   	(1699, 711)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	172
				justify    	0
				label      	"+operation"
				pctDist    	0.203704
				height     	22
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAEB9011B"
			    client     	@59
			    supplier   	@44
			    vertices   	(list Points
				(1647, 689)
				(1723, 689)
				(1723, 509))
			    line_style 	3
			    origin_attachment 	(1647, 689)
			    terminal_attachment 	(1723, 509)
			    label      	(object SegLabel @66
				Parent_View 	@64
				location   	(1686, 810)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	68
				justify    	0
				label      	"0..1"
				pctDist    	0.152778
				height     	121
				orientation 	1))))
		(object ClassView "Class" "Logical View::EMOF::Type" @67
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(758, 1125)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@67
			location   	(677, 1084)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C78BB303B7"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::DataType" @68
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(526, 1385)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@68
			location   	(424, 1344)
			fill_color 	13434879
			nlines     	1
			max_width  	204
			justify    	0
			label      	"DataType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C78CD10047"
		    width      	222
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Class" @69
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(943, 1387)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@69
			location   	(862, 1346)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Class")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DAE57014A"
		    height     	107
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::PrimitiveType" @70
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(375, 1646)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@70
			location   	(237, 1605)
			fill_color 	13434879
			nlines     	1
			max_width  	276
			justify    	0
			label      	"PrimitiveType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB2DBF02B4"
		    width      	294
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::PrimitiveTypes::Boolean" @71
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(208, 1917)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@71
			location   	(22, 1890)
			fill_color 	13434879
			nlines     	1
			max_width  	372
			justify    	0
			label      	"Boolean")
		    stereotype 	(object ItemLabel
			Parent_View 	@71
			location   	(22, 1840)
			fill_color 	13434879
			anchor     	10
			nlines     	1
			max_width  	372
			justify    	0
			label      	"<<primitive>>")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB2ECB0038"
		    width      	390
		    height     	178
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::PrimitiveTypes::String" @72
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(618, 1917)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@72
			location   	(432, 1890)
			fill_color 	13434879
			nlines     	1
			max_width  	372
			justify    	0
			label      	"String")
		    stereotype 	(object ItemLabel
			Parent_View 	@72
			location   	(432, 1840)
			fill_color 	13434879
			anchor     	10
			nlines     	1
			max_width  	372
			justify    	0
			label      	"<<primitive>>")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB2EDE0252"
		    width      	390
		    height     	178
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::PrimitiveTypes::Integer" @73
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1030, 1917)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@73
			location   	(844, 1890)
			fill_color 	13434879
			nlines     	1
			max_width  	372
			justify    	0
			label      	"Integer")
		    stereotype 	(object ItemLabel
			Parent_View 	@73
			location   	(844, 1840)
			fill_color 	13434879
			anchor     	10
			nlines     	1
			max_width  	372
			justify    	0
			label      	"<<primitive>>")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB2F0E025B"
		    width      	390
		    height     	178
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::PrimitiveTypes::UnlimitedNatural" @74
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1438, 1915)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@74
			location   	(1247, 1888)
			fill_color 	13434879
			nlines     	1
			max_width  	382
			justify    	0
			label      	"UnlimitedNatural")
		    stereotype 	(object ItemLabel
			Parent_View 	@74
			location   	(1247, 1838)
			fill_color 	13434879
			anchor     	10
			nlines     	1
			max_width  	382
			justify    	0
			label      	"<<primitive>>")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB2F2E0366"
		    width      	400
		    height     	178
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::NamedElement" @75
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1423, 1392)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@75
			location   	(1265, 1351)
			fill_color 	13434879
			nlines     	1
			max_width  	316
			justify    	0
			label      	"NamedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C71FFB0153"
		    width      	334
		    height     	107
		    autoResize 	TRUE)
		(object InheritTreeView "" @76
		    location   	(758, 1278)
		    line_color 	3342489
		    fill_color 	16777215
		    supplier   	@67
		    vertices   	(list Points
			(758, 1278)
			(758, 1178)))
		(object InheritView "" @77
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C8BD0F03BF"
		    client     	@68
		    supplier   	@67
		    vertices   	(list Points
			(525, 1332)
			(525, 1278))
		    line_style 	3
		    origin_attachment 	(525, 1332)
		    terminal_attachment 	(525, 1278)
		    drawSupplier 	@76)
		(object InheritView "" @78
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C8BB460259"
		    client     	@69
		    supplier   	@67
		    vertices   	(list Points
			(941, 1334)
			(941, 1278))
		    line_style 	3
		    origin_attachment 	(941, 1334)
		    terminal_attachment 	(941, 1278)
		    drawSupplier 	@76)
		(object InheritTreeView "" @79
		    location   	(526, 1538)
		    line_color 	3342489
		    fill_color 	16777215
		    supplier   	@68
		    vertices   	(list Points
			(526, 1538)
			(526, 1438)))
		(object InheritView "" @80
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CB2FD00156"
		    client     	@70
		    supplier   	@68
		    vertices   	(list Points
			(475, 1592)
			(475, 1538))
		    line_style 	3
		    origin_attachment 	(475, 1592)
		    terminal_attachment 	(475, 1538)
		    drawSupplier 	@79)
		(object ClassView "Class" "Logical View::EMOF::EnumerationLiteral" @81
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1427, 1648)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@81
			location   	(1239, 1607)
			fill_color 	13434879
			nlines     	1
			max_width  	376
			justify    	0
			label      	"EnumerationLiteral")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB2DD003D0"
		    width      	394
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Enumeration" @82
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(753, 1653)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@82
			location   	(622, 1612)
			fill_color 	13434879
			nlines     	1
			max_width  	262
			justify    	0
			label      	"Enumeration")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB2DC702A1"
		    width      	280
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritView "" @83
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CB2FD303BD"
		    client     	@82
		    supplier   	@68
		    vertices   	(list Points
			(760, 1599)
			(760, 1538))
		    line_style 	3
		    origin_attachment 	(760, 1599)
		    terminal_attachment 	(760, 1538)
		    drawSupplier 	@79)
		(object AssociationViewNew "$UNNAMED$10" @84
		    location   	(1061, 1656)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CB30360012"
		    roleview_list 	(list RoleViews
			(object RoleView "ownedLiteral" @85
			    Parent_View 	@84
			    location   	(389, 856)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @86
				Parent_View 	@85
				location   	(1185, 1718)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	222
				justify    	0
				label      	"+ownedLiteral"
				pctDist    	0.736364
				height     	62
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CB30360257"
			    client     	@84
			    supplier   	@81
			    vertices   	(list Points
				(1061, 1656)
				(1230, 1656))
			    line_style 	3
			    origin_attachment 	(1061, 1656)
			    terminal_attachment 	(1230, 1656)
			    label      	(object SegLabel @87
				Parent_View 	@85
				location   	(1212, 1603)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	0)
			    label      	(object SegLabel @88
				Parent_View 	@85
				location   	(1212, 1764)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	3
				anchor_loc 	1
				nlines     	1
				max_width  	142
				justify    	0
				label      	"{ordered}"
				pctDist    	0.893617
				height     	108
				orientation 	1))
			(object RoleView "enumeration" @89
			    Parent_View 	@84
			    location   	(389, 856)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @90
				Parent_View 	@89
				location   	(1033, 1694)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	218
				justify    	0
				label      	"+enumeration"
				pctDist    	0.172727
				height     	38
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CB30360261"
			    client     	@84
			    supplier   	@82
			    vertices   	(list Points
				(1061, 1656)
				(893, 1656))
			    line_style 	3
			    origin_attachment 	(1061, 1656)
			    terminal_attachment 	(893, 1656)
			    label      	(object SegLabel @91
				Parent_View 	@89
				location   	(962, 1608)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	68
				justify    	0
				label      	"0..1"
				pctDist    	0.590909
				height     	49
				orientation 	1))))
		(object InheritView "" @92
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CB30A4013D"
		    client     	@81
		    supplier   	@75
		    vertices   	(list Points
			(1426, 1594)
			(1423, 1445))
		    line_style 	0)
		(object ClassView "Class" "Logical View::EMOF::Extent" @93
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(610, 2542)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@93
			location   	(529, 2501)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Extent")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"406C80C10117"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Package" @94
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(580, 3070)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@94
			location   	(484, 3014)
			fill_color 	13434879
			nlines     	1
			max_width  	192
			justify    	0
			label      	"Package")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DAF280336"
		    width      	210
		    height     	136
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Parameter" @95
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1253, 3434)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@95
			location   	(1139, 3382)
			fill_color 	13434879
			nlines     	1
			max_width  	228
			justify    	0
			label      	"Parameter")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DABF00182"
		    width      	246
		    height     	128
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::MultiplicityElement" @96
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1212, 3996)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@96
			location   	(957, 3865)
			fill_color 	13434879
			nlines     	1
			max_width  	510
			justify    	0
			label      	"MultiplicityElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB3A62025B"
		    width      	528
		    height     	286
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Operation" @97
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1575, 3431)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@97
			location   	(1474, 3379)
			fill_color 	13434879
			nlines     	1
			max_width  	202
			justify    	0
			label      	"Operation")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DACA501B4"
		    width      	220
		    height     	128
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Property" @98
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(656, 3519)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@98
			location   	(382, 3363)
			fill_color 	13434879
			nlines     	1
			max_width  	548
			justify    	0
			label      	"Property")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DADC101B3"
		    width      	566
		    height     	336
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::URIExtent" @99
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(575, 2759)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@99
			location   	(463, 2708)
			fill_color 	13434879
			nlines     	1
			max_width  	224
			justify    	0
			label      	"URIExtent")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40FD18CB0008"
		    width      	242
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Type" @100
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(872, 3071)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@100
			location   	(791, 3019)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C78BB303B7"
		    height     	128
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::TypedElement" @101
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1341, 3068)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@101
			location   	(1193, 3017)
			fill_color 	13434879
			nlines     	1
			max_width  	296
			justify    	0
			label      	"TypedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DB04002F2"
		    width      	314
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$18" @102
		    location   	(1073, 3072)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C78C4F0361"
		    roleview_list 	(list RoleViews
			(object RoleView "type" @103
			    Parent_View 	@102
			    location   	(-143, 2960)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @104
				Parent_View 	@103
				location   	(1007, 3108)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	94
				justify    	0
				label      	"+type"
				pctDist    	0.605769
				height     	36
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C78C500362"
			    client     	@102
			    supplier   	@100
			    vertices   	(list Points
				(1073, 3072)
				(962, 3072))
			    line_style 	3
			    origin_attachment 	(1073, 3072)
			    terminal_attachment 	(962, 3072)
			    label      	(object SegLabel @105
				Parent_View 	@103
				location   	(996, 3032)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	68
				justify    	0
				label      	"0..1"
				pctDist    	0.706522
				height     	41
				orientation 	1))
			(object RoleView "$UNNAMED$19" @106
			    Parent_View 	@102
			    location   	(-143, 2960)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C78C500364"
			    client     	@102
			    supplier   	@101
			    vertices   	(list Points
				(1073, 3072)
				(1184, 3072))
			    line_style 	3
			    origin_attachment 	(1073, 3072)
			    terminal_attachment 	(1184, 3072)
			    label      	(object SegLabel @107
				Parent_View 	@106
				location   	(1172, 3126)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	1))))
		(object InheritView "" @108
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40FD191B0270"
		    client     	@99
		    supplier   	@93
		    vertices   	(list Points
			(603, 2696)
			(603, 2595))
		    line_style 	3
		    origin_attachment 	(603, 2696)
		    terminal_attachment 	(603, 2595))
		(object ClassView "Class" "Logical View::EMOF::Object" @109
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(982, 2308)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@109
			location   	(901, 2267)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Object")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB3AB40137"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object NoteView @110
		    location   	(859, 968)
		    font       	(object Font
			size       	8
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@110
			location   	(612, 909)
			fill_color 	13434879
			nlines     	2
			max_width  	459
			justify    	1
			label      	"EMOF Structuring concepts")
		    line_color 	3342489
		    fill_color 	13434879
		    width      	519
		    height     	131)
		(object NoteView @111
		    location   	(1041, 2133)
		    font       	(object Font
			size       	8
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@111
			location   	(900, 2074)
			fill_color 	13434879
			nlines     	2
			max_width  	246
			justify    	1
			label      	"EMOF Types")
		    line_color 	3342489
		    fill_color 	13434879
		    width      	306
		    height     	131)
		(object NoteView @112
		    location   	(1215, 4386)
		    font       	(object Font
			size       	8
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@112
			location   	(1024, 4330)
			fill_color 	13434879
			nlines     	2
			max_width  	346
			justify    	1
			label      	"EMOF Class hierarchy")
		    line_color 	3342489
		    fill_color 	13434879
		    width      	406
		    height     	125)
		(object InheritTreeView "" @113
		    location   	(1341, 3287)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@101
		    vertices   	(list Points
			(1341, 3287)
			(1341, 3131)))
		(object InheritView "" @114
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"405AF3D00086"
		    client     	@95
		    supplier   	@101
		    vertices   	(list Points
			(1253, 3370)
			(1253, 3287))
		    line_style 	3
		    origin_attachment 	(1253, 3370)
		    terminal_attachment 	(1253, 3287)
		    drawSupplier 	@113)
		(object InheritView "" @115
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C721350304"
		    client     	@97
		    supplier   	@101
		    vertices   	(list Points
			(1575, 3367)
			(1575, 3287))
		    line_style 	3
		    origin_attachment 	(1575, 3367)
		    terminal_attachment 	(1575, 3287)
		    drawSupplier 	@113)
		(object InheritView "" @116
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40FD1028037B"
		    client     	@98
		    supplier   	@101
		    vertices   	(list Points
			(662, 3351)
			(662, 3287))
		    line_style 	3
		    origin_attachment 	(662, 3351)
		    terminal_attachment 	(662, 3287)
		    drawSupplier 	@113)
		(object InheritTreeView "" @117
		    location   	(1212, 3743)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@96
		    vertices   	(list Points
			(1212, 3743)
			(1212, 3853)))
		(object InheritView "" @118
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5A3D00B6"
		    client     	@98
		    supplier   	@96
		    vertices   	(list Points
			(756, 3686)
			(756, 3743))
		    line_style 	3
		    origin_attachment 	(756, 3686)
		    terminal_attachment 	(756, 3743)
		    drawSupplier 	@117)
		(object InheritView "" @119
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5A400314"
		    client     	@95
		    supplier   	@96
		    vertices   	(list Points
			(1253, 3498)
			(1253, 3743))
		    line_style 	3
		    origin_attachment 	(1253, 3498)
		    terminal_attachment 	(1253, 3743)
		    drawSupplier 	@117)
		(object InheritView "" @120
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5A440388"
		    client     	@97
		    supplier   	@96
		    vertices   	(list Points
			(1575, 3495)
			(1575, 3743))
		    line_style 	3
		    origin_attachment 	(1575, 3495)
		    terminal_attachment 	(1575, 3743)
		    drawSupplier 	@117)
		(object InheritView "" @121
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C7212C0116"
		    client     	@93
		    supplier   	@109
		    vertices   	(list Points
			(619, 2489)
			(619, 2299)
			(892, 2299))
		    line_style 	3
		    origin_attachment 	(619, 2489)
		    terminal_attachment 	(892, 2299))
		(object ClassView "Class" "Logical View::EMOF::Element" @122
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(764, 4653)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@122
			location   	(672, 4612)
			fill_color 	13434879
			nlines     	1
			max_width  	184
			justify    	0
			label      	"Element")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C96ABE02EC"
		    width      	202
		    height     	107
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Tag" @123
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1318, 4948)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@123
			location   	(1088, 4867)
			fill_color 	13434879
			nlines     	1
			max_width  	460
			justify    	0
			label      	"Tag")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C93A5E0393"
		    width      	478
		    height     	186
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$14" @124
		    location   	(1222, 4646)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C93AA40221"
		    roleview_list 	(list RoleViews
			(object RoleView "element" @125
			    Parent_View 	@124
			    location   	(-858, 4230)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @126
				Parent_View 	@125
				location   	(976, 4615)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	152
				justify    	0
				label      	"+element"
				pctDist    	0.690236
				height     	32
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C93AA701A3"
			    client     	@124
			    supplier   	@122
			    vertices   	(list Points
				(1222, 4646)
				(865, 4646))
			    line_style 	3
			    origin_attachment 	(1222, 4646)
			    terminal_attachment 	(865, 4646)
			    label      	(object SegLabel @127
				Parent_View 	@125
				location   	(883, 4691)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	68
				justify    	0
				label      	"*"
				pctDist    	0.949765
				height     	45
				orientation 	0))
			(object RoleView "$UNNAMED$15" @128
			    Parent_View 	@124
			    location   	(-858, 4230)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @129
				Parent_View 	@128
				location   	(1424, 4826)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	78
				justify    	0
				label      	""
				pctDist    	0.917883
				height     	55
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C93AA701AD"
			    client     	@124
			    supplier   	@123
			    vertices   	(list Points
				(1222, 4646)
				(1369, 4646)
				(1369, 4855))
			    line_style 	3
			    origin_attachment 	(1222, 4646)
			    terminal_attachment 	(1369, 4855))))
		(object InheritTreeView "" @130
		    location   	(764, 4809)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@122
		    vertices   	(list Points
			(764, 4809)
			(764, 4706)))
		(object InheritView "" @131
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4166BC650106"
		    client     	@123
		    supplier   	@122
		    vertices   	(list Points
			(1215, 4855)
			(1215, 4809))
		    line_style 	3
		    origin_attachment 	(1215, 4855)
		    terminal_attachment 	(1215, 4809)
		    drawSupplier 	@130)
		(object ClassView "Class" "Logical View::EMOF::Element" @132
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(992, 2519)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@132
			location   	(900, 2478)
			fill_color 	13434879
			nlines     	1
			max_width  	184
			justify    	0
			label      	"Element")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C96ABE02EC"
		    width      	202
		    height     	107
		    autoResize 	TRUE)
		(object InheritView "" @133
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5D05034C"
		    client     	@132
		    supplier   	@109
		    vertices   	(list Points
			(988, 2465)
			(984, 2361))
		    line_style 	0)
		(object InheritTreeView "" @134
		    location   	(992, 2675)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@132
		    vertices   	(list Points
			(992, 2675)
			(992, 2572)))
		(object ClassView "Class" "Logical View::EMOF::NamedElement" @135
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1018, 2791)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@135
			location   	(822, 2735)
			fill_color 	13434879
			nlines     	1
			max_width  	392
			justify    	0
			label      	"NamedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C71FFB0153"
		    width      	410
		    height     	136
		    autoResize 	TRUE)
		(object InheritTreeView "" @136
		    location   	(1018, 2950)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@135
		    vertices   	(list Points
			(1018, 2950)
			(1018, 2859)))
		(object InheritView "" @137
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C7213A0347"
		    client     	@94
		    supplier   	@135
		    vertices   	(list Points
			(584, 3002)
			(584, 2950))
		    line_style 	3
		    origin_attachment 	(584, 3002)
		    terminal_attachment 	(584, 2950)
		    drawSupplier 	@136)
		(object InheritView "" @138
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C720EF03DF"
		    client     	@100
		    supplier   	@135
		    vertices   	(list Points
			(881, 3007)
			(881, 2950))
		    line_style 	3
		    origin_attachment 	(881, 3007)
		    terminal_attachment 	(881, 2950)
		    drawSupplier 	@136)
		(object InheritView "" @139
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C72126038E"
		    client     	@101
		    supplier   	@135
		    vertices   	(list Points
			(1330, 3004)
			(1330, 2950))
		    line_style 	3
		    origin_attachment 	(1330, 3004)
		    terminal_attachment 	(1330, 2950)
		    drawSupplier 	@136)
		(object InheritView "" @140
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C96AC7021D"
		    client     	@135
		    supplier   	@132
		    vertices   	(list Points
			(887, 2722)
			(887, 2675))
		    line_style 	3
		    origin_attachment 	(887, 2722)
		    terminal_attachment 	(887, 2675)
		    drawSupplier 	@134)
		(object ClassView "Class" "Logical View::EMOF::Comment" @141
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1740, 2785)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@141
			location   	(1598, 2729)
			fill_color 	13434879
			nlines     	1
			max_width  	284
			justify    	0
			label      	"Comment")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"428B5D6A03A3"
		    width      	302
		    height     	136
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritView "" @142
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5DE10214"
		    client     	@141
		    supplier   	@132
		    vertices   	(list Points
			(1661, 2716)
			(1661, 2675))
		    line_style 	3
		    origin_attachment 	(1661, 2716)
		    terminal_attachment 	(1661, 2675)
		    drawSupplier 	@134)
		(object AssociationViewNew "$UNNAMED$0" @143
		    location   	(1521, 2486)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5DF50209"
		    roleview_list 	(list RoleViews
			(object RoleView "ownedComment" @144
			    Parent_View 	@143
			    location   	(529, -33)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @145
				Parent_View 	@144
				location   	(1678, 2632)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	272
				justify    	0
				label      	"+ownedComment"
				pctDist    	0.801519
				height     	42
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"428B5DFB014A"
			    client     	@143
			    supplier   	@141
			    vertices   	(list Points
				(1521, 2486)
				(1719, 2486)
				(1719, 2717))
			    line_style 	3
			    origin_attachment 	(1521, 2486)
			    terminal_attachment 	(1719, 2717)
			    label      	(object SegLabel @146
				Parent_View 	@144
				location   	(1773, 2673)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	0))
			(object RoleView "$UNNAMED$1" @147
			    Parent_View 	@143
			    location   	(529, -33)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @148
				Parent_View 	@147
				location   	(1180, 2445)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	332
				justify    	0
				label      	""
				pctDist    	0.800000
				height     	42
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"428B5DFB014C"
			    client     	@143
			    supplier   	@132
			    vertices   	(list Points
				(1521, 2486)
				(1093, 2486))
			    line_style 	3
			    origin_attachment 	(1521, 2486)
			    terminal_attachment 	(1093, 2486))))
		(object AssociationViewNew "$UNNAMED$2" @149
		    location   	(1406, 2785)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5E1400CE"
		    roleview_list 	(list RoleViews
			(object RoleView "annotatedElement" @150
			    Parent_View 	@149
			    location   	(-266, -1)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @151
				Parent_View 	@150
				location   	(1378, 2746)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	306
				justify    	0
				label      	"+annotatedElement"
				pctDist    	0.155583
				height     	40
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"428B5E140381"
			    client     	@149
			    supplier   	@135
			    vertices   	(list Points
				(1406, 2785)
				(1223, 2785))
			    line_style 	3
			    origin_attachment 	(1406, 2785)
			    terminal_attachment 	(1223, 2785)
			    label      	(object SegLabel @152
				Parent_View 	@150
				location   	(1242, 2839)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	0))
			(object RoleView "$UNNAMED$3" @153
			    Parent_View 	@149
			    location   	(-266, -1)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @154
				Parent_View 	@153
				location   	(1474, 2819)
				font       	(object Font
				    size       	8
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	272
				justify    	0
				label      	""
				pctDist    	0.374384
				height     	34
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"428B5E140395"
			    client     	@149
			    supplier   	@141
			    vertices   	(list Points
				(1406, 2785)
				(1589, 2785))
			    line_style 	3
			    origin_attachment 	(1406, 2785)
			    terminal_attachment 	(1589, 2785))))
		(object ClassView "Class" "Logical View::PrimitiveTypes::Real" @155
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1843, 1915)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@155
			location   	(1657, 1888)
			fill_color 	13434879
			nlines     	1
			max_width  	372
			justify    	0
			label      	"Real")
		    stereotype 	(object ItemLabel
			Parent_View 	@155
			location   	(1657, 1838)
			fill_color 	13434879
			anchor     	10
			nlines     	1
			max_width  	372
			justify    	0
			label      	"<<primitive>>")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40CB2EFC0101"
		    width      	390
		    height     	178
		    annotation 	8
		    autoResize 	TRUE)))
	(object ClassDiagram "EMOF Classes"
	    quid       	"46DFEF6D01F6"
	    title      	"EMOF Classes"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::MultiplicityElement" @156
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2258, 197)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@156
			location   	(2003, 66)
			fill_color 	13434879
			nlines     	1
			max_width  	510
			justify    	0
			label      	"MultiplicityElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40CB3A62025B"
		    width      	528
		    height     	286
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::TypedElement" @157
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1258, 237)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@157
			location   	(1110, 196)
			fill_color 	13434879
			nlines     	1
			max_width  	296
			justify    	0
			label      	"TypedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DB04002F2"
		    width      	314
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Property" @158
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2066, 792)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@158
			location   	(1744, 636)
			fill_color 	13434879
			nlines     	1
			max_width  	644
			justify    	0
			label      	"Property")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DADC101B3"
		    width      	662
		    height     	336
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$16" @159
		    location   	(2057, 1144)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CF7B86018D"
		    roleview_list 	(list RoleViews
			(object RoleView "opposite" @160
			    Parent_View 	@159
			    location   	(354, 347)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @161
				Parent_View 	@160
				location   	(1768, 1033)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	180
				justify    	0
				label      	"+opposite"
				pctDist    	0.658316
				height     	99
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CF7B8901E1"
			    client     	@159
			    supplier   	@158
			    vertices   	(list Points
				(2057, 1144)
				(1810, 1141)
				(1942, 960))
			    line_style 	0
			    label      	(object SegLabel @162
				Parent_View 	@160
				location   	(1958, 1033)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..1"
				pctDist    	0.896804
				height     	56
				orientation 	1))
			(object RoleView "$UNNAMED$17" @163
			    Parent_View 	@159
			    location   	(354, 347)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @164
				Parent_View 	@163
				location   	(2352, 1007)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	236
				justify    	0
				label      	""
				pctDist    	0.713440
				height     	118
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CF7B8901F5"
			    client     	@159
			    supplier   	@158
			    vertices   	(list Points
				(2057, 1144)
				(2304, 1147)
				(2179, 960))
			    line_style 	0)))
		(object ClassView "Class" "Logical View::EMOF::Parameter" @165
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2501, 1471)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@165
			location   	(2387, 1430)
			fill_color 	13434879
			nlines     	1
			max_width  	228
			justify    	0
			label      	"Parameter")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DABF00182"
		    width      	246
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Class" @166
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(444, 1090)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@166
			location   	(134, 615)
			fill_color 	13434879
			nlines     	1
			max_width  	620
			justify    	0
			label      	"Class")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DAE57014A"
		    width      	638
		    height     	975
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$8" @167
		    location   	(965, 1114)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C9329A0305"
		    roleview_list 	(list RoleViews
			(object RoleView "superClass" @168
			    Parent_View 	@167
			    location   	(484, 170)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @169
				Parent_View 	@168
				location   	(880, 1244)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	231
				justify    	0
				label      	"+superClass"
				pctDist    	0.559880
				height     	52
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9329F00EF"
			    client     	@167
			    supplier   	@166
			    vertices   	(list Points
				(965, 1114)
				(963, 1209)
				(763, 1163))
			    line_style 	0
			    label      	(object SegLabel @170
				Parent_View 	@168
				location   	(836, 1142)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.778788
				height     	37
				orientation 	1))
			(object RoleView "$UNNAMED$9" @171
			    Parent_View 	@167
			    location   	(484, 170)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @172
				Parent_View 	@171
				location   	(900, 973)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	259
				justify    	0
				label      	""
				pctDist    	0.515736
				height     	54
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9329F0103"
			    client     	@167
			    supplier   	@166
			    vertices   	(list Points
				(965, 1114)
				(966, 1019)
				(763, 1045))
			    line_style 	0)))
		(object AssociationViewNew "$UNNAMED$4" @173
		    location   	(1239, 793)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"401DAE9E00DE"
		    roleview_list 	(list RoleViews
			(object RoleView "class" @174
			    Parent_View 	@173
			    location   	(-464, -4)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @175
				Parent_View 	@174
				location   	(905, 853)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	136
				justify    	0
				label      	"+class"
				pctDist    	0.675055
				height     	59
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAE9F00BA"
			    client     	@173
			    supplier   	@166
			    vertices   	(list Points
				(1239, 793)
				(850, 794)
				(763, 855))
			    line_style 	0
			    label      	(object SegLabel @176
				Parent_View 	@174
				location   	(812, 761)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..1"
				pctDist    	0.810383
				height     	49
				orientation 	1))
			(object RoleView "ownedAttribute" @177
			    Parent_View 	@173
			    location   	(-464, -4)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @178
				Parent_View 	@177
				location   	(1567, 727)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	294
				justify    	0
				label      	"+ownedAttribute"
				pctDist    	0.663376
				height     	66
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAE9F00B8"
			    client     	@173
			    supplier   	@158
			    vertices   	(list Points
				(1239, 793)
				(1734, 792))
			    line_style 	0
			    label      	(object SegLabel @179
				Parent_View 	@177
				location   	(1684, 846)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	1)
			    label      	(object SegLabel @180
				Parent_View 	@177
				location   	(1611, 886)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	3
				anchor_loc 	1
				nlines     	1
				max_width  	159
				justify    	0
				label      	"{ordered}"
				pctDist    	0.753342
				height     	94
				orientation 	1))))
		(object ClassView "Class" "Logical View::EMOF::Operation" @181
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1359, 1468)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@181
			location   	(1258, 1417)
			fill_color 	13434879
			nlines     	1
			max_width  	202
			justify    	0
			label      	"Operation")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DACA501B4"
		    width      	220
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$6" @182
		    location   	(1923, 1469)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"401DAEB8008C"
		    label      	(object SegLabel @183
			Parent_View 	@182
			location   	(2258, 1557)
			font       	(object Font
			    size       	10
			    face       	"Arial"
			    bold       	FALSE
			    italics    	FALSE
			    underline  	FALSE
			    strike     	FALSE
			    color      	0
			    default_color 	TRUE)
			anchor     	2
			anchor_loc 	1
			nlines     	1
			max_width  	300
			justify    	0
			label      	"{ordered}"
			pctDist    	6.100000
			height     	88
			orientation 	1)
		    roleview_list 	(list RoleViews
			(object RoleView "operation" @184
			    Parent_View 	@182
			    location   	(-4, 241)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @185
				Parent_View 	@184
				location   	(1615, 1402)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	191
				justify    	0
				label      	"+operation"
				pctDist    	0.678663
				height     	67
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAEB9011B"
			    client     	@182
			    supplier   	@181
			    vertices   	(list Points
				(1923, 1469)
				(1469, 1468))
			    line_style 	0
			    label      	(object SegLabel @186
				Parent_View 	@184
				location   	(1545, 1538)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..1"
				pctDist    	0.835476
				height     	70
				orientation 	0))
			(object RoleView "ownedParameter" @187
			    Parent_View 	@182
			    location   	(-4, 241)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @188
				Parent_View 	@187
				location   	(2149, 1416)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	337
				justify    	0
				label      	"+ownedParameter"
				pctDist    	0.497436
				height     	54
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAEB90119"
			    client     	@182
			    supplier   	@165
			    vertices   	(list Points
				(1923, 1469)
				(2377, 1470))
			    line_style 	0
			    label      	(object SegLabel @189
				Parent_View 	@187
				location   	(2331, 1524)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$5" @190
		    location   	(985, 1471)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"401DAEA10382"
		    roleview_list 	(list RoleViews
			(object RoleView "class" @191
			    Parent_View 	@190
			    location   	(-327, 230)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @192
				Parent_View 	@191
				location   	(844, 1332)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	136
				justify    	0
				label      	"+class"
				pctDist    	0.854910
				height     	78
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAEA20370"
			    client     	@190
			    supplier   	@166
			    vertices   	(list Points
				(985, 1471)
				(888, 1472)
				(763, 1364))
			    line_style 	0
			    label      	(object SegLabel @193
				Parent_View 	@191
				location   	(822, 1507)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..1"
				pctDist    	0.481962
				height     	70
				orientation 	0))
			(object RoleView "ownedOperation" @194
			    Parent_View 	@190
			    location   	(-327, 230)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @195
				Parent_View 	@194
				location   	(1079, 1413)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	316
				justify    	0
				label      	"+ownedOperation"
				pctDist    	0.359163
				height     	58
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAEA20365"
			    client     	@190
			    supplier   	@181
			    vertices   	(list Points
				(985, 1471)
				(1248, 1468))
			    line_style 	0
			    label      	(object SegLabel @196
				Parent_View 	@194
				location   	(1216, 1504)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.878313
				height     	36
				orientation 	1)
			    label      	(object SegLabel @197
				Parent_View 	@194
				location   	(1159, 1547)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	3
				anchor_loc 	1
				nlines     	1
				max_width  	159
				justify    	0
				label      	"{ordered}"
				pctDist    	0.662926
				height     	78
				orientation 	1))))
		(object ClassView "Class" "Logical View::EMOF::Type" @198
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(440, 237)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@198
			location   	(359, 196)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C78BB303B7"
		    height     	107
		    autoResize 	TRUE)
		(object InheritView "" @199
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C8BB460259"
		    client     	@166
		    supplier   	@198
		    vertices   	(list Points
			(441, 602)
			(440, 290))
		    line_style 	0)
		(object AssociationViewNew "$UNNAMED$12" @200
		    location   	(61, 1651)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CF7B1D00F6"
		    roleview_list 	(list RoleViews
			(object RoleView "$UNNAMED$13" @201
			    Parent_View 	@200
			    location   	(-464, 1329)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @202
				Parent_View 	@201
				location   	(1295, 1847)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	450
				justify    	0
				label      	""
				pctDist    	0.800000
				height     	42
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CF7B1F0351"
			    client     	@200
			    supplier   	@181
			    vertices   	(list Points
				(61, 1651)
				(63, 1791)
				(1363, 1806)
				(1359, 1531))
			    line_style 	0
			    label      	(object SegLabel @203
				Parent_View 	@201
				location   	(1399, 1614)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.952249
				height     	39
				orientation 	1))
			(object RoleView "raisedException" @204
			    Parent_View 	@200
			    location   	(-464, 1329)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @205
				Parent_View 	@204
				location   	(200, 164)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	332
				justify    	0
				label      	"+raisedException"
				pctDist    	0.914226
				height     	77
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CF7B1F033D"
			    client     	@200
			    supplier   	@198
			    vertices   	(list Points
				(61, 1651)
				(41, 244)
				(349, 237))
			    line_style 	0
			    label      	(object SegLabel @206
				Parent_View 	@204
				location   	(302, 299)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.972285
				height     	61
				orientation 	1))))
		(object InheritTreeView "" @207
		    location   	(2258, 450)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@156
		    vertices   	(list Points
			(2258, 450)
			(2258, 340)))
		(object InheritView "" @208
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5A400314"
		    client     	@165
		    supplier   	@156
		    vertices   	(list Points
			(2579, 1418)
			(2579, 450))
		    line_style 	3
		    origin_attachment 	(2579, 1418)
		    terminal_attachment 	(2579, 450)
		    drawSupplier 	@207)
		(object InheritView "" @209
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5A3D00B6"
		    client     	@158
		    supplier   	@156
		    vertices   	(list Points
			(2204, 624)
			(2204, 450))
		    line_style 	3
		    origin_attachment 	(2204, 624)
		    terminal_attachment 	(2204, 450)
		    drawSupplier 	@207)
		(object InheritView "" @210
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5A440388"
		    client     	@181
		    supplier   	@156
		    vertices   	(list Points
			(1375, 1405)
			(1375, 450))
		    line_style 	3
		    origin_attachment 	(1375, 1405)
		    terminal_attachment 	(1375, 450)
		    drawSupplier 	@207)
		(object InheritTreeView "" @211
		    location   	(1258, 556)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@157
		    vertices   	(list Points
			(1258, 556)
			(1258, 290)))
		(object InheritView "" @212
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"405AF3D00086"
		    client     	@165
		    supplier   	@157
		    vertices   	(list Points
			(2482, 1417)
			(2482, 556))
		    line_style 	3
		    origin_attachment 	(2482, 1417)
		    terminal_attachment 	(2482, 556)
		    drawSupplier 	@211)
		(object InheritView "" @213
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40FD1028037B"
		    client     	@158
		    supplier   	@157
		    vertices   	(list Points
			(1847, 623)
			(1847, 556))
		    line_style 	3
		    origin_attachment 	(1847, 623)
		    terminal_attachment 	(1847, 556)
		    drawSupplier 	@211)
		(object InheritView "" @214
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C721350304"
		    client     	@181
		    supplier   	@157
		    vertices   	(list Points
			(1328, 1405)
			(1328, 556))
		    line_style 	3
		    origin_attachment 	(1328, 1405)
		    terminal_attachment 	(1328, 556)
		    drawSupplier 	@211)))
	(object ClassDiagram "EMOF Data Types"
	    quid       	"46DFEFDB006A"
	    title      	"EMOF Data Types"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::NamedElement" @215
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(597, 169)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@215
			location   	(439, 113)
			fill_color 	13434879
			nlines     	1
			max_width  	316
			justify    	0
			label      	"NamedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C71FFB0153"
		    width      	334
		    height     	136
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::DataType" @216
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(595, 846)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@216
			location   	(493, 795)
			fill_color 	13434879
			nlines     	1
			max_width  	204
			justify    	0
			label      	"DataType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C78CD10047"
		    width      	222
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::PrimitiveType" @217
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(210, 1184)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@217
			location   	(72, 1143)
			fill_color 	13434879
			nlines     	1
			max_width  	276
			justify    	0
			label      	"PrimitiveType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40CB2DBF02B4"
		    width      	294
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Type" @218
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(597, 537)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@218
			location   	(266, 481)
			fill_color 	13434879
			nlines     	1
			max_width  	662
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C78BB303B7"
		    width      	680
		    height     	136
		    autoResize 	TRUE)
		(object InheritView "" @219
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C8BD0F03BF"
		    client     	@216
		    supplier   	@218
		    vertices   	(list Points
			(595, 782)
			(596, 605))
		    line_style 	0)
		(object ClassView "Class" "Logical View::EMOF::Enumeration" @220
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(691, 1178)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@220
			location   	(560, 1137)
			fill_color 	13434879
			nlines     	1
			max_width  	262
			justify    	0
			label      	"Enumeration")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40CB2DC702A1"
		    width      	280
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::EnumerationLiteral" @221
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1683, 1171)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@221
			location   	(1495, 1130)
			fill_color 	13434879
			nlines     	1
			max_width  	376
			justify    	0
			label      	"EnumerationLiteral")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40CB2DD003D0"
		    width      	394
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$10" @222
		    location   	(1158, 1173)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CB30360012"
		    roleview_list 	(list RoleViews
			(object RoleView "enumeration" @223
			    Parent_View 	@222
			    location   	(-511, 123)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @224
				Parent_View 	@223
				location   	(982, 1117)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	247
				justify    	0
				label      	"+enumeration"
				pctDist    	0.541427
				height     	59
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CB30360261"
			    client     	@222
			    supplier   	@220
			    vertices   	(list Points
				(1158, 1173)
				(831, 1175))
			    line_style 	0
			    label      	(object SegLabel @225
				Parent_View 	@223
				location   	(911, 1232)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..1"
				pctDist    	0.757756
				height     	57
				orientation 	0))
			(object RoleView "ownedLiteral" @226
			    Parent_View 	@222
			    location   	(-511, 123)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @227
				Parent_View 	@226
				location   	(1294, 1118)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	256
				justify    	0
				label      	"+ownedLiteral"
				pctDist    	0.417608
				height     	55
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40CB30360257"
			    client     	@222
			    supplier   	@221
			    vertices   	(list Points
				(1158, 1173)
				(1485, 1171))
			    line_style 	0
			    label      	(object SegLabel @228
				Parent_View 	@226
				location   	(1451, 1225)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	1)
			    label      	(object SegLabel @229
				Parent_View 	@226
				location   	(1452, 1279)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	3
				anchor_loc 	1
				nlines     	1
				max_width  	159
				justify    	0
				label      	"{ordered}"
				pctDist    	0.900000
				height     	108
				orientation 	1))))
		(object InheritTreeView "" @230
		    location   	(595, 1009)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@216
		    vertices   	(list Points
			(595, 1009)
			(595, 909)))
		(object InheritView "" @231
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CB2FD303BD"
		    client     	@220
		    supplier   	@216
		    vertices   	(list Points
			(672, 1125)
			(672, 1009))
		    line_style 	3
		    origin_attachment 	(672, 1125)
		    terminal_attachment 	(672, 1009)
		    drawSupplier 	@230)
		(object InheritView "" @232
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CB2FD00156"
		    client     	@217
		    supplier   	@216
		    vertices   	(list Points
			(209, 1131)
			(209, 1009))
		    line_style 	3
		    origin_attachment 	(209, 1131)
		    terminal_attachment 	(209, 1009)
		    drawSupplier 	@230)
		(object InheritTreeView "" @233
		    location   	(597, 356)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@215
		    vertices   	(list Points
			(597, 356)
			(597, 237)))
		(object InheritView "" @234
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C720EF03DF"
		    client     	@218
		    supplier   	@215
		    vertices   	(list Points
			(597, 469)
			(597, 356))
		    line_style 	3
		    origin_attachment 	(597, 469)
		    terminal_attachment 	(597, 356)
		    drawSupplier 	@233)
		(object InheritView "" @235
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40CB30A4013D"
		    client     	@221
		    supplier   	@215
		    vertices   	(list Points
			(1681, 1118)
			(1681, 356))
		    line_style 	3
		    origin_attachment 	(1681, 1118)
		    terminal_attachment 	(1681, 356)
		    drawSupplier 	@233)))
	(object ClassDiagram "EMOF Packages"
	    quid       	"46DFF0CB01A8"
	    title      	"EMOF Packages"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::NamedElement" @236
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(547, 222)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@236
			location   	(389, 166)
			fill_color 	13434879
			nlines     	1
			max_width  	316
			justify    	0
			label      	"NamedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C71FFB0153"
		    width      	334
		    height     	136
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Package" @237
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(539, 715)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@237
			location   	(443, 659)
			fill_color 	13434879
			nlines     	1
			max_width  	192
			justify    	0
			label      	"Package")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DAF280336"
		    width      	210
		    height     	136
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$11" @238
		    location   	(163, 963)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40D034FE0047"
		    roleview_list 	(list RoleViews
			(object RoleView "nestedPackage" @239
			    Parent_View 	@238
			    location   	(-543, 260)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @240
				Parent_View 	@239
				location   	(247, 654)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	306
				justify    	0
				label      	"+nestedPackage"
				pctDist    	0.708629
				height     	64
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40D035000307"
			    client     	@238
			    supplier   	@237
			    vertices   	(list Points
				(163, 963)
				(103, 963)
				(103, 719)
				(433, 715))
			    line_style 	0
			    label      	(object SegLabel @241
				Parent_View 	@239
				location   	(371, 770)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	1))
			(object RoleView "nestingPackage" @242
			    Parent_View 	@238
			    location   	(-543, 260)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @243
				Parent_View 	@242
				location   	(739, 868)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	318
				justify    	0
				label      	"+nestingPackage"
				pctDist    	0.858362
				height     	205
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40D035000311"
			    client     	@238
			    supplier   	@237
			    vertices   	(list Points
				(163, 963)
				(531, 966)
				(536, 783))
			    line_style 	0
			    label      	(object SegLabel @244
				Parent_View 	@242
				location   	(481, 839)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..1"
				pctDist    	0.900000
				height     	54
				orientation 	0))))
		(object ClassView "Class" "Logical View::EMOF::Type" @245
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1528, 712)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@245
			location   	(1447, 671)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C78BB303B7"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$7" @246
		    location   	(1040, 713)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"401DAF3400E4"
		    roleview_list 	(list RoleViews
			(object RoleView "package " @247
			    Parent_View 	@246
			    location   	(-382, -9)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @248
				Parent_View 	@247
				location   	(783, 665)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	193
				justify    	0
				label      	"+package "
				pctDist    	0.652382
				height     	50
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAF340353"
			    client     	@246
			    supplier   	@237
			    vertices   	(list Points
				(1040, 713)
				(644, 714))
			    line_style 	0
			    label      	(object SegLabel @249
				Parent_View 	@247
				location   	(789, 767)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..1"
				pctDist    	0.636841
				height     	53
				orientation 	0))
			(object RoleView "ownedType" @250
			    Parent_View 	@246
			    location   	(-382, -9)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @251
				Parent_View 	@250
				location   	(1275, 665)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	234
				justify    	0
				label      	"+ownedType"
				pctDist    	0.590931
				height     	48
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"401DAF340351"
			    client     	@246
			    supplier   	@245
			    vertices   	(list Points
				(1040, 713)
				(1437, 712))
			    line_style 	0
			    label      	(object SegLabel @252
				Parent_View 	@250
				location   	(1396, 766)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	1))))
		(object InheritTreeView "" @253
		    location   	(547, 403)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@236
		    vertices   	(list Points
			(547, 403)
			(547, 290)))
		(object InheritView "" @254
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C7213A0347"
		    client     	@237
		    supplier   	@236
		    vertices   	(list Points
			(547, 647)
			(547, 403))
		    line_style 	3
		    origin_attachment 	(547, 647)
		    terminal_attachment 	(547, 403)
		    drawSupplier 	@253)))
	(object ClassDiagram "EMOF Types"
	    quid       	"46DFF1860009"
	    title      	"EMOF Types"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::Element" @255
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(937, 131)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@255
			location   	(845, 90)
			fill_color 	13434879
			nlines     	1
			max_width  	184
			justify    	0
			label      	"Element")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C96ABE02EC"
		    width      	202
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Comment" @256
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1453, 625)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@256
			location   	(1336, 569)
			fill_color 	13434879
			nlines     	1
			max_width  	234
			justify    	0
			label      	"Comment")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"428B5D6A03A3"
		    width      	252
		    height     	136
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$0" @257
		    location   	(1731, 128)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5DF50209"
		    roleview_list 	(list RoleViews
			(object RoleView "$UNNAMED$1" @258
			    Parent_View 	@257
			    location   	(281, -478)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @259
				Parent_View 	@258
				location   	(1223, 80)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	450
				justify    	0
				label      	""
				pctDist    	0.734986
				height     	50
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"428B5DFB014C"
			    client     	@257
			    supplier   	@255
			    vertices   	(list Points
				(1731, 128)
				(1038, 130))
			    line_style 	0)
			(object RoleView "ownedComment" @260
			    Parent_View 	@257
			    location   	(281, -478)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @261
				Parent_View 	@260
				location   	(1760, 671)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	323
				justify    	0
				label      	"+ownedComment"
				pctDist    	0.768337
				height     	44
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"428B5DFB014A"
			    client     	@257
			    supplier   	@256
			    vertices   	(list Points
				(1731, 128)
				(1791, 128)
				(1797, 628)
				(1579, 625))
			    line_style 	0
			    label      	(object SegLabel @262
				Parent_View 	@260
				location   	(1617, 589)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.952636
				height     	38
				orientation 	1))))
		(object ClassView "Class" "Logical View::EMOF::NamedElement" @263
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(350, 622)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@263
			location   	(192, 566)
			fill_color 	13434879
			nlines     	1
			max_width  	316
			justify    	0
			label      	"NamedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C71FFB0153"
		    width      	334
		    height     	136
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$2" @264
		    location   	(921, 623)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5E1400CE"
		    roleview_list 	(list RoleViews
			(object RoleView "$UNNAMED$3" @265
			    Parent_View 	@264
			    location   	(277, -11)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @266
				Parent_View 	@265
				location   	(1139, 580)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	318
				justify    	0
				label      	""
				pctDist    	0.538364
				height     	45
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"428B5E140395"
			    client     	@264
			    supplier   	@256
			    vertices   	(list Points
				(921, 623)
				(1326, 624))
			    line_style 	0)
			(object RoleView "annotatedElement" @267
			    Parent_View 	@264
			    location   	(277, -11)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @268
				Parent_View 	@267
				location   	(761, 583)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	358
				justify    	0
				label      	"+annotatedElement"
				pctDist    	0.396341
				height     	41
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"428B5E140381"
			    client     	@264
			    supplier   	@263
			    vertices   	(list Points
				(921, 623)
				(517, 622))
			    line_style 	0
			    label      	(object SegLabel @269
				Parent_View 	@267
				location   	(557, 676)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	0))))
		(object ClassView "Class" "Logical View::EMOF::TypedElement" @270
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(306, 1019)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@270
			location   	(158, 978)
			fill_color 	13434879
			nlines     	1
			max_width  	296
			justify    	0
			label      	"TypedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DB04002F2"
		    width      	314
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Type" @271
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(1387, 1025)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@271
			location   	(1056, 969)
			fill_color 	13434879
			nlines     	1
			max_width  	662
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C78BB303B7"
		    width      	680
		    height     	136
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$18" @272
		    location   	(754, 1020)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C78C4F0361"
		    roleview_list 	(list RoleViews
			(object RoleView "$UNNAMED$19" @273
			    Parent_View 	@272
			    location   	(-530, -2)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @274
				Parent_View 	@273
				location   	(521, 978)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	450
				justify    	0
				label      	""
				pctDist    	0.800000
				height     	42
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C78C500364"
			    client     	@272
			    supplier   	@270
			    vertices   	(list Points
				(754, 1020)
				(463, 1019))
			    line_style 	0
			    label      	(object SegLabel @275
				Parent_View 	@273
				location   	(492, 1073)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	0))
			(object RoleView "type" @276
			    Parent_View 	@272
			    location   	(-530, -2)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @277
				Parent_View 	@276
				location   	(935, 982)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	108
				justify    	0
				label      	"+type"
				pctDist    	0.618646
				height     	40
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C78C500362"
			    client     	@272
			    supplier   	@271
			    vertices   	(list Points
				(754, 1020)
				(1046, 1021))
			    line_style 	0
			    label      	(object SegLabel @278
				Parent_View 	@276
				location   	(973, 1072)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..1"
				pctDist    	0.752207
				height     	51
				orientation 	1))))
		(object InheritTreeView "" @279
		    location   	(937, 403)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@255
		    vertices   	(list Points
			(937, 403)
			(937, 184)))
		(object InheritView "" @280
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C96AC7021D"
		    client     	@263
		    supplier   	@255
		    vertices   	(list Points
			(391, 554)
			(391, 403))
		    line_style 	3
		    origin_attachment 	(391, 554)
		    terminal_attachment 	(391, 403)
		    drawSupplier 	@279)
		(object InheritView "" @281
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5DE10214"
		    client     	@256
		    supplier   	@255
		    vertices   	(list Points
			(1409, 556)
			(1409, 403))
		    line_style 	3
		    origin_attachment 	(1409, 556)
		    terminal_attachment 	(1409, 403)
		    drawSupplier 	@279)
		(object InheritTreeView "" @282
		    location   	(350, 850)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@263
		    vertices   	(list Points
			(350, 850)
			(350, 690)))
		(object InheritView "" @283
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C72126038E"
		    client     	@270
		    supplier   	@263
		    vertices   	(list Points
			(326, 965)
			(326, 850))
		    line_style 	3
		    origin_attachment 	(326, 965)
		    terminal_attachment 	(326, 850)
		    drawSupplier 	@282)
		(object InheritView "" @284
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C720EF03DF"
		    client     	@271
		    supplier   	@263
		    vertices   	(list Points
			(1388, 957)
			(1388, 850))
		    line_style 	3
		    origin_attachment 	(1388, 957)
		    terminal_attachment 	(1388, 850)
		    drawSupplier 	@282)))
	(object ClassDiagram "Reflection"
	    quid       	"46DFF70C01FC"
	    title      	"Reflection"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::Element" @285
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(1522, 528)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@285
			location   	(1166, 322)
			fill_color 	13434879
			nlines     	1
			max_width  	712
			justify    	0
			label      	"Element")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C96ABE02EC"
		    width      	730
		    height     	436
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Object" @286
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1523, 115)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@286
			location   	(1442, 74)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Object")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40CB3AB40137"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritView "" @287
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"428B5D05034C"
		    client     	@285
		    supplier   	@286
		    vertices   	(list Points
			(1522, 309)
			(1522, 168))
		    line_style 	0)
		(object ClassView "Class" "Logical View::EMOF::NamedElement" @288
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(872, 1112)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@288
			location   	(714, 1071)
			fill_color 	13434879
			nlines     	1
			max_width  	316
			justify    	0
			label      	"NamedElement")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C71FFB0153"
		    width      	334
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Type" @289
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(1041, 1712)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@289
			location   	(710, 1656)
			fill_color 	13434879
			nlines     	1
			max_width  	662
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C78BB303B7"
		    width      	680
		    height     	136
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Package" @290
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1946, 1540)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@290
			location   	(1852, 1499)
			fill_color 	13434879
			nlines     	1
			max_width  	188
			justify    	0
			label      	"Package")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DAF280336"
		    width      	206
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Factory" @291
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(1945, 1115)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@291
			location   	(1374, 1009)
			fill_color 	13434879
			nlines     	1
			max_width  	1142
			justify    	0
			label      	"Factory")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"3E553D13014D"
		    width      	1160
		    height     	236
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$20" @292
		    location   	(1945, 1359)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"46DFF9A00336"
		    roleview_list 	(list RoleViews
			(object RoleView "package" @293
			    Parent_View 	@292
			    location   	(-30, 853)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @294
				Parent_View 	@293
				location   	(1817, 1432)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	185
				justify    	0
				label      	"+package"
				pctDist    	0.574803
				height     	129
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"46DFF9A200F4"
			    client     	@292
			    supplier   	@290
			    vertices   	(list Points
				(1945, 1359)
				(1945, 1486))
			    line_style 	0
			    label      	(object SegLabel @295
				Parent_View 	@293
				location   	(2013, 1438)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"1"
				pctDist    	0.622047
				height     	68
				orientation 	0))
			(object RoleView "$UNNAMED$21" @296
			    Parent_View 	@292
			    location   	(-30, 853)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @297
				Parent_View 	@296
				location   	(1904, 1259)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	185
				justify    	0
				label      	""
				pctDist    	0.800000
				height     	42
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"46DFF9A20123"
			    client     	@292
			    supplier   	@291
			    vertices   	(list Points
				(1945, 1359)
				(1945, 1233))
			    line_style 	0
			    label      	(object SegLabel @298
				Parent_View 	@296
				location   	(1999, 1275)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"0..*"
				pctDist    	0.666667
				height     	54
				orientation 	1))))
		(object InheritTreeView "" @299
		    location   	(1522, 869)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@285
		    vertices   	(list Points
			(1522, 869)
			(1522, 746)))
		(object InheritView "" @300
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"46DFEA310167"
		    client     	@291
		    supplier   	@285
		    vertices   	(list Points
			(1847, 996)
			(1847, 869))
		    line_style 	3
		    origin_attachment 	(1847, 996)
		    terminal_attachment 	(1847, 869)
		    drawSupplier 	@299)
		(object InheritView "" @301
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C96AC7021D"
		    client     	@288
		    supplier   	@285
		    vertices   	(list Points
			(872, 1059)
			(872, 869))
		    line_style 	3
		    origin_attachment 	(872, 1059)
		    terminal_attachment 	(872, 869)
		    drawSupplier 	@299)
		(object InheritView "" @302
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C7213A0347"
		    client     	@290
		    supplier   	@288
		    vertices   	(list Points
			(1842, 1540)
			(872, 1541)
			(872, 1165))
		    line_style 	0)))
	(object ClassDiagram "MOF Common"
	    quid       	"46DFF7C202CF"
	    title      	"MOF Common"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	38
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::ReflectiveSequence" @303
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(1372, 1273)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@303
			location   	(978, 1142)
			fill_color 	13434879
			nlines     	1
			max_width  	788
			justify    	0
			label      	"ReflectiveSequence")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"3E6167610024"
		    width      	806
		    height     	286
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::ReflectiveCollection" @304
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(1373, 775)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@304
			location   	(949, 619)
			fill_color 	13434879
			nlines     	1
			max_width  	848
			justify    	0
			label      	"ReflectiveCollection")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"3E9F1969031C"
		    width      	866
		    height     	336
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Object" @305
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1373, 350)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@305
			location   	(1292, 309)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Object")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40CB3AB40137"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritView "" @306
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"3E6167610025"
		    client     	@303
		    supplier   	@304
		    vertices   	(list Points
			(1372, 1129)
			(1372, 943))
		    line_style 	0)
		(object InheritView "" @307
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"46DFF8520151"
		    client     	@304
		    supplier   	@305
		    vertices   	(list Points
			(1373, 606)
			(1373, 403))
		    line_style 	0)))
	(object ClassDiagram "Identifiers"
	    quid       	"46DFFAE8022E"
	    title      	"Identifiers"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::Object" @308
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(609, 459)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@308
			location   	(528, 418)
			fill_color 	13434879
			nlines     	1
			max_width  	162
			justify    	0
			label      	"Object")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40CB3AB40137"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Extent" @309
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(610, 784)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@309
			location   	(318, 703)
			fill_color 	13434879
			nlines     	1
			max_width  	584
			justify    	0
			label      	"Extent")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"406C80C10117"
		    width      	602
		    height     	186
		    autoResize 	TRUE)
		(object InheritView "" @310
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C7212C0116"
		    client     	@309
		    supplier   	@308
		    vertices   	(list Points
			(609, 690)
			(609, 512))
		    line_style 	0)
		(object ClassView "Class" "Logical View::EMOF::URIExtent" @311
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    ShowOperationSignature 	TRUE
		    location   	(609, 1169)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@311
			location   	(335, 1063)
			fill_color 	13434879
			nlines     	1
			max_width  	548
			justify    	0
			label      	"URIExtent")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40FD18CB0008"
		    width      	566
		    height     	236
		    autoResize 	TRUE)
		(object InheritView "" @312
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40FD191B0270"
		    client     	@311
		    supplier   	@309
		    vertices   	(list Points
			(609, 1050)
			(609, 877))
		    line_style 	0)
		(object ClassView "Class" "Logical View::EMOF::Package" @313
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1104, 475)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@313
			location   	(1009, 419)
			fill_color 	13434879
			nlines     	1
			max_width  	190
			justify    	0
			label      	"Package")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DAF280336"
		    width      	208
		    height     	136
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Property" @314
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1884, 513)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@314
			location   	(1563, 357)
			fill_color 	13434879
			nlines     	1
			max_width  	642
			justify    	0
			label      	"Property")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"401DADC101B3"
		    width      	660
		    height     	336
		    autoResize 	TRUE)))
	(object ClassDiagram "Extension"
	    quid       	"46DFFBBF0134"
	    title      	"Extension"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	400
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::Tag" @315
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1308, 984)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	FALSE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@315
			location   	(1162, 903)
			fill_color 	13434879
			nlines     	1
			max_width  	292
			justify    	0
			label      	"Tag")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C93A5E0393"
		    width      	310
		    height     	186
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Element" @316
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1308, 609)
		    font       	(object Font
			size       	10
			face       	"Arial"
			bold       	FALSE
			italics    	TRUE
			underline  	FALSE
			strike     	FALSE
			color      	0
			default_color 	TRUE)
		    label      	(object ItemLabel
			Parent_View 	@316
			location   	(1216, 568)
			fill_color 	13434879
			nlines     	1
			max_width  	184
			justify    	0
			label      	"Element")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"40C96ABE02EC"
		    width      	202
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritView "" @317
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4166BC650106"
		    client     	@315
		    supplier   	@316
		    vertices   	(list Points
			(1308, 890)
			(1308, 662))
		    line_style 	0)
		(object AssociationViewNew "$UNNAMED$14" @318
		    location   	(1937, 770)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"40C93AA40221"
		    roleview_list 	(list RoleViews
			(object RoleView "$UNNAMED$15" @319
			    Parent_View 	@318
			    location   	(131, -361)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @320
				Parent_View 	@319
				location   	(1602, 943)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				hidden     	TRUE
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	81
				justify    	0
				label      	""
				pctDist    	0.800000
				height     	42
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C93AA701AD"
			    client     	@318
			    supplier   	@315
			    vertices   	(list Points
				(1937, 770)
				(1937, 984)
				(1463, 984))
			    line_style 	0)
			(object RoleView "element" @321
			    Parent_View 	@318
			    location   	(131, -361)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @322
				Parent_View 	@321
				location   	(1547, 651)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	1
				anchor_loc 	1
				nlines     	1
				max_width  	176
				justify    	0
				label      	"+element"
				pctDist    	0.800000
				height     	42
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C93AA701A3"
			    client     	@318
			    supplier   	@316
			    vertices   	(list Points
				(1937, 770)
				(1937, 609)
				(1409, 609))
			    line_style 	0
			    label      	(object SegLabel @323
				Parent_View 	@321
				location   	(1478, 556)
				font       	(object Font
				    size       	10
				    face       	"Arial"
				    bold       	FALSE
				    italics    	FALSE
				    underline  	FALSE
				    strike     	FALSE
				    color      	0
				    default_color 	TRUE)
				anchor     	2
				anchor_loc 	1
				nlines     	1
				max_width  	15
				justify    	0
				label      	"*"
				pctDist    	0.900000
				height     	54
				orientation 	1))))))))
