
(object Petal
    version    	42
    _written   	"Rose 4.5.8163.3"
    charSet    	0)

(object Design "Logical View"
    is_unit    	TRUE
    is_loaded  	TRUE
    defaults   	(object defaults
	rightMargin 	0.250000
	leftMargin 	0.250000
	topMargin  	0.250000
	bottomMargin 	0.500000
	pageOverlap 	0.250000
	clipIconLabels 	TRUE
	autoResize 	TRUE
	snapToGrid 	TRUE
	gridX      	16
	gridY      	16
	defaultFont 	(object Font
	    size       	10
	    face       	"Arial"
	    bold       	FALSE
	    italics    	FALSE
	    underline  	FALSE
	    strike     	FALSE
	    color      	0
	    default_color 	TRUE)
	showMessageNum 	1
	showClassOfObject 	TRUE
	notation   	"Unified")
    root_usecase_package 	(object Class_Category "Use Case View"
	quid       	"39E27F080064"
	exportControl 	"Public"
	global     	TRUE
	logical_models 	(list unit_reference_list)
	logical_presentations 	(list unit_reference_list
	    (object UseCaseDiagram "Main"
		quid       	"39E27F080078"
		title      	"Main"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    root_category 	(object Class_Category "Logical View"
	quid       	"39E27F080063"
	exportControl 	"Public"
	global     	TRUE
	subsystem  	"Component View"
	quidu      	"39E27F080065"
	logical_models 	(list unit_reference_list
	    (object Class_Category "wsdl"
		is_unit    	TRUE
		is_loaded  	FALSE
		file_name  	"$VABASE_PLUGINS_PATH\\org.eclipse.wst.wsdl\\model\\org.eclipse.wst.WSDL.cat"
		quid       	"3ADFB8E5021E")
	    (object Class_Category "soap"
		attributes 	(list Attribute_Set
		    (object Attribute
			tool       	"Ecore"
			name       	"nsPrefix"
			value      	"soap")
		    (object Attribute
			tool       	"Ecore"
			name       	"nsURI"
			value      	"http://www.eclipse.org/wsdl/2003/SOAP")
		    (object Attribute
			tool       	"Ecore"
			name       	"basePackage"
			value      	"org.eclipse.wst.wsdl.binding")
		    (object Attribute
			tool       	"Ecore"
			name       	"prefix"
			value      	"SOAP"))
		quid       	"3A01CF0C01A2"
		exportControl 	"Public"
		logical_models 	(list unit_reference_list
		    (object Class "SOAPBinding"
			quid       	"3A01D3B901AD"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE09A3801AB"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"45E4895502BF"
				supplier   	"Logical View::soap::ISOAPBinding"
				quidu      	"45E485A2001F"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "transportURI"
				attributes 	(list Attribute_Set)
				quid       	"3A01D3DF01E4"
				type       	"String")
			    (object ClassAttribute "style"
				attributes 	(list Attribute_Set)
				quid       	"3A01D3F1029E"
				type       	"String"))
			language   	"Java")
		    (object Class "SOAPBody"
			quid       	"3A01DED5031F"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE09A450041"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"45E48A5B00BB"
				supplier   	"Logical View::soap::ISOAPBody"
				quidu      	"45E4884B0119"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "use"
				quid       	"3A01E2D501A5"
				type       	"String")
			    (object ClassAttribute "namespaceURI"
				quid       	"3A93477C01B2"
				type       	"String")
			    (object ClassAttribute "eEncodingStyles"
				attributes 	(list Attribute_Set)
				quid       	"45EC98A60271"
				stereotype 	"0..*"
				type       	"IString"))
			language   	"Java")
		    (object Class "SOAPHeaderBase"
			quid       	"3A01DEE7034D"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE09A3E0326"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9"))
			operations 	(list Operations
			    (object Operation "getEncodingStyles"
				quid       	"45ED04C200EA"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setEncodingStyles"
				quid       	"45ED05730222"
				parameters 	(list Parameters
				    (object Parameter "encodingStyles"
					type       	"IList"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "use"
				quid       	"3AD62E9C0056"
				type       	"String")
			    (object ClassAttribute "namespaceURI"
				quid       	"3AD62EA2025D"
				type       	"String")
			    (object ClassAttribute "eEncodingStyles"
				quid       	"3EE4A58F01AE"
				stereotype 	"0..*"
				type       	"IString")
			    (object ClassAttribute "message"
				quid       	"45F06E360186"
				type       	"QName")
			    (object ClassAttribute "part"
				quid       	"45F06E6C0196"
				type       	"String"))
			language   	"Java")
		    (object Class "SOAPFault"
			quid       	"3A06D9FA00F7"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE09A4A0020"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"45E48A08032C"
				supplier   	"Logical View::soap::ISOAPFault"
				quidu      	"45E488870119"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "use"
				quid       	"3A09821A012B"
				type       	"String")
			    (object ClassAttribute "namespaceURI"
				quid       	"3AD6204803AE"
				type       	"String")
			    (object ClassAttribute "eEncodingStyles"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"visibility"
					value      	("VisibilityKind" 1)))
				quid       	"3EE4A56303AF"
				stereotype 	"0..*"
				type       	"IString")
			    (object ClassAttribute "name"
				quid       	"45F079D10399"
				type       	"String"))
			language   	"Java")
		    (object Class "SOAPOperation"
			quid       	"3A0AD45500E8"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE09A4E031F"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"45E4897F007D"
				supplier   	"Logical View::soap::ISOAPOperation"
				quidu      	"45E488A50128"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "soapActionURI"
				quid       	"3A0AD464004A"
				type       	"String")
			    (object ClassAttribute "style"
				quid       	"3A0AD46C018C"
				type       	"String"))
			language   	"Java")
		    (object Class "SOAPAddress"
			quid       	"3AD1FF750287"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE095350098"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"45E48A7E0109"
				supplier   	"Logical View::soap::ISOAPAddress"
				quidu      	"45E487E700EA"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "locationURI"
				quid       	"3AD211C9025C"
				type       	"String"))
			language   	"Java")
		    (object Class "SOAPHeaderFault"
			quid       	"3AD632B803DD"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD633340038"
				supplier   	"Logical View::soap::SOAPHeaderBase"
				quidu      	"3A01DEE7034D")
			    (object Inheritance_Relationship
				quid       	"45ED078C02FD"
				supplier   	"Logical View::soap::ISOAPHeaderFault"
				quidu      	"45E488BD03A9"))
			language   	"Java")
		    (object Class "SOAPHeader"
			quid       	"3AD63309016D"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD63330017D"
				supplier   	"Logical View::soap::SOAPHeaderBase"
				quidu      	"3A01DEE7034D")
			    (object Inheritance_Relationship
				quid       	"45E489BC031C"
				supplier   	"Logical View::soap::ISOAPHeader"
				quidu      	"45E488E7008C"))
			language   	"Java")
		    (object Class "IString"
			quid       	"3B8DD90C0220"
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "java.lang.String"
				quid       	"3B8DD9320383"
				stereotype 	"javaclass")))
		    (object Class "ISOAPBinding"
			quid       	"45E485A2001F"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.soap.SOAPBinding"
				quid       	"45E4863701D4"
				stereotype 	"javaclass"))
			language   	"Java")
		    (object Class "ISOAPAddress"
			quid       	"45E487E700EA"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.soap.SOAPAddress"
				quid       	"45E487F6033C"
				stereotype 	"javaclass"
				type       	"type"
				initv      	"initval"))
			language   	"Java")
		    (object Class "ISOAPBody"
			quid       	"45E4884B0119"
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "getEncodingStyles"
				quid       	"45E48E8D0222"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setEncodingStyles"
				quid       	"45F6D6820203"
				parameters 	(list Parameters
				    (object Parameter "encodingStyles"
					type       	"IList"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
				(object Operation "getParts"
				quid       	"45EC58A3031C"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setParts"
				quid       	"45F6D65A0203"
				parameters 	(list Parameters
				    (object Parameter "parts"
					type       	"IList"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.soap.SOAPBody"
				quid       	"45E488560213"
				stereotype 	"javaclass"
				type       	"type"
				initv      	"initval"))
			language   	"Java")
		    (object Class "ISOAPFault"
			quid       	"45E488870119"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.soap.SOAPFault"
				quid       	"45E4889703A9"
				stereotype 	"javaclass"
				type       	"type"
				initv      	"initval"))
			language   	"Java")
		    (object Class "ISOAPOperation"
			quid       	"45E488A50128"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.soap.SOAPOperation"
				quid       	"45E488AF00AB"
				stereotype 	"javaclass"
				type       	"type"
				initv      	"initval"))
			language   	"Java")
		    (object Class "ISOAPHeaderFault"
			quid       	"45E488BD03A9"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.soap.SOAPHeaderFault"
				quid       	"45E488CE029F"
				stereotype 	"javaclass"
				type       	"type"
				initv      	"initval"))
			language   	"Java")
		    (object Class "ISOAPHeader"
			quid       	"45E488E7008C"
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "getSOAPHeaderFaults"
				quid       	"45ED0302008C"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "addSOAPHeaderFault"
				quid       	"45ED039702BF"
				parameters 	(list Parameters
				    (object Parameter "soapHeaderFault"
					type       	"ISOAPHeaderFault"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.soap.SOAPHeader"
				quid       	"45E488F100BB"
				stereotype 	"javaclass"
				type       	"type"
				initv      	"initval"))
			language   	"Java")
		    (object Association "$UNNAMED$0"
			quid       	"3A06E0B50036"
			roles      	(list role_list
			    (object Role "$UNNAMED$1"
				quid       	"3A06E0B600C4"
				supplier   	"Logical View::soap::SOAPBody"
				quidu      	"3A01DED5031F")
			    (object Role "eParts"
				quid       	"3A06E0B600C5"
				label      	"eParts"
				supplier   	"Logical View::wsdl::Part"
				quidu      	"3AD5CE1C032E"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$2"
			quid       	"3AD62DE60130"
			roles      	(list role_list
			    (object Role "eMessage"
				quid       	"3AD62DE7004B"
				label      	"eMessage"
				supplier   	"Logical View::wsdl::Message"
				quidu      	"3AD5C9590078"
				client_cardinality 	(value cardinality "1..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$3"
				quid       	"3AD62DE70055"
				supplier   	"Logical View::soap::SOAPHeaderBase"
				quidu      	"3A01DEE7034D")))
		    (object Association "$UNNAMED$4"
			quid       	"3AD62DF802D1"
			roles      	(list role_list
			    (object Role "ePart"
				quid       	"3AD62DFA0002"
				label      	"ePart"
				supplier   	"Logical View::wsdl::Part"
				quidu      	"3AD5CE1C032E"
				client_cardinality 	(value cardinality "1..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$5"
				quid       	"3AD62DFA0003"
				supplier   	"Logical View::soap::SOAPHeaderBase"
				quidu      	"3A01DEE7034D")))
		    (object Association "$UNNAMED$6"
			quid       	"3AD6333701CD"
			roles      	(list role_list
			    (object Role "$UNNAMED$7"
				quid       	"3AD633370372"
				supplier   	"Logical View::soap::SOAPHeader"
				quidu      	"3AD63309016D"
				is_aggregate 	TRUE)
			    (object Role "headerFaults"
				quid       	"3AD633370373"
				label      	"headerFaults"
				supplier   	"Logical View::soap::SOAPHeaderFault"
				quidu      	"3AD632B803DD"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE))))
		logical_presentations 	(list unit_reference_list
		    (object ClassDiagram "Binding"
			quid       	"3A01CF23029F"
			title      	"Binding"
			zoom       	87
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::soap::SOAPBinding" @1
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(704, 480)
				label      	(object ItemLabel
				    Parent_View 	@1
				    location   	(487, 372)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	434
				    justify    	0
				    label      	"SOAPBinding")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A01D3B901AD"
				width      	452
				height     	240
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::SOAPOperation" @2
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1472, 480)
				label      	(object ItemLabel
				    Parent_View 	@2
				    location   	(1235, 372)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	474
				    justify    	0
				    label      	"SOAPOperation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A0AD45500E8"
				width      	492
				height     	240
				annotation 	8)
			    (object ClassView "Class" "Logical View::soap::SOAPHeader" @3
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(752, 1552)
				label      	(object ItemLabel
				    Parent_View 	@3
				    location   	(612, 1504)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	280
				    justify    	0
				    label      	"SOAPHeader")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD63309016D"
				width      	298
				height     	120
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::SOAPHeaderFault" @4
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1984, 1520)
				label      	(object ItemLabel
				    Parent_View 	@4
				    location   	(1797, 1472)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	374
				    justify    	0
				    label      	"SOAPHeaderFault")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD632B803DD"
				width      	392
				height     	120
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$6" @5
				location   	(1344, 1559)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD6333701CD"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$7" @6
					Parent_View 	@5
					location   	(688, 55)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD633370372"
					client     	@5
					supplier   	@3
					line_style 	3
					origin_attachment 	(1344, 1559)
					terminal_attachment 	(901, 1559))
				    (object RoleView "headerFaults" @7
					Parent_View 	@5
					location   	(688, 55)
					label      	(object SegLabel @8
					    Parent_View 	@7
					    location   	(1331, 1519)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	346
					    justify    	0
					    label      	"+headerFaults"
					    pctDist    	-0.030702
					    height     	41
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD633370373"
					client     	@5
					supplier   	@4
					line_style 	3
					origin_attachment 	(1344, 1559)
					terminal_attachment 	(1788, 1559)
					label      	(object SegLabel @9
					    Parent_View 	@7
					    location   	(1671, 1522)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.736842
					    height     	38
					    orientation 	0)
					label      	(object SegLabel @10
					    Parent_View 	@7
					    location   	(1617, 1597)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	151
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.614035
					    height     	38
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::wsdl::Message" @11
				ShowCompartmentStereotypes 	TRUE
				location   	(2736, 784)
				label      	(object ItemLabel
				    Parent_View 	@11
				    location   	(2613, 707)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	246
				    justify    	0
				    label      	"Message")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C9590078"
				width      	264
				height     	178
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::SOAPHeaderBase" @12
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1472, 928)
				label      	(object ItemLabel
				    Parent_View 	@12
				    location   	(1151, 665)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	642
				    justify    	0
				    label      	"SOAPHeaderBase")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A01DEE7034D"
				width      	660
				height     	550
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$2" @13
				location   	(2203, 858)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD62DE60130"
				roleview_list 	(list RoleViews
				    (object RoleView "eMessage" @14
					Parent_View 	@13
					location   	(1051, -310)
					label      	(object SegLabel @15
					    Parent_View 	@14
					    location   	(2367, 888)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+eMessage"
					    pctDist    	0.412322
					    height     	30
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD62DE7004B"
					client     	@13
					supplier   	@11
					line_style 	3
					origin_attachment 	(2203, 858)
					terminal_attachment 	(2604, 858)
					label      	(object SegLabel @16
					    Parent_View 	@14
					    location   	(2479, 821)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.687204
					    height     	38
					    orientation 	0))
				    (object RoleView "$UNNAMED$3" @17
					Parent_View 	@13
					location   	(1051, -310)
					label      	(object SegLabel @18
					    Parent_View 	@17
					    location   	(2055, 898)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	192
					    justify    	0
					    label      	""
					    pctDist    	0.372254
					    height     	40
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD62DE70055"
					client     	@13
					supplier   	@12
					line_style 	3
					origin_attachment 	(2203, 858)
					terminal_attachment 	(1802, 858))))
			    (object ClassView "Class" "Logical View::soap::SOAPBody" @19
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1472, 2240)
				label      	(object ItemLabel
				    Parent_View 	@19
				    location   	(1226, 2132)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	492
				    justify    	0
				    label      	"SOAPBody")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A01DED5031F"
				compartment 	(object Compartment
				    Parent_View 	@19
				    location   	(1226, 2192)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	4
				    max_width  	0)
				width      	510
				height     	240
				annotation 	8)
			    (object ClassView "Class" "Logical View::wsdl::Part" @20
				ShowCompartmentStereotypes 	TRUE
				location   	(2352, 2080)
				label      	(object ItemLabel
				    Parent_View 	@20
				    location   	(2236, 1866)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	233
				    justify    	0
				    label      	"Part")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5CE1C032E"
				width      	251
				height     	452
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$4" @21
				location   	(2290, 1230)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD62DF802D1"
				roleview_list 	(list RoleViews
				    (object RoleView "ePart" @22
					Parent_View 	@21
					location   	(1138, 62)
					label      	(object SegLabel @23
					    Parent_View 	@22
					    location   	(2380, 1779)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	120
					    justify    	0
					    label      	"+ePart"
					    pctDist    	0.881465
					    height     	90
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD62DFA0002"
					client     	@21
					supplier   	@20
					line_style 	3
					origin_attachment 	(2290, 1230)
					terminal_attachment 	(2290, 1854)
					label      	(object SegLabel @24
					    Parent_View 	@22
					    location   	(2237, 1779)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.881465
					    height     	54
					    orientation 	1))
				    (object RoleView "$UNNAMED$5" @25
					Parent_View 	@21
					location   	(1138, 62)
					label      	(object SegLabel @26
					    Parent_View 	@25
					    location   	(1928, 1137)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	120
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD62DFA0003"
					client     	@21
					supplier   	@12
					vertices   	(list Points
					    (2290, 1230)
					    (2290, 1095)
					    (1802, 1095))
					line_style 	3
					origin_attachment 	(2290, 1230)
					terminal_attachment 	(1802, 1095))))
			    (object AssociationViewNew "$UNNAMED$0" @27
				location   	(1977, 2291)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3A06E0B50036"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$1" @28
					Parent_View 	@27
					location   	(745, -13)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3A06E0B600C4"
					client     	@27
					supplier   	@19
					line_style 	3
					origin_attachment 	(1977, 2291)
					terminal_attachment 	(1727, 2291))
				    (object RoleView "eParts" @29
					Parent_View 	@27
					location   	(745, -13)
					label      	(object SegLabel @30
					    Parent_View 	@29
					    location   	(2185, 2395)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	144
					    justify    	0
					    label      	"+eParts"
					    pctDist    	0.833856
					    height     	104
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3A06E0B600C5"
					client     	@27
					supplier   	@20
					line_style 	3
					origin_attachment 	(1977, 2291)
					terminal_attachment 	(2227, 2291)
					label      	(object SegLabel @31
					    Parent_View 	@29
					    location   	(2185, 2245)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.833856
					    height     	47
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::soap::SOAPFault" @32
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(592, 2256)
				label      	(object ItemLabel
				    Parent_View 	@32
				    location   	(346, 2148)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	492
				    justify    	0
				    label      	"SOAPFault")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A06D9FA00F7"
				width      	510
				height     	240
				annotation 	8)
			    (object ClassView "Class" "Logical View::soap::IString" @33
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(288, 1376)
				label      	(object ItemLabel
				    Parent_View 	@33
				    location   	(114, 1348)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	348
				    justify    	0
				    label      	"IString")
				stereotype 	(object ItemLabel
				    Parent_View 	@33
				    location   	(114, 1298)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	348
				    justify    	0
				    label      	"<<datatype>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B8DD90C0220"
				width      	366
				height     	180
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @34
				location   	(1472, 1418)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@12
				vertices   	(list Points
				    (1472, 1418)
				    (1472, 1203)))
			    (object InheritView "" @35
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD63330017D"
				client     	@3
				supplier   	@12
				line_style 	3
				origin_attachment 	(836, 1492)
				terminal_attachment 	(836, 1418)
				drawSupplier 	@34)
			    (object ClassView "Class" "Logical View::soap::ISOAPBinding" @36
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(704, 96)
				label      	(object ItemLabel
				    Parent_View 	@36
				    location   	(557, 72)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	294
				    justify    	0
				    label      	"ISOAPBinding")
				stereotype 	(object ItemLabel
				    Parent_View 	@36
				    location   	(557, 22)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	294
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"45E485A2001F"
				width      	312
				height     	172
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @37
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"45E4895502BF"
				client     	@1
				supplier   	@36
				line_style 	0)
			    (object ClassView "Class" "Logical View::soap::ISOAPOperation" @38
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1472, 112)
				label      	(object ItemLabel
				    Parent_View 	@38
				    location   	(1303, 88)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	338
				    justify    	0
				    label      	"ISOAPOperation")
				stereotype 	(object ItemLabel
				    Parent_View 	@38
				    location   	(1303, 38)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	338
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"45E488A50128"
				width      	356
				height     	172
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @39
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"45E4897F007D"
				client     	@2
				supplier   	@38
				line_style 	0)
			    (object ClassView "Class" "Logical View::soap::ISOAPHeader" @40
				ShowCompartmentStereotypes 	TRUE
				location   	(752, 864)
				label      	(object ItemLabel
				    Parent_View 	@40
				    location   	(610, 840)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	284
				    justify    	0
				    label      	"ISOAPHeader")
				stereotype 	(object ItemLabel
				    Parent_View 	@40
				    location   	(610, 790)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	284
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"45E488E7008C"
				width      	302
				height     	172
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @41
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"45E489BC031C"
				client     	@3
				supplier   	@40
				line_style 	0)
			    (object ClassView "Class" "Logical View::soap::ISOAPHeaderFault" @42
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1984, 368)
				label      	(object ItemLabel
				    Parent_View 	@42
				    location   	(1795, 344)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	378
				    justify    	0
				    label      	"ISOAPHeaderFault")
				stereotype 	(object ItemLabel
				    Parent_View 	@42
				    location   	(1795, 294)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	378
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"45E488BD03A9"
				width      	396
				height     	172
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @43
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD633340038"
				client     	@4
				supplier   	@12
				line_style 	3
				origin_attachment 	(1921, 1460)
				terminal_attachment 	(1921, 1418)
				drawSupplier 	@34)
			    (object ClassView "Class" "Logical View::soap::ISOAPFault" @44
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(592, 1792)
				label      	(object ItemLabel
				    Parent_View 	@44
				    location   	(469, 1768)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	246
				    justify    	0
				    label      	"ISOAPFault")
				stereotype 	(object ItemLabel
				    Parent_View 	@44
				    location   	(469, 1718)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	246
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"45E488870119"
				width      	264
				height     	172
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @45
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"45E48A08032C"
				client     	@32
				supplier   	@44
				line_style 	0)
			    (object ClassView "Class" "Logical View::soap::ISOAPBody" @46
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1472, 1776)
				label      	(object ItemLabel
				    Parent_View 	@46
				    location   	(1273, 1724)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	398
				    justify    	0
				    label      	"ISOAPBody")
				stereotype 	(object ItemLabel
				    Parent_View 	@46
				    location   	(1273, 1674)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	398
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"45E4884B0119"
				compartment 	(object Compartment
				    Parent_View 	@46
				    location   	(1273, 1784)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	4
				    max_width  	0)
				width      	416
				height     	228
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @47
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"45E48A5B00BB"
				client     	@19
				supplier   	@46
				line_style 	0)
			    (object InheritView "" @48
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"45ED078C02FD"
				client     	@4
				supplier   	@42
				line_style 	0)))
		    (object ClassDiagram "Port"
			quid       	"3A085E30035C"
			title      	"Port"
			zoom       	90
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::soap::SOAPAddress" @49
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(848, 832)
				label      	(object ItemLabel
				    Parent_View 	@49
				    location   	(647, 751)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	402
				    justify    	0
				    label      	"SOAPAddress")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD1FF750287"
				width      	420
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::ISOAPAddress" @50
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(848, 256)
				label      	(object ItemLabel
				    Parent_View 	@50
				    location   	(696, 235)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	304
				    justify    	0
				    label      	"ISOAPAddress")
				stereotype 	(object ItemLabel
				    Parent_View 	@50
				    location   	(696, 185)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	304
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"45E487E700EA"
				width      	322
				height     	166
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @51
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"45E48A7E0109"
				client     	@49
				supplier   	@50
				line_style 	0)))
		    (object ClassDiagram "Extensibility"
			quid       	"3AE099B10161"
			title      	"Extensibility"
			zoom       	90
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::soap::SOAPAddress" @52
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1520, 576)
				label      	(object ItemLabel
				    Parent_View 	@52
				    location   	(1371, 527)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	298
				    justify    	0
				    label      	"SOAPAddress")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD1FF750287"
				width      	316
				height     	122
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::SOAPBinding" @53
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(304, 592)
				label      	(object ItemLabel
				    Parent_View 	@53
				    location   	(162, 543)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	284
				    justify    	0
				    label      	"SOAPBinding")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A01D3B901AD"
				width      	302
				height     	122
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::SOAPBody" @54
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1072, 1104)
				label      	(object ItemLabel
				    Parent_View 	@54
				    location   	(950, 1055)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	244
				    justify    	0
				    label      	"SOAPBody")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A01DED5031F"
				width      	262
				height     	122
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::SOAPFault" @55
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1232, 1264)
				label      	(object ItemLabel
				    Parent_View 	@55
				    location   	(1112, 1215)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	240
				    justify    	0
				    label      	"SOAPFault")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A06D9FA00F7"
				width      	258
				height     	122
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::SOAPOperation" @56
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(512, 752)
				label      	(object ItemLabel
				    Parent_View 	@56
				    location   	(344, 703)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	336
				    justify    	0
				    label      	"SOAPOperation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A0AD45500E8"
				width      	354
				height     	122
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::soap::SOAPHeaderBase" @57
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(816, 928)
				label      	(object ItemLabel
				    Parent_View 	@57
				    location   	(627, 879)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	378
				    justify    	0
				    label      	"SOAPHeaderBase")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3A01DEE7034D"
				width      	396
				height     	122
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::ExtensibilityElement" @58
				ShowCompartmentStereotypes 	TRUE
				location   	(608, 128)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@58
				    location   	(408, 53)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	400
				    justify    	0
				    label      	"ExtensibilityElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5DBB602A9"
				width      	418
				height     	174
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @59
				location   	(608, 305)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@58
				vertices   	(list Points
				    (608, 305)
				    (608, 215)))
			    (object InheritView "" @60
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE09A3801AB"
				client     	@53
				supplier   	@58
				line_style 	3
				origin_attachment 	(344, 531)
				terminal_attachment 	(344, 305)
				drawSupplier 	@59)
			    (object InheritView "" @61
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE09A3E0326"
				client     	@57
				supplier   	@58
				line_style 	3
				origin_attachment 	(815, 867)
				terminal_attachment 	(815, 305)
				drawSupplier 	@59)
			    (object InheritView "" @62
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE09A450041"
				client     	@54
				supplier   	@58
				line_style 	3
				origin_attachment 	(1068, 1043)
				terminal_attachment 	(1068, 305)
				drawSupplier 	@59)
			    (object InheritView "" @63
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE09A4E031F"
				client     	@56
				supplier   	@58
				line_style 	3
				origin_attachment 	(506, 691)
				terminal_attachment 	(506, 305)
				drawSupplier 	@59)
			    (object InheritView "" @64
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE09A4A0020"
				client     	@55
				supplier   	@58
				line_style 	3
				origin_attachment 	(1231, 1203)
				terminal_attachment 	(1231, 305)
				drawSupplier 	@59)
			    (object InheritView "" @65
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE095350098"
				client     	@52
				supplier   	@58
				line_style 	3
				origin_attachment 	(1520, 515)
				terminal_attachment 	(1520, 305)
				drawSupplier 	@59)))))
	    (object Class_Category "xsd"
		is_unit    	TRUE
		is_loaded  	FALSE
		file_name  	"$VABASE_PLUGINS_PATH\\org.eclipse.xsd\\model\\org.eclipse.XSD.cat"
		quid       	"39ABDC6F01AA"))
	logical_presentations 	(list unit_reference_list
	    (object ClassDiagram "Main"
		quid       	"39E27F080076"
		title      	"Main"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list
		    (object CategoryView "Logical View::wsdl" @66
			location   	(272, 256)
			label      	(object ItemLabel
			    Parent_View 	@66
			    location   	(128, 172)
			    fill_color 	13434879
			    nlines     	2
			    max_width  	288
			    justify    	0
			    label      	"wsdl")
			icon_style 	"Icon"
			line_color 	3342489
			fill_color 	13434879
			quidu      	"3ADFB8E5021E"
			width      	300
			height     	180)
		    (object CategoryView "Logical View::soap" @67
			location   	(704, 256)
			label      	(object ItemLabel
			    Parent_View 	@67
			    location   	(560, 172)
			    fill_color 	13434879
			    nlines     	2
			    max_width  	288
			    justify    	0
			    label      	"soap")
			icon_style 	"Icon"
			line_color 	3342489
			fill_color 	13434879
			quidu      	"3A01CF0C01A2"
			width      	300
			height     	180)
		    (object CategoryView "Logical View::xsd" @68
			location   	(1152, 256)
			label      	(object ItemLabel
			    Parent_View 	@68
			    location   	(1008, 172)
			    fill_color 	13434879
			    nlines     	2
			    max_width  	288
			    justify    	0
			    label      	"xsd")
			icon_style 	"Icon"
			line_color 	3342489
			fill_color 	13434879
			quidu      	"39ABDC6F01AA"
			width      	300
			height     	180)))))
    root_subsystem 	(object SubSystem "Component View"
	quid       	"39E27F080065"
	physical_models 	(list unit_reference_list)
	physical_presentations 	(list unit_reference_list
	    (object Module_Diagram "Main"
		quid       	"39E27F080077"
		title      	"Main"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    process_structure 	(object Processes
	quid       	"39E27F080066"
	ProcsNDevs 	(list
	    (object Process_Diagram "Deployment View"
		quid       	"39E27F080068"
		title      	"Deployment View"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    properties 	(object Properties
	attributes 	(list Attribute_Set
	    (object Attribute
		tool       	"DDL"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"DDL"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"DDL"
			name       	"Directory"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"DDL"
			name       	"DataBase"
			value      	("DataBaseSet" 800))
		    (object Attribute
			tool       	"DDL"
			name       	"DataBaseSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"DDL"
				name       	"ANSI"
				value      	800)
			    (object Attribute
				tool       	"DDL"
				name       	"Oracle"
				value      	801)
			    (object Attribute
				tool       	"DDL"
				name       	"SQLServer"
				value      	802)
			    (object Attribute
				tool       	"DDL"
				name       	"Sybase"
				value      	803)
			    (object Attribute
				tool       	"DDL"
				name       	"Watcom"
				value      	804)))
		    (object Attribute
			tool       	"DDL"
			name       	"PrimaryKeyColumnName"
			value      	"Id")
		    (object Attribute
			tool       	"DDL"
			name       	"PrimaryKeyColumnType"
			value      	"NUMBER(5)")
		    (object Attribute
			tool       	"DDL"
			name       	"ViewName"
			value      	"V_")
		    (object Attribute
			tool       	"DDL"
			name       	"TableName"
			value      	"T_")
		    (object Attribute
			tool       	"DDL"
			name       	"InheritSuffix"
			value      	"_V")
		    (object Attribute
			tool       	"DDL"
			name       	"DropClause"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"BaseViews"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"DDLScriptFilename"
			value      	"DDL1.SQL")))
	    (object Attribute
		tool       	"DDL"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"DDL"
			name       	"ColumnType"
			value      	"VARCHAR")
		    (object Attribute
			tool       	"DDL"
			name       	"Length"
			value      	"")
		    (object Attribute
			tool       	"DDL"
			name       	"NullsOK"
			value      	TRUE)
		    (object Attribute
			tool       	"DDL"
			name       	"PrimaryKey"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"Unique"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"CompositeUnique"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"CheckConstraint"
			value      	"")))
	    (object Attribute
		tool       	"DDL"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"framework"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"IDL"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"IDL"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"CreateMissingDirectories"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"StopOnError"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"Directory"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"IDL"
			name       	"GeneratePreserveRegions"
			value      	TRUE)))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"ImplementationType"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"ConstValue"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateDefaultSpecifier"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"DefaultSpecifier"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"IDLElement"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"IDLSpecificationType"
			value      	("IDLSpecSet" 22))
		    (object Attribute
			tool       	"IDL"
			name       	"IDLSpecSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"IDL"
				name       	"Interface"
				value      	22)
			    (object Attribute
				tool       	"IDL"
				name       	"Typedef"
				value      	54)
			    (object Attribute
				tool       	"IDL"
				name       	"Enumeration"
				value      	8)
			    (object Attribute
				tool       	"IDL"
				name       	"Const"
				value      	71)
			    (object Attribute
				tool       	"IDL"
				name       	"Exception"
				value      	61)
			    (object Attribute
				tool       	"IDL"
				name       	"Struct"
				value      	51)
			    (object Attribute
				tool       	"IDL"
				name       	"Union"
				value      	81)))))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"CmIdentification"
			value      	(value Text "  %X%  @(#) plugins/com.ibm.etools.ctc.binding.soap/src/rose/soapbindingMdl.mdl, ctc, ibmctc"))
		    (object Attribute
			tool       	"IDL"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"IDL"
			name       	"FileName"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateIDLModule"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"InclusionProtectionSymbol"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"IDL"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"IDL"
			name       	"IncludeBySimpleName"
			value      	FALSE)))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"CmIdentification"
			value      	(value Text "  %X%  @(#) plugins/com.ibm.etools.ctc.binding.soap/src/rose/soapbindingMdl.mdl, ctc, ibmctc"))
		    (object Attribute
			tool       	"IDL"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"IDL"
			name       	"FileName"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"IDL"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"IDL"
			name       	"IncludeBySimpleName"
			value      	FALSE)))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"OperationIsOneWay"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"Context"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"Raises"
			value      	"")))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"CaseSpecifier"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"IDL"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"IsConst"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"ConstValue"
			value      	"")))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Has"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"NameIfUnlabeled"
			value      	"the_$supplier")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"BoundedHasRelType"
			value      	("HasRelTypeSet" 47))
		    (object Attribute
			tool       	"IDL"
			name       	"HasRelTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"IDL"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"IDL"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"NameIfUnlabeled"
			value      	"the_$supplier")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"BoundedRoleType"
			value      	("AssocTypeSet" 47))
		    (object Attribute
			tool       	"IDL"
			name       	"AssocTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"IDL"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"IDL"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Uses"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateForwardReference"
			value      	FALSE)))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Subsystem"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"Directory"
			value      	"AUTO GENERATE")))
	    (object Attribute
		tool       	"IDL"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Java"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"Java"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"CreateMissingDirectories"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"StopOnError"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Directory"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"Java"
			name       	"UsePrefixes"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"InstanceVariablePrefix"
			value      	"m_")
		    (object Attribute
			tool       	"Java"
			name       	"ClassVariablePrefix"
			value      	"s_")
		    (object Attribute
			tool       	"Java"
			name       	"DefaultAttributeDataType"
			value      	"int")
		    (object Attribute
			tool       	"Java"
			name       	"DefaultOperationReturnType"
			value      	"void")
		    (object Attribute
			tool       	"Java"
			name       	"RootDir"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"AutoSync"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ShowCodegenDlg"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavadocDefaultAuthor"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"JavadocDefaultVersion"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"JavadocDefaultSince"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"JavadocNumAsterisks"
			value      	0)
		    (object Attribute
			tool       	"Java"
			name       	"MaxNumChars"
			value      	80)
		    (object Attribute
			tool       	"Java"
			name       	"Editor"
			value      	("EditorType" 100))
		    (object Attribute
			tool       	"Java"
			name       	"VM"
			value      	("VMType" 200))
		    (object Attribute
			tool       	"Java"
			name       	"ClassPath"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EditorType"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"BuiltIn"
				value      	100)
			    (object Attribute
				tool       	"Java"
				name       	"WindowsShell"
				value      	101)))
		    (object Attribute
			tool       	"Java"
			name       	"VMType"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Sun"
				value      	200)
			    (object Attribute
				tool       	"Java"
				name       	"Microsoft"
				value      	201)
			    (object Attribute
				tool       	"Java"
				name       	"IBM"
				value      	202)))
		    (object Attribute
			tool       	"Java"
			name       	"NoClassCustomDlg"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GlobalImports"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"OpenBraceClassStyle"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"OpenBraceMethodStyle"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"UseTabs"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"UseSpaces"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"SpacingItems"
			value      	3)
		    (object Attribute
			tool       	"Java"
			name       	"RoseDefaultCommentStyle"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"AsteriskCommentStyle"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavaCommentStyle"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavadocAuthor"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavadocSince"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavadocVersion"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDefaultConstructor"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ConstructorIs"
			value      	("Ctor_Set" 62))
		    (object Attribute
			tool       	"Java"
			name       	"Ctor_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Public"
				value      	62)
			    (object Attribute
				tool       	"Java"
				name       	"Protected"
				value      	63)
			    (object Attribute
				tool       	"Java"
				name       	"Private"
				value      	64)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFinalizer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateStaticInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateInstanceInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Static"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateCode"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"DisableAutoSync"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletName"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletContextRef"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"IsSingleThread"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletInitParameter"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletInitParameterNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletIsSecure"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestDispatcher"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestDispatcherPath"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"DispatcherInclude"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"DispatcherForward"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletSecurityRoles"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletgetInfo"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestAttribute"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestAttributesNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForRequestAttributes"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestParameter"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestParameterNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForRequestParameters"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletHeader"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletHeaderNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForHeaders"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletIntHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletDateHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletCookie"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForCookie"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletContentType"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"GenerateHTML"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Generate_XML_DD"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"EJBCmpField"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBEnvironmentProperties"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBCnxFactory"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBReferences"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBSecurityRoles"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBNameInJAR"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBSessionType"
			value      	("EJBSessionType_Set" 200))
		    (object Attribute
			tool       	"Java"
			name       	"EJBSessionType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	""
				value      	200)
			    (object Attribute
				tool       	"Java"
				name       	"Stateless"
				value      	201)
			    (object Attribute
				tool       	"Java"
				name       	"Stateful"
				value      	202)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBTransactionType"
			value      	("EJBTransactionType_Set" 211))
		    (object Attribute
			tool       	"Java"
			name       	"EJBTransactionType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Container"
				value      	211)
			    (object Attribute
				tool       	"Java"
				name       	"Bean"
				value      	212)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBPersistenceType"
			value      	("EJBPersistenceType_Set" 220))
		    (object Attribute
			tool       	"Java"
			name       	"EJBPersistenceType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	""
				value      	220)
			    (object Attribute
				tool       	"Java"
				name       	"Bean"
				value      	221)
			    (object Attribute
				tool       	"Java"
				name       	"Container"
				value      	222)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBReentrant"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"BMP_Extend_CMP"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"CmIdentification"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"AdditionalImports"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"Java"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"CmIdentification"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"AdditionalImports"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"Java"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Abstract"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Static"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Native"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Synchronized"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Transient"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Volatile"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"PropertyType"
			value      	("BeanProperty_Set" 71))
		    (object Attribute
			tool       	"Java"
			name       	"BeanProperty_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Not A Property"
				value      	71)
			    (object Attribute
				tool       	"Java"
				name       	"Simple"
				value      	72)
			    (object Attribute
				tool       	"Java"
				name       	"Bound"
				value      	73)
			    (object Attribute
				tool       	"Java"
				name       	"Constrained"
				value      	74)))
		    (object Attribute
			tool       	"Java"
			name       	"IndividualChangeMgt"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Read/Write"
			value      	("Read/Write_Set" 81))
		    (object Attribute
			tool       	"Java"
			name       	"Read/Write_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Read & Write"
				value      	81)
			    (object Attribute
				tool       	"Java"
				name       	"Read Only"
				value      	82)
			    (object Attribute
				tool       	"Java"
				name       	"Write Only"
				value      	83)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFullyQualifiedTypes"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ContainerClass"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"InitialValue"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Transient"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Volatile"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"PropertyType"
			value      	("BeanProperty_Set" 71))
		    (object Attribute
			tool       	"Java"
			name       	"BeanProperty_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Not A Property"
				value      	71)
			    (object Attribute
				tool       	"Java"
				name       	"Simple"
				value      	72)
			    (object Attribute
				tool       	"Java"
				name       	"Bound"
				value      	73)
			    (object Attribute
				tool       	"Java"
				name       	"Constrained"
				value      	74)))
		    (object Attribute
			tool       	"Java"
			name       	"IndividualChangeMgt"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Read/Write"
			value      	("Read/Write_Set" 81))
		    (object Attribute
			tool       	"Java"
			name       	"Read/Write_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Read & Write"
				value      	81)
			    (object Attribute
				tool       	"Java"
				name       	"Read Only"
				value      	82)
			    (object Attribute
				tool       	"Java"
				name       	"Write Only"
				value      	83)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFullyQualifiedTypes"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"IsNavigable"
			value      	TRUE)))
	    (object Attribute
		tool       	"Java"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Oracle8"
		name       	"propertyId"
		value      	"360000002")
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"DDLScriptFilename"
			value      	"DDL1.SQL")
		    (object Attribute
			tool       	"Oracle8"
			name       	"DropClause"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"PrimaryKeyColumnName"
			value      	"_ID")
		    (object Attribute
			tool       	"Oracle8"
			name       	"PrimaryKeyColumnType"
			value      	"NUMBER(5,0)")
		    (object Attribute
			tool       	"Oracle8"
			name       	"SchemaNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"SchemaNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TableNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TableNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TypeNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TypeNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"ViewNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"ViewNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"VarrayNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"VarrayNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"NestedTableNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"NestedTableNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"ObjectTableNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"ObjectTableNameSuffix"
			value      	"")))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsSchema"
			value      	FALSE)))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"OID"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"WhereClause"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CheckConstraint"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CollectionTypeLength"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CollectionTypePrecision"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CollectionTypeScale"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CollectionOfREFS"
			value      	FALSE)))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"MethodKind"
			value      	("MethodKindSet" 1903))
		    (object Attribute
			tool       	"Oracle8"
			name       	"OverloadID"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"OrderNumber"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsReadNoDataState"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsReadNoProcessState"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsWriteNoDataState"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsWriteNoProcessState"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsSelfish"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerType"
			value      	("TriggerTypeSet" 1801))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerEvent"
			value      	("TriggerEventSet" 1601))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerText"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerReferencingNames"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerForEach"
			value      	("TriggerForEachSet" 1701))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerWhenClause"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"MethodKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Oracle8"
				name       	"MapMethod"
				value      	1901)
			    (object Attribute
				tool       	"Oracle8"
				name       	"OrderMethod"
				value      	1902)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Function"
				value      	1903)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Procedure"
				value      	1904)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Operator"
				value      	1905)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Constructor"
				value      	1906)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Destructor"
				value      	1907)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Trigger"
				value      	1908)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Calculated"
				value      	1909)))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Oracle8"
				name       	"AFTER"
				value      	1801)
			    (object Attribute
				tool       	"Oracle8"
				name       	"BEFORE"
				value      	1802)
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSTEAD OF"
				value      	1803)))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerForEachSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Oracle8"
				name       	"ROW"
				value      	1701)
			    (object Attribute
				tool       	"Oracle8"
				name       	"STATEMENT"
				value      	1702)))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerEventSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSERT"
				value      	1601)
			    (object Attribute
				tool       	"Oracle8"
				name       	"UPDATE"
				value      	1602)
			    (object Attribute
				tool       	"Oracle8"
				name       	"DELETE"
				value      	1603)
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSERT OR UPDATE"
				value      	1604)
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSERT OR DELETE"
				value      	1605)
			    (object Attribute
				tool       	"Oracle8"
				name       	"UPDATE OR DELETE"
				value      	1606)
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSERT OR UPDATE OR DELETE"
				value      	1607)))))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"OrderNumber"
			value      	"")))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"OrderNumber"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsUnique"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"NullsAllowed"
			value      	TRUE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"Length"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"Precision"
			value      	"2")
		    (object Attribute
			tool       	"Oracle8"
			name       	"Scale"
			value      	"6")
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsIndex"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsPrimaryKey"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"CompositeUnique"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"CheckConstraint"
			value      	"")))
	    (object Attribute
		tool       	"Oracle8"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Repository"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"cg"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"cg"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"UseMSVC"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"HeaderFileExtension"
			value      	"h")
		    (object Attribute
			tool       	"cg"
			name       	"HeaderFileBackupExtension"
			value      	"h~")
		    (object Attribute
			tool       	"cg"
			name       	"HeaderFileTemporaryExtension"
			value      	"h#")
		    (object Attribute
			tool       	"cg"
			name       	"CodeFileExtension"
			value      	"cpp")
		    (object Attribute
			tool       	"cg"
			name       	"CodeFileBackupExtension"
			value      	"cp~")
		    (object Attribute
			tool       	"cg"
			name       	"CodeFileTemporaryExtension"
			value      	"cp#")
		    (object Attribute
			tool       	"cg"
			name       	"CreateMissingDirectories"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"StopOnError"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"ErrorLimit"
			value      	30)
		    (object Attribute
			tool       	"cg"
			name       	"Directory"
			value      	"$ROSECPP_SOURCE")
		    (object Attribute
			tool       	"cg"
			name       	"PathSeparator"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"FileNameFormat"
			value      	"128vx_b")
		    (object Attribute
			tool       	"cg"
			name       	"BooleanType"
			value      	"int")
		    (object Attribute
			tool       	"cg"
			name       	"AllowTemplates"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AllowExplicitInstantiations"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AllowProtectedInheritance"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"CommentWidth"
			value      	60)
		    (object Attribute
			tool       	"cg"
			name       	"OneByValueContainer"
			value      	"$targetClass")
		    (object Attribute
			tool       	"cg"
			name       	"OneByReferenceContainer"
			value      	"$targetClass *")
		    (object Attribute
			tool       	"cg"
			name       	"OptionalByValueContainer"
			value      	"OptionalByValue<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"OptionalByReferenceContainer"
			value      	"$targetClass *")
		    (object Attribute
			tool       	"cg"
			name       	"FixedByValueContainer"
			value      	"$targetClass[$limit]")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedFixedByValueContainer"
			value      	"$targetClass[$limit]")
		    (object Attribute
			tool       	"cg"
			name       	"FixedByReferenceContainer"
			value      	"$targetClass *[$limit]")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedFixedByReferenceContainer"
			value      	"$targetClass *[$limit]")
		    (object Attribute
			tool       	"cg"
			name       	"BoundedByValueContainer"
			value      	"BoundedListByValue<$targetClass,$limit>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedBoundedByValueContainer"
			value      	"BoundedSetByValue<$targetClass,$limit>")
		    (object Attribute
			tool       	"cg"
			name       	"BoundedByReferenceContainer"
			value      	"BoundedListByReference<$targetClass,$limit>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedBoundedByReferenceContainer"
			value      	"BoundedSetByReference<$targetClass,$limit>")
		    (object Attribute
			tool       	"cg"
			name       	"UnboundedByValueContainer"
			value      	"UnboundedListByValue<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedUnboundedByValueContainer"
			value      	"UnboundedSetByValue<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"UnboundedByReferenceContainer"
			value      	"UnboundedListByReference<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedUnboundedByReferenceContainer"
			value      	"UnboundedSetByReference<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedByValueContainer"
			value      	"AssociationByValue<$qualtype, $qualcont>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedQualifiedByValueContainer"
			value      	"DictionaryByValue<$qualtype, $qualcont>")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedByReferenceContainer"
			value      	"AssociationByReference<$qualtype, $qualcont>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedQualifiedByReferenceContainer"
			value      	"DictionaryByReference<$qualtype, $qualcont>")
		    (object Attribute
			tool       	"cg"
			name       	"GeneratePreserveRegions"
			value      	TRUE)))
	    (object Attribute
		tool       	"cg"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"ImplementationType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"ClassKey"
			value      	"class")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))
		    (object Attribute
			tool       	"cg"
			name       	"PutBodiesInSpec"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDefaultConstructor"
			value      	("GenerateSet" 199))
		    (object Attribute
			tool       	"cg"
			name       	"DefaultConstructorVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"InlineDefaultConstructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"ExplicitDefaultConstructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateCopyConstructor"
			value      	("GenerateSet" 199))
		    (object Attribute
			tool       	"cg"
			name       	"CopyConstructorVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"InlineCopyConstructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"ExplicitCopyConstructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDestructor"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"DestructorVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"DestructorKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"InlineDestructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateAssignmentOperation"
			value      	("GenerateSet" 199))
		    (object Attribute
			tool       	"cg"
			name       	"AssignmentVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"AssignmentKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"InlineAssignmentOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEqualityOperations"
			value      	("GenerateSet" 199))
		    (object Attribute
			tool       	"cg"
			name       	"EqualityVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"EqualityKind"
			value      	("FriendKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"InlineEqualityOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateRelationalOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"RelationalVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"RelationalKind"
			value      	("FriendKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"InlineRelationalOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateStorageMgmtOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"StorageMgmtVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"InlineStorageMgmtOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSubscriptOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"SubscriptVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"SubscriptKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"SubscriptResultType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InlineSubscriptOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDereferenceOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DereferenceVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"DereferenceKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"DereferenceResultType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InlineDereferenceOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateIndirectionOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IndirectionVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"IndirectionKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"IndirectionResultType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InlineIndirectionOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateStreamOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"StreamVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"InlineStreamOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"ThreeKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)))
		    (object Attribute
			tool       	"cg"
			name       	"KindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)))
		    (object Attribute
			tool       	"cg"
			name       	"FriendKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"DeclareAndDefine"
				value      	199)
			    (object Attribute
				tool       	"cg"
				name       	"DeclareOnly"
				value      	205)
			    (object Attribute
				tool       	"cg"
				name       	"DoNotDeclare"
				value      	206)))
		    (object Attribute
			tool       	"cg"
			name       	"VisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)))
		    (object Attribute
			tool       	"cg"
			name       	"ConstValue"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDefaultSpecifier"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DefaultSpecifier"
			value      	"")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))
		    (object Attribute
			tool       	"cg"
			name       	"CmIdentification"
			value      	(value Text "  %X%  @(#) plugins/com.ibm.etools.ctc.binding.soap/src/rose/soapbindingMdl.mdl, ctc, ibmctc"))
		    (object Attribute
			tool       	"cg"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"FileName"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"cg"
			name       	"AllowExtensionlessFileName"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InclusionProtectionSymbol"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"cg"
			name       	"IncludeFormat"
			value      	(value Text 
|// $package
|#include "$file"
|
			))
		    (object Attribute
			tool       	"cg"
			name       	"IncludeBySimpleName"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludePrecompiledHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludeOrder"
			value      	"AMIR")
		    (object Attribute
			tool       	"cg"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"InliningStyle"
			value      	("InliningStyleSet" 207))
		    (object Attribute
			tool       	"cg"
			name       	"InliningStyleSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"InClassDeclaration"
				value      	208)
			    (object Attribute
				tool       	"cg"
				name       	"FollowingClassDeclaration"
				value      	207)))
		    (object Attribute
			tool       	"cg"
			name       	"TypesDefined"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"IncludeClosure"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"cg"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))
		    (object Attribute
			tool       	"cg"
			name       	"CmIdentification"
			value      	(value Text "  %X%  @(#) plugins/com.ibm.etools.ctc.binding.soap/src/rose/soapbindingMdl.mdl, ctc, ibmctc"))
		    (object Attribute
			tool       	"cg"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"FileName"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"cg"
			name       	"AllowExtensionlessFileName"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludeFormat"
			value      	(value Text 
|// $package
|#include "$file"
|
			))
		    (object Attribute
			tool       	"cg"
			name       	"IncludeBySimpleName"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludePrecompiledHeader"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludeOrder"
			value      	"AMIR")
		    (object Attribute
			tool       	"cg"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"InliningStyle"
			value      	("InliningStyleSet" 207))
		    (object Attribute
			tool       	"cg"
			name       	"InliningStyleSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"InClassDeclaration"
				value      	208)
			    (object Attribute
				tool       	"cg"
				name       	"FollowingClassDeclaration"
				value      	207)))
		    (object Attribute
			tool       	"cg"
			name       	"TypesDefined"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"IncludeClosure"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"cg"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"OperationKind"
			value      	("OperationKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"OperationKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"OperationIsConst"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"OperationIsExplicit"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"Inline"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"EntryCode"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"ExitCode"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))
		    (object Attribute
			tool       	"cg"
			name       	"BodyAnnotations"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"OperationIsOneWay"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"Context"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"Raises"
			value      	"")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Has"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"Ordered"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"NameIfUnlabeled"
			value      	"the_$supplier")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibility"
			value      	("DataMemberVisibilitySet" 14))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)
			    (object Attribute
				tool       	"cg"
				name       	"AtRelationshipVisibility"
				value      	210)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutability"
			value      	("DataMemberMutabilitySet" 0))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutabilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Unrestricted"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Mutable"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Const"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberIsVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberFieldSize"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InitialValue"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetName"
			value      	"get_$relationship")
		    (object Attribute
			tool       	"cg"
			name       	"SetName"
			value      	"set_$relationship")
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKinds"
			value      	("GetSetKindsSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKindsSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"ContainerClass"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"SelectorName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"SelectorType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConstSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"False"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"True"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Same_As_Function"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetByReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"SetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"ForwardReferenceOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"BoundedHasRelType"
			value      	("HasRelTypeSet" 47))
		    (object Attribute
			tool       	"cg"
			name       	"HasRelTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"cg"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"cg"
		name       	"default__Association"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"NameIfUnlabeled"
			value      	"the_$targetClass")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Inherit"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"InstanceArguments"
			value      	"")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"ForwardReferenceOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"NameIfUnlabeled"
			value      	"the_$targetClass")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberName"
			value      	"$target")
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibility"
			value      	("DataMemberVisibilitySet" 14))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)
			    (object Attribute
				tool       	"cg"
				name       	"AtRelationshipVisibility"
				value      	210)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutability"
			value      	("DataMemberMutabilitySet" 0))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutabilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Unrestricted"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Mutable"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Const"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberIsVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberFieldSize"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InitialValue"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"ContainerClass"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"ContainerGet"
			value      	"$data.get($keys)")
		    (object Attribute
			tool       	"cg"
			name       	"ContainerSet"
			value      	"$data.set($keys,$value)")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedContainer"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassContainer"
			value      	"$supplier *")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassInitialValue"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKinds"
			value      	("GetSetKindsSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKindsSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetByReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetName"
			value      	"get_$target")
		    (object Attribute
			tool       	"cg"
			name       	"GetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConstSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"False"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"True"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Same_As_Function"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"InlineGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"SetName"
			value      	"set_$target")
		    (object Attribute
			tool       	"cg"
			name       	"SetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetSetByReference"
			value      	("QualifiedGetSetByReferenceSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetSetByReferenceSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"False"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"True"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Same_As_GetSetByReference"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateQualifiedGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetName"
			value      	"get_$target")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"InlineQualifiedGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateQualifiedSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedSetName"
			value      	"set_$target")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedSetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineQualifiedSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateAssocClassDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassDataMemberName"
			value      	"$target")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassDataMemberVisibility"
			value      	("DataMemberVisibilitySet" 14))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)
			    (object Attribute
				tool       	"cg"
				name       	"AtRelationshipVisibility"
				value      	210)))
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassDataMemberMutability"
			value      	("DataMemberMutabilitySet" 0))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutabilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Unrestricted"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Mutable"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Const"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassDataMemberIsVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassGetSetKinds"
			value      	("GetSetKindsSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateAssocClassGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassGetName"
			value      	"get_$target")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassGetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassGetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"InlineAssocClassGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateAssocClassSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassSetName"
			value      	"set_$target")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassSetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineAssocClassSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassForwardReferenceOnly"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"BoundedRoleType"
			value      	("AssocTypeSet" 47))
		    (object Attribute
			tool       	"cg"
			name       	"AssocTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"cg"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"cg"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberName"
			value      	"$attribute")
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibility"
			value      	("DataMemberVisibilitySet" 14))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)
			    (object Attribute
				tool       	"cg"
				name       	"AtAttributeVisibility"
				value      	211)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutability"
			value      	("DataMemberMutabilitySet" 0))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutabilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Unrestricted"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Mutable"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Const"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberIsVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberFieldSize"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetName"
			value      	"get_$attribute")
		    (object Attribute
			tool       	"cg"
			name       	"SetName"
			value      	"set_$attribute")
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKinds"
			value      	("GetSetKindsSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKindsSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"GetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConstSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"False"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"True"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Same_As_Function"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetByReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"SetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"CaseSpecifier"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"IsReadOnly"
			value      	FALSE)))
	    (object Attribute
		tool       	"cg"
		name       	"default__Uses"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"ForwardReferenceOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"BodyReferenceOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateForwardReference"
			value      	FALSE)))
	    (object Attribute
		tool       	"cg"
		name       	"default__Subsystem"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"Directory"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"cg"
			name       	"DirectoryIsOnSearchList"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"PrecompiledHeader"
			value      	"")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Category"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"IsNamespace"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"Indent"
			value      	2)
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))))
	    (object Attribute
		tool       	"MSVC"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Version"
			value      	"5.0")))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCClassTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCClassTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Interface_Part"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Connection_Part"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Class_Factory"
				value      	3)))
		    (object Attribute
			tool       	"MSVC"
			name       	"CObjectFunctionality"
			value      	("CObjectFunctionalitySet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"CObjectFunctionalitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dynamic"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dyncreate"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Serial"
				value      	3)))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateOverrideGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateDataGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DATA_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateFieldGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_FIELD_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateMessageGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateMessageMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_MSG_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"MESSAGE_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEFactory"
			value      	("OLEFactorySet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEFactorySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Built_in"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Simple"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Licensed"
				value      	3)))
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEName"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEClassID"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateOLECtlType"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"OLECtlType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateOLETypeLib"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"OLETypeLibID"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"OLETypeLibMajor"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"OLETypeLibMinor"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GeneratePropPageIDs"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEPropPageIDs"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateDispatchMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"StockProperties"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"StockFunctions"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DispatchDefValue"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateDispIdEnum"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISP_ID_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateInterfaceMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"INTERFACE_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"InitInterface"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateEventMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENT_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"EVENT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"StockEvents"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateEventSinkMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENTSINK_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENTSINK_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"EVENTSINK_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"PropNotifySinks"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateConnectionMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"CONNECTION_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"ConnectionPointIID"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"InheritanceType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"OLECommands"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"MFCDeclares"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"MFCImplements"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"ATL_Declares"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateCOMMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"COM_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateConnectionPointMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"CONNECTION_POINT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateMsgMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"MSG_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GeneratePropertyMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"PROPERTY_MAP_Entries"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCOperationTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCOperationTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Virtual_Override"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Message_Handler"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dispatch_Handler"
				value      	3)
			    (object Attribute
				tool       	"MSVC"
				name       	"Event_Firing_Function"
				value      	4)
			    (object Attribute
				tool       	"MSVC"
				name       	"Event_Sink_Handler"
				value      	5)
			    (object Attribute
				tool       	"MSVC"
				name       	"Std_OLE_Method"
				value      	6)
			    (object Attribute
				tool       	"MSVC"
				name       	"Command_Parser"
				value      	7)
			    (object Attribute
				tool       	"MSVC"
				name       	"Property_Get_Function"
				value      	8)
			    (object Attribute
				tool       	"MSVC"
				name       	"Property_Set_Function"
				value      	9)
			    (object Attribute
				tool       	"MSVC"
				name       	"Property_Notify_Function"
				value      	10)
			    (object Attribute
				tool       	"MSVC"
				name       	"Macro_Generated_Function"
				value      	11)))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_MSG_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"MESSAGE_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"EVENT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENTSINK_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"EVENTSINK_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"CallType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"BodyImage"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCAttributeTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCAttributeTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Member_Property"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Get_Set_Property"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dialog_Data"
				value      	3)
			    (object Attribute
				tool       	"MSVC"
				name       	"Field_Data"
				value      	4)
			    (object Attribute
				tool       	"MSVC"
				name       	"Stock_Property"
				value      	5)))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"PointerBase"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"CallType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"StockPropertyImplementation"
			value      	"")))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Has"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCAttributeTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCAttributeTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Member_Property"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Get_Set_Property"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dialog_Data"
				value      	3)
			    (object Attribute
				tool       	"MSVC"
				name       	"Field_Data"
				value      	4)
			    (object Attribute
				tool       	"MSVC"
				name       	"Stock_Property"
				value      	5)))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"PointerBase"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"CallType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"StockPropertyImplementation"
			value      	"")))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCAttributeTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCAttributeTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Member_Property"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Get_Set_Property"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dialog_Data"
				value      	3)
			    (object Attribute
				tool       	"MSVC"
				name       	"Field_Data"
				value      	4)
			    (object Attribute
				tool       	"MSVC"
				name       	"Stock_Property"
				value      	5)))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"PointerBase"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"CallType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"StockPropertyImplementation"
			value      	"")))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateIncludesGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_INCLUDES_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateInsertLocation"
			value      	FALSE)))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateIncludesGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_INCLUDES_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateInsertLocation"
			value      	FALSE)))
	    (object Attribute
		tool       	"cg"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"SCC"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"TypeLibImporter"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Visual Basic"
		name       	"propertyId"
		value      	"783606378")
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CreatableSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Private"
				value      	221)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"PublicNotCreatable"
				value      	213)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"SingleUse"
				value      	214)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"GlobalSingleUse"
				value      	215)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"MultiUse"
				value      	219)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"GlobalMultiUse"
				value      	220)))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionBase"
			value      	"0")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionExplicit"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionCompare"
			value      	("CompareSet" 202))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Creatable"
			value      	("CreatableSet" 221))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateInitialization"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateTermination"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CollectionClass"
			value      	"Collection")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CompareSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Visual Basic"
				name       	"None"
				value      	202)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Binary"
				value      	203)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Text"
				value      	204)))))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OperationName"
			value      	"$operation")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"LibraryName"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"AliasName"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"IsStatic"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"EntryCode"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ExitCode"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"IsConst"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"New"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"WithEvents"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Subscript"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"NameIfUnlabeled"
			value      	"the$supplier")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateGetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateSetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateLetOperation"
			value      	FALSE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"New"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"WithEvents"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Subscript"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"NameIfUnlabeled"
			value      	"the$supplier")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateGetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateSetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateLetOperation"
			value      	FALSE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Inherit"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ImplementsDelegation"
			value      	TRUE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ProjectFile"
			value      	"")))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"VisualStudio"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"CORBA"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"CreateMissingDirectories"
			value      	TRUE)
		    (object Attribute
			tool       	"CORBA"
			name       	"Editor"
			value      	("EditorType" 100))
		    (object Attribute
			tool       	"CORBA"
			name       	"IncludePath"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"StopOnError"
			value      	TRUE)
		    (object Attribute
			tool       	"CORBA"
			name       	"EditorType"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"CORBA"
				name       	"BuiltIn"
				value      	100)
			    (object Attribute
				tool       	"CORBA"
				name       	"WindowsShell"
				value      	101)))))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"ArrayDimensions"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"ConstValue"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"ImplementationType"
			value      	"")))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"CORBA"
			name       	"CmIdentification"
			value      	(value Text "  %X% %Q% %Z% %W%"))
		    (object Attribute
			tool       	"CORBA"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"CORBA"
			name       	"InclusionProtectionSymbol"
			value      	"AUTO GENERATE")))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"CORBA"
			name       	"CmIdentification"
			value      	(value Text "  %X% %Q% %Z% %W%"))
		    (object Attribute
			tool       	"CORBA"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"CORBA"
			name       	"InclusionProtectionSymbol"
			value      	"AUTO GENERATE")))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"Context"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"OperationIsOneWay"
			value      	FALSE)))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"ArrayDimensions"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"CaseSpecifier"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"CORBA"
			name       	"Order"
			value      	"")))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"ArrayDimensions"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"CaseSpecifier"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"CORBA"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"CORBA"
			name       	"Order"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"BoundedRoleType"
			value      	("AssocTypeSet" 47))
		    (object Attribute
			tool       	"CORBA"
			name       	"AssocTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"CORBA"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"CORBA"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Uses"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"GenerateForwardReference"
			value      	FALSE)))
	    (object Attribute
		tool       	"CORBA"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Java"
		name       	"Default_Servlet__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"ServletName"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletContextRef"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"IsSingleThread"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletInitParameter"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletInitParameterNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletIsSecure"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestDispatcher"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestDispatcherPath"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"DispatcherInclude"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"DispatcherForward"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletSecurityRoles"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletgetInfo"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDefaultConstructor"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ConstructorIs"
			value      	("Ctor_Set" 62))
		    (object Attribute
			tool       	"Java"
			name       	"Ctor_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Public"
				value      	62)
			    (object Attribute
				tool       	"Java"
				name       	"Protected"
				value      	63)
			    (object Attribute
				tool       	"Java"
				name       	"Private"
				value      	64)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFinalizer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateStaticInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateInstanceInitializer"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"Http_Servlet__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestAttribute"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestAttributesNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForRequestAttributes"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestParameter"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestParameterNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForRequestParameters"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletHeader"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletHeaderNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForHeaders"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletIntHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletDateHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletCookie"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForCookie"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletContentType"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"GenerateHTML"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDefaultConstructor"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ConstructorIs"
			value      	("Ctor_Set" 62))
		    (object Attribute
			tool       	"Java"
			name       	"Ctor_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Public"
				value      	62)
			    (object Attribute
				tool       	"Java"
				name       	"Protected"
				value      	63)
			    (object Attribute
				tool       	"Java"
				name       	"Private"
				value      	64)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFinalizer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateStaticInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateInstanceInitializer"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"Default_EJB__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Generate_XML_DD"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"EJBCmpField"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBEnvironmentProperties"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBCnxFactory"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBReferences"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBSecurityRoles"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBNameInJAR"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBSessionType"
			value      	("EJBSessionType_Set" 200))
		    (object Attribute
			tool       	"Java"
			name       	"EJBSessionType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	""
				value      	200)
			    (object Attribute
				tool       	"Java"
				name       	"Stateless"
				value      	201)
			    (object Attribute
				tool       	"Java"
				name       	"Stateful"
				value      	202)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBTransactionType"
			value      	("EJBTransactionType_Set" 211))
		    (object Attribute
			tool       	"Java"
			name       	"EJBTransactionType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Container"
				value      	211)
			    (object Attribute
				tool       	"Java"
				name       	"Bean"
				value      	212)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBPersistenceType"
			value      	("EJBPersistenceType_Set" 220))
		    (object Attribute
			tool       	"Java"
			name       	"EJBPersistenceType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	""
				value      	220)
			    (object Attribute
				tool       	"Java"
				name       	"Bean"
				value      	221)
			    (object Attribute
				tool       	"Java"
				name       	"Container"
				value      	222)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBReentrant"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"BMP_Extend_CMP"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDefaultConstructor"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ConstructorIs"
			value      	("Ctor_Set" 62))
		    (object Attribute
			tool       	"Java"
			name       	"Ctor_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Public"
				value      	62)
			    (object Attribute
				tool       	"Java"
				name       	"Protected"
				value      	63)
			    (object Attribute
				tool       	"Java"
				name       	"Private"
				value      	64)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFinalizer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateStaticInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateInstanceInitializer"
			value      	FALSE)))
	    (object Attribute
		tool       	"R2Editor"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Rose Model Integrator"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Rose Web Publisher"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Version Control"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Ecore"
		name       	"propertyId"
		value      	"809135969")
	    (object Attribute
		tool       	"Ecore"
		name       	"default__Category"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Ecore"
			name       	"packageName"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"nsPrefix"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"nsURI"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"basePackage"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"prefix"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"annotation"
			value      	"")))
	    (object Attribute
		tool       	"Ecore"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Ecore"
			name       	"classifierName"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"constraints"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"xmlName"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"xmlContentKind"
			value      	("ContentKind" 0))
		    (object Attribute
			tool       	"Ecore"
			name       	"ContentKind"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Ecore"
				name       	"Unspecified"
				value      	0)
			    (object Attribute
				tool       	"Ecore"
				name       	"Empty"
				value      	1)
			    (object Attribute
				tool       	"Ecore"
				name       	"Simple"
				value      	2)
			    (object Attribute
				tool       	"Ecore"
				name       	"Mixed"
				value      	3)
			    (object Attribute
				tool       	"Ecore"
				name       	"ElementOnly"
				value      	4)))
		    (object Attribute
			tool       	"Ecore"
			name       	"annotation"
			value      	"")))
	    (object Attribute
		tool       	"Ecore"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Ecore"
			name       	"operationName"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"isUnique"
			value      	TRUE)
		    (object Attribute
			tool       	"Ecore"
			name       	"annotation"
			value      	"")))
	    (object Attribute
		tool       	"Ecore"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Ecore"
			name       	"attributeName"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"isTransient"
			value      	FALSE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isChangeable"
			value      	TRUE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isUnsettable"
			value      	FALSE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isUnique"
			value      	TRUE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isID"
			value      	FALSE)
		    (object Attribute
			tool       	"Ecore"
			name       	"visibility"
			value      	("VisibilityKind" 0))
		    (object Attribute
			tool       	"Ecore"
			name       	"VisibilityKind"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Ecore"
				name       	"Unspecified"
				value      	0)
			    (object Attribute
				tool       	"Ecore"
				name       	"None"
				value      	1)
			    (object Attribute
				tool       	"Ecore"
				name       	"Read-only"
				value      	2)
			    (object Attribute
				tool       	"Ecore"
				name       	"Read-write"
				value      	3)
			    (object Attribute
				tool       	"Ecore"
				name       	"Read-only unsettable"
				value      	4)
			    (object Attribute
				tool       	"Ecore"
				name       	"Read-write unsettable"
				value      	5)))
		    (object Attribute
			tool       	"Ecore"
			name       	"xmlName"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"xmlNamespace"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"xmlFeatureKind"
			value      	("FeatureKind" 0))
		    (object Attribute
			tool       	"Ecore"
			name       	"FeatureKind"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Ecore"
				name       	"Unspecified"
				value      	0)
			    (object Attribute
				tool       	"Ecore"
				name       	"Simple"
				value      	1)
			    (object Attribute
				tool       	"Ecore"
				name       	"Attribute"
				value      	2)
			    (object Attribute
				tool       	"Ecore"
				name       	"Element"
				value      	4)))
		    (object Attribute
			tool       	"Ecore"
			name       	"annotation"
			value      	"")))
	    (object Attribute
		tool       	"Ecore"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Ecore"
			name       	"referenceName"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"isTransient"
			value      	FALSE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isChangeable"
			value      	TRUE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isUnsettable"
			value      	FALSE)
		    (object Attribute
			tool       	"Ecore"
			name       	"isResolveProxies"
			value      	TRUE)
		    (object Attribute
			tool       	"Ecore"
			name       	"visibility"
			value      	("VisibilityKind" 0))
		    (object Attribute
			tool       	"Ecore"
			name       	"VisibilityKind"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Ecore"
				name       	"Unspecified"
				value      	0)
			    (object Attribute
				tool       	"Ecore"
				name       	"None"
				value      	1)
			    (object Attribute
				tool       	"Ecore"
				name       	"Read-only"
				value      	2)
			    (object Attribute
				tool       	"Ecore"
				name       	"Read-write"
				value      	3)
			    (object Attribute
				tool       	"Ecore"
				name       	"Read-only unsettable"
				value      	4)
			    (object Attribute
				tool       	"Ecore"
				name       	"Read-write unsettable"
				value      	5)))
		    (object Attribute
			tool       	"Ecore"
			name       	"xmlName"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"xmlNamespace"
			value      	"")
		    (object Attribute
			tool       	"Ecore"
			name       	"xmlFeatureKind"
			value      	("FeatureKind" 0))
		    (object Attribute
			tool       	"Ecore"
			name       	"FeatureKind"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Ecore"
				name       	"Unspecified"
				value      	0)
			    (object Attribute
				tool       	"Ecore"
				name       	"Simple"
				value      	1)
			    (object Attribute
				tool       	"Ecore"
				name       	"Attribute"
				value      	2)
			    (object Attribute
				tool       	"Ecore"
				name       	"Element"
				value      	4)))
		    (object Attribute
			tool       	"Ecore"
			name       	"annotation"
			value      	""))))
	quid       	"39E27F080067"))
