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

(object Class_Category "ImperativeOCL"
    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 "imperativeocl"))
	(object Attribute
	    tool       	"Ecore"
	    name       	"nsURI"
	    value      	(value Text "http://schema.omg.org/spec/QVT/1.1/imperativeocl.xml"))
	(object Attribute
	    tool       	"Ecore"
	    name       	"packageName"
	    value      	(value Text "ImperativeOCL"))
	(object Attribute
	    tool       	"Ecore"
	    name       	"prefix"
	    value      	(value Text "ImperativeOCL")))
    quid       	"415067E202BF"
    visible_categories 	(list visibility_relationship_list
	(object Visibility_Relationship
	    quid       	"42F7363B019E"
	    supplier   	"Logical View::EssentialOCL"
	    quidu      	"414C74DE008F"))
    exportControl 	"Public"
    logical_models 	(list unit_reference_list
	(object Class "AssignExp"
	    quid       	"401DC9E201B7"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"415820350219"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "isReset"
		    quid       	"40C8C40E0388"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038")))
	(object Class "BlockExp"
	    quid       	"40E8677C0300"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4225F7CD0125"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "SwitchExp"
	    quid       	"40C9E50E01E5"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4225F7CA0080"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "VariableInitExp"
	    quid       	"405AF03101AF"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"430045E40190"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "withResult"
		    quid       	"416AEF59033B"
		    type       	"Boolean"
		    quidu      	"40CB2ECB0038"
		    initv      	"false")))
	(object Class "WhileExp"
	    quid       	"4157DC9B00A4"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"42FFACA3010D"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "ComputeExp"
	    quid       	"415A808D0107"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"42FFACA80331"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "AltExp"
	    quid       	"416AE618029E"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4225F7C60310"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "UnlinkExp"
	    quid       	"419B1D3602C3"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"419B1F24007A"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "ReturnExp"
	    quid       	"421C8A8702EF"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"421CB42E02F7"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "BreakExp"
	    quid       	"421C8A91005E"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"421CB42A0049"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "TryExp"
	    quid       	"421C9F80033F"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"421CB8C80355"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "RaiseExp"
	    quid       	"421C9F8601CB"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"421CB4970371"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "ContinueExp"
	    quid       	"421CA16103AF"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"421CB4320389"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "ForExp"
	    quid       	"4225F9E4035F"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"422B3F41013A"
		    supplier   	"Logical View::ImperativeOCL::ImperativeLoopExp"
		    quidu      	"42FCD2B00184")))
	(object Class "Typedef"
	    quid       	"423DA806002F"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"42F8814D011E"
		    supplier   	"Logical View::EMOF::Class"
		    quidu      	"401DAE57014A")))
	(object Class "InstantiationExp"
	    quid       	"42F718DE004D"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"42FB0BEF01C3"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "DictionaryType"
	    quid       	"42F76F3102ED"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"43051F380357"
		    supplier   	"Logical View::EssentialOCL::CollectionType"
		    quidu      	"40CB3338024A")))
	(object Class "DictLiteralExp"
	    quid       	"42F770540087"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"42F770720172"
		    supplier   	"Logical View::EssentialOCL::LiteralExp"
		    quidu      	"40E2B2FC0306")))
	(object Class "DictLiteralPart"
	    quid       	"42F7707C0311"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4300B609007A"
		    supplier   	"Logical View::EMOF::Element"
		    quidu      	"40C96ABE02EC")))
	(object Class "LogExp"
	    quid       	"42FB7CE3021C"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"43DF9C6400EE"
		    supplier   	"Logical View::EssentialOCL::OperationCallExp"
		    quidu      	"40C96BA800C2")
		(object Inheritance_Relationship
		    quid       	"47D11358016B"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "AssertExp"
	    quid       	"42FCAEE9006C"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"42FCBBD502DF"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6"))
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "severity"
		    quid       	"42FCBDA403D6"
		    type       	"SeverityKind"
		    quidu      	"42FCBDC802BF"
		    initv      	"error")))
	(object Class "SeverityKind"
	    quid       	"42FCBDC802BF"
	    stereotype 	"enumeration"
	    class_attributes 	(list class_attribute_list
		(object ClassAttribute "error"
		    quid       	"42FCBDD40294")
		(object ClassAttribute "warning"
		    quid       	"42FCBDD80163")
		(object ClassAttribute "fatal"
		    quid       	"42FCBDDC03D6")))
	(object Class "ImperativeLoopExp"
	    quid       	"42FCD2B00184"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"42FCD2D100C3"
		    supplier   	"Logical View::EssentialOCL::LoopExp"
		    quidu      	"40E529BE03BC")
		(object Inheritance_Relationship
		    quid       	"430046380097"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6"))
	    abstract   	TRUE)
	(object Class "ImperativeIterateExp"
	    quid       	"43004432004C"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"430044F90084"
		    supplier   	"Logical View::ImperativeOCL::ImperativeLoopExp"
		    quidu      	"42FCD2B00184")))
	(object Class "ImperativeExpression"
	    quid       	"430045A500E6"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4300466B0285"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"))
	    abstract   	TRUE)
	(object Class "UnpackExp"
	    quid       	"4300B2A901FE"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4300B3DA012A"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "OrderedTupleType"
	    quid       	"4300B442004D"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4300B49F00D3"
		    supplier   	"Logical View::EMOF::Class"
		    quidu      	"401DAE57014A")))
	(object Class "OrderedTupleLiteralExp"
	    quid       	"4300B6520273"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4300B67E0226"
		    supplier   	"Logical View::EssentialOCL::LiteralExp"
		    quidu      	"40E2B2FC0306")))
	(object Class "OrderedTupleLiteralPart"
	    quid       	"4300B66201D6"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4300B73C00E9"
		    supplier   	"Logical View::EMOF::Element"
		    quidu      	"40C96ABE02EC")))
	(object Class "ListType"
	    quid       	"43051FB4036A"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"43051FC70168"
		    supplier   	"Logical View::EssentialOCL::CollectionType"
		    quidu      	"40CB3338024A")))
	(object Class "CatchExp"
	    quid       	"46568AE60256"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"422B6139003C"
		    supplier   	"Logical View::ImperativeOCL::ImperativeExpression"
		    quidu      	"430045A500E6")))
	(object Class "ListLiteralExp"
	    quid       	"4AF9ADE002FB"
	    superclasses 	(list inheritance_relationship_list
		(object Inheritance_Relationship
		    quid       	"4AF9AE1E022F"
		    supplier   	"Logical View::EssentialOCL::LiteralExp"
		    quidu      	"40E2B2FC0306")))
	(object Association "$UNNAMED$0"
	    quid       	"4157E1BE02A7"
	    roles      	(list role_list
		(object Role "condition"
		    quid       	"4157E1BF0081"
		    label      	"condition"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "whileExpression"
		    quid       	"4157E1BF009F"
		    label      	"whileExpression"
		    supplier   	"Logical View::ImperativeOCL::WhileExp"
		    quidu      	"4157DC9B00A4"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$1"
	    quid       	"4157E74A0047"
	    roles      	(list role_list
		(object Role "alternativePart"
		    quid       	"4157E74B0071"
		    label      	"alternativePart"
		    supplier   	"Logical View::ImperativeOCL::AltExp"
		    quidu      	"416AE618029E"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "altOwner"
		    quid       	"4157E74B0099"
		    label      	"altOwner"
		    supplier   	"Logical View::ImperativeOCL::SwitchExp"
		    quidu      	"40C9E50E01E5"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$2"
	    quid       	"4157E7BD021A"
	    roles      	(list role_list
		(object Role "elsePart"
		    quid       	"4157E7BE02C5"
		    label      	"elsePart"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "elsePartOwner"
		    quid       	"4157E7BE02ED"
		    label      	"elsePartOwner"
		    supplier   	"Logical View::ImperativeOCL::SwitchExp"
		    quidu      	"40C9E50E01E5"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$3"
	    quid       	"416AE67401A6"
	    roles      	(list role_list
		(object Role "condition"
		    quid       	"416AE675011C"
		    label      	"condition"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "altCondOwner"
		    quid       	"416AE6750158"
		    label      	"altCondOwner"
		    supplier   	"Logical View::ImperativeOCL::AltExp"
		    quidu      	"416AE618029E"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$4"
	    quid       	"416AE68E032A"
	    roles      	(list role_list
		(object Role "body"
		    quid       	"416AE6900279"
		    label      	"body"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "altBodyOwner"
		    quid       	"416AE69002B5"
		    label      	"altBodyOwner"
		    supplier   	"Logical View::ImperativeOCL::AltExp"
		    quidu      	"416AE618029E"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$5"
	    quid       	"419B1D62023C"
	    roles      	(list role_list
		(object Role "target"
		    quid       	"419B1D6300F3"
		    label      	"target"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "tgtUnlink"
		    quid       	"419B1D63011B"
		    label      	"tgtUnlink"
		    supplier   	"Logical View::ImperativeOCL::UnlinkExp"
		    quidu      	"419B1D3602C3"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$6"
	    quid       	"419B1D6B01E5"
	    roles      	(list role_list
		(object Role "item"
		    quid       	"419B1D6C007E"
		    label      	"item"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "itemUnlink"
		    quid       	"419B1D6C00A6"
		    label      	"itemUnlink"
		    supplier   	"Logical View::ImperativeOCL::UnlinkExp"
		    quidu      	"419B1D3602C3"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$7"
	    quid       	"421CB4D7026E"
	    roles      	(list role_list
		(object Role "exception"
		    quid       	"421CB4D90195"
		    label      	"exception"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"
		    client_cardinality 	(value cardinality "1")
		    is_navigable 	TRUE)
		(object Role "raiseExpression"
		    quid       	"421CB4D901B3"
		    label      	"raiseExpression"
		    supplier   	"Logical View::ImperativeOCL::RaiseExp"
		    quidu      	"421C9F8601CB"
		    client_cardinality 	(value cardinality "*"))))
	(object Association "$UNNAMED$8"
	    quid       	"421CB7AB023D"
	    roles      	(list role_list
		(object Role "tryBody"
		    quid       	"421CB7AC0072"
		    label      	"tryBody"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "tryBodyOwner"
		    quid       	"421CB7AC00C2"
		    label      	"tryBodyOwner"
		    supplier   	"Logical View::ImperativeOCL::TryExp"
		    quidu      	"421C9F80033F"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$9"
	    quid       	"42203480015C"
	    roles      	(list role_list
		(object Role "returnedElement"
		    quid       	"4220348101CC"
		    label      	"returnedElement"
		    supplier   	"Logical View::EssentialOCL::Variable"
		    quidu      	"401DAF870288"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "computeOwner"
		    quid       	"42203481021C"
		    label      	"computeOwner"
		    supplier   	"Logical View::ImperativeOCL::ComputeExp"
		    quidu      	"415A808D0107"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$10"
	    quid       	"423DA82903AB"
	    roles      	(list role_list
		(object Role "base"
		    quid       	"423DA82A01C1"
		    label      	"base"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"
		    client_cardinality 	(value cardinality "1")
		    is_navigable 	TRUE)
		(object Role "typedef"
		    quid       	"423DA82A01F3"
		    label      	"typedef"
		    supplier   	"Logical View::ImperativeOCL::Typedef"
		    quidu      	"423DA806002F"
		    client_cardinality 	(value cardinality "*"))))
	(object Association "$UNNAMED$11"
	    quid       	"423DAA71026A"
	    roles      	(list role_list
		(object Role "condition"
		    quid       	"423DAA730399"
		    label      	"condition"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "typedef"
		    quid       	"423DAA740047"
		    label      	"typedef"
		    supplier   	"Logical View::ImperativeOCL::Typedef"
		    quidu      	"423DA806002F"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$12"
	    quid       	"42F719CC008F"
	    roles      	(list role_list
		(object Role "instantiatedClass"
		    quid       	"42F719CD02CB"
		    label      	"instantiatedClass"
		    supplier   	"Logical View::EMOF::Class"
		    quidu      	"401DAE57014A"
		    client_cardinality 	(value cardinality "1")
		    is_navigable 	TRUE)
		(object Role "instantiationExp"
		    quid       	"42F719CD0307"
		    label      	"instantiationExp"
		    supplier   	"Logical View::ImperativeOCL::InstantiationExp"
		    quidu      	"42F718DE004D"
		    client_cardinality 	(value cardinality "*"))))
	(object Association "$UNNAMED$13"
	    quid       	"42F7708D0135"
	    roles      	(list role_list
		(object Role "part"
		    quid       	"42F7708D02A8"
		    label      	"part"
		    supplier   	"Logical View::ImperativeOCL::DictLiteralPart"
		    quidu      	"42F7707C0311"
		    client_cardinality 	(value cardinality "*")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "partOwner"
		    quid       	"42F7708D02AA"
		    label      	"partOwner"
		    supplier   	"Logical View::ImperativeOCL::DictLiteralExp"
		    quidu      	"42F770540087"
		    client_cardinality 	(value cardinality "1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$14"
	    quid       	"42F778370020"
	    roles      	(list role_list
		(object Role "keyType"
		    quid       	"42F7783803BB"
		    label      	"keyType"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE)
		(object Role "keyDict"
		    quid       	"42F7783803D9"
		    label      	"keyDict"
		    supplier   	"Logical View::ImperativeOCL::DictionaryType"
		    quidu      	"42F76F3102ED"
		    client_cardinality 	(value cardinality "*"))))
	(object Association "$UNNAMED$15"
	    quid       	"42F778B00135"
	    roles      	(list role_list
		(object Role "key"
		    quid       	"42F778B100FA"
		    label      	"key"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "keyOwner"
		    quid       	"42F778B101C2"
		    label      	"keyOwner"
		    supplier   	"Logical View::ImperativeOCL::DictLiteralPart"
		    quidu      	"42F7707C0311"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$16"
	    quid       	"42F778B60165"
	    roles      	(list role_list
		(object Role "value"
		    quid       	"42F778B70239"
		    label      	"value"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "valOwner"
		    quid       	"42F778B702ED"
		    label      	"valOwner"
		    supplier   	"Logical View::ImperativeOCL::DictLiteralPart"
		    quidu      	"42F7707C0311"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$17"
	    quid       	"42F787D5010A"
	    roles      	(list role_list
		(object Role "body"
		    quid       	"42F787D60043"
		    label      	"body"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "whileOwner"
		    quid       	"42F787D60093"
		    label      	"whileOwner"
		    supplier   	"Logical View::ImperativeOCL::WhileExp"
		    quidu      	"4157DC9B00A4"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$18"
	    quid       	"42F789360213"
	    roles      	(list role_list
		(object Role "value"
		    quid       	"42F7893700FC"
		    label      	"value"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "returnExp"
		    quid       	"42F7893701CE"
		    label      	"returnExp"
		    supplier   	"Logical View::ImperativeOCL::ReturnExp"
		    quidu      	"421C8A8702EF"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$19"
	    quid       	"42FB0C1900B5"
	    roles      	(list role_list
		(object Role "extent"
		    quid       	"42FB0C1A008E"
		    label      	"extent"
		    supplier   	"Logical View::EssentialOCL::Variable"
		    quidu      	"401DAF870288"
		    client_cardinality 	(value cardinality "0..1")
		    is_navigable 	TRUE)
		(object Role "instantiationExp"
		    quid       	"42FB0C1A00D4"
		    label      	"instantiationExp"
		    supplier   	"Logical View::ImperativeOCL::InstantiationExp"
		    quidu      	"42F718DE004D"
		    client_cardinality 	(value cardinality "*"))))
	(object Association "$UNNAMED$20"
	    quid       	"42FB0C6501FE"
	    roles      	(list role_list
		(object Role "argument"
		    quid       	"42FB0C670215"
		    label      	"argument"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "argOwner"
		    quid       	"42FB0C6702D4"
		    label      	"argOwner"
		    supplier   	"Logical View::ImperativeOCL::InstantiationExp"
		    quidu      	"42F718DE004D"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$21"
	    quid       	"42FB7E140257"
	    roles      	(list role_list
		(object Role "condition"
		    quid       	"42FB7E1403DD"
		    label      	"condition"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "logOwner"
		    quid       	"42FB7E1500D1"
		    label      	"logOwner"
		    supplier   	"Logical View::ImperativeOCL::LogExp"
		    quidu      	"42FB7CE3021C"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$22"
	    quid       	"42FCBAC20276"
	    roles      	(list role_list
		(object Role "log"
		    quid       	"42FCBAC30079"
		    label      	"log"
		    supplier   	"Logical View::ImperativeOCL::LogExp"
		    quidu      	"42FB7CE3021C"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "assertExp"
		    quid       	"42FCBAC3008D"
		    label      	"assertExp"
		    supplier   	"Logical View::ImperativeOCL::AssertExp"
		    quidu      	"42FCAEE9006C"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$23"
	    quid       	"42FCBAF20289"
	    roles      	(list role_list
		(object Role "assertion"
		    quid       	"42FCBAF40173"
		    label      	"assertion"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "assertOwner"
		    quid       	"42FCBAF40228"
		    label      	"assertOwner"
		    supplier   	"Logical View::ImperativeOCL::AssertExp"
		    quidu      	"42FCAEE9006C"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$24"
	    quid       	"42FCD35502CC"
	    roles      	(list role_list
		(object Role "condition"
		    quid       	"42FCD3560346"
		    label      	"condition"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "loopCondOwner"
		    quid       	"42FCD35603D2"
		    label      	"loopCondOwner"
		    supplier   	"Logical View::ImperativeOCL::ImperativeLoopExp"
		    quidu      	"42FCD2B00184"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$25"
	    quid       	"42FFAB670393"
	    roles      	(list role_list
		(object Role "body"
		    quid       	"42FFAB6A0211"
		    label      	"body"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "computeOwner"
		    quid       	"42FFAB6A02D9"
		    label      	"computeOwner"
		    supplier   	"Logical View::ImperativeOCL::ComputeExp"
		    quidu      	"415A808D0107"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$26"
	    quid       	"43007F43017B"
	    roles      	(list role_list
		(object Role "target"
		    quid       	"43007F4303A2"
		    label      	"target"
		    supplier   	"Logical View::EssentialOCL::Variable"
		    quidu      	"401DAF870288"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "tgtOwner"
		    quid       	"43007F440032"
		    label      	"tgtOwner"
		    supplier   	"Logical View::ImperativeOCL::ImperativeIterateExp"
		    quidu      	"43004432004C"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$27"
	    quid       	"4300B2C703AF"
	    roles      	(list role_list
		(object Role "targetVariable"
		    quid       	"4300B2CA0006"
		    label      	"targetVariable"
		    supplier   	"Logical View::EssentialOCL::Variable"
		    quidu      	"401DAF870288"
		    client_cardinality 	(value cardinality "1..*")
		    Constraints 	"ordered"
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$28"
		    quid       	"4300B2CA0075"
		    supplier   	"Logical View::ImperativeOCL::UnpackExp"
		    quidu      	"4300B2A901FE"
		    client_cardinality 	(value cardinality "0..1"))))
	(object Association "$UNNAMED$29"
	    quid       	"4300B4AA0300"
	    roles      	(list role_list
		(object Role "elementType"
		    quid       	"4300B4AD03D6"
		    label      	"elementType"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    is_navigable 	TRUE)
		(object Role "eltTuple"
		    quid       	"4300B4AE0020"
		    label      	"eltTuple"
		    supplier   	"Logical View::ImperativeOCL::OrderedTupleType"
		    quidu      	"4300B442004D"
		    client_cardinality 	(value cardinality "*"))))
	(object Association "$UNNAMED$30"
	    quid       	"4300B6BF03B0"
	    roles      	(list role_list
		(object Role "part"
		    quid       	"4300B6C0028F"
		    label      	"part"
		    supplier   	"Logical View::ImperativeOCL::OrderedTupleLiteralPart"
		    quidu      	"4300B66201D6"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "partOwner"
		    quid       	"4300B6C00291"
		    label      	"partOwner"
		    supplier   	"Logical View::ImperativeOCL::OrderedTupleLiteralExp"
		    quidu      	"4300B6520273"
		    client_cardinality 	(value cardinality "1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$31"
	    quid       	"4300B7BC0396"
	    roles      	(list role_list
		(object Role "value"
		    quid       	"4300B7BE0172"
		    label      	"value"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "tupValOwner"
		    quid       	"4300B7BE023B"
		    label      	"tupValOwner"
		    supplier   	"Logical View::ImperativeOCL::OrderedTupleLiteralPart"
		    quidu      	"4300B66201D6"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$32"
	    quid       	"46568B1F03CA"
	    roles      	(list role_list
		(object Role "exceptClause"
		    quid       	"46568B1F03CB"
		    label      	"exceptClause"
		    supplier   	"Logical View::ImperativeOCL::CatchExp"
		    quidu      	"46568AE60256"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "exceptOwner"
		    quid       	"46568B1F03CC"
		    label      	"exceptOwner"
		    supplier   	"Logical View::ImperativeOCL::TryExp"
		    quidu      	"421C9F80033F"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$33"
	    quid       	"46568B5B0178"
	    roles      	(list role_list
		(object Role "body"
		    quid       	"46568B5C00F7"
		    label      	"body"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "catchExp"
		    quid       	"46568B5C0151"
		    label      	"catchExp"
		    supplier   	"Logical View::ImperativeOCL::CatchExp"
		    quidu      	"46568AE60256"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$34"
	    quid       	"4656B2F8010C"
	    roles      	(list role_list
		(object Role "tryExpression"
		    quid       	"4656B2F8010D"
		    label      	"tryExpression"
		    supplier   	"Logical View::ImperativeOCL::CatchExp"
		    quidu      	"46568AE60256"
		    client_cardinality 	(value cardinality "*"))
		(object Role "exception"
		    quid       	"4656B2F8010E"
		    label      	"exception"
		    supplier   	"Logical View::EMOF::Type"
		    quidu      	"40C78BB303B7"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    is_navigable 	TRUE)))
	(object Association "$UNNAMED$35"
	    quid       	"4656B3AA0176"
	    roles      	(list role_list
		(object Role "argument"
		    quid       	"4656B3AB02B8"
		    label      	"argument"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "raiseExp"
		    quid       	"4656B3AB0326"
		    label      	"raiseExp"
		    supplier   	"Logical View::ImperativeOCL::RaiseExp"
		    quidu      	"421C9F8601CB"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$36"
	    quid       	"465C4FA2007C"
	    roles      	(list role_list
		(object Role "source"
		    quid       	"465C4FA501B7"
		    label      	"source"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "$UNNAMED$37"
		    quid       	"465C4FA50211"
		    supplier   	"Logical View::ImperativeOCL::UnpackExp"
		    quidu      	"4300B2A901FE"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$38"
	    quid       	"403388A900E8"
	    roles      	(list role_list
		(object Role "value"
		    quid       	"403388AA0284"
		    label      	"value"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "valueOwner"
		    quid       	"403388AA0298"
		    label      	"valueOwner"
		    supplier   	"Logical View::ImperativeOCL::AssignExp"
		    quidu      	"401DC9E201B7"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$39"
	    quid       	"40E90766025B"
	    roles      	(list role_list
		(object Role "referredVariable"
		    quid       	"40E9076B03AD"
		    label      	"referredVariable"
		    supplier   	"Logical View::EssentialOCL::Variable"
		    quidu      	"401DAF870288"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "declaration"
		    quid       	"40E9076B03C1"
		    label      	"declaration"
		    supplier   	"Logical View::ImperativeOCL::VariableInitExp"
		    quidu      	"405AF03101AF"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$40"
	    quid       	"40C961550296"
	    roles      	(list role_list
		(object Role "left"
		    quid       	"40C9615A009F"
		    label      	"left"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "leftOwner"
		    quid       	"40C9615A00B3"
		    label      	"leftOwner"
		    supplier   	"Logical View::ImperativeOCL::AssignExp"
		    quidu      	"401DC9E201B7"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$41"
	    quid       	"40C97259024B"
	    roles      	(list role_list
		(object Role "defaultValue"
		    quid       	"40C9725C00C9"
		    label      	"defaultValue"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "0..1")
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "defaultOwner"
		    quid       	"40C9725C00E7"
		    label      	"defaultOwner"
		    supplier   	"Logical View::ImperativeOCL::AssignExp"
		    quidu      	"401DC9E201B7"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$42"
	    quid       	"40E8862F03B2"
	    roles      	(list role_list
		(object Role "body"
		    quid       	"40E8863003B4"
		    label      	"body"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "blockOwner"
		    quid       	"40E8863003D2"
		    label      	"blockOwner"
		    supplier   	"Logical View::ImperativeOCL::BlockExp"
		    quidu      	"40E8677C0300"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE)))
	(object Association "$UNNAMED$43"
	    quid       	"4AF9AE3B0347"
	    roles      	(list role_list
		(object Role "element"
		    quid       	"4AF9AE3D027C"
		    label      	"element"
		    supplier   	"Logical View::EssentialOCL::OclExpression"
		    quidu      	"401DB533025E"
		    client_cardinality 	(value cardinality "*")
		    Constraints 	"ordered"
		    Containment 	"By Value"
		    is_navigable 	TRUE)
		(object Role "elementOwner"
		    quid       	"4AF9AE3D02CA"
		    label      	"elementOwner"
		    supplier   	"Logical View::ImperativeOCL::ListLiteralExp"
		    quidu      	"4AF9ADE002FB"
		    client_cardinality 	(value cardinality "0..1")
		    is_aggregate 	TRUE))))
    logical_presentations 	(list unit_reference_list
	(object ClassDiagram "Imperative Expressions"
	    quid       	"405AF2FD00D2"
	    title      	"Imperative Expressions"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::ImperativeOCL::AssignExp" @1
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(920, 975)
		    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   	(802, 934)
			nlines     	1
			max_width  	236
			justify    	0
			label      	"AssignExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"401DC9E201B7"
		    width      	254
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::VariableInitExp" @2
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(712, 1100)
		    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   	(561, 1059)
			nlines     	1
			max_width  	302
			justify    	0
			label      	"VariableInitExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"405AF03101AF"
		    width      	320
		    height     	107
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::UnlinkExp" @3
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(988, 844)
		    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 	@3
			location   	(873, 803)
			nlines     	1
			max_width  	230
			justify    	0
			label      	"UnlinkExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"419B1D3602C3"
		    width      	248
		    height     	107
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ReturnExp" @4
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1669, 700)
		    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 	@4
			location   	(1551, 659)
			nlines     	1
			max_width  	236
			justify    	0
			label      	"ReturnExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"421C8A8702EF"
		    width      	254
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::BreakExp" @5
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1565, 834)
		    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 	@5
			location   	(1462, 793)
			nlines     	1
			max_width  	206
			justify    	0
			label      	"BreakExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"421C8A91005E"
		    width      	224
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ContinueExp" @6
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1556, 1003)
		    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 	@6
			location   	(1420, 962)
			nlines     	1
			max_width  	272
			justify    	0
			label      	"ContinueExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"421CA16103AF"
		    width      	290
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::SwitchExp" @7
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(625, 816)
		    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 	@7
			location   	(506, 775)
			nlines     	1
			max_width  	238
			justify    	0
			label      	"SwitchExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"40C9E50E01E5"
		    width      	256
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::AltExp" @8
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(661, 691)
		    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 	@8
			location   	(580, 650)
			nlines     	1
			max_width  	162
			justify    	0
			label      	"AltExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"416AE618029E"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::RaiseExp" @9
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2062, 844)
		    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   	(1958, 803)
			nlines     	1
			max_width  	208
			justify    	0
			label      	"RaiseExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"421C9F8601CB"
		    width      	226
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::BlockExp" @10
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1245, 850)
		    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 	@10
			location   	(1143, 809)
			nlines     	1
			max_width  	204
			justify    	0
			label      	"BlockExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"40E8677C0300"
		    width      	222
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::LoopExp" @11
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(255, 441)
		    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 	@11
			location   	(108, 391)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"LoopExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"40E529BE03BC"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ForExp" @12
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(283, 925)
		    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 	@12
			location   	(200, 884)
			nlines     	1
			max_width  	166
			justify    	0
			label      	"ForExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"4225F9E4035F"
		    width      	184
		    height     	107
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::CatchExp" @13
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2273, 703)
		    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 	@13
			location   	(2161, 662)
			nlines     	1
			max_width  	224
			justify    	0
			label      	"CatchExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"46568AE60256"
		    width      	242
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::InstantiationExp" @14
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(584, 966)
		    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 	@14
			location   	(423, 925)
			nlines     	1
			max_width  	322
			justify    	0
			label      	"InstantiationExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42F718DE004D"
		    width      	340
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::SeverityKind" @15
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2224, 1087)
		    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 	@15
			location   	(2032, 1003)
			nlines     	1
			max_width  	384
			justify    	0
			label      	"SeverityKind")
		    stereotype 	(object ItemLabel
			Parent_View 	@15
			location   	(2032, 953)
			anchor     	10
			nlines     	1
			max_width  	384
			justify    	0
			label      	"<<enumeration>>")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42FCBDC802BF"
		    width      	402
		    height     	292
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::WhileExp" @16
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1160, 697)
		    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 	@16
			location   	(1058, 656)
			nlines     	1
			max_width  	204
			justify    	0
			label      	"WhileExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"4157DC9B00A4"
		    width      	222
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ComputeExp" @17
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1240, 1019)
		    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   	(1105, 978)
			nlines     	1
			max_width  	270
			justify    	0
			label      	"ComputeExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"415A808D0107"
		    width      	288
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ImperativeLoopExp" @18
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(249, 692)
		    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 	@18
			location   	(62, 651)
			nlines     	1
			max_width  	374
			justify    	0
			label      	"ImperativeLoopExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42FCD2B00184"
		    width      	392
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ImperativeIterateExp" @19
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(249, 1103)
		    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 	@19
			location   	(44, 1062)
			nlines     	1
			max_width  	410
			justify    	0
			label      	"ImperativeIterateExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"43004432004C"
		    width      	428
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ImperativeExpression" @20
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1163, 416)
		    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 	@20
			location   	(951, 365)
			nlines     	1
			max_width  	424
			justify    	0
			label      	"ImperativeExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"430045A500E6"
		    width      	442
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritView "" @21
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"42FCD2D100C3"
		    client     	@18
		    supplier   	@11
		    vertices   	(list Points
			(172, 639)
			(172, 502))
		    line_style 	3
		    origin_attachment 	(172, 639)
		    terminal_attachment 	(172, 502))
		(object InheritTreeView "" @22
		    location   	(249, 840)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@18
		    vertices   	(list Points
			(249, 840)
			(249, 745)))
		(object InheritView "" @23
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"422B3F41013A"
		    client     	@12
		    supplier   	@18
		    vertices   	(list Points
			(291, 872)
			(291, 840))
		    line_style 	3
		    origin_attachment 	(291, 872)
		    terminal_attachment 	(291, 840)
		    drawSupplier 	@22)
		(object InheritView "" @24
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"430044F90084"
		    client     	@19
		    supplier   	@18
		    vertices   	(list Points
			(150, 1049)
			(150, 840))
		    line_style 	3
		    origin_attachment 	(150, 1049)
		    terminal_attachment 	(150, 840)
		    drawSupplier 	@22)
		(object ClassView "Class" "Logical View::ImperativeOCL::UnpackExp" @25
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2331, 853)
		    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 	@25
			location   	(2210, 812)
			nlines     	1
			max_width  	242
			justify    	0
			label      	"UnpackExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"4300B2A901FE"
		    width      	260
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::TryExp" @26
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2032, 709)
		    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 	@26
			location   	(1949, 668)
			nlines     	1
			max_width  	166
			justify    	0
			label      	"TryExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"421C9F80033F"
		    width      	184
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::LogExp" @27
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    location   	(1816, 840)
		    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 	@27
			location   	(1728, 799)
			fill_color 	13434879
			nlines     	1
			max_width  	176
			justify    	0
			label      	"LogExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	13434879
		    quidu      	"42FB7CE3021C"
		    width      	194
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::AssertExp" @28
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1862, 987)
		    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 	@28
			location   	(1746, 946)
			nlines     	1
			max_width  	232
			justify    	0
			label      	"AssertExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42FCAEE9006C"
		    width      	250
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritTreeView "" @29
		    location   	(1163, 588)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@20
		    vertices   	(list Points
			(1163, 588)
			(1163, 479)))
		(object InheritView "" @30
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"415820350219"
		    client     	@1
		    supplier   	@20
		    vertices   	(list Points
			(850, 922)
			(850, 588))
		    line_style 	3
		    origin_attachment 	(850, 922)
		    terminal_attachment 	(850, 588)
		    drawSupplier 	@29)
		(object InheritView "" @31
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"430045E40190"
		    client     	@2
		    supplier   	@20
		    vertices   	(list Points
			(772, 1047)
			(772, 588))
		    line_style 	3
		    origin_attachment 	(772, 1047)
		    terminal_attachment 	(772, 588)
		    drawSupplier 	@29)
		(object InheritView "" @32
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"419B1F24007A"
		    client     	@3
		    supplier   	@20
		    vertices   	(list Points
			(990, 791)
			(990, 588))
		    line_style 	3
		    origin_attachment 	(990, 791)
		    terminal_attachment 	(990, 588)
		    drawSupplier 	@29)
		(object InheritView "" @33
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"421CB42A0049"
		    client     	@5
		    supplier   	@20
		    vertices   	(list Points
			(1503, 781)
			(1503, 588))
		    line_style 	3
		    origin_attachment 	(1503, 781)
		    terminal_attachment 	(1503, 588)
		    drawSupplier 	@29)
		(object InheritView "" @34
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"421CB42E02F7"
		    client     	@4
		    supplier   	@20
		    vertices   	(list Points
			(1671, 647)
			(1671, 588))
		    line_style 	3
		    origin_attachment 	(1671, 647)
		    terminal_attachment 	(1671, 588)
		    drawSupplier 	@29)
		(object InheritView "" @35
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"421CB4970371"
		    client     	@9
		    supplier   	@20
		    vertices   	(list Points
			(2144, 791)
			(2144, 588))
		    line_style 	3
		    origin_attachment 	(2144, 791)
		    terminal_attachment 	(2144, 588)
		    drawSupplier 	@29)
		(object InheritView "" @36
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4225F7C60310"
		    client     	@8
		    supplier   	@20
		    vertices   	(list Points
			(661, 638)
			(661, 588))
		    line_style 	3
		    origin_attachment 	(661, 638)
		    terminal_attachment 	(661, 588)
		    drawSupplier 	@29)
		(object InheritView "" @37
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4225F7CA0080"
		    client     	@7
		    supplier   	@20
		    vertices   	(list Points
			(541, 763)
			(541, 588))
		    line_style 	3
		    origin_attachment 	(541, 763)
		    terminal_attachment 	(541, 588)
		    drawSupplier 	@29)
		(object InheritView "" @38
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4225F7CD0125"
		    client     	@10
		    supplier   	@20
		    vertices   	(list Points
			(1296, 796)
			(1296, 588))
		    line_style 	3
		    origin_attachment 	(1296, 796)
		    terminal_attachment 	(1296, 588)
		    drawSupplier 	@29)
		(object InheritView "" @39
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"422B6139003C"
		    client     	@13
		    supplier   	@20
		    vertices   	(list Points
			(2256, 649)
			(2256, 588))
		    line_style 	3
		    origin_attachment 	(2256, 649)
		    terminal_attachment 	(2256, 588)
		    drawSupplier 	@29)
		(object InheritView "" @40
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"42FB0BEF01C3"
		    client     	@14
		    supplier   	@20
		    vertices   	(list Points
			(462, 913)
			(462, 588))
		    line_style 	3
		    origin_attachment 	(462, 913)
		    terminal_attachment 	(462, 588)
		    drawSupplier 	@29)
		(object InheritView "" @41
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"42FCBBD502DF"
		    client     	@28
		    supplier   	@20
		    vertices   	(list Points
			(1921, 934)
			(1921, 588))
		    line_style 	3
		    origin_attachment 	(1921, 934)
		    terminal_attachment 	(1921, 588)
		    drawSupplier 	@29)
		(object InheritView "" @42
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"42FFACA3010D"
		    client     	@16
		    supplier   	@20
		    vertices   	(list Points
			(1231, 643)
			(1231, 588))
		    line_style 	3
		    origin_attachment 	(1231, 643)
		    terminal_attachment 	(1231, 588)
		    drawSupplier 	@29)
		(object InheritView "" @43
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"430046380097"
		    client     	@18
		    supplier   	@20
		    vertices   	(list Points
			(247, 639)
			(247, 588))
		    line_style 	3
		    origin_attachment 	(247, 639)
		    terminal_attachment 	(247, 588)
		    drawSupplier 	@29)
		(object InheritView "" @44
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4300B3DA012A"
		    client     	@25
		    supplier   	@20
		    vertices   	(list Points
			(2416, 800)
			(2416, 588))
		    line_style 	3
		    origin_attachment 	(2416, 800)
		    terminal_attachment 	(2416, 588)
		    drawSupplier 	@29)
		(object InheritView "" @45
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"421CB8C80355"
		    client     	@26
		    supplier   	@20
		    vertices   	(list Points
			(2024, 656)
			(2024, 588))
		    line_style 	3
		    origin_attachment 	(2024, 656)
		    terminal_attachment 	(2024, 588)
		    drawSupplier 	@29)
		(object InheritView "" @46
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"47D11358016B"
		    client     	@27
		    supplier   	@20
		    vertices   	(list Points
			(1816, 787)
			(1816, 588))
		    line_style 	3
		    origin_attachment 	(1816, 787)
		    terminal_attachment 	(1816, 588)
		    drawSupplier 	@29)
		(object InheritView "" @47
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"42FFACA80331"
		    client     	@17
		    supplier   	@20
		    vertices   	(list Points
			(1366, 966)
			(1366, 588))
		    line_style 	3
		    origin_attachment 	(1366, 966)
		    terminal_attachment 	(1366, 588)
		    drawSupplier 	@29)
		(object InheritView "" @48
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"421CB4320389"
		    client     	@6
		    supplier   	@20
		    vertices   	(list Points
			(1419, 950)
			(1419, 588))
		    line_style 	3
		    origin_attachment 	(1419, 950)
		    terminal_attachment 	(1419, 588)
		    drawSupplier 	@29)))
	(object ClassDiagram "Type extensions"
	    quid       	"42F76E8F0303"
	    title      	"Type extensions"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	119
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::EMOF::Type" @49
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(732, 100)
		    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 	@49
			location   	(642, 50)
			fill_color 	13434879
			nlines     	1
			max_width  	180
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C78BB303B7"
		    width      	198
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::OclExpression" @50
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(556, 526)
		    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 	@50
			location   	(409, 476)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"OclExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DB533025E"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::Typedef" @51
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1005, 346)
		    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 	@51
			location   	(916, 295)
			nlines     	1
			max_width  	178
			justify    	0
			label      	"Typedef")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"423DA806002F"
		    width      	196
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$10" @52
		    location   	(988, 148)
		    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      	"423DA82903AB"
		    roleview_list 	(list RoleViews
			(object RoleView "base" @53
			    Parent_View 	@52
			    location   	(48, -2886)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @54
				Parent_View 	@53
				location   	(904, 108)
				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      	"+base"
				pctDist    	0.668203
				height     	20
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"423DA82A01C1"
			    client     	@52
			    supplier   	@49
			    vertices   	(list Points
				(988, 148)
				(988, 88)
				(831, 88))
			    line_style 	3
			    origin_attachment 	(988, 148)
			    terminal_attachment 	(831, 88)
			    label      	(object SegLabel @55
				Parent_View 	@53
				location   	(875, 55)
				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      	"1"
				pctDist    	0.801653
				height     	34
				orientation 	1))
			(object RoleView "typedef" @56
			    Parent_View 	@52
			    location   	(48, -2886)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @57
				Parent_View 	@56
				location   	(907, 231)
				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  	140
				justify    	0
				label      	"+typedef"
				pctDist    	0.613861
				height     	82
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"423DA82A01F3"
			    client     	@52
			    supplier   	@51
			    vertices   	(list Points
				(988, 148)
				(988, 283))
			    line_style 	3
			    origin_attachment 	(988, 148)
			    terminal_attachment 	(988, 283)
			    label      	(object SegLabel @58
				Parent_View 	@56
				location   	(1012, 257)
				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.817073
				height     	24
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$11" @59
		    location   	(915, 519)
		    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      	"423DAA71026A"
		    roleview_list 	(list RoleViews
			(object RoleView "condition" @60
			    Parent_View 	@59
			    location   	(487, -4677)
			    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   	(801, 550)
				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  	168
				justify    	0
				label      	"+condition"
				pctDist    	0.568905
				height     	31
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"423DAA730399"
			    client     	@59
			    supplier   	@50
			    vertices   	(list Points
				(915, 519)
				(712, 519))
			    line_style 	3
			    origin_attachment 	(915, 519)
			    terminal_attachment 	(712, 519)
			    label      	(object SegLabel @62
				Parent_View 	@60
				location   	(757, 476)
				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.784314
				height     	44
				orientation 	1))
			(object RoleView "typedef" @63
			    Parent_View 	@59
			    location   	(487, -4677)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @64
				Parent_View 	@63
				location   	(1030, 506)
				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  	140
				justify    	0
				label      	"+typedef"
				pctDist    	0.528620
				height     	21
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"423DAA740047"
			    client     	@59
			    supplier   	@51
			    vertices   	(list Points
				(915, 519)
				(1009, 519)
				(1009, 409))
			    line_style 	3
			    origin_attachment 	(915, 519)
			    terminal_attachment 	(1009, 409)
			    label      	(object SegLabel @65
				Parent_View 	@63
				location   	(1063, 431)
				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.894040
				height     	54
				orientation 	1))))
		(object ClassView "Class" "Logical View::EssentialOCL::LiteralExp" @66
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(984, 742)
		    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 	@66
			location   	(837, 692)
			fill_color 	16777215
			nlines     	1
			max_width  	294
			justify    	0
			label      	"LiteralExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"40E2B2FC0306"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Class" @67
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1167, 89)
		    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 	@67
			location   	(1072, 39)
			fill_color 	13434879
			nlines     	1
			max_width  	190
			justify    	0
			label      	"Class")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DAE57014A"
		    width      	208
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::DictionaryType" @68
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1642, 340)
		    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   	(1493, 289)
			nlines     	1
			max_width  	298
			justify    	0
			label      	"DictionaryType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42F76F3102ED"
		    width      	316
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EMOF::Type" @69
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1919, 95)
		    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 	@69
			location   	(1829, 45)
			fill_color 	13434879
			nlines     	1
			max_width  	180
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C78BB303B7"
		    width      	198
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$14" @70
		    location   	(1883, 263)
		    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      	"42F778370020"
		    roleview_list 	(list RoleViews
			(object RoleView "keyType" @71
			    Parent_View 	@70
			    location   	(1630, -780)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @72
				Parent_View 	@71
				location   	(1862, 223)
				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      	"+keyType"
				pctDist    	0.381818
				height     	22
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F7783803BB"
			    client     	@70
			    supplier   	@69
			    vertices   	(list Points
				(1883, 263)
				(1883, 156))
			    line_style 	3
			    origin_attachment 	(1883, 263)
			    terminal_attachment 	(1883, 156)
			    label      	(object SegLabel @73
				Parent_View 	@71
				location   	(1921, 196)
				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  	144
				justify    	0
				label      	"0..1"
				pctDist    	0.628571
				height     	38
				orientation 	1))
			(object RoleView "keyDict" @74
			    Parent_View 	@70
			    location   	(1630, -780)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @75
				Parent_View 	@74
				location   	(1866, 289)
				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  	134
				justify    	0
				label      	"+keyDict"
				pctDist    	0.187500
				height     	18
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F7783803D9"
			    client     	@70
			    supplier   	@68
			    vertices   	(list Points
				(1883, 263)
				(1883, 323)
				(1800, 323))
			    line_style 	3
			    origin_attachment 	(1883, 263)
			    terminal_attachment 	(1800, 323)
			    label      	(object SegLabel @76
				Parent_View 	@74
				location   	(1814, 356)
				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.910638
				height     	33
				orientation 	0))))
		(object ClassView "Class" "Logical View::ImperativeOCL::OrderedTupleType" @77
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1331, 537)
		    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 	@77
			location   	(1148, 486)
			nlines     	1
			max_width  	366
			justify    	0
			label      	"OrderedTupleType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"4300B442004D"
		    width      	384
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$29" @78
		    location   	(1921, 513)
		    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      	"4300B4AA0300"
		    roleview_list 	(list RoleViews
			(object RoleView "elementType" @79
			    Parent_View 	@78
			    location   	(1480, -690)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @80
				Parent_View 	@79
				location   	(1968, 381)
				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  	228
				justify    	0
				label      	"+elementType"
				pctDist    	0.460808
				height     	14
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4300B4AD03D6"
			    client     	@78
			    supplier   	@69
			    vertices   	(list Points
				(1921, 513)
				(1981, 513)
				(1981, 157))
			    line_style 	3
			    origin_attachment 	(1921, 513)
			    terminal_attachment 	(1981, 157)
			    label      	(object SegLabel @81
				Parent_View 	@79
				location   	(2019, 203)
				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      	"*"
				pctDist    	0.892231
				height     	38
				orientation 	1)
			    label      	(object SegLabel @82
				Parent_View 	@79
				location   	(2014, 265)
				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.741093
				height     	33
				orientation 	1))
			(object RoleView "eltTuple" @83
			    Parent_View 	@78
			    location   	(1480, -690)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @84
				Parent_View 	@83
				location   	(1678, 552)
				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      	"+eltTuple"
				pctDist    	0.610354
				height     	39
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4300B4AE0020"
			    client     	@78
			    supplier   	@77
			    vertices   	(list Points
				(1921, 513)
				(1523, 513))
			    line_style 	3
			    origin_attachment 	(1921, 513)
			    terminal_attachment 	(1523, 513)
			    label      	(object SegLabel @85
				Parent_View 	@83
				location   	(1563, 567)
				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::Element" @86
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(937, 1478)
		    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 	@86
			location   	(845, 1428)
			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     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::CollectionType" @87
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1509, 93)
		    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 	@87
			location   	(1360, 43)
			fill_color 	13434879
			nlines     	1
			max_width  	298
			justify    	0
			label      	"CollectionType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"40CB3338024A"
		    width      	316
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ListType" @88
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1362, 343)
		    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 	@88
			location   	(1267, 292)
			nlines     	1
			max_width  	190
			justify    	0
			label      	"ListType")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"43051FB4036A"
		    width      	208
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritTreeView "" @89
		    location   	(1509, 249)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@87
		    vertices   	(list Points
			(1509, 249)
			(1509, 155)))
		(object InheritView "" @90
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"43051F380357"
		    client     	@68
		    supplier   	@87
		    vertices   	(list Points
			(1628, 277)
			(1628, 249))
		    line_style 	3
		    origin_attachment 	(1628, 277)
		    terminal_attachment 	(1628, 249)
		    drawSupplier 	@89)
		(object InheritView "" @91
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"43051FC70168"
		    client     	@88
		    supplier   	@87
		    vertices   	(list Points
			(1363, 280)
			(1363, 249))
		    line_style 	3
		    origin_attachment 	(1363, 280)
		    terminal_attachment 	(1363, 249)
		    drawSupplier 	@89)
		(object InheritTreeView "" @92
		    location   	(1167, 263)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@67
		    vertices   	(list Points
			(1167, 263)
			(1167, 151)))
		(object InheritView "" @93
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"42F8814D011E"
		    client     	@51
		    supplier   	@67
		    vertices   	(list Points
			(1034, 282)
			(1034, 263))
		    line_style 	3
		    origin_attachment 	(1034, 282)
		    terminal_attachment 	(1034, 263)
		    drawSupplier 	@92)
		(object InheritView "" @94
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4300B49F00D3"
		    client     	@77
		    supplier   	@67
		    vertices   	(list Points
			(1219, 474)
			(1219, 263))
		    line_style 	3
		    origin_attachment 	(1219, 474)
		    terminal_attachment 	(1219, 263)
		    drawSupplier 	@92)
		(object ClassView "Class" "Logical View::ImperativeOCL::DictLiteralExp" @95
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(473, 995)
		    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   	(330, 944)
			nlines     	1
			max_width  	286
			justify    	0
			label      	"DictLiteralExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42F770540087"
		    width      	304
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::OrderedTupleLiteralExp" @96
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1983, 993)
		    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 	@96
			location   	(1755, 942)
			nlines     	1
			max_width  	456
			justify    	0
			label      	"OrderedTupleLiteralExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"4300B6520273"
		    width      	474
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::DictLiteralPart" @97
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(477, 1287)
		    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   	(333, 1236)
			nlines     	1
			max_width  	288
			justify    	0
			label      	"DictLiteralPart")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42F7707C0311"
		    width      	306
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$13" @98
		    location   	(471, 1141)
		    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      	"42F7708D0135"
		    roleview_list 	(list RoleViews
			(object RoleView "part" @99
			    Parent_View 	@98
			    location   	(-997, 826)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @100
				Parent_View 	@99
				location   	(385, 1189)
				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  	86
				justify    	0
				label      	"+part"
				pctDist    	0.589041
				height     	87
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F7708D02A8"
			    client     	@98
			    supplier   	@97
			    vertices   	(list Points
				(471, 1141)
				(471, 1224))
			    line_style 	3
			    origin_attachment 	(471, 1141)
			    terminal_attachment 	(471, 1224)
			    label      	(object SegLabel @101
				Parent_View 	@99
				location   	(525, 1216)
				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 "partOwner" @102
			    Parent_View 	@98
			    location   	(-997, 826)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @103
				Parent_View 	@102
				location   	(359, 1096)
				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  	180
				justify    	0
				label      	"+partOwner"
				pctDist    	0.550000
				height     	113
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F7708D02AA"
			    client     	@98
			    supplier   	@95
			    vertices   	(list Points
				(471, 1141)
				(471, 1058))
			    line_style 	3
			    origin_attachment 	(471, 1141)
			    terminal_attachment 	(471, 1058)
			    label      	(object SegLabel @104
				Parent_View 	@102
				location   	(526, 1099)
				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      	"1"
				pctDist    	0.506849
				height     	55
				orientation 	1))))
		(object InheritView "" @105
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4300B609007A"
		    client     	@97
		    supplier   	@86
		    vertices   	(list Points
			(487, 1350)
			(487, 1437)
			(836, 1437))
		    line_style 	3
		    origin_attachment 	(487, 1350)
		    terminal_attachment 	(836, 1437))
		(object ClassView "Class" "Logical View::ImperativeOCL::OrderedTupleLiteralPart" @106
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2023, 1280)
		    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 	@106
			location   	(1791, 1229)
			nlines     	1
			max_width  	464
			justify    	0
			label      	"OrderedTupleLiteralPart")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"4300B66201D6"
		    width      	482
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$30" @107
		    location   	(2022, 1136)
		    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      	"4300B6BF03B0"
		    roleview_list 	(list RoleViews
			(object RoleView "part" @108
			    Parent_View 	@107
			    location   	(599, 183)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @109
				Parent_View 	@108
				location   	(2137, 1194)
				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  	86
				justify    	0
				label      	"+part"
				pctDist    	0.732394
				height     	115
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4300B6C0028F"
			    client     	@107
			    supplier   	@106
			    vertices   	(list Points
				(2022, 1136)
				(2022, 1217))
			    line_style 	3
			    origin_attachment 	(2022, 1136)
			    terminal_attachment 	(2022, 1217)
			    label      	(object SegLabel @110
				Parent_View 	@108
				location   	(2076, 1208)
				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 @111
				Parent_View 	@108
				location   	(2104, 1154)
				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.225352
				height     	82
				orientation 	0))
			(object RoleView "partOwner" @112
			    Parent_View 	@107
			    location   	(599, 183)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @113
				Parent_View 	@112
				location   	(2147, 1099)
				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  	180
				justify    	0
				label      	"+partOwner"
				pctDist    	0.478873
				height     	125
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4300B6C00291"
			    client     	@107
			    supplier   	@96
			    vertices   	(list Points
				(2022, 1136)
				(2022, 1056))
			    line_style 	3
			    origin_attachment 	(2022, 1136)
			    terminal_attachment 	(2022, 1056)
			    label      	(object SegLabel @114
				Parent_View 	@112
				location   	(1988, 1081)
				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      	"1"
				pctDist    	0.704225
				height     	35
				orientation 	0))))
		(object InheritView "" @115
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4300B73C00E9"
		    client     	@106
		    supplier   	@86
		    vertices   	(list Points
			(1934, 1343)
			(1934, 1441)
			(1038, 1441))
		    line_style 	3
		    origin_attachment 	(1934, 1343)
		    terminal_attachment 	(1038, 1441))
		(object InheritTreeView "" @116
		    location   	(984, 905)
		    line_color 	3342489
		    fill_color 	13434879
		    supplier   	@66
		    vertices   	(list Points
			(984, 905)
			(984, 804)))
		(object InheritView "" @117
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"42F770720172"
		    client     	@95
		    supplier   	@66
		    vertices   	(list Points
			(461, 932)
			(461, 905))
		    line_style 	3
		    origin_attachment 	(461, 932)
		    terminal_attachment 	(461, 905)
		    drawSupplier 	@116)
		(object InheritView "" @118
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4300B67E0226"
		    client     	@96
		    supplier   	@66
		    vertices   	(list Points
			(1982, 930)
			(1982, 905))
		    line_style 	3
		    origin_attachment 	(1982, 930)
		    terminal_attachment 	(1982, 905)
		    drawSupplier 	@116)
		(object ClassView "Class" "Logical View::EssentialOCL::OclExpression" @119
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(901, 1030)
		    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 	@119
			location   	(754, 980)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"OclExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DB533025E"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$15" @120
		    location   	(726, 1248)
		    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      	"42F778B00135"
		    roleview_list 	(list RoleViews
			(object RoleView "key" @121
			    Parent_View 	@120
			    location   	(-361, -11)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @122
				Parent_View 	@121
				location   	(726, 1143)
				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  	78
				justify    	0
				label      	"+key"
				pctDist    	0.767677
				height     	61
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F778B100FA"
			    client     	@120
			    supplier   	@119
			    vertices   	(list Points
				(726, 1248)
				(786, 1248)
				(786, 1092))
			    line_style 	3
			    origin_attachment 	(726, 1248)
			    terminal_attachment 	(786, 1092)
			    label      	(object SegLabel @123
				Parent_View 	@121
				location   	(818, 1134)
				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      	"1"
				pctDist    	0.808081
				height     	32
				orientation 	1))
			(object RoleView "keyOwner" @124
			    Parent_View 	@120
			    location   	(-361, -11)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @125
				Parent_View 	@124
				location   	(659, 1204)
				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      	"+keyOwner"
				pctDist    	0.709091
				height     	45
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F778B101C2"
			    client     	@120
			    supplier   	@97
			    vertices   	(list Points
				(726, 1248)
				(630, 1248))
			    line_style 	3
			    origin_attachment 	(726, 1248)
			    terminal_attachment 	(630, 1248)
			    label      	(object SegLabel @126
				Parent_View 	@124
				location   	(665, 1285)
				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.631068
				height     	37
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$16" @127
		    location   	(848, 1312)
		    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      	"42F778B60165"
		    roleview_list 	(list RoleViews
			(object RoleView "value" @128
			    Parent_View 	@127
			    location   	(-239, 53)
			    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   	(868, 1148)
				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  	112
				justify    	0
				label      	"+value"
				pctDist    	0.800687
				height     	41
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F778B70239"
			    client     	@127
			    supplier   	@119
			    vertices   	(list Points
				(848, 1312)
				(908, 1312)
				(908, 1092))
			    line_style 	3
			    origin_attachment 	(848, 1312)
			    terminal_attachment 	(908, 1092)
			    label      	(object SegLabel @130
				Parent_View 	@128
				location   	(946, 1111)
				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      	"1"
				pctDist    	0.931035
				height     	38
				orientation 	1))
			(object RoleView "valOwner" @131
			    Parent_View 	@127
			    location   	(-239, 53)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @132
				Parent_View 	@131
				location   	(762, 1342)
				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  	168
				justify    	0
				label      	"+valOwner"
				pctDist    	0.396396
				height     	30
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F778B702ED"
			    client     	@127
			    supplier   	@97
			    vertices   	(list Points
				(848, 1312)
				(630, 1312))
			    line_style 	3
			    origin_attachment 	(848, 1312)
			    terminal_attachment 	(630, 1312)
			    label      	(object SegLabel @133
				Parent_View 	@131
				location   	(656, 1353)
				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.887387
				height     	41
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$31" @134
		    location   	(1320, 1289)
		    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      	"4300B7BC0396"
		    roleview_list 	(list RoleViews
			(object RoleView "value" @135
			    Parent_View 	@134
			    location   	(-115, 68)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @136
				Parent_View 	@135
				location   	(424, 1197)
				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      	"+value"
				pctDist    	0.773973
				height     	632
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4300B7BE0172"
			    client     	@134
			    supplier   	@119
			    vertices   	(list Points
				(1320, 1289)
				(1055, 1289)
				(1055, 1092))
			    line_style 	3
			    origin_attachment 	(1320, 1289)
			    terminal_attachment 	(1055, 1092)
			    label      	(object SegLabel @137
				Parent_View 	@135
				location   	(1109, 1143)
				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      	"1"
				pctDist    	0.891720
				height     	54
				orientation 	1))
			(object RoleView "tupValOwner" @138
			    Parent_View 	@134
			    location   	(-115, 68)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @139
				Parent_View 	@138
				location   	(1544, 1254)
				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      	"+tupValOwner"
				pctDist    	0.484716
				height     	36
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4300B7BE023B"
			    client     	@134
			    supplier   	@106
			    vertices   	(list Points
				(1320, 1289)
				(1782, 1289))
			    line_style 	3
			    origin_attachment 	(1320, 1289)
			    terminal_attachment 	(1782, 1289)
			    label      	(object SegLabel @140
				Parent_View 	@138
				location   	(1735, 1343)
				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.897436
				height     	54
				orientation 	1))))
		(object ClassView "Class" "Logical View::ImperativeOCL::ListLiteralExp" @141
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    location   	(1538, 1025)
		    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   	(1399, 974)
			nlines     	1
			max_width  	278
			justify    	0
			label      	"ListLiteralExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    quidu      	"4AF9ADE002FB"
		    width      	296
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritView "" @142
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"4AF9AE1E022F"
		    client     	@141
		    supplier   	@66
		    vertices   	(list Points
			(1537, 962)
			(1537, 905))
		    line_style 	3
		    origin_attachment 	(1537, 962)
		    terminal_attachment 	(1537, 905)
		    drawSupplier 	@116)
		(object AssociationViewNew "$UNNAMED$43" @143
		    location   	(1223, 1026)
		    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      	"4AF9AE3B0347"
		    roleview_list 	(list RoleViews
			(object RoleView "element" @144
			    Parent_View 	@143
			    location   	(-315, 14)
			    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   	(1125, 991)
				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.587736
				height     	36
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4AF9AE3D027C"
			    client     	@143
			    supplier   	@119
			    vertices   	(list Points
				(1223, 1026)
				(1057, 1028))
			    line_style 	0
			    label      	(object SegLabel @146
				Parent_View 	@144
				location   	(1076, 1082)
				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  	28
				justify    	0
				label      	"*"
				pctDist    	0.889477
				height     	54
				orientation 	0)
			    label      	(object SegLabel @147
				Parent_View 	@144
				location   	(1168, 1069)
				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.334398
				height     	42
				orientation 	0))
			(object RoleView "elementOwner" @148
			    Parent_View 	@143
			    location   	(-315, 14)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @149
				Parent_View 	@148
				location   	(1257, 941)
				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  	246
				justify    	0
				label      	"+elementOwner"
				pctDist    	0.207896
				height     	85
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4AF9AE3D02CA"
			    client     	@143
			    supplier   	@141
			    vertices   	(list Points
				(1223, 1026)
				(1389, 1025))
			    line_style 	0
			    label      	(object SegLabel @150
				Parent_View 	@148
				location   	(1337, 1064)
				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.685343
				height     	39
				orientation 	1))))))
	(object ClassDiagram "Control expressions"
	    quid       	"43004989011A"
	    title      	"Control expressions"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	1475
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::ImperativeOCL::SwitchExp" @151
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1604, 232)
		    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 	@151
			location   	(1485, 181)
			nlines     	1
			max_width  	238
			justify    	0
			label      	"SwitchExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"40C9E50E01E5"
		    width      	256
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::OclExpression" @152
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1875, 920)
		    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 	@152
			location   	(1728, 870)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"OclExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DB533025E"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$2" @153
		    location   	(1568, 662)
		    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      	"4157E7BD021A"
		    roleview_list 	(list RoleViews
			(object RoleView "elsePart" @154
			    Parent_View 	@153
			    location   	(721, -1682)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @155
				Parent_View 	@154
				location   	(1594, 911)
				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  	150
				justify    	0
				label      	"+elsePart"
				pctDist    	0.660066
				height     	33
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4157E7BE02C5"
			    client     	@153
			    supplier   	@152
			    vertices   	(list Points
				(1568, 662)
				(1568, 878)
				(1719, 878))
			    line_style 	3
			    origin_attachment 	(1568, 662)
			    terminal_attachment 	(1719, 878)
			    label      	(object SegLabel @156
				Parent_View 	@154
				location   	(1683, 826)
				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.901786
				height     	53
				orientation 	0))
			(object RoleView "elsePartOwner" @157
			    Parent_View 	@153
			    location   	(721, -1682)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @158
				Parent_View 	@157
				location   	(1492, 405)
				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  	244
				justify    	0
				label      	"+elsePartOwner"
				pctDist    	0.703008
				height     	77
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4157E7BE02ED"
			    client     	@153
			    supplier   	@151
			    vertices   	(list Points
				(1568, 662)
				(1568, 295))
			    line_style 	3
			    origin_attachment 	(1568, 662)
			    terminal_attachment 	(1568, 295)
			    label      	(object SegLabel @159
				Parent_View 	@157
				location   	(1622, 331)
				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.901786
				height     	54
				orientation 	1))))
		(object ClassView "Class" "Logical View::ImperativeOCL::AltExp" @160
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1871, 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 	@160
			location   	(1790, 472)
			nlines     	1
			max_width  	162
			justify    	0
			label      	"AltExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"416AE618029E"
		    height     	107
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$1" @161
		    location   	(1856, 271)
		    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      	"4157E74A0047"
		    roleview_list 	(list RoleViews
			(object RoleView "alternativePart" @162
			    Parent_View 	@161
			    location   	(1009, -2073)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @163
				Parent_View 	@162
				location   	(1860, 403)
				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  	246
				justify    	0
				label      	"+alternativePart"
				pctDist    	0.704762
				height     	4
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4157E74B0071"
			    client     	@161
			    supplier   	@160
			    vertices   	(list Points
				(1856, 271)
				(1856, 459))
			    line_style 	3
			    origin_attachment 	(1856, 271)
			    terminal_attachment 	(1856, 459)
			    label      	(object SegLabel @164
				Parent_View 	@162
				location   	(1803, 439)
				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  	24
				justify    	0
				label      	"*"
				pctDist    	0.895000
				height     	54
				orientation 	1)
			    label      	(object SegLabel @165
				Parent_View 	@162
				location   	(1858, 310)
				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.211864
				height     	2
				orientation 	0))
			(object RoleView "altOwner" @166
			    Parent_View 	@161
			    location   	(1009, -2073)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @167
				Parent_View 	@166
				location   	(1820, 206)
				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  	162
				justify    	0
				label      	"+altOwner"
				pctDist    	0.343374
				height     	37
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4157E74B0099"
			    client     	@161
			    supplier   	@151
			    vertices   	(list Points
				(1856, 271)
				(1856, 206)
				(1732, 206))
			    line_style 	3
			    origin_attachment 	(1856, 271)
			    terminal_attachment 	(1732, 206)
			    label      	(object SegLabel @168
				Parent_View 	@166
				location   	(1789, 155)
				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.698492
				height     	52
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$3" @169
		    location   	(1802, 711)
		    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      	"416AE67401A6"
		    roleview_list 	(list RoleViews
			(object RoleView "condition" @170
			    Parent_View 	@169
			    location   	(576, -1364)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @171
				Parent_View 	@170
				location   	(1800, 815)
				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  	168
				justify    	0
				label      	"+condition"
				pctDist    	0.709091
				height     	3
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"416AE675011C"
			    client     	@169
			    supplier   	@152
			    vertices   	(list Points
				(1802, 711)
				(1802, 858))
			    line_style 	3
			    origin_attachment 	(1802, 711)
			    terminal_attachment 	(1802, 858)
			    label      	(object SegLabel @172
				Parent_View 	@170
				location   	(1761, 783)
				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      	"1"
				pctDist    	0.496970
				height     	42
				orientation 	1))
			(object RoleView "altCondOwner" @173
			    Parent_View 	@169
			    location   	(576, -1364)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @174
				Parent_View 	@173
				location   	(1760, 667)
				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  	240
				justify    	0
				label      	"+altCondOwner"
				pctDist    	0.307087
				height     	43
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"416AE6750158"
			    client     	@169
			    supplier   	@160
			    vertices   	(list Points
				(1802, 711)
				(1802, 565))
			    line_style 	3
			    origin_attachment 	(1802, 711)
			    terminal_attachment 	(1802, 565)
			    label      	(object SegLabel @175
				Parent_View 	@173
				location   	(1846, 611)
				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.694690
				height     	44
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$4" @176
		    location   	(2140, 655)
		    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      	"416AE68E032A"
		    roleview_list 	(list RoleViews
			(object RoleView "body" @177
			    Parent_View 	@176
			    location   	(914, -1420)
			    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   	(2105, 878)
				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  	102
				justify    	0
				label      	"+body"
				pctDist    	0.794444
				height     	29
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"416AE6900279"
			    client     	@176
			    supplier   	@152
			    vertices   	(list Points
				(2140, 655)
				(2140, 906)
				(2031, 906))
			    line_style 	3
			    origin_attachment 	(2140, 655)
			    terminal_attachment 	(2031, 906)
			    label      	(object SegLabel @179
				Parent_View 	@177
				location   	(2068, 960)
				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      	"1"
				pctDist    	0.900452
				height     	54
				orientation 	0))
			(object RoleView "altBodyOwner" @180
			    Parent_View 	@176
			    location   	(914, -1420)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @181
				Parent_View 	@180
				location   	(2093, 599)
				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  	236
				justify    	0
				label      	"+altBodyOwner"
				pctDist    	0.155882
				height     	48
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"416AE69002B5"
			    client     	@176
			    supplier   	@160
			    vertices   	(list Points
				(2140, 655)
				(2140, 474)
				(1961, 474))
			    line_style 	3
			    origin_attachment 	(2140, 655)
			    terminal_attachment 	(1961, 474)
			    label      	(object SegLabel @182
				Parent_View 	@180
				location   	(2033, 531)
				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.800905
				height     	57
				orientation 	0))))
		(object ClassView "Class" "Logical View::EssentialOCL::Variable" @183
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(237, 933)
		    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 	@183
			location   	(90, 883)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"Variable")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DAF870288"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ImperativeIterateExp" @184
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(249, 509)
		    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 	@184
			location   	(44, 458)
			nlines     	1
			max_width  	410
			justify    	0
			label      	"ImperativeIterateExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"43004432004C"
		    width      	428
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$26" @185
		    location   	(166, 721)
		    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      	"43007F43017B"
		    roleview_list 	(list RoleViews
			(object RoleView "target" @186
			    Parent_View 	@185
			    location   	(2, 199)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @187
				Parent_View 	@186
				location   	(128, 828)
				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  	114
				justify    	0
				label      	"+target"
				pctDist    	0.719721
				height     	39
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"43007F4303A2"
			    client     	@185
			    supplier   	@183
			    vertices   	(list Points
				(166, 721)
				(166, 870))
			    line_style 	3
			    origin_attachment 	(166, 721)
			    terminal_attachment 	(166, 870)
			    label      	(object SegLabel @188
				Parent_View 	@186
				location   	(228, 821)
				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.679105
				height     	62
				orientation 	0))
			(object RoleView "tgtOwner" @189
			    Parent_View 	@185
			    location   	(2, 199)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @190
				Parent_View 	@189
				location   	(143, 686)
				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  	162
				justify    	0
				label      	"+tgtOwner"
				pctDist    	0.238260
				height     	24
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"43007F440032"
			    client     	@185
			    supplier   	@184
			    vertices   	(list Points
				(166, 721)
				(166, 572))
			    line_style 	3
			    origin_attachment 	(166, 721)
			    terminal_attachment 	(166, 572)
			    label      	(object SegLabel @191
				Parent_View 	@189
				location   	(225, 605)
				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.776119
				height     	59
				orientation 	1))))
		(object ClassView "Class" "Logical View::ImperativeOCL::BlockExp" @192
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1237, 339)
		    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 	@192
			location   	(1134, 288)
			nlines     	1
			max_width  	206
			justify    	0
			label      	"BlockExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"40E8677C0300"
		    width      	224
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ImperativeLoopExp" @193
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(233, 302)
		    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 	@193
			location   	(46, 251)
			nlines     	1
			max_width  	374
			justify    	0
			label      	"ImperativeLoopExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42FCD2B00184"
		    width      	392
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object InheritView "" @194
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"430044F90084"
		    client     	@184
		    supplier   	@193
		    vertices   	(list Points
			(166, 445)
			(166, 365))
		    line_style 	3
		    origin_attachment 	(166, 445)
		    terminal_attachment 	(166, 365))
		(object ClassView "Class" "Logical View::ImperativeOCL::WhileExp" @195
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(874, 568)
		    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 	@195
			location   	(772, 517)
			nlines     	1
			max_width  	204
			justify    	0
			label      	"WhileExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"4157DC9B00A4"
		    width      	222
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ComputeExp" @196
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1257, 536)
		    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 	@196
			location   	(1122, 485)
			nlines     	1
			max_width  	270
			justify    	0
			label      	"ComputeExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"415A808D0107"
		    width      	288
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::OclExpression" @197
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(669, 122)
		    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 	@197
			location   	(522, 72)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"OclExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DB533025E"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$42" @198
		    location   	(1165, 78)
		    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      	"40E8862F03B2"
		    roleview_list 	(list RoleViews
			(object RoleView "body" @199
			    Parent_View 	@198
			    location   	(-842, -962)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @200
				Parent_View 	@199
				location   	(926, 48)
				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  	102
				justify    	0
				label      	"+body"
				pctDist    	0.702970
				height     	31
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40E8863003B4"
			    client     	@198
			    supplier   	@197
			    vertices   	(list Points
				(1165, 78)
				(825, 78))
			    line_style 	3
			    origin_attachment 	(1165, 78)
			    terminal_attachment 	(825, 78)
			    label      	(object SegLabel @201
				Parent_View 	@199
				location   	(860, 132)
				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 @202
				Parent_View 	@199
				location   	(1055, 114)
				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.323404
				height     	36
				orientation 	0))
			(object RoleView "blockOwner" @203
			    Parent_View 	@198
			    location   	(-842, -962)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @204
				Parent_View 	@203
				location   	(1343, 139)
				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  	200
				justify    	0
				label      	"+blockOwner"
				pctDist    	0.597826
				height     	37
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40E8863003D2"
			    client     	@198
			    supplier   	@192
			    vertices   	(list Points
				(1165, 78)
				(1306, 78)
				(1306, 276))
			    line_style 	3
			    origin_attachment 	(1165, 78)
			    terminal_attachment 	(1306, 276)
			    label      	(object SegLabel @205
				Parent_View 	@203
				location   	(1352, 210)
				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.807692
				height     	46
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$0" @206
		    location   	(681, 417)
		    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      	"4157E1BE02A7"
		    roleview_list 	(list RoleViews
			(object RoleView "condition" @207
			    Parent_View 	@206
			    location   	(-163, -1507)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @208
				Parent_View 	@207
				location   	(681, 234)
				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  	168
				justify    	0
				label      	"+condition"
				pctDist    	0.791304
				height     	1
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4157E1BF0081"
			    client     	@206
			    supplier   	@197
			    vertices   	(list Points
				(681, 417)
				(681, 183))
			    line_style 	3
			    origin_attachment 	(681, 417)
			    terminal_attachment 	(681, 183)
			    label      	(object SegLabel @209
				Parent_View 	@207
				location   	(731, 263)
				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      	"1"
				pctDist    	0.658824
				height     	50
				orientation 	1))
			(object RoleView "whileExpression" @210
			    Parent_View 	@206
			    location   	(-163, -1507)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @211
				Parent_View 	@210
				location   	(711, 483)
				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      	"+whileExpression"
				pctDist    	0.283262
				height     	30
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4157E1BF009F"
			    client     	@206
			    supplier   	@195
			    vertices   	(list Points
				(681, 417)
				(681, 568)
				(763, 568))
			    line_style 	3
			    origin_attachment 	(681, 417)
			    terminal_attachment 	(763, 568)
			    label      	(object SegLabel @212
				Parent_View 	@210
				location   	(727, 604)
				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.851852
				height     	36
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$24" @213
		    location   	(317, 104)
		    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      	"42FCD35502CC"
		    roleview_list 	(list RoleViews
			(object RoleView "condition" @214
			    Parent_View 	@213
			    location   	(27, -1205)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @215
				Parent_View 	@214
				location   	(402, 132)
				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  	217
				justify    	0
				label      	"+condition"
				pctDist    	0.431818
				height     	28
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FCD3560346"
			    client     	@213
			    supplier   	@197
			    vertices   	(list Points
				(317, 104)
				(513, 104))
			    line_style 	3
			    origin_attachment 	(317, 104)
			    terminal_attachment 	(513, 104)
			    label      	(object SegLabel @216
				Parent_View 	@214
				location   	(475, 170)
				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.809278
				height     	66
				orientation 	1))
			(object RoleView "loopCondOwner" @217
			    Parent_View 	@213
			    location   	(27, -1205)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @218
				Parent_View 	@217
				location   	(216, 173)
				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  	315
				justify    	0
				label      	"+loopCondOwner"
				pctDist    	0.663594
				height     	42
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FCD35603D2"
			    client     	@213
			    supplier   	@193
			    vertices   	(list Points
				(317, 104)
				(257, 104)
				(257, 239))
			    line_style 	3
			    origin_attachment 	(317, 104)
			    terminal_attachment 	(257, 239)
			    label      	(object SegLabel @219
				Parent_View 	@217
				location   	(317, 215)
				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.877273
				height     	60
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$17" @220
		    location   	(855, 335)
		    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      	"42F787D5010A"
		    roleview_list 	(list RoleViews
			(object RoleView "body" @221
			    Parent_View 	@220
			    location   	(-174, -966)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @222
				Parent_View 	@221
				location   	(839, 236)
				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  	96
				justify    	0
				label      	"+body"
				pctDist    	0.754098
				height     	39
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F787D60043"
			    client     	@220
			    supplier   	@197
			    vertices   	(list Points
				(855, 335)
				(800, 335)
				(800, 184))
			    line_style 	3
			    origin_attachment 	(855, 335)
			    terminal_attachment 	(800, 184)
			    label      	(object SegLabel @223
				Parent_View 	@221
				location   	(765, 297)
				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      	"1"
				pctDist    	0.455696
				height     	36
				orientation 	0))
			(object RoleView "whileOwner" @224
			    Parent_View 	@220
			    location   	(-174, -966)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @225
				Parent_View 	@224
				location   	(888, 395)
				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      	"+whileOwner"
				pctDist    	0.510549
				height     	23
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F787D60093"
			    client     	@220
			    supplier   	@195
			    vertices   	(list Points
				(855, 335)
				(910, 335)
				(910, 505))
			    line_style 	3
			    origin_attachment 	(855, 335)
			    terminal_attachment 	(910, 505)
			    label      	(object SegLabel @226
				Parent_View 	@224
				location   	(874, 453)
				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.771690
				height     	37
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$25" @227
		    location   	(1042, 265)
		    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      	"42FFAB670393"
		    roleview_list 	(list RoleViews
			(object RoleView "body" @228
			    Parent_View 	@227
			    location   	(-286, -1263)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @229
				Parent_View 	@228
				location   	(949, 195)
				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  	102
				justify    	0
				label      	"+body"
				pctDist    	0.617555
				height     	36
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FFAB6A0211"
			    client     	@227
			    supplier   	@197
			    vertices   	(list Points
				(1042, 265)
				(1042, 159)
				(825, 159))
			    line_style 	3
			    origin_attachment 	(1042, 265)
			    terminal_attachment 	(825, 159)
			    label      	(object SegLabel @230
				Parent_View 	@228
				location   	(881, 185)
				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      	"1"
				pctDist    	0.830721
				height     	26
				orientation 	0))
			(object RoleView "computeOwner" @231
			    Parent_View 	@227
			    location   	(-286, -1263)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @232
				Parent_View 	@231
				location   	(1108, 442)
				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      	"+computeOwner"
				pctDist    	0.548589
				height     	66
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FFAB6A02D9"
			    client     	@227
			    supplier   	@196
			    vertices   	(list Points
				(1042, 265)
				(1042, 517)
				(1113, 517))
			    line_style 	3
			    origin_attachment 	(1042, 265)
			    terminal_attachment 	(1113, 517)
			    label      	(object SegLabel @233
				Parent_View 	@231
				location   	(1081, 571)
				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.899687
				height     	54
				orientation 	1))))
		(object ClassView "Class" "Logical View::EMOF::Class" @234
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(506, 930)
		    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 	@234
			location   	(411, 880)
			fill_color 	13434879
			nlines     	1
			max_width  	190
			justify    	0
			label      	"Class")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"401DAE57014A"
		    width      	208
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::Variable" @235
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1180, 933)
		    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 	@235
			location   	(1033, 883)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"Variable")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DAF870288"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$9" @236
		    location   	(1241, 735)
		    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      	"42203480015C"
		    roleview_list 	(list RoleViews
			(object RoleView "returnedElement" @237
			    Parent_View 	@236
			    location   	(261, -719)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @238
				Parent_View 	@237
				location   	(1283, 809)
				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  	278
				justify    	0
				label      	"+returnedElement"
				pctDist    	0.554545
				height     	42
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4220348101CC"
			    client     	@236
			    supplier   	@235
			    vertices   	(list Points
				(1241, 735)
				(1241, 871))
			    line_style 	3
			    origin_attachment 	(1241, 735)
			    terminal_attachment 	(1241, 871)
			    label      	(object SegLabel @239
				Parent_View 	@237
				location   	(1208, 854)
				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      	"1"
				pctDist    	0.873395
				height     	34
				orientation 	1))
			(object RoleView "computeOwner" @240
			    Parent_View 	@236
			    location   	(261, -719)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @241
				Parent_View 	@240
				location   	(1270, 699)
				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  	339
				justify    	0
				label      	"+computeOwner"
				pctDist    	0.263636
				height     	29
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42203481021C"
			    client     	@236
			    supplier   	@196
			    vertices   	(list Points
				(1241, 735)
				(1241, 599))
			    line_style 	3
			    origin_attachment 	(1241, 735)
			    terminal_attachment 	(1241, 599)
			    label      	(object SegLabel @242
				Parent_View 	@240
				location   	(1182, 616)
				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.876506
				height     	60
				orientation 	0))))
		(object ClassView "Class" "Logical View::ImperativeOCL::InstantiationExp" @243
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(506, 655)
		    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 	@243
			location   	(341, 604)
			nlines     	1
			max_width  	330
			justify    	0
			label      	"InstantiationExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42F718DE004D"
		    width      	348
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$20" @244
		    location   	(577, 375)
		    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      	"42FB0C6501FE"
		    roleview_list 	(list RoleViews
			(object RoleView "argument" @245
			    Parent_View 	@244
			    location   	(-252, -5055)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @246
				Parent_View 	@245
				location   	(555, 257)
				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      	"+argument"
				pctDist    	0.619792
				height     	23
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FB0C670215"
			    client     	@244
			    supplier   	@197
			    vertices   	(list Points
				(577, 375)
				(577, 184))
			    line_style 	3
			    origin_attachment 	(577, 375)
			    terminal_attachment 	(577, 184)
			    label      	(object SegLabel @247
				Parent_View 	@245
				location   	(631, 204)
				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 @248
				Parent_View 	@245
				location   	(559, 319)
				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.297491
				height     	19
				orientation 	0))
			(object RoleView "argOwner" @249
			    Parent_View 	@244
			    location   	(-252, -5055)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @250
				Parent_View 	@249
				location   	(508, 462)
				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      	"+argOwner"
				pctDist    	0.570957
				height     	17
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FB0C6702D4"
			    client     	@244
			    supplier   	@243
			    vertices   	(list Points
				(577, 375)
				(577, 435)
				(491, 435)
				(491, 592))
			    line_style 	3
			    origin_attachment 	(577, 375)
			    terminal_attachment 	(491, 592)
			    label      	(object SegLabel @251
				Parent_View 	@249
				location   	(543, 532)
				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.805281
				height     	52
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$12" @252
		    location   	(513, 792)
		    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      	"42F719CC008F"
		    roleview_list 	(list RoleViews
			(object RoleView "instantiatedClass" @253
			    Parent_View 	@252
			    location   	(47, -4999)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @254
				Parent_View 	@253
				location   	(521, 826)
				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  	349
				justify    	0
				label      	"+instantiatedClass"
				pctDist    	0.459016
				height     	8
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F719CD02CB"
			    client     	@252
			    supplier   	@234
			    vertices   	(list Points
				(513, 792)
				(513, 867))
			    line_style 	3
			    origin_attachment 	(513, 792)
			    terminal_attachment 	(513, 867)
			    label      	(object SegLabel @255
				Parent_View 	@253
				location   	(460, 858)
				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      	"1"
				pctDist    	0.897436
				height     	54
				orientation 	1))
			(object RoleView "instantiationExp" @256
			    Parent_View 	@252
			    location   	(47, -4999)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @257
				Parent_View 	@256
				location   	(445, 747)
				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  	268
				justify    	0
				label      	"+instantiationExp"
				pctDist    	0.626087
				height     	69
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F719CD0307"
			    client     	@252
			    supplier   	@243
			    vertices   	(list Points
				(513, 792)
				(513, 718))
			    line_style 	3
			    origin_attachment 	(513, 792)
			    terminal_attachment 	(513, 718)
			    label      	(object SegLabel @258
				Parent_View 	@256
				location   	(540, 733)
				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.815642
				height     	27
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$19" @259
		    location   	(974, 682)
		    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      	"42FB0C1900B5"
		    roleview_list 	(list RoleViews
			(object RoleView "extent" @260
			    Parent_View 	@259
			    location   	(145, -4748)
			    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   	(1003, 783)
				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  	122
				justify    	0
				label      	"+extent"
				pctDist    	0.102362
				height     	101
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FB0C1A008E"
			    client     	@259
			    supplier   	@235
			    vertices   	(list Points
				(974, 682)
				(1078, 682)
				(1078, 871))
			    line_style 	3
			    origin_attachment 	(974, 682)
			    terminal_attachment 	(1078, 871)
			    label      	(object SegLabel @262
				Parent_View 	@260
				location   	(1038, 809)
				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.792115
				height     	41
				orientation 	1))
			(object RoleView "instantiationExp" @263
			    Parent_View 	@259
			    location   	(145, -4748)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @264
				Parent_View 	@263
				location   	(852, 697)
				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  	268
				justify    	0
				label      	"+instantiationExp"
				pctDist    	0.413882
				height     	15
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FB0C1A00D4"
			    client     	@259
			    supplier   	@243
			    vertices   	(list Points
				(974, 682)
				(680, 682))
			    line_style 	3
			    origin_attachment 	(974, 682)
			    terminal_attachment 	(680, 682)
			    label      	(object SegLabel @265
				Parent_View 	@263
				location   	(713, 710)
				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.890411
				height     	28
				orientation 	0))))))
	(object ClassDiagram "Other expressions"
	    quid       	"4300499B03A1"
	    title      	"Other expressions"
	    zoom       	100
	    max_height 	28350
	    max_width  	21600
	    origin_x   	0
	    origin_y   	0
	    items      	(list diagram_item_list
		(object ClassView "Class" "Logical View::ImperativeOCL::AssignExp" @266
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(629, 490)
		    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 	@266
			location   	(466, 434)
			nlines     	1
			max_width  	326
			justify    	0
			label      	"AssignExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"401DC9E201B7"
		    width      	344
		    height     	136
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::OclExpression" @267
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(753, 104)
		    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 	@267
			location   	(606, 54)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"OclExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DB533025E"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$38" @268
		    location   	(622, 293)
		    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      	"403388A900E8"
		    roleview_list 	(list RoleViews
			(object RoleView "value" @269
			    Parent_View 	@268
			    location   	(-34, -1659)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @270
				Parent_View 	@269
				location   	(598, 226)
				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  	112
				justify    	0
				label      	"+value"
				pctDist    	0.527174
				height     	25
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"403388AA0284"
			    client     	@268
			    supplier   	@267
			    vertices   	(list Points
				(622, 293)
				(622, 165))
			    line_style 	3
			    origin_attachment 	(622, 293)
			    terminal_attachment 	(622, 165)
			    label      	(object SegLabel @271
				Parent_View 	@269
				location   	(613, 174)
				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      	"*"
				pctDist    	0.932643
				height     	10
				orientation 	0)
			    label      	(object SegLabel @272
				Parent_View 	@269
				location   	(624, 274)
				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.146552
				height     	2
				orientation 	1))
			(object RoleView "valueOwner" @273
			    Parent_View 	@268
			    location   	(-34, -1659)
			    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   	(616, 367)
				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  	206
				justify    	0
				label      	"+valueOwner"
				pctDist    	0.578947
				height     	7
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"403388AA0298"
			    client     	@268
			    supplier   	@266
			    vertices   	(list Points
				(622, 293)
				(622, 422))
			    line_style 	3
			    origin_attachment 	(622, 293)
			    terminal_attachment 	(622, 422)
			    label      	(object SegLabel @275
				Parent_View 	@273
				location   	(570, 409)
				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.898701
				height     	53
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$40" @276
		    location   	(497, 201)
		    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      	"40C961550296"
		    roleview_list 	(list RoleViews
			(object RoleView "left" @277
			    Parent_View 	@276
			    location   	(-255, -615)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @278
				Parent_View 	@277
				location   	(502, 20)
				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  	78
				justify    	0
				label      	"+left"
				pctDist    	0.683871
				height     	39
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9615A009F"
			    client     	@276
			    supplier   	@267
			    vertices   	(list Points
				(497, 201)
				(468, 201)
				(468, 58)
				(597, 58))
			    line_style 	3
			    origin_attachment 	(497, 201)
			    terminal_attachment 	(597, 58)
			    label      	(object SegLabel @279
				Parent_View 	@277
				location   	(577, 20)
				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      	"1"
				pctDist    	0.935484
				height     	39
				orientation 	0))
			(object RoleView "leftOwner" @280
			    Parent_View 	@276
			    location   	(-255, -615)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @281
				Parent_View 	@280
				location   	(513, 314)
				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      	"+leftOwner"
				pctDist    	0.568627
				height     	14
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9615A00B3"
			    client     	@276
			    supplier   	@266
			    vertices   	(list Points
				(497, 201)
				(526, 201)
				(526, 422))
			    line_style 	3
			    origin_attachment 	(497, 201)
			    terminal_attachment 	(526, 422)
			    label      	(object SegLabel @282
				Parent_View 	@280
				location   	(457, 405)
				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.931035
				height     	70
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$41" @283
		    location   	(732, 293)
		    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      	"40C97259024B"
		    roleview_list 	(list RoleViews
			(object RoleView "defaultValue" @284
			    Parent_View 	@283
			    location   	(-20, -523)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @285
				Parent_View 	@284
				location   	(762, 236)
				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      	"+defaultValue"
				pctDist    	0.458716
				height     	30
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9725C00C9"
			    client     	@283
			    supplier   	@267
			    vertices   	(list Points
				(732, 293)
				(732, 166))
			    line_style 	3
			    origin_attachment 	(732, 293)
			    terminal_attachment 	(732, 166)
			    label      	(object SegLabel @286
				Parent_View 	@284
				location   	(701, 194)
				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.787819
				height     	32
				orientation 	0))
			(object RoleView "defaultOwner" @287
			    Parent_View 	@283
			    location   	(-20, -523)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @288
				Parent_View 	@287
				location   	(755, 348)
				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  	228
				justify    	0
				label      	"+defaultOwner"
				pctDist    	0.431193
				height     	23
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9725C00E7"
			    client     	@283
			    supplier   	@266
			    vertices   	(list Points
				(732, 293)
				(732, 421))
			    line_style 	3
			    origin_attachment 	(732, 293)
			    terminal_attachment 	(732, 421)
			    label      	(object SegLabel @289
				Parent_View 	@287
				location   	(786, 408)
				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.900958
				height     	54
				orientation 	0))))
		(object ClassView "Class" "Logical View::ImperativeOCL::UnlinkExp" @290
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1156, 497)
		    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   	(1050, 446)
			nlines     	1
			max_width  	212
			justify    	0
			label      	"UnlinkExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"419B1D3602C3"
		    width      	230
		    height     	126
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$5" @291
		    location   	(1220, 118)
		    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      	"419B1D62023C"
		    roleview_list 	(list RoleViews
			(object RoleView "target" @292
			    Parent_View 	@291
			    location   	(-324, -3474)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @293
				Parent_View 	@292
				location   	(984, 18)
				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  	114
				justify    	0
				label      	"+target"
				pctDist    	0.797357
				height     	41
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"419B1D6300F3"
			    client     	@291
			    supplier   	@267
			    vertices   	(list Points
				(1220, 118)
				(1220, 58)
				(909, 58))
			    line_style 	3
			    origin_attachment 	(1220, 118)
			    terminal_attachment 	(909, 58)
			    label      	(object SegLabel @294
				Parent_View 	@292
				location   	(976, 91)
				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      	"1"
				pctDist    	0.820433
				height     	33
				orientation 	0))
			(object RoleView "tgtUnlink" @295
			    Parent_View 	@291
			    location   	(-324, -3474)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @296
				Parent_View 	@295
				location   	(1281, 306)
				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  	158
				justify    	0
				label      	"+tgtUnlink"
				pctDist    	0.595455
				height     	61
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"419B1D63011B"
			    client     	@291
			    supplier   	@290
			    vertices   	(list Points
				(1220, 118)
				(1220, 434))
			    line_style 	3
			    origin_attachment 	(1220, 118)
			    terminal_attachment 	(1220, 434)
			    label      	(object SegLabel @297
				Parent_View 	@295
				location   	(1274, 401)
				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.895455
				height     	54
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$6" @298
		    location   	(1072, 204)
		    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      	"419B1D6B01E5"
		    roleview_list 	(list RoleViews
			(object RoleView "item" @299
			    Parent_View 	@298
			    location   	(-472, -3388)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @300
				Parent_View 	@299
				location   	(979, 153)
				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  	96
				justify    	0
				label      	"+item"
				pctDist    	0.697248
				height     	16
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"419B1D6C007E"
			    client     	@298
			    supplier   	@267
			    vertices   	(list Points
				(1072, 204)
				(1072, 137)
				(909, 137))
			    line_style 	3
			    origin_attachment 	(1072, 204)
			    terminal_attachment 	(909, 137)
			    label      	(object SegLabel @301
				Parent_View 	@299
				location   	(1057, 53)
				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      	"1"
				pctDist    	0.359813
				height     	85
				orientation 	1))
			(object RoleView "itemUnlink" @302
			    Parent_View 	@298
			    location   	(-472, -3388)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @303
				Parent_View 	@302
				location   	(1081, 254)
				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  	186
				justify    	0
				label      	"+itemUnlink"
				pctDist    	0.220183
				height     	9
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"419B1D6C00A6"
			    client     	@298
			    supplier   	@290
			    vertices   	(list Points
				(1072, 204)
				(1072, 434))
			    line_style 	3
			    origin_attachment 	(1072, 204)
			    terminal_attachment 	(1072, 434)
			    label      	(object SegLabel @304
				Parent_View 	@302
				location   	(1126, 409)
				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.889908
				height     	54
				orientation 	0))))
		(object ClassView "Class" "Logical View::EssentialOCL::OperationCallExp" @305
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1477, 1078)
		    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   	(1297, 1028)
			fill_color 	13434879
			nlines     	1
			max_width  	360
			justify    	0
			label      	"OperationCallExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"40C96BA800C2"
		    width      	378
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::ReturnExp" @306
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1320, 686)
		    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 	@306
			location   	(1202, 635)
			nlines     	1
			max_width  	236
			justify    	0
			label      	"ReturnExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"421C8A8702EF"
		    width      	254
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::RaiseExp" @307
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(949, 1146)
		    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 	@307
			location   	(845, 1095)
			nlines     	1
			max_width  	208
			justify    	0
			label      	"RaiseExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"421C9F8601CB"
		    width      	226
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::TryExp" @308
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(398, 962)
		    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   	(315, 911)
			nlines     	1
			max_width  	166
			justify    	0
			label      	"TryExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"421C9F80033F"
		    width      	184
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::OclExpression" @309
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(925, 791)
		    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 	@309
			location   	(778, 741)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"OclExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DB533025E"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$8" @310
		    location   	(760, 971)
		    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      	"421CB7AB023D"
		    roleview_list 	(list RoleViews
			(object RoleView "tryBody" @311
			    Parent_View 	@310
			    location   	(409, -1104)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @312
				Parent_View 	@311
				location   	(874, 939)
				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  	154
				justify    	0
				label      	"+tryBody"
				pctDist    	0.424603
				height     	33
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"421CB7AC0072"
			    client     	@310
			    supplier   	@309
			    vertices   	(list Points
				(760, 971)
				(912, 971)
				(912, 853))
			    line_style 	3
			    origin_attachment 	(760, 971)
			    terminal_attachment 	(912, 853)
			    label      	(object SegLabel @313
				Parent_View 	@311
				location   	(947, 891)
				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.860577
				height     	35
				orientation 	1)
			    label      	(object SegLabel @314
				Parent_View 	@311
				location   	(790, 890)
				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.113971
				height     	82
				orientation 	0))
			(object RoleView "tryBodyOwner" @315
			    Parent_View 	@310
			    location   	(409, -1104)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @316
				Parent_View 	@315
				location   	(627, 939)
				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  	234
				justify    	0
				label      	"+tryBodyOwner"
				pctDist    	0.498024
				height     	33
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"421CB7AC00C2"
			    client     	@310
			    supplier   	@308
			    vertices   	(list Points
				(760, 971)
				(490, 971))
			    line_style 	3
			    origin_attachment 	(760, 971)
			    terminal_attachment 	(490, 971)
			    label      	(object SegLabel @317
				Parent_View 	@315
				location   	(578, 1010)
				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.676328
				height     	39
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$18" @318
		    location   	(1219, 822)
		    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      	"42F789360213"
		    roleview_list 	(list RoleViews
			(object RoleView "value" @319
			    Parent_View 	@318
			    location   	(935, -3814)
			    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   	(1116, 857)
				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  	112
				justify    	0
				label      	"+value"
				pctDist    	0.750880
				height     	35
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F7893700FC"
			    client     	@318
			    supplier   	@309
			    vertices   	(list Points
				(1219, 822)
				(1081, 822))
			    line_style 	3
			    origin_attachment 	(1219, 822)
			    terminal_attachment 	(1081, 822)
			    label      	(object SegLabel @321
				Parent_View 	@319
				location   	(1097, 775)
				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.886139
				height     	48
				orientation 	1))
			(object RoleView "returnExp" @322
			    Parent_View 	@318
			    location   	(935, -3814)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @323
				Parent_View 	@322
				location   	(1386, 772)
				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      	"+returnExp"
				pctDist    	0.834356
				height     	102
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42F7893701CE"
			    client     	@318
			    supplier   	@306
			    vertices   	(list Points
				(1219, 822)
				(1284, 822)
				(1284, 749))
			    line_style 	3
			    origin_attachment 	(1219, 822)
			    terminal_attachment 	(1284, 749)
			    label      	(object SegLabel @324
				Parent_View 	@322
				location   	(1242, 792)
				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.686577
				height     	43
				orientation 	0))))
		(object AssociationViewNew "$UNNAMED$35" @325
		    location   	(1000, 968)
		    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      	"4656B3AA0176"
		    roleview_list 	(list RoleViews
			(object RoleView "argument" @326
			    Parent_View 	@325
			    location   	(51, -178)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @327
				Parent_View 	@326
				location   	(1037, 942)
				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      	"+argument"
				pctDist    	0.226087
				height     	37
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4656B3AB02B8"
			    client     	@325
			    supplier   	@309
			    vertices   	(list Points
				(1000, 968)
				(1000, 853))
			    line_style 	3
			    origin_attachment 	(1000, 968)
			    terminal_attachment 	(1000, 853)
			    label      	(object SegLabel @328
				Parent_View 	@326
				location   	(1046, 887)
				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.704348
				height     	46
				orientation 	1))
			(object RoleView "raiseExp" @329
			    Parent_View 	@325
			    location   	(51, -178)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @330
				Parent_View 	@329
				location   	(910, 1043)
				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      	"+raiseExp"
				pctDist    	0.660870
				height     	91
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4656B3AB0326"
			    client     	@325
			    supplier   	@307
			    vertices   	(list Points
				(1000, 968)
				(1000, 1083))
			    line_style 	3
			    origin_attachment 	(1000, 968)
			    terminal_attachment 	(1000, 1083)
			    label      	(object SegLabel @331
				Parent_View 	@329
				location   	(1054, 1071)
				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.895652
				height     	54
				orientation 	0))))
		(object ClassView "Class" "Logical View::EMOF::Type" @332
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(304, 1124)
		    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 	@332
			location   	(214, 1074)
			fill_color 	13434879
			nlines     	1
			max_width  	180
			justify    	0
			label      	"Type")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454016
		    quidu      	"40C78BB303B7"
		    width      	198
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$7" @333
		    location   	(619, 1140)
		    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      	"421CB4D7026E"
		    roleview_list 	(list RoleViews
			(object RoleView "exception" @334
			    Parent_View 	@333
			    location   	(-1271, 801)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @335
				Parent_View 	@334
				location   	(542, 1111)
				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  	174
				justify    	0
				label      	"+exception"
				pctDist    	0.358696
				height     	30
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"421CB4D90195"
			    client     	@333
			    supplier   	@332
			    vertices   	(list Points
				(619, 1140)
				(403, 1140))
			    line_style 	3
			    origin_attachment 	(619, 1140)
			    terminal_attachment 	(403, 1140)
			    label      	(object SegLabel @336
				Parent_View 	@334
				location   	(427, 1194)
				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      	"1"
				pctDist    	0.894977
				height     	54
				orientation 	0))
			(object RoleView "raiseExpression" @337
			    Parent_View 	@333
			    location   	(-1271, 801)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @338
				Parent_View 	@337
				location   	(671, 1172)
				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  	256
				justify    	0
				label      	"+raiseExpression"
				pctDist    	0.243243
				height     	32
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"421CB4D901B3"
			    client     	@333
			    supplier   	@307
			    vertices   	(list Points
				(619, 1140)
				(836, 1140))
			    line_style 	3
			    origin_attachment 	(619, 1140)
			    terminal_attachment 	(836, 1140)
			    label      	(object SegLabel @339
				Parent_View 	@337
				location   	(808, 1124)
				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.877451
				height     	17
				orientation 	0))))
		(object ClassView "Class" "Logical View::ImperativeOCL::CatchExp" @340
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(420, 655)
		    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 	@340
			location   	(308, 604)
			nlines     	1
			max_width  	224
			justify    	0
			label      	"CatchExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"46568AE60256"
		    width      	242
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$32" @341
		    location   	(425, 808)
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"46568B1F03CA"
		    roleview_list 	(list RoleViews
			(object RoleView "exceptOwner" @342
			    Parent_View 	@341
			    location   	(-497, 83)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @343
				Parent_View 	@342
				location   	(399, 840)
				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      	"+exceptOwner"
				pctDist    	0.356164
				height     	27
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"46568B1F03CC"
			    client     	@341
			    supplier   	@308
			    vertices   	(list Points
				(425, 808)
				(425, 898))
			    line_style 	3
			    origin_attachment 	(425, 808)
			    terminal_attachment 	(425, 898)
			    label      	(object SegLabel @344
				Parent_View 	@342
				location   	(481, 878)
				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.780822
				height     	56
				orientation 	0))
			(object RoleView "exceptClause" @345
			    Parent_View 	@341
			    location   	(-497, 83)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @346
				Parent_View 	@345
				location   	(383, 768)
				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  	221
				justify    	0
				label      	"+exceptClause"
				pctDist    	0.444915
				height     	43
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"46568B1F03CB"
			    client     	@341
			    supplier   	@340
			    vertices   	(list Points
				(425, 808)
				(425, 718))
			    line_style 	3
			    origin_attachment 	(425, 808)
			    terminal_attachment 	(425, 718)
			    label      	(object SegLabel @347
				Parent_View 	@345
				location   	(467, 738)
				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.777778
				height     	42
				orientation 	1)
			    label      	(object SegLabel @348
				Parent_View 	@345
				location   	(548, 734)
				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.822222
				height     	123
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$33" @349
		    location   	(769, 633)
		    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      	"46568B5B0178"
		    roleview_list 	(list RoleViews
			(object RoleView "body" @350
			    Parent_View 	@349
			    location   	(25, 158)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @351
				Parent_View 	@350
				location   	(846, 661)
				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  	102
				justify    	0
				label      	"+body"
				pctDist    	0.345133
				height     	28
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"46568B5C00F7"
			    client     	@349
			    supplier   	@309
			    vertices   	(list Points
				(769, 633)
				(900, 633)
				(900, 729))
			    line_style 	3
			    origin_attachment 	(769, 633)
			    terminal_attachment 	(900, 729)
			    label      	(object SegLabel @352
				Parent_View 	@350
				location   	(954, 706)
				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 @353
				Parent_View 	@350
				location   	(976, 655)
				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.676991
				height     	76
				orientation 	0))
			(object RoleView "catchExp" @354
			    Parent_View 	@349
			    location   	(25, 158)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @355
				Parent_View 	@354
				location   	(635, 681)
				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  	164
				justify    	0
				label      	"+catchExp"
				pctDist    	0.586667
				height     	48
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"46568B5C0151"
			    client     	@349
			    supplier   	@340
			    vertices   	(list Points
				(769, 633)
				(541, 633))
			    line_style 	3
			    origin_attachment 	(769, 633)
			    terminal_attachment 	(541, 633)
			    label      	(object SegLabel @356
				Parent_View 	@354
				location   	(567, 580)
				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.887097
				height     	54
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$34" @357
		    location   	(221, 813)
		    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      	"4656B2F8010C"
		    roleview_list 	(list RoleViews
			(object RoleView "exception" @358
			    Parent_View 	@357
			    location   	(-130, -1262)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @359
				Parent_View 	@358
				location   	(192, 971)
				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  	225
				justify    	0
				label      	"+exception"
				pctDist    	0.639676
				height     	30
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4656B2F8010E"
			    client     	@357
			    supplier   	@332
			    vertices   	(list Points
				(221, 813)
				(221, 1061))
			    line_style 	3
			    origin_attachment 	(221, 813)
			    terminal_attachment 	(221, 1061)
			    label      	(object SegLabel @360
				Parent_View 	@358
				location   	(168, 1037)
				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 @361
				Parent_View 	@358
				location   	(192, 918)
				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.425101
				height     	30
				orientation 	1))
			(object RoleView "tryExpression" @362
			    Parent_View 	@357
			    location   	(-130, -1262)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @363
				Parent_View 	@362
				location   	(198, 795)
				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      	"+tryExpression"
				pctDist    	0.072874
				height     	24
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4656B2F8010D"
			    client     	@357
			    supplier   	@340
			    vertices   	(list Points
				(221, 813)
				(221, 642)
				(299, 642))
			    line_style 	3
			    origin_attachment 	(221, 813)
			    terminal_attachment 	(299, 642)
			    label      	(object SegLabel @364
				Parent_View 	@362
				location   	(273, 696)
				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 ClassView "Class" "Logical View::ImperativeOCL::VariableInitExp" @365
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1572, 484)
		    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 	@365
			location   	(1318, 428)
			nlines     	1
			max_width  	508
			justify    	0
			label      	"VariableInitExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"405AF03101AF"
		    width      	526
		    height     	136
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::EssentialOCL::OclExpression" @366
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1530, 107)
		    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 	@366
			location   	(1383, 57)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"OclExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DB533025E"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object ClassView "Class" "Logical View::ImperativeOCL::LogExp" @367
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(1585, 864)
		    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 	@367
			location   	(1496, 813)
			nlines     	1
			max_width  	178
			justify    	0
			label      	"LogExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42FB7CE3021C"
		    width      	196
		    height     	126
		    autoResize 	TRUE)
		(object InheritView "" @368
		    stereotype 	TRUE
		    line_color 	3342489
		    quidu      	"43DF9C6400EE"
		    client     	@367
		    supplier   	@305
		    vertices   	(list Points
			(1540, 927)
			(1540, 1015))
		    line_style 	3
		    origin_attachment 	(1540, 927)
		    terminal_attachment 	(1540, 1015))
		(object ClassView "Class" "Logical View::ImperativeOCL::AssertExp" @369
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2003, 1072)
		    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 	@369
			location   	(1736, 1016)
			nlines     	1
			max_width  	534
			justify    	0
			label      	"AssertExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"42FCAEE9006C"
		    width      	552
		    height     	136
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$22" @370
		    location   	(1823, 850)
		    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      	"42FCBAC20276"
		    roleview_list 	(list RoleViews
			(object RoleView "log" @371
			    Parent_View 	@370
			    location   	(-90, -2975)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @372
				Parent_View 	@371
				location   	(1734, 835)
				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  	78
				justify    	0
				label      	"+log"
				pctDist    	0.640212
				height     	16
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FCBAC30079"
			    client     	@370
			    supplier   	@367
			    vertices   	(list Points
				(1823, 850)
				(1683, 850))
			    line_style 	3
			    origin_attachment 	(1823, 850)
			    terminal_attachment 	(1683, 850)
			    label      	(object SegLabel @373
				Parent_View 	@371
				location   	(1757, 803)
				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.474576
				height     	48
				orientation 	1))
			(object RoleView "assertExp" @374
			    Parent_View 	@370
			    location   	(-90, -2975)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @375
				Parent_View 	@374
				location   	(1860, 880)
				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  	166
				justify    	0
				label      	"+assertExp"
				pctDist    	0.171429
				height     	30
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FCBAC3008D"
			    client     	@370
			    supplier   	@369
			    vertices   	(list Points
				(1823, 850)
				(1883, 850)
				(1883, 1004))
			    line_style 	3
			    origin_attachment 	(1823, 850)
			    terminal_attachment 	(1883, 1004)
			    label      	(object SegLabel @376
				Parent_View 	@374
				location   	(1937, 931)
				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.657143
				height     	54
				orientation 	0))))
		(object ClassView "Class" "Logical View::EssentialOCL::Variable" @377
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2085, 114)
		    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 	@377
			location   	(1938, 64)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"Variable")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DAF870288"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$39" @378
		    location   	(1866, 350)
		    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      	"40E90766025B"
		    roleview_list 	(list RoleViews
			(object RoleView "referredVariable" @379
			    Parent_View 	@378
			    location   	(1557, -820)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @380
				Parent_View 	@379
				location   	(1979, 314)
				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  	268
				justify    	0
				label      	"+referredVariable"
				pctDist    	0.269608
				height     	37
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40E9076B03AD"
			    client     	@378
			    supplier   	@377
			    vertices   	(list Points
				(1866, 350)
				(2115, 350)
				(2115, 176))
			    line_style 	3
			    origin_attachment 	(1866, 350)
			    terminal_attachment 	(2115, 176)
			    label      	(object SegLabel @381
				Parent_View 	@379
				location   	(2169, 220)
				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      	"1"
				pctDist    	0.896842
				height     	54
				orientation 	1))
			(object RoleView "declaration" @382
			    Parent_View 	@378
			    location   	(1557, -820)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @383
				Parent_View 	@382
				location   	(1677, 388)
				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  	196
				justify    	0
				label      	"+declaration"
				pctDist    	0.446078
				height     	38
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40E9076B03C1"
			    client     	@378
			    supplier   	@365
			    vertices   	(list Points
				(1866, 350)
				(1509, 350)
				(1509, 416))
			    line_style 	3
			    origin_attachment 	(1866, 350)
			    terminal_attachment 	(1509, 416)
			    label      	(object SegLabel @384
				Parent_View 	@382
				location   	(1474, 352)
				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.848039
				height     	36
				orientation 	1))))
		(object AssociationViewNew "" @385
		    location   	(1816, 279)
		    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      	"40C97174021A"
		    roleview_list 	(list RoleViews
			(object RoleView "initExpression" @386
			    Parent_View 	@385
			    location   	(856, -281)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @387
				Parent_View 	@386
				location   	(1508, 235)
				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  	234
				justify    	0
				label      	"+initExpression"
				pctDist    	0.775086
				height     	130
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C9717502E4"
			    client     	@385
			    supplier   	@366
			    vertices   	(list Points
				(1816, 279)
				(1637, 279)
				(1637, 169))
			    line_style 	3
			    origin_attachment 	(1816, 279)
			    terminal_attachment 	(1637, 169)
			    label      	(object SegLabel @388
				Parent_View 	@386
				location   	(1600, 276)
				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.628866
				height     	38
				orientation 	0))
			(object RoleView "initializedElement" @389
			    Parent_View 	@385
			    location   	(856, -281)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @390
				Parent_View 	@389
				location   	(1940, 249)
				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  	333
				justify    	0
				label      	"+initializedElement"
				pctDist    	0.427184
				height     	31
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"40C971750302"
			    client     	@385
			    supplier   	@377
			    vertices   	(list Points
				(1816, 279)
				(2003, 279)
				(2003, 176))
			    line_style 	3
			    origin_attachment 	(1816, 279)
			    terminal_attachment 	(2003, 176)
			    label      	(object SegLabel @391
				Parent_View 	@389
				location   	(2055, 207)
				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.896907
				height     	52
				orientation 	1))))
		(object ClassView "Class" "Logical View::EssentialOCL::OclExpression" @392
		    ShowCompartmentStereotypes 	TRUE
		    SuppressAttribute 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2181, 728)
		    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 	@392
			location   	(2034, 678)
			fill_color 	13434879
			nlines     	1
			max_width  	294
			justify    	0
			label      	"OclExpression")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	8454143
		    quidu      	"401DB533025E"
		    width      	312
		    height     	124
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$21" @393
		    location   	(1804, 622)
		    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      	"42FB7E140257"
		    roleview_list 	(list RoleViews
			(object RoleView "condition" @394
			    Parent_View 	@393
			    location   	(174, -4049)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @395
				Parent_View 	@394
				location   	(1953, 648)
				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  	217
				justify    	0
				label      	"+condition"
				pctDist    	0.358140
				height     	26
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FB7E1403DD"
			    client     	@393
			    supplier   	@392
			    vertices   	(list Points
				(1804, 622)
				(2175, 622)
				(2175, 666))
			    line_style 	3
			    origin_attachment 	(1804, 622)
			    terminal_attachment 	(2175, 666)
			    label      	(object SegLabel @396
				Parent_View 	@394
				location   	(2092, 594)
				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  	200
				justify    	0
				label      	"0..1"
				pctDist    	0.695187
				height     	29
				orientation 	0))
			(object RoleView "logOwner" @397
			    Parent_View 	@393
			    location   	(174, -4049)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @398
				Parent_View 	@397
				location   	(1658, 723)
				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  	217
				justify    	0
				label      	"+logOwner"
				pctDist    	0.811594
				height     	89
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FB7E1500D1"
			    client     	@393
			    supplier   	@367
			    vertices   	(list Points
				(1804, 622)
				(1569, 622)
				(1569, 801))
			    line_style 	3
			    origin_attachment 	(1804, 622)
			    terminal_attachment 	(1569, 801)
			    label      	(object SegLabel @399
				Parent_View 	@397
				location   	(1519, 744)
				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.862319
				height     	51
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$23" @400
		    location   	(2267, 896)
		    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      	"42FCBAF20289"
		    roleview_list 	(list RoleViews
			(object RoleView "assertion" @401
			    Parent_View 	@400
			    location   	(354, -2929)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @402
				Parent_View 	@401
				location   	(2151, 820)
				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  	158
				justify    	0
				label      	"+assertion"
				pctDist    	0.710280
				height     	116
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FCBAF40173"
			    client     	@400
			    supplier   	@392
			    vertices   	(list Points
				(2267, 896)
				(2267, 789))
			    line_style 	3
			    origin_attachment 	(2267, 896)
			    terminal_attachment 	(2267, 789)
			    label      	(object SegLabel @403
				Parent_View 	@401
				location   	(2321, 801)
				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      	"1"
				pctDist    	0.893939
				height     	54
				orientation 	1))
			(object RoleView "assertOwner" @404
			    Parent_View 	@400
			    location   	(354, -2929)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @405
				Parent_View 	@404
				location   	(2140, 962)
				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  	256
				justify    	0
				label      	"+assertOwner"
				pctDist    	0.611111
				height     	127
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"42FCBAF40228"
			    client     	@400
			    supplier   	@369
			    vertices   	(list Points
				(2267, 896)
				(2267, 1004))
			    line_style 	3
			    origin_attachment 	(2267, 896)
			    terminal_attachment 	(2267, 1004)
			    label      	(object SegLabel @406
				Parent_View 	@404
				location   	(2339, 977)
				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.752688
				height     	72
				orientation 	0))))
		(object ClassView "Class" "Logical View::ImperativeOCL::UnpackExp" @407
		    ShowCompartmentStereotypes 	TRUE
		    SuppressOperation 	TRUE
		    IncludeAttribute 	TRUE
		    IncludeOperation 	TRUE
		    location   	(2018, 488)
		    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 	@407
			location   	(1895, 437)
			nlines     	1
			max_width  	246
			justify    	0
			label      	"UnpackExp")
		    icon_style 	"Icon"
		    line_color 	3342489
		    fill_color 	16777215
		    quidu      	"4300B2A901FE"
		    width      	264
		    height     	126
		    annotation 	8
		    autoResize 	TRUE)
		(object AssociationViewNew "$UNNAMED$27" @408
		    location   	(2224, 344)
		    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      	"4300B2C703AF"
		    roleview_list 	(list RoleViews
			(object RoleView "targetVariable" @409
			    Parent_View 	@408
			    location   	(206, -144)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @410
				Parent_View 	@409
				location   	(2248, 258)
				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  	242
				justify    	0
				label      	"+targetVariable"
				pctDist    	0.517045
				height     	24
				orientation 	1)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"4300B2CA0006"
			    client     	@408
			    supplier   	@377
			    vertices   	(list Points
				(2224, 344)
				(2224, 175))
			    line_style 	3
			    origin_attachment 	(2224, 344)
			    terminal_attachment 	(2224, 175)
			    label      	(object SegLabel @411
				Parent_View 	@409
				location   	(2260, 213)
				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  	62
				justify    	0
				label      	"1..*"
				pctDist    	0.784530
				height     	36
				orientation 	1)
			    label      	(object SegLabel @412
				Parent_View 	@409
				location   	(2228, 308)
				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.215909
				height     	4
				orientation 	1))
			(object RoleView "$UNNAMED$28" @413
			    Parent_View 	@408
			    location   	(206, -144)
			    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      	"4300B2CA0075"
			    client     	@408
			    supplier   	@407
			    vertices   	(list Points
				(2224, 344)
				(2224, 439)
				(2150, 439))
			    line_style 	3
			    origin_attachment 	(2224, 344)
			    terminal_attachment 	(2150, 439)
			    label      	(object SegLabel @414
				Parent_View 	@413
				location   	(2183, 405)
				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.362694
				height     	42
				orientation 	1))))
		(object AssociationViewNew "$UNNAMED$36" @415
		    location   	(2224, 564)
		    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      	"465C4FA2007C"
		    roleview_list 	(list RoleViews
			(object RoleView "source" @416
			    Parent_View 	@415
			    location   	(206, 76)
			    font       	(object Font
				size       	10
				face       	"Arial"
				bold       	FALSE
				italics    	FALSE
				underline  	FALSE
				strike     	FALSE
				color      	0
				default_color 	TRUE)
			    label      	(object SegLabel @417
				Parent_View 	@416
				location   	(2236, 602)
				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  	124
				justify    	0
				label      	"+source"
				pctDist    	0.368421
				height     	12
				orientation 	0)
			    stereotype 	TRUE
			    line_color 	3342489
			    quidu      	"465C4FA501B7"
			    client     	@415
			    supplier   	@392
			    vertices   	(list Points
				(2224, 564)
				(2224, 665))
			    line_style 	3
			    origin_attachment 	(2224, 564)
			    terminal_attachment 	(2224, 665)
			    label      	(object SegLabel @418
				Parent_View 	@416
				location   	(2263, 632)
				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      	"1"
				pctDist    	0.673684
				height     	39
				orientation 	0))
			(object RoleView "$UNNAMED$37" @419
			    Parent_View 	@415
			    location   	(206, 76)
			    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      	"465C4FA50211"
			    client     	@415
			    supplier   	@407
			    vertices   	(list Points
				(2224, 564)
				(2224, 504)
				(2150, 504))
			    line_style 	3
			    origin_attachment 	(2224, 564)
			    terminal_attachment 	(2150, 504)
			    label      	(object SegLabel @420
				Parent_View 	@419
				location   	(2276, 511)
				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.402985
				height     	52
				orientation 	1))))))))
