[
{"begin":-1,"ender":2,"lexer":"markup","lines":0,"stack":"global","token":"<h2>","types":"start"},
{"begin":0,"ender":2,"lexer":"markup","lines":0,"stack":"h2","token":"My Heroes","types":"content"},
{"begin":0,"ender":2,"lexer":"markup","lines":0,"stack":"h2","token":"</h2>","types":"end"},
{"begin":-1,"ender":14,"lexer":"markup","lines":3,"stack":"global","token":"<div>","types":"start"},
{"begin":3,"ender":8,"lexer":"markup","lines":2,"stack":"div","token":"<label>","types":"start"},
{"begin":4,"ender":8,"lexer":"markup","lines":0,"stack":"label","token":"Hero name:","types":"content"},
{"begin":4,"ender":8,"lexer":"markup","lines":2,"stack":"label","token":"<input/>","types":"singleton"},
{"begin":6,"ender":8,"lexer":"markup","lines":1,"stack":"input","token":"#heroName","types":"attribute"},
{"begin":4,"ender":8,"lexer":"markup","lines":2,"stack":"label","token":"</label>","types":"end"},
{"begin":3,"ender":14,"lexer":"markup","lines":2,"stack":"div","token":"<!-- (click) passes input value to add() and then clears the input -->","types":"comment"},
{"begin":3,"ender":13,"lexer":"markup","lines":2,"stack":"div","token":"<button>","types":"start"},
{"begin":10,"ender":13,"lexer":"markup","lines":1,"stack":"button","token":"(click)=\"add(heroName.value); heroName.value=''\"","types":"attribute"},
{"begin":10,"ender":13,"lexer":"markup","lines":2,"stack":"button","token":"add","types":"content"},
{"begin":10,"ender":13,"lexer":"markup","lines":2,"stack":"button","token":"</button>","types":"end"},
{"begin":3,"ender":14,"lexer":"markup","lines":2,"stack":"div","token":"</div>","types":"end"},
{"begin":-1,"ender":34,"lexer":"markup","lines":3,"stack":"global","token":"<ul>","types":"start"},
{"begin":15,"ender":34,"lexer":"markup","lines":1,"stack":"ul","token":"class=\"heroes\"","types":"attribute"},
{"begin":15,"ender":33,"lexer":"markup","lines":2,"stack":"ul","token":"<li>","types":"start"},
{"begin":17,"ender":33,"lexer":"markup","lines":1,"stack":"li","token":"*ngFor=\"let hero of heroes\"","types":"attribute"},
{"begin":17,"ender":26,"lexer":"markup","lines":2,"stack":"li","token":"<a>","types":"start"},
{"begin":19,"ender":26,"lexer":"markup","lines":1,"stack":"a","token":"routerlink=\"/detail/{{hero.id}}\"","types":"attribute"},
{"begin":19,"ender":24,"lexer":"markup","lines":2,"stack":"a","token":"<span>","types":"start"},
{"begin":21,"ender":24,"lexer":"markup","lines":1,"stack":"span","token":"class=\"badge\"","types":"attribute"},
{"begin":21,"ender":24,"lexer":"markup","lines":0,"stack":"span","token":"{{hero.id}}","types":"template"},
{"begin":21,"ender":24,"lexer":"markup","lines":0,"stack":"span","token":"</span>","types":"end"},
{"begin":19,"ender":26,"lexer":"markup","lines":1,"stack":"a","token":"{{hero.name}}","types":"template"},
{"begin":19,"ender":26,"lexer":"markup","lines":2,"stack":"a","token":"</a>","types":"end"},
{"begin":17,"ender":32,"lexer":"markup","lines":2,"stack":"li","token":"<button>","types":"start"},
{"begin":27,"ender":32,"lexer":"markup","lines":1,"stack":"button","token":"class=\"delete\"","types":"attribute"},
{"begin":27,"ender":32,"lexer":"markup","lines":1,"stack":"button","token":"title=\"delete hero\"","types":"attribute"},
{"begin":27,"ender":32,"lexer":"markup","lines":2,"stack":"button","token":"(click)=\"delete(hero)\"","types":"attribute"},
{"begin":27,"ender":32,"lexer":"markup","lines":0,"stack":"button","token":"x","types":"content"},
{"begin":27,"ender":32,"lexer":"markup","lines":0,"stack":"button","token":"</button>","types":"end"},
{"begin":17,"ender":33,"lexer":"markup","lines":2,"stack":"li","token":"</li>","types":"end"},
{"begin":15,"ender":34,"lexer":"markup","lines":2,"stack":"ul","token":"</ul>","types":"end"}
]