{
	"csm": {
		"nodes": {
			"0": {
				"typename": {
					"type": "string",
					"value": "LHSIcon"
				},
				"position": {
					"type": "list<double>",
					"value": [
						533,
						199
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": ""
				},
				"parser": {
					"type": "code",
					"value": ""
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {
							"4": {
								"segments": {
									"type": "string",
									"value": "m0,0 l350,0 l100,250 l-100,250 l-350,0z"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#000000",
										"stroke-dasharray": "",
										"fill": "#ffffff",
										"fill-opacity": 0.75,
										"stroke-width": 2,
										"arrow-start": "none",
										"arrow-end": "none"
									}
								},
								"mapper": {
									"type": "code",
									"value": ""
								},
								"parser": {
									"type": "code",
									"value": ""
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Path",
								"position": {
									"type": "list<double>",
									"value": [
										1,
										0
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							}
						},
						"edges": []
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/__Transformations__/TransformationRule/TransformationRule/LHS/0.instance"
				},
				"$type": "/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/LHSIcon"
			},
			"1": {
				"typename": {
					"type": "string",
					"value": "RHSIcon"
				},
				"position": {
					"type": "list<double>",
					"value": [
						947,
						200
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": ""
				},
				"parser": {
					"type": "code",
					"value": ""
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {
							"7": {
								"segments": {
									"type": "string",
									"value": "m0,0 l450,0 l0,500 l-450,0 l100,-250z"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#000000",
										"stroke-dasharray": "",
										"fill": "#ffffff",
										"fill-opacity": 0.75,
										"stroke-width": 2,
										"arrow-start": "none",
										"arrow-end": "none"
									}
								},
								"mapper": {
									"type": "code",
									"value": ""
								},
								"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": []
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/__Transformations__/TransformationRule/TransformationRule/RHS/1.instance"
				},
				"$type": "/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/RHSIcon"
			},
			"6": {
				"typename": {
					"type": "string",
					"value": "IconIcon"
				},
				"position": {
					"type": "list<double>",
					"value": [
						645,
						341
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
				},
				"parser": {
					"type": "code",
					"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {
							"1": {
								"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,
										"stroke-width": 1
									}
								},
								"mapper": {
									"type": "code",
									"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
								},
								"parser": {
									"type": "code",
									"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
								},
								"$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
									]
								}
							},
							"2": {
								"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": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
								},
								"parser": {
									"type": "code",
									"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
								"position": {
									"type": "list<double>",
									"value": [
										58,
										151
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"3": {
								"distance": {
									"type": "double",
									"value": 0
								},
								"alignment": {
									"type": "ENUM(\"right\",\"left\",\"center\")",
									"value": "center"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Below",
								"position": {
									"type": "list<double>",
									"value": [
										93.49899850809561,
										137.49900000000002
									]
								},
								"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"
									}
								}
							},
							"__pLabelText": {
								"position": {
									"type": "list<double>",
									"value": [
										0,
										0
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								},
								"textContent": {
									"type": "string",
									"value": "0"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#6000ff",
										"fill": "#6000ff",
										"font-size": "15px",
										"opacity": "1"
									}
								},
								"mapper": {
									"type": "code",
									"value": "({'textContent':getAttr('__pLabel')})"
								},
								"parser": {
									"type": "code",
									"value": "({'__pLabel':getAttr('textContent')})"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text"
							}
						},
						"edges": [
							{
								"src": "2",
								"dest": 3
							},
							{
								"src": 3,
								"dest": "1"
							}
						]
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.pattern/__pIcon/6.instance"
				},
				"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.defaultIcons.pattern/__pIconIcon"
			},
			"7": {
				"typename": {
					"type": "string",
					"value": "IconIcon"
				},
				"position": {
					"type": "list<double>",
					"value": [
						1124,
						363
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
				},
				"parser": {
					"type": "code",
					"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {
							"1": {
								"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,
										"stroke-width": 1
									}
								},
								"mapper": {
									"type": "code",
									"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
								},
								"parser": {
									"type": "code",
									"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
								},
								"$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
									]
								}
							},
							"2": {
								"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": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
								},
								"parser": {
									"type": "code",
									"value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
								"position": {
									"type": "list<double>",
									"value": [
										58,
										151
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"3": {
								"distance": {
									"type": "double",
									"value": 0
								},
								"alignment": {
									"type": "ENUM(\"right\",\"left\",\"center\")",
									"value": "center"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Below",
								"position": {
									"type": "list<double>",
									"value": [
										93.49899850809561,
										137.49900000000002
									]
								},
								"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"
									}
								}
							},
							"__pLabelText": {
								"position": {
									"type": "list<double>",
									"value": [
										0,
										0
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								},
								"textContent": {
									"type": "string",
									"value": "0"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#6000ff",
										"fill": "#6000ff",
										"font-size": "15px",
										"opacity": "1"
									}
								},
								"mapper": {
									"type": "code",
									"value": "({'textContent':getAttr('__pLabel')})"
								},
								"parser": {
									"type": "code",
									"value": "({'__pLabel':getAttr('textContent')})"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text"
							}
						},
						"edges": [
							{
								"src": "2",
								"dest": 3
							},
							{
								"src": 3,
								"dest": "1"
							}
						]
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.pattern/__pIcon/7.instance"
				},
				"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.defaultIcons.pattern/__pIconIcon"
			},
			"8": {
				"link-style": {
					"type": "map<string,string>",
					"value": {
						"stroke": "#00ff00",
						"stroke-dasharray": "",
						"stroke-opacity": 0.2,
						"stroke-width": 1,
						"arrow-start": "none",
						"arrow-end": "classic-wide-long"
					}
				},
				"typename": {
					"type": "string",
					"value": "PatternContentsLink"
				},
				"position": {
					"type": "list<double>",
					"value": [
						1085.61229728636,
						323.3499324226995
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": ""
				},
				"parser": {
					"type": "code",
					"value": ""
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {},
						"edges": []
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/__Transformations__/TransformationRule/TransformationRule/PatternContents/8.instance"
				},
				"$segments": {
					"type": "map<string,list<string>>",
					"value": {
						"/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/RHSIcon/1.instance--/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/PatternContentsLink/8.instance": "M947,200L1085.61229728636,323.3499324226995",
						"/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/PatternContentsLink/8.instance--/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.defaultIcons.pattern/__pIconIcon/7.instance": "M1085.5559665435694,323.2998041624183L1223.9994539841273,446.4995141050086"
					}
				},
				"$type": "/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/PatternContentsLink"
			},
			"9": {
				"link-style": {
					"type": "map<string,string>",
					"value": {
						"stroke": "#00ff00",
						"stroke-dasharray": "",
						"stroke-opacity": 0.2,
						"stroke-width": 1,
						"arrow-start": "none",
						"arrow-end": "classic-wide-long"
					}
				},
				"typename": {
					"type": "string",
					"value": "PatternContentsLink"
				},
				"position": {
					"type": "list<double>",
					"value": [
						639.5,
						311.75
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": ""
				},
				"parser": {
					"type": "code",
					"value": ""
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {},
						"edges": []
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/__Transformations__/TransformationRule/TransformationRule/PatternContents/9.instance"
				},
				"$segments": {
					"type": "map<string,list<string>>",
					"value": {
						"/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/LHSIcon/0.instance--/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/PatternContentsLink/9.instance": "M534,199L639.5,311.75",
						"/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/PatternContentsLink/9.instance--/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.defaultIcons.pattern/__pIconIcon/6.instance": "M639.5511796870333,311.8046967745309L744.999399846027,424.4993586032184"
					}
				},
				"$type": "/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons/PatternContentsLink"
			}
		},
		"edges": [],
		"metamodels": [
			"/Formalisms/__Transformations__/TransformationRule/TransformationRule.defaultIcons",
			"/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.defaultIcons.pattern"
		]
	},
	"asm": {
		"nodes": {
			"0": {
				"Condition": {
					"type": "code",
					"value": "result = getAttr(\"mapper\", \"0\") != \"\" or getAttr(\"parser\", \"0\") != \"\""
				},
				"$type": "/Formalisms/__Transformations__/TransformationRule/TransformationRule/LHS"
			},
			"1": {
				"Action": {
					"type": "code",
					"value": "pass"
				},
				"$type": "/Formalisms/__Transformations__/TransformationRule/TransformationRule/RHS"
			},
			"6": {
				"__pLabel": {
					"type": "string",
					"value": "0"
				},
				"__pMatchSubtypes": {
					"type": "boolean",
					"value": true
				},
				"typename": {
					"type": "code",
					"value": "result = True"
				},
				"position": {
					"type": "code",
					"value": "result = True"
				},
				"orientation": {
					"type": "code",
					"value": "result = True"
				},
				"scale": {
					"type": "code",
					"value": "result = True"
				},
				"mapper": {
					"type": "code",
					"value": "result = True"
				},
				"parser": {
					"type": "code",
					"value": "result = True"
				},
				"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.pattern/__pIcon"
			},
			"7": {
				"__pLabel": {
					"type": "string",
					"value": "0"
				},
				"__pMatchSubtypes": {
					"type": "boolean"
				},
				"typename": {
					"type": "code",
					"value": "result = getAttr()"
				},
				"position": {
					"type": "code",
					"value": "result = getAttr()"
				},
				"orientation": {
					"type": "code",
					"value": "result = getAttr()"
				},
				"scale": {
					"type": "code",
					"value": "result = getAttr()"
				},
				"mapper": {
					"type": "code",
					"value": "result = \"\""
				},
				"parser": {
					"type": "code",
					"value": "result = \"\""
				},
				"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.pattern/__pIcon"
			},
			"8": {
				"$type": "/Formalisms/__Transformations__/TransformationRule/TransformationRule/PatternContents"
			},
			"9": {
				"$type": "/Formalisms/__Transformations__/TransformationRule/TransformationRule/PatternContents"
			}
		},
		"edges": [
			{
				"src": "1",
				"dest": "8"
			},
			{
				"src": "8",
				"dest": "7"
			},
			{
				"src": "0",
				"dest": "9"
			},
			{
				"src": "9",
				"dest": "6"
			}
		],
		"metamodels": [
			"/Formalisms/__Transformations__/TransformationRule/TransformationRule",
			"/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax.pattern"
		]
	}
}