pars user input state bodi assign individu line accord action transit user input consist multipl line like pre action label action express pre format regular transit pars transit action label stand entri exit word entri exit independ param st state object param pars pars except syntax problem non match bracket pars state bodi object st pars except entri exit gener exist intern transit compar text newli enter on model element info list intern info model element info list model facad intern transit st token line token line token line line token trim let check line present old list intern transit mark old retain creat isn pars intern info check retain line line lower start entri line substr trim start pars state entri action st line entri line lower start exit line substr trim start pars state exit action st line exit line lower start line substr trim start pars state action st line object model state machin factori build intern transit st todo line trow except remaind pars pars line todo good wai handl nest notat follow fail test transit notat uml pars line transit notat uml pars transit line add mark retain intern info add entri delet model facad entri st exit delet model facad exit st delet model facad activ st process list intern transit hook state model state machin helper set intern transit st intern info finalis list 