{
	"types": {
		"IconIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "IconIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"ICONtext": {
							"textContent": {
								"type": "string",
								"value": "<coded>"
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"fill": "#000000",
									"fill-opacity": "1",
									"font-size": "13px"
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"textContent\":getAttr(\"typename\")})"
							},
							"parser": {
								"type": "code",
								"value": "({\"typename\":getAttr(\"textContent\")})"
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
							"position": {
								"type": "list<double>",
								"value": [
									50,
									150
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						},
						"ICONrect": {
							"width": {
								"type": "double",
								"value": 200
							},
							"height": {
								"type": "double",
								"value": 150
							},
							"cornerRadius": {
								"type": "double",
								"value": 10
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "- ",
									"fill": "#ffffff",
									"fill-opacity": 0.75
								}
							},
							"mapper": {
								"type": "code",
								"value": ""
							},
							"parser": {
								"type": "code",
								"value": ""
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						},
						"ICONtextBelowRect": {
							"distance": {
								"type": "double",
								"value": 10
							},
							"alignment": {
								"type": "ENUM(\"right\",\"left\",\"center\")",
								"value": "center"
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Below",
							"position": {
								"type": "list<double>",
								"value": [
									-200,
									-200
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							},
							"link-style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#00ff00",
									"stroke-dasharray": "",
									"stroke-opacity": 1,
									"arrow-start": "none",
									"arrow-end": "classic-wide-long"
								}
							}
						}
					},
					"edges": [
						{
							"src": "ICONtext",
							"dest": "ICONtextBelowRect"
						},
						{
							"src": "ICONtextBelowRect",
							"dest": "ICONrect"
						}
					]
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"LinkIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "LinkIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"LINKtext": {
							"textContent": {
								"type": "string",
								"value": "<coded>"
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"fill": "#000000",
									"fill-opacity": "1",
									"font-size": "13px"
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"textContent\":getAttr(\"typename\")})"
							},
							"parser": {
								"type": "code",
								"value": "({\"typename\":getAttr(\"textContent\")})"
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
							"position": {
								"type": "list<double>",
								"value": [
									50,
									150
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						},
						"LINKrect": {
							"width": {
								"type": "double",
								"value": 200
							},
							"height": {
								"type": "double",
								"value": 150
							},
							"cornerRadius": {
								"type": "double",
								"value": 10
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": ". ",
									"fill": "#ffffff",
									"fill-opacity": 0.75
								}
							},
							"mapper": {
								"type": "code",
								"value": ""
							},
							"parser": {
								"type": "code",
								"value": ""
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						},
						"LINKtextBelowRect": {
							"distance": {
								"type": "double",
								"value": 10
							},
							"alignment": {
								"type": "ENUM(\"right\",\"left\",\"center\")",
								"value": "center"
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Below",
							"position": {
								"type": "list<double>",
								"value": [
									-700,
									-200
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							},
							"link-style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#00ff00",
									"stroke-dasharray": "",
									"stroke-opacity": 1,
									"arrow-start": "none",
									"arrow-end": "classic-wide-long"
								}
							}
						}
					},
					"edges": [
						{
							"src": "LINKtext",
							"dest": "LINKtextBelowRect"
						},
						{
							"src": "LINKtextBelowRect",
							"dest": "LINKrect"
						}
					]
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"RectangleIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "RectangleIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"RECTrect": {
							"width": {
								"type": "double",
								"value": 100
							},
							"height": {
								"type": "double",
								"value": 100
							},
							"cornerRadius": {
								"type": "double",
								"value": 5
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"fill": "#ffffff",
									"fill-opacity": 0.75,
									"font-size": "20px",
									"stroke-width": 1
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"width\":getAttr(\"width\"), \"height\":getAttr(\"height\"), \"cornerRadius\":getAttr(\"cornerRadius\"), \"style\":getAttr(\"style\")})"
							},
							"parser": {
								"type": "code",
								"value": ""
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						}
					},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"CircleIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "CircleIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"CIRCcirc": {
							"r": {
								"type": "double",
								"value": 50
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"fill": "#ffffff",
									"fill-opacity": 0.75,
									"font-size": "20px",
									"stroke-width": 1
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"r\":getAttr(\"r\"), \"style\":getAttr(\"style\")})"
							},
							"parser": {
								"type": "code",
								"value": ""
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Circle",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						}
					},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"EllipseIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "EllipseIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"ELPSelps": {
							"rx": {
								"type": "double",
								"value": 50
							},
							"ry": {
								"type": "double",
								"value": 30
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"fill": "#ffffff",
									"fill-opacity": 0.75,
									"font-size": "20px",
									"stroke-width": 1
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"rx\":getAttr(\"rx\"), \"ry\":getAttr(\"ry\"), \"style\":getAttr(\"style\")})"
							},
							"parser": {
								"type": "code",
								"value": ""
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Ellipse",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						}
					},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"PolygonIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "PolygonIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"PLGNplgn": {
							"r": {
								"type": "double",
								"value": 50
							},
							"sides": {
								"type": "double",
								"value": 5
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"fill": "#ffffff",
									"fill-opacity": 0.75,
									"font-size": "20px",
									"stroke-width": 1
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"r\":getAttr(\"r\"), \"sides\":getAttr(\"sides\"), \"style\":getAttr(\"style\")})"
							},
							"parser": {
								"type": "code",
								"value": ""
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Polygon",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						}
					},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"StarIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "StarIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"STARstar": {
							"r": {
								"type": "double",
								"value": 50
							},
							"rays": {
								"type": "double",
								"value": 5
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"fill": "#ffffff",
									"fill-opacity": 0.75,
									"font-size": "20px",
									"stroke-width": 1
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"r\":getAttr(\"r\"), \"rays\":getAttr(\"rays\"), \"style\":getAttr(\"style\")})"
							},
							"parser": {
								"type": "code",
								"value": ""
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Star",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						}
					},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"TextIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "TextIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"TEXTtext": {
							"textContent": {
								"type": "string",
								"value": "T..."
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"fill": "#ffffff",
									"fill-opacity": 0.75,
									"font-size": "20px",
									"stroke-width": 1
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"textContent\":getAttr(\"textContent\"), \"style\":getAttr(\"style\")})"
							},
							"parser": {
								"type": "code",
								"value": "({\"textContent\":getAttr(\"textContent\")})"
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						}
					},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"PathIcon": [
			{
				"name": "typename",
				"type": "string",
				"default": "PathIcon"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {
						"PATHpath": {
							"segments": {
								"type": "string",
								"value": "m0,0l100,0"
							},
							"style": {
								"type": "map<string,string>",
								"value": {
									"stroke": "#000000",
									"stroke-dasharray": "",
									"stroke-width": 1,
									"arrow-start": "none",
									"arrow-end": "none"
								}
							},
							"mapper": {
								"type": "code",
								"value": "({\"segments\":getAttr(\"segments\"), \"style\":getAttr(\"style\")})"
							},
							"parser": {
								"type": "code",
								"value": ""
							},
							"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Path",
							"position": {
								"type": "list<double>",
								"value": [
									0,
									0
								]
							},
							"orientation": {
								"type": "double",
								"value": 0
							},
							"scale": {
								"type": "list<double>",
								"value": [
									1,
									1
								]
							}
						}
					},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			}
		],
		"ContainLink": [
			{
				"name": "link-style",
				"type": "map<string,string>",
				"default": {
					"stroke": "#00ffff",
					"stroke-dasharray": "",
					"stroke-opacity": 0.1,
					"arrow-start": "none",
					"arrow-end": "classic-wide-long"
				}
			},
			{
				"name": "typename",
				"type": "string",
				"default": "ContainLink"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			},
			{
				"name": "$segments",
				"type": "map<string,list<string>>",
				"default": {}
			}
		],
		"IconContentsLink": [
			{
				"name": "link-style",
				"type": "map<string,string>",
				"default": {
					"stroke": "#ff00ff",
					"stroke-dasharray": "",
					"stroke-opacity": 0.1,
					"arrow-start": "none",
					"arrow-end": "classic-wide-long"
				}
			},
			{
				"name": "typename",
				"type": "string",
				"default": "IconContentsLink"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			},
			{
				"name": "$segments",
				"type": "map<string,list<string>>",
				"default": {}
			}
		],
		"RightOfLink": [
			{
				"name": "link-style",
				"type": "map<string,string>",
				"default": {
					"stroke": "#ff0000",
					"stroke-dasharray": "",
					"stroke-opacity": 1,
					"arrow-start": "none",
					"arrow-end": "classic-wide-long"
				}
			},
			{
				"name": "typename",
				"type": "string",
				"default": "RightOfLink"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			},
			{
				"name": "$segments",
				"type": "map<string,list<string>>",
				"default": {}
			}
		],
		"BelowLink": [
			{
				"name": "link-style",
				"type": "map<string,string>",
				"default": {
					"stroke": "#00ff00",
					"stroke-dasharray": "",
					"stroke-opacity": 1,
					"arrow-start": "none",
					"arrow-end": "classic-wide-long"
				}
			},
			{
				"name": "typename",
				"type": "string",
				"default": "BelowLink"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			},
			{
				"name": "$segments",
				"type": "map<string,list<string>>",
				"default": {}
			}
		],
		"SpanLink": [
			{
				"name": "link-style",
				"type": "map<string,string>",
				"default": {
					"stroke": "#0000ff",
					"stroke-dasharray": "",
					"stroke-opacity": 1,
					"arrow-start": "none",
					"arrow-end": "classic-wide-long"
				}
			},
			{
				"name": "typename",
				"type": "string",
				"default": "SpanLink"
			},
			{
				"name": "position",
				"type": "list<double>",
				"default": [
					0,
					0
				]
			},
			{
				"name": "orientation",
				"type": "double",
				"default": 0
			},
			{
				"name": "scale",
				"type": "list<double>",
				"default": [
					1,
					1
				]
			},
			{
				"name": "$contents",
				"type": "map<string,*>",
				"default": {
					"nodes": {},
					"edges": []
				}
			},
			{
				"name": "$asuri",
				"type": "string",
				"default": "-1"
			},
			{
				"name": "$segments",
				"type": "map<string,list<string>>",
				"default": {}
			}
		]
	},
	"constraints": [],
	"actions": [],
	"cardinalities": {
		"IconIcon": [],
		"LinkIcon": [],
		"RectangleIcon": [],
		"CircleIcon": [],
		"EllipseIcon": [],
		"PolygonIcon": [],
		"StarIcon": [],
		"TextIcon": [],
		"PathIcon": [],
		"ContainLink": [],
		"IconContentsLink": [],
		"RightOfLink": [],
		"BelowLink": [],
		"SpanLink": []
	},
	"legalConnections": {},
	"connectorTypes": {},
	"types2parentTypes": {
		"IconIcon": [],
		"LinkIcon": [],
		"RectangleIcon": [],
		"CircleIcon": [],
		"EllipseIcon": [],
		"PolygonIcon": [],
		"StarIcon": [],
		"TextIcon": [],
		"PathIcon": [],
		"ContainLink": [],
		"IconContentsLink": [],
		"RightOfLink": [],
		"BelowLink": [],
		"SpanLink": []
	}
}