{
	"csm": {
		"nodes": {
			"0": {
				"typename": {
					"type": "string",
					"value": "CompositeStateIcon"
				},
				"position": {
					"type": "list<double>",
					"value": [
						15.893748170267678,
						53.06119999999987
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						4.690053928466156,
						2.3335327953318883
					]
				},
				"mapper": {
					"type": "code",
					"value": ""
				},
				"parser": {
					"type": "code",
					"value": ""
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {
							"10": {
								"width": {
									"type": "double",
									"value": 400
								},
								"height": {
									"type": "double",
									"value": 400
								},
								"cornerRadius": {
									"type": "double",
									"value": 20
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "green",
										"fill": "#ffffff",
										"fill-opacity": 0.01,
										"stroke-width": 2
									}
								},
								"mapper": {
									"type": "code",
									"value": "var style = { \"stroke\": \"blue\",\n\t\t    \"fill\": \"#ffffff\",\n\t\t    \"fill-opacity\": 0.01,\n   \t\t    \"stroke-width\": 2};\n\nif( getAttr('isStart') )\n\tstyle['stroke'] = 'green';\n\n({'style' : style})"
								},
								"parser": {
									"type": "code",
									"value": ""
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle",
								"position": {
									"type": "list<double>",
									"value": [
										2,
										0
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"11": {
								"textContent": {
									"type": "string",
									"value": "main"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#000000",
										"stroke-dasharray": "",
										"fill": "#ffffff",
										"fill-opacity": 0.75,
										"font-size": "13px",
										"stroke-width": 1
									}
								},
								"mapper": {
									"type": "code",
									"value": "({'textContent':getAttr('name')})"
								},
								"parser": {
									"type": "code",
									"value": "({'name':getAttr('textContent')})"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
								"position": {
									"type": "list<double>",
									"value": [
										11,
										404
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"12": {
								"distance": {
									"type": "double",
									"value": 10
								},
								"alignment": {
									"type": "ENUM(\"right\",\"left\",\"center\")",
									"value": "\"center\""
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Below",
								"position": {
									"type": "list<double>",
									"value": [
										77.06940657361247,
										379.3658354276615
									]
								},
								"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": "11",
								"dest": "12"
							},
							{
								"src": "12",
								"dest": "10"
							}
						]
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/SCCD/SCCD/CompositeState/0.instance"
				},
				"$type": "/Formalisms/SCCD/SCCD.defaultIcons/CompositeStateIcon"
			},
			"92": {
				"typename": {
					"type": "string",
					"value": "ClassIcon"
				},
				"position": {
					"type": "list<double>",
					"value": [
						293,
						1134
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
				},
				"parser": {
					"type": "code",
					"value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {
							"75": {
								"textContent": {
									"type": "string",
									"value": ""
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"font-size": "14px",
										"font-style": "normal",
										"font-weight": "bold",
										"line-height": "100%",
										"letter-spacing": "0px",
										"word-spacing": "0px",
										"fill": "#000000",
										"fill-opacity": "1",
										"stroke": "none"
									}
								},
								"mapper": {
									"type": "code",
									"value": "var filenames = getAttr('attributes').map(\n            function(attr)\n            {\n                var s = '+ '+attr['name'] + ' : ' + attr['type'] + ' = ' + attr['default'];\n                return s;\n            });\n\n({'textContent': filenames.join('\\n')})"
								},
								"parser": {
									"type": "code",
									"value": ""
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
								"position": {
									"type": "list<double>",
									"value": [
										10,
										41
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"77": {
								"textContent": {
									"type": "string",
									"value": "Train"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"font-size": "18px",
										"font-style": "normal",
										"font-weight": "bold",
										"line-height": "100%",
										"letter-spacing": "0px",
										"word-spacing": "0px",
										"fill": "#000000",
										"fill-opacity": "1",
										"stroke": "none"
									}
								},
								"mapper": {
									"type": "code",
									"value": "var style = \n{\n   \"font-size\": \"18px\",\n   \"font-style\": \"normal\",\n   \"font-weight\": \"bold\",\n   \"line-height\": \"100%\",\n   \"letter-spacing\": \"0px\",\n   \"word-spacing\": \"0px\",\n   \"fill\": \"#000000\",\n   \"fill-opacity\": \"1\",\n   \"stroke\": \"none\",\n       \"font-style\": (getAttr('abstract') ? 'italic' : 'normal')\n};\n\n({'textContent': getAttr('name'), 'style':style})\n\n\n"
								},
								"parser": {
									"type": "code",
									"value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */\n({'name': getAttr('textContent')})"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
								"position": {
									"type": "list<double>",
									"value": [
										8,
										8
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"80": {
								"segments": {
									"type": "string",
									"value": "m0,0l197,0"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#000000",
										"stroke-dasharray": "",
										"fill": "#ffffff",
										"fill-opacity": 0.75,
										"font-size": "20px",
										"stroke-width": 2,
										"arrow-start": "none",
										"arrow-end": "none"
									}
								},
								"mapper": {
									"type": "code",
									"value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
								},
								"parser": {
									"type": "code",
									"value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Path",
								"position": {
									"type": "list<double>",
									"value": [
										6,
										36
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"81": {
								"width": {
									"type": "double",
									"value": 200
								},
								"height": {
									"type": "double",
									"value": 125
								},
								"cornerRadius": {
									"type": "double",
									"value": 0
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#000000",
										"stroke-dasharray": "",
										"fill": "#ffffff",
										"fill-opacity": 0.75,
										"stroke-width": 2
									}
								},
								"mapper": {
									"type": "code",
									"value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
								},
								"parser": {
									"type": "code",
									"value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle",
								"position": {
									"type": "list<double>",
									"value": [
										4,
										3
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"83": {
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain",
								"position": {
									"type": "list<double>",
									"value": [
										12.5,
										27
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								},
								"link-style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#00ffff",
										"stroke-dasharray": "",
										"stroke-opacity": 0.1,
										"stroke-width": 1
									}
								}
							},
							"84": {
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain",
								"position": {
									"type": "list<double>",
									"value": [
										53.75,
										20
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								},
								"link-style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#00ffff",
										"stroke-dasharray": "",
										"stroke-opacity": 0.1,
										"stroke-width": 1
									}
								}
							},
							"85": {
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain",
								"position": {
									"type": "list<double>",
									"value": [
										68.5,
										36.5
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								},
								"link-style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#00ffff",
										"stroke-dasharray": "",
										"stroke-opacity": 0.1,
										"stroke-width": 1
									}
								}
							}
						},
						"edges": [
							{
								"src": "81",
								"dest": "83"
							},
							{
								"src": "83",
								"dest": "75"
							},
							{
								"src": "81",
								"dest": "84"
							},
							{
								"src": "84",
								"dest": "80"
							},
							{
								"src": "81",
								"dest": "85"
							},
							{
								"src": "85",
								"dest": "77"
							}
						]
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/SCCD/SCCD/Class/92.instance"
				},
				"$type": "/Formalisms/SCCD/SCCD.defaultIcons/ClassIcon"
			},
			"93": {
				"link-style": {
					"type": "map<string,string>",
					"value": {
						"stroke": "#000000",
						"stroke-dasharray": "-",
						"stroke-opacity": 1,
						"stroke-width": 1
					}
				},
				"arrowHead": {
					"type": "ENUM(circle-black,circle-black-large,circle-white,circle-white-large,diamond-black,diamond-black-large,diamond-white,diamond-white-large,triangle-black,triangle-black-large,triangle-white,triangle-white-large,arrow-black,arrow-black-large,arrow-empty,arrow-empty-large,custom)",
					"value": "custom"
				},
				"arrowTail": {
					"type": "ENUM(circle-black,circle-black-large,circle-white,circle-white-large,diamond-black,diamond-black-large,diamond-white,diamond-white-large,triangle-black,triangle-black-large,triangle-white,triangle-white-large,arrow-black,arrow-black-large,arrow-empty,arrow-empty-large,custom)",
					"value": "arrow-black"
				},
				"typename": {
					"type": "string",
					"value": "behaviourLink"
				},
				"position": {
					"type": "list<double>",
					"value": [
						424.52800829232535,
						1058.3752004605901
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
				},
				"parser": {
					"type": "code",
					"value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {
							"92": {
								"textContent": {
									"type": "string",
									"value": "<<behaviour>>"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#000000",
										"stroke-dasharray": "",
										"fill": "#ffffff",
										"fill-opacity": 0.75,
										"font-size": "13px",
										"stroke-width": 1,
										"arrow-start": "none",
										"arrow-end": "none"
									}
								},
								"mapper": {
									"type": "code",
									"value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
								},
								"parser": {
									"type": "code",
									"value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
								"position": {
									"type": "list<double>",
									"value": [
										"0;-41.07352483201754,0%",
										"0;25.35873378801398,0%"
									]
								},
								"orientation": {
									"type": "double",
									"value": "0;-52.48103858015613"
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								},
								"$linkDecoratorInfo": {
									"type": "map<string,double>",
									"value": {
										"xratio": 0.34355828220858897,
										"yoffset": -16.5
									}
								}
							},
							"281": {
								"segments": {
									"type": "string",
									"value": "m0,0 l10,4 l-10,4"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#000000",
										"fill": "#000000",
										"fill-opacity": 0,
										"stroke-width": 1,
										"opacity": 1
									}
								},
								"mapper": {
									"type": "code",
									"value": ""
								},
								"parser": {
									"type": "code",
									"value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Path",
								"position": {
									"type": "list<double>",
									"value": [
										"0;75.47545430764512,73.42833291069904%",
										"0;-76.06499203592136,-67.88431281198591%"
									]
								},
								"orientation": {
									"type": "double",
									"value": "0;-42.75330700490329"
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								},
								"$linkDecoratorInfo": {
									"type": "map<string,double>",
									"value": {
										"xratio": 1,
										"yoffset": -4
									}
								}
							}
						},
						"edges": []
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/SCCD/SCCD/behaviour/93.instance"
				},
				"$segments": {
					"type": "map<string,list<string>>",
					"value": {
						"/Formalisms/SCCD/SCCD.defaultIcons/ClassIcon/92.instance--/Formalisms/SCCD/SCCD.defaultIcons/behaviourLink/93.instance": "M348,1157L424,1058.022710800171",
						"/Formalisms/SCCD/SCCD.defaultIcons/behaviourLink/93.instance--/Formalisms/SCCD/SCCD.defaultIcons/CompositeStateIcon/0.instance": "M424,1058.022710800171L502.71883511244994,985.2473417410966"
					}
				},
				"$type": "/Formalisms/SCCD/SCCD.defaultIcons/behaviourLink"
			},
			"94": {
				"typename": {
					"type": "string",
					"value": "BasicStateIcon"
				},
				"position": {
					"type": "list<double>",
					"value": [
						939,
						482
					]
				},
				"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": {
								"r": {
									"type": "double",
									"value": 20
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#20B2AA",
										"fill": "#E6E6FA",
										"fill-opacity": 0.75,
										"stroke-width": 4
									}
								},
								"mapper": {
									"type": "code",
									"value": "var style = { \"stroke\": \"#20B2AA\",\n\t\t    \"fill\": \"#E6E6FA\",\n\t\t    \"fill-opacity\": 0.75,\n   \t\t    \"stroke-width\": 2};\n\nif( getAttr('isStart') )\n\tstyle['stroke-width'] = 4;\n\nif( getAttr('isCurrent') )\n\tstyle['fill'] = 'green';\n\n({'style' : style})"
								},
								"parser": {
									"type": "code",
									"value": ""
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Circle",
								"position": {
									"type": "list<double>",
									"value": [
										3,
										3
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"5": {
								"textContent": {
									"type": "string",
									"value": "initial"
								},
								"style": {
									"type": "map<string,string>",
									"value": {
										"stroke": "#000000",
										"stroke-dasharray": "",
										"fill": "#ffffff",
										"fill-opacity": 0.75,
										"font-size": "13px",
										"stroke-width": 1
									}
								},
								"mapper": {
									"type": "code",
									"value": "({'textContent':getAttr('name')})"
								},
								"parser": {
									"type": "code",
									"value": "({'name':getAttr('textContent')})"
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
								"position": {
									"type": "list<double>",
									"value": [
										2,
										44
									]
								},
								"orientation": {
									"type": "double",
									"value": 0
								},
								"scale": {
									"type": "list<double>",
									"value": [
										1,
										1
									]
								}
							},
							"6": {
								"distance": {
									"type": "double",
									"value": 10
								},
								"alignment": {
									"type": "ENUM(\"right\",\"left\",\"center\")",
									"value": "\"center\""
								},
								"$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Below",
								"position": {
									"type": "list<double>",
									"value": [
										32.99899850809555,
										45.99899850809561
									]
								},
								"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": "5",
								"dest": "6"
							},
							{
								"src": "6",
								"dest": "4"
							}
						]
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/SCCD/SCCD/BasicState/94.instance"
				},
				"$type": "/Formalisms/SCCD/SCCD.defaultIcons/BasicStateIcon"
			},
			"95": {
				"link-style": {
					"type": "map<string,string>",
					"value": {
						"stroke": "#ffff00",
						"stroke-dasharray": "",
						"stroke-opacity": 0.75,
						"stroke-width": 1
					}
				},
				"arrowHead": {
					"type": "ENUM(circle-black,circle-black-large,circle-white,circle-white-large,diamond-black,diamond-black-large,diamond-white,diamond-white-large,triangle-black,triangle-black-large,triangle-white,triangle-white-large,arrow-black,arrow-black-large,arrow-empty,arrow-empty-large,custom)",
					"value": "custom"
				},
				"arrowTail": {
					"type": "ENUM(circle-black,circle-black-large,circle-white,circle-white-large,diamond-black,diamond-black-large,diamond-white,diamond-white-large,triangle-black,triangle-black-large,triangle-white,triangle-white-large,arrow-black,arrow-black-large,arrow-empty,arrow-empty-large,custom)",
					"value": "arrow-black"
				},
				"typename": {
					"type": "string",
					"value": "containLink"
				},
				"position": {
					"type": "list<double>",
					"value": [
						492.52180185370116,
						281.59656806463266
					]
				},
				"orientation": {
					"type": "double",
					"value": 0
				},
				"scale": {
					"type": "list<double>",
					"value": [
						1,
						1
					]
				},
				"mapper": {
					"type": "code",
					"value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
				},
				"parser": {
					"type": "code",
					"value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
				},
				"$contents": {
					"type": "map<string,*>",
					"value": {
						"nodes": {},
						"edges": []
					}
				},
				"$asuri": {
					"type": "string",
					"value": "/Formalisms/SCCD/SCCD/contain/95.instance"
				},
				"$segments": {
					"type": "map<string,list<string>>",
					"value": {
						"/Formalisms/SCCD/SCCD.defaultIcons/CompositeStateIcon/0.instance--/Formalisms/SCCD/SCCD.defaultIcons/containLink/95.instance": "M25.27385602719999,53.06119999999987L492.52180185370116,281.59656806463266",
						"/Formalisms/SCCD/SCCD.defaultIcons/containLink/95.instance--/Formalisms/SCCD/SCCD.defaultIcons/BasicStateIcon/94.instance": "M492.4541702174697,281.5634887947996L959.4993511522072,509.99968264243756"
					}
				},
				"$type": "/Formalisms/SCCD/SCCD.defaultIcons/containLink"
			}
		},
		"edges": [],
		"metamodels": [
			"/Formalisms/SCCD/SCCD.defaultIcons"
		]
	},
	"asm": {
		"nodes": {
			"0": {
				"name": {
					"type": "string",
					"value": "main"
				},
				"entryAction": {
					"type": "code",
					"value": ""
				},
				"exitAction": {
					"type": "code",
					"value": ""
				},
				"isStart": {
					"type": "boolean",
					"value": true
				},
				"isCurrent": {
					"type": "boolean",
					"value": false
				},
				"option": {
					"type": "ENUM(ITF, OTF, RTO)",
					"value": "ITF"
				},
				"raiseEntry": {
					"type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
					"value": []
				},
				"raiseExit": {
					"type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
					"value": []
				},
				"$type": "/Formalisms/SCCD/SCCD/CompositeState"
			},
			"92": {
				"name": {
					"type": "string",
					"value": "Train"
				},
				"attributes": {
					"type": "list<$ATTRIBUTE>",
					"value": []
				},
				"cardinalities": {
					"type": "list<$CARDINALITY>",
					"value": []
				},
				"abstract": {
					"type": "boolean",
					"value": false
				},
				"methods": {
					"type": "list<$METHOD>",
					"value": [
						{
							"name": "Train",
							"args": [
								{
									"name": "root",
									"type": ""
								}
							],
							"returntype": "",
							"body": "self.root, self.acceleration, self.velocity = root, 0.0, 0.0/*newline*/self.root.trainIs(self)"
						},
						{
							"name": "updateState",
							"args": [
								{
									"name": "",
									"type": ""
								}
							],
							"returntype": "",
							"body": "self.root.updateState()"
						},
						{
							"name": "openDoors",
							"args": [
								{
									"name": "",
									"type": ""
								}
							],
							"returntype": "",
							"body": "self.root.openDoors()"
						},
						{
							"name": "closeDoors",
							"args": [
								{
									"name": "",
									"type": ""
								}
							],
							"returntype": "",
							"body": "self.root.closeDoors()"
						},
						{
							"name": "notify",
							"args": [
								{
									"name": "message",
									"type": ""
								},
								{
									"name": "colour",
									"type": ""
								}
							],
							"returntype": "",
							"body": "self.root.notify(message, colour)"
						}
					]
				},
				"external": {
					"type": "boolean",
					"value": false
				},
				"$type": "/Formalisms/SCCD/SCCD/Class"
			},
			"93": {
				"$type": "/Formalisms/SCCD/SCCD/behaviour"
			},
			"94": {
				"name": {
					"type": "string",
					"value": "initial"
				},
				"entryAction": {
					"type": "code",
					"value": ""
				},
				"exitAction": {
					"type": "code",
					"value": ""
				},
				"isStart": {
					"type": "boolean",
					"value": true
				},
				"isCurrent": {
					"type": "boolean",
					"value": false
				},
				"option": {
					"type": "ENUM(ITF, OTF, RTO)",
					"value": "ITF"
				},
				"raiseEntry": {
					"type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
					"value": []
				},
				"raiseExit": {
					"type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
					"value": []
				},
				"$type": "/Formalisms/SCCD/SCCD/BasicState"
			},
			"95": {
				"$type": "/Formalisms/SCCD/SCCD/contain"
			}
		},
		"edges": [
			{
				"src": "92",
				"dest": "93"
			},
			{
				"src": "93",
				"dest": "0"
			},
			{
				"src": "0",
				"dest": "95"
			},
			{
				"src": "95",
				"dest": "94"
			}
		],
		"metamodels": [
			"/Formalisms/SCCD/SCCD"
		]
	}
}