#10000=@"/assign.js;sourcefile" files(#10000,"/assign.js") #10001=@"/;folder" folders(#10001,"/") containerparent(#10001,#10000) #10002=@"loc,{#10000},0,0,0,0" locations_default(#10002,#10000,0,0,0,0) hasLocation(#10000,#10002) #20000=@"global_scope" scopes(#20000,0) #20001=@"script;{#10000},1,1" #20002=* comments(#20002,0,#20001," 2","// 2") #20003=@"loc,{#10000},5,17,5,20" locations_default(#20003,#10000,5,17,5,20) hasLocation(#20002,#20003) #20004=* lines(#20004,#20001,"var x = 1;"," ") #20005=@"loc,{#10000},1,1,1,10" locations_default(#20005,#10000,1,1,1,10) hasLocation(#20004,#20005) #20006=* lines(#20006,#20001,"var y = 2;"," ") #20007=@"loc,{#10000},2,1,2,10" locations_default(#20007,#10000,2,1,2,10) hasLocation(#20006,#20007) #20008=* lines(#20008,#20001,"var foo = x && y;"," ") #20009=@"loc,{#10000},3,1,3,17" locations_default(#20009,#10000,3,1,3,17) hasLocation(#20008,#20009) #20010=* lines(#20010,#20001,"var bar = x &&= y;"," ") #20011=@"loc,{#10000},4,1,4,18" locations_default(#20011,#10000,4,1,4,18) hasLocation(#20010,#20011) #20012=* lines(#20012,#20001,"console.log(x); // 2"," ") #20013=@"loc,{#10000},5,1,5,20" locations_default(#20013,#10000,5,1,5,20) hasLocation(#20012,#20013) #20014=* lines(#20014,#20001,""," ") #20015=@"loc,{#10000},6,1,6,0" locations_default(#20015,#10000,6,1,6,0) hasLocation(#20014,#20015) #20016=* lines(#20016,#20001,"x &&= y;"," ") #20017=@"loc,{#10000},7,1,7,8" locations_default(#20017,#10000,7,1,7,8) hasLocation(#20016,#20017) #20018=* lines(#20018,#20001,"x ||= y;"," ") #20019=@"loc,{#10000},8,1,8,8" locations_default(#20019,#10000,8,1,8,8) hasLocation(#20018,#20019) #20020=* lines(#20020,#20001,"x ??= y;"," ") #20021=@"loc,{#10000},9,1,9,8" locations_default(#20021,#10000,9,1,9,8) hasLocation(#20020,#20021) numlines(#20001,9,8,1) #20022=* tokeninfo(#20022,7,#20001,0,"var") #20023=@"loc,{#10000},1,1,1,3" locations_default(#20023,#10000,1,1,1,3) hasLocation(#20022,#20023) #20024=* tokeninfo(#20024,6,#20001,1,"x") #20025=@"loc,{#10000},1,5,1,5" locations_default(#20025,#10000,1,5,1,5) hasLocation(#20024,#20025) #20026=* tokeninfo(#20026,8,#20001,2,"=") #20027=@"loc,{#10000},1,7,1,7" locations_default(#20027,#10000,1,7,1,7) hasLocation(#20026,#20027) #20028=* tokeninfo(#20028,3,#20001,3,"1") #20029=@"loc,{#10000},1,9,1,9" locations_default(#20029,#10000,1,9,1,9) hasLocation(#20028,#20029) #20030=* tokeninfo(#20030,8,#20001,4,";") #20031=@"loc,{#10000},1,10,1,10" locations_default(#20031,#10000,1,10,1,10) hasLocation(#20030,#20031) #20032=* tokeninfo(#20032,7,#20001,5,"var") #20033=@"loc,{#10000},2,1,2,3" locations_default(#20033,#10000,2,1,2,3) hasLocation(#20032,#20033) #20034=* tokeninfo(#20034,6,#20001,6,"y") #20035=@"loc,{#10000},2,5,2,5" locations_default(#20035,#10000,2,5,2,5) hasLocation(#20034,#20035) #20036=* tokeninfo(#20036,8,#20001,7,"=") #20037=@"loc,{#10000},2,7,2,7" locations_default(#20037,#10000,2,7,2,7) hasLocation(#20036,#20037) #20038=* tokeninfo(#20038,3,#20001,8,"2") #20039=@"loc,{#10000},2,9,2,9" locations_default(#20039,#10000,2,9,2,9) hasLocation(#20038,#20039) #20040=* tokeninfo(#20040,8,#20001,9,";") #20041=@"loc,{#10000},2,10,2,10" locations_default(#20041,#10000,2,10,2,10) hasLocation(#20040,#20041) #20042=* tokeninfo(#20042,7,#20001,10,"var") #20043=@"loc,{#10000},3,1,3,3" locations_default(#20043,#10000,3,1,3,3) hasLocation(#20042,#20043) #20044=* tokeninfo(#20044,6,#20001,11,"foo") #20045=@"loc,{#10000},3,5,3,7" locations_default(#20045,#10000,3,5,3,7) hasLocation(#20044,#20045) #20046=* tokeninfo(#20046,8,#20001,12,"=") #20047=@"loc,{#10000},3,9,3,9" locations_default(#20047,#10000,3,9,3,9) hasLocation(#20046,#20047) #20048=* tokeninfo(#20048,6,#20001,13,"x") #20049=@"loc,{#10000},3,11,3,11" locations_default(#20049,#10000,3,11,3,11) hasLocation(#20048,#20049) #20050=* tokeninfo(#20050,8,#20001,14,"&&") #20051=@"loc,{#10000},3,13,3,14" locations_default(#20051,#10000,3,13,3,14) hasLocation(#20050,#20051) #20052=* tokeninfo(#20052,6,#20001,15,"y") #20053=@"loc,{#10000},3,16,3,16" locations_default(#20053,#10000,3,16,3,16) hasLocation(#20052,#20053) #20054=* tokeninfo(#20054,8,#20001,16,";") #20055=@"loc,{#10000},3,17,3,17" locations_default(#20055,#10000,3,17,3,17) hasLocation(#20054,#20055) #20056=* tokeninfo(#20056,7,#20001,17,"var") #20057=@"loc,{#10000},4,1,4,3" locations_default(#20057,#10000,4,1,4,3) hasLocation(#20056,#20057) #20058=* tokeninfo(#20058,6,#20001,18,"bar") #20059=@"loc,{#10000},4,5,4,7" locations_default(#20059,#10000,4,5,4,7) hasLocation(#20058,#20059) #20060=* tokeninfo(#20060,8,#20001,19,"=") #20061=@"loc,{#10000},4,9,4,9" locations_default(#20061,#10000,4,9,4,9) hasLocation(#20060,#20061) #20062=* tokeninfo(#20062,6,#20001,20,"x") #20063=@"loc,{#10000},4,11,4,11" locations_default(#20063,#10000,4,11,4,11) hasLocation(#20062,#20063) #20064=* tokeninfo(#20064,8,#20001,21,"&&=") #20065=@"loc,{#10000},4,13,4,15" locations_default(#20065,#10000,4,13,4,15) hasLocation(#20064,#20065) #20066=* tokeninfo(#20066,6,#20001,22,"y") #20067=@"loc,{#10000},4,17,4,17" locations_default(#20067,#10000,4,17,4,17) hasLocation(#20066,#20067) #20068=* tokeninfo(#20068,8,#20001,23,";") #20069=@"loc,{#10000},4,18,4,18" locations_default(#20069,#10000,4,18,4,18) hasLocation(#20068,#20069) #20070=* tokeninfo(#20070,6,#20001,24,"console") #20071=@"loc,{#10000},5,1,5,7" locations_default(#20071,#10000,5,1,5,7) hasLocation(#20070,#20071) #20072=* tokeninfo(#20072,8,#20001,25,".") #20073=@"loc,{#10000},5,8,5,8" locations_default(#20073,#10000,5,8,5,8) hasLocation(#20072,#20073) #20074=* tokeninfo(#20074,6,#20001,26,"log") #20075=@"loc,{#10000},5,9,5,11" locations_default(#20075,#10000,5,9,5,11) hasLocation(#20074,#20075) #20076=* tokeninfo(#20076,8,#20001,27,"(") #20077=@"loc,{#10000},5,12,5,12" locations_default(#20077,#10000,5,12,5,12) hasLocation(#20076,#20077) #20078=* tokeninfo(#20078,6,#20001,28,"x") #20079=@"loc,{#10000},5,13,5,13" locations_default(#20079,#10000,5,13,5,13) hasLocation(#20078,#20079) #20080=* tokeninfo(#20080,8,#20001,29,")") #20081=@"loc,{#10000},5,14,5,14" locations_default(#20081,#10000,5,14,5,14) hasLocation(#20080,#20081) #20082=* tokeninfo(#20082,8,#20001,30,";") #20083=@"loc,{#10000},5,15,5,15" locations_default(#20083,#10000,5,15,5,15) hasLocation(#20082,#20083) #20084=* tokeninfo(#20084,6,#20001,31,"x") #20085=@"loc,{#10000},7,1,7,1" locations_default(#20085,#10000,7,1,7,1) hasLocation(#20084,#20085) next_token(#20002,#20084) #20086=* tokeninfo(#20086,8,#20001,32,"&&=") #20087=@"loc,{#10000},7,3,7,5" locations_default(#20087,#10000,7,3,7,5) hasLocation(#20086,#20087) #20088=* tokeninfo(#20088,6,#20001,33,"y") #20089=@"loc,{#10000},7,7,7,7" locations_default(#20089,#10000,7,7,7,7) hasLocation(#20088,#20089) #20090=* tokeninfo(#20090,8,#20001,34,";") #20091=@"loc,{#10000},7,8,7,8" locations_default(#20091,#10000,7,8,7,8) hasLocation(#20090,#20091) #20092=* tokeninfo(#20092,6,#20001,35,"x") #20093=@"loc,{#10000},8,1,8,1" locations_default(#20093,#10000,8,1,8,1) hasLocation(#20092,#20093) #20094=* tokeninfo(#20094,8,#20001,36,"||=") #20095=@"loc,{#10000},8,3,8,5" locations_default(#20095,#10000,8,3,8,5) hasLocation(#20094,#20095) #20096=* tokeninfo(#20096,6,#20001,37,"y") #20097=@"loc,{#10000},8,7,8,7" locations_default(#20097,#10000,8,7,8,7) hasLocation(#20096,#20097) #20098=* tokeninfo(#20098,8,#20001,38,";") #20099=@"loc,{#10000},8,8,8,8" locations_default(#20099,#10000,8,8,8,8) hasLocation(#20098,#20099) #20100=* tokeninfo(#20100,6,#20001,39,"x") #20101=@"loc,{#10000},9,1,9,1" locations_default(#20101,#10000,9,1,9,1) hasLocation(#20100,#20101) #20102=* tokeninfo(#20102,8,#20001,40,"??=") #20103=@"loc,{#10000},9,3,9,5" locations_default(#20103,#10000,9,3,9,5) hasLocation(#20102,#20103) #20104=* tokeninfo(#20104,6,#20001,41,"y") #20105=@"loc,{#10000},9,7,9,7" locations_default(#20105,#10000,9,7,9,7) hasLocation(#20104,#20105) #20106=* tokeninfo(#20106,8,#20001,42,";") #20107=@"loc,{#10000},9,8,9,8" locations_default(#20107,#10000,9,8,9,8) hasLocation(#20106,#20107) #20108=* tokeninfo(#20108,0,#20001,43,"") #20109=@"loc,{#10000},10,1,10,0" locations_default(#20109,#10000,10,1,10,0) hasLocation(#20108,#20109) toplevels(#20001,0) #20110=@"loc,{#10000},1,1,10,0" locations_default(#20110,#10000,1,1,10,0) hasLocation(#20001,#20110) #20111=@"var;{x};{#20000}" variables(#20111,"x",#20000) #20112=@"var;{y};{#20000}" variables(#20112,"y",#20000) #20113=@"var;{foo};{#20000}" variables(#20113,"foo",#20000) #20114=@"var;{bar};{#20000}" variables(#20114,"bar",#20000) #20115=* stmts(#20115,18,#20001,0,"var x = 1;") hasLocation(#20115,#20005) stmt_containers(#20115,#20001) #20116=* exprs(#20116,64,#20115,0,"x = 1") #20117=@"loc,{#10000},1,5,1,9" locations_default(#20117,#10000,1,5,1,9) hasLocation(#20116,#20117) enclosing_stmt(#20116,#20115) expr_containers(#20116,#20001) #20118=* exprs(#20118,78,#20116,0,"x") hasLocation(#20118,#20025) enclosing_stmt(#20118,#20115) expr_containers(#20118,#20001) literals("x","x",#20118) decl(#20118,#20111) #20119=* exprs(#20119,3,#20116,1,"1") hasLocation(#20119,#20029) enclosing_stmt(#20119,#20115) expr_containers(#20119,#20001) literals("1","1",#20119) #20120=* stmts(#20120,18,#20001,1,"var y = 2;") hasLocation(#20120,#20007) stmt_containers(#20120,#20001) #20121=* exprs(#20121,64,#20120,0,"y = 2") #20122=@"loc,{#10000},2,5,2,9" locations_default(#20122,#10000,2,5,2,9) hasLocation(#20121,#20122) enclosing_stmt(#20121,#20120) expr_containers(#20121,#20001) #20123=* exprs(#20123,78,#20121,0,"y") hasLocation(#20123,#20035) enclosing_stmt(#20123,#20120) expr_containers(#20123,#20001) literals("y","y",#20123) decl(#20123,#20112) #20124=* exprs(#20124,3,#20121,1,"2") hasLocation(#20124,#20039) enclosing_stmt(#20124,#20120) expr_containers(#20124,#20001) literals("2","2",#20124) #20125=* stmts(#20125,18,#20001,2,"var foo = x && y;") hasLocation(#20125,#20009) stmt_containers(#20125,#20001) #20126=* exprs(#20126,64,#20125,0,"foo = x && y") #20127=@"loc,{#10000},3,5,3,16" locations_default(#20127,#10000,3,5,3,16) hasLocation(#20126,#20127) enclosing_stmt(#20126,#20125) expr_containers(#20126,#20001) #20128=* exprs(#20128,78,#20126,0,"foo") hasLocation(#20128,#20045) enclosing_stmt(#20128,#20125) expr_containers(#20128,#20001) literals("foo","foo",#20128) decl(#20128,#20113) #20129=* exprs(#20129,44,#20126,1,"x && y") #20130=@"loc,{#10000},3,11,3,16" locations_default(#20130,#10000,3,11,3,16) hasLocation(#20129,#20130) enclosing_stmt(#20129,#20125) expr_containers(#20129,#20001) #20131=* exprs(#20131,79,#20129,0,"x") hasLocation(#20131,#20049) enclosing_stmt(#20131,#20125) expr_containers(#20131,#20001) literals("x","x",#20131) bind(#20131,#20111) #20132=* exprs(#20132,79,#20129,1,"y") hasLocation(#20132,#20053) enclosing_stmt(#20132,#20125) expr_containers(#20132,#20001) literals("y","y",#20132) bind(#20132,#20112) #20133=* stmts(#20133,18,#20001,3,"var bar = x &&= y;") hasLocation(#20133,#20011) stmt_containers(#20133,#20001) #20134=* exprs(#20134,64,#20133,0,"bar = x &&= y") #20135=@"loc,{#10000},4,5,4,17" locations_default(#20135,#10000,4,5,4,17) hasLocation(#20134,#20135) enclosing_stmt(#20134,#20133) expr_containers(#20134,#20001) #20136=* exprs(#20136,78,#20134,0,"bar") hasLocation(#20136,#20059) enclosing_stmt(#20136,#20133) expr_containers(#20136,#20001) literals("bar","bar",#20136) decl(#20136,#20114) #20137=* exprs(#20137,116,#20134,1,"x &&= y") #20138=@"loc,{#10000},4,11,4,17" locations_default(#20138,#10000,4,11,4,17) hasLocation(#20137,#20138) enclosing_stmt(#20137,#20133) expr_containers(#20137,#20001) #20139=* exprs(#20139,79,#20137,0,"x") hasLocation(#20139,#20063) enclosing_stmt(#20139,#20133) expr_containers(#20139,#20001) literals("x","x",#20139) bind(#20139,#20111) #20140=* exprs(#20140,79,#20137,1,"y") hasLocation(#20140,#20067) enclosing_stmt(#20140,#20133) expr_containers(#20140,#20001) literals("y","y",#20140) bind(#20140,#20112) #20141=* stmts(#20141,2,#20001,4,"console.log(x);") #20142=@"loc,{#10000},5,1,5,15" locations_default(#20142,#10000,5,1,5,15) hasLocation(#20141,#20142) stmt_containers(#20141,#20001) #20143=* exprs(#20143,13,#20141,0,"console.log(x)") #20144=@"loc,{#10000},5,1,5,14" locations_default(#20144,#10000,5,1,5,14) hasLocation(#20143,#20144) enclosing_stmt(#20143,#20141) expr_containers(#20143,#20001) #20145=* exprs(#20145,14,#20143,-1,"console.log") #20146=@"loc,{#10000},5,1,5,11" locations_default(#20146,#10000,5,1,5,11) hasLocation(#20145,#20146) enclosing_stmt(#20145,#20141) expr_containers(#20145,#20001) #20147=* exprs(#20147,79,#20145,0,"console") hasLocation(#20147,#20071) enclosing_stmt(#20147,#20141) expr_containers(#20147,#20001) literals("console","console",#20147) #20148=@"var;{console};{#20000}" variables(#20148,"console",#20000) bind(#20147,#20148) #20149=* exprs(#20149,0,#20145,1,"log") hasLocation(#20149,#20075) enclosing_stmt(#20149,#20141) expr_containers(#20149,#20001) literals("log","log",#20149) #20150=* exprs(#20150,79,#20143,0,"x") hasLocation(#20150,#20079) enclosing_stmt(#20150,#20141) expr_containers(#20150,#20001) literals("x","x",#20150) bind(#20150,#20111) #20151=* stmts(#20151,2,#20001,5,"x &&= y;") hasLocation(#20151,#20017) stmt_containers(#20151,#20001) #20152=* exprs(#20152,116,#20151,0,"x &&= y") #20153=@"loc,{#10000},7,1,7,7" locations_default(#20153,#10000,7,1,7,7) hasLocation(#20152,#20153) enclosing_stmt(#20152,#20151) expr_containers(#20152,#20001) #20154=* exprs(#20154,79,#20152,0,"x") hasLocation(#20154,#20085) enclosing_stmt(#20154,#20151) expr_containers(#20154,#20001) literals("x","x",#20154) bind(#20154,#20111) #20155=* exprs(#20155,79,#20152,1,"y") hasLocation(#20155,#20089) enclosing_stmt(#20155,#20151) expr_containers(#20155,#20001) literals("y","y",#20155) bind(#20155,#20112) #20156=* stmts(#20156,2,#20001,6,"x ||= y;") hasLocation(#20156,#20019) stmt_containers(#20156,#20001) #20157=* exprs(#20157,117,#20156,0,"x ||= y") #20158=@"loc,{#10000},8,1,8,7" locations_default(#20158,#10000,8,1,8,7) hasLocation(#20157,#20158) enclosing_stmt(#20157,#20156) expr_containers(#20157,#20001) #20159=* exprs(#20159,79,#20157,0,"x") hasLocation(#20159,#20093) enclosing_stmt(#20159,#20156) expr_containers(#20159,#20001) literals("x","x",#20159) bind(#20159,#20111) #20160=* exprs(#20160,79,#20157,1,"y") hasLocation(#20160,#20097) enclosing_stmt(#20160,#20156) expr_containers(#20160,#20001) literals("y","y",#20160) bind(#20160,#20112) #20161=* stmts(#20161,2,#20001,7,"x ??= y;") hasLocation(#20161,#20021) stmt_containers(#20161,#20001) #20162=* exprs(#20162,118,#20161,0,"x ??= y") #20163=@"loc,{#10000},9,1,9,7" locations_default(#20163,#10000,9,1,9,7) hasLocation(#20162,#20163) enclosing_stmt(#20162,#20161) expr_containers(#20162,#20001) #20164=* exprs(#20164,79,#20162,0,"x") hasLocation(#20164,#20101) enclosing_stmt(#20164,#20161) expr_containers(#20164,#20001) literals("x","x",#20164) bind(#20164,#20111) #20165=* exprs(#20165,79,#20162,1,"y") hasLocation(#20165,#20105) enclosing_stmt(#20165,#20161) expr_containers(#20165,#20001) literals("y","y",#20165) bind(#20165,#20112) #20166=* entry_cfg_node(#20166,#20001) #20167=@"loc,{#10000},1,1,1,0" locations_default(#20167,#10000,1,1,1,0) hasLocation(#20166,#20167) #20168=* exit_cfg_node(#20168,#20001) hasLocation(#20168,#20109) successor(#20161,#20164) successor(#20164,#20165) successor(#20164,#20168) successor(#20165,#20162) successor(#20162,#20168) successor(#20156,#20159) #20169=* guard_node(#20169,1,#20159) hasLocation(#20169,#20093) successor(#20169,#20161) #20170=* guard_node(#20170,0,#20159) hasLocation(#20170,#20093) successor(#20170,#20160) successor(#20159,#20169) successor(#20159,#20170) successor(#20160,#20157) successor(#20157,#20161) successor(#20151,#20154) #20171=* guard_node(#20171,1,#20154) hasLocation(#20171,#20085) successor(#20171,#20155) #20172=* guard_node(#20172,0,#20154) hasLocation(#20172,#20085) successor(#20172,#20156) successor(#20154,#20171) successor(#20154,#20172) successor(#20155,#20152) successor(#20152,#20156) successor(#20141,#20147) successor(#20150,#20143) successor(#20149,#20145) successor(#20147,#20149) successor(#20145,#20150) successor(#20143,#20151) successor(#20133,#20136) #20173=* guard_node(#20173,1,#20139) hasLocation(#20173,#20063) successor(#20173,#20140) #20174=* guard_node(#20174,0,#20139) hasLocation(#20174,#20063) successor(#20174,#20134) successor(#20139,#20173) successor(#20139,#20174) successor(#20140,#20137) successor(#20137,#20134) successor(#20136,#20139) successor(#20134,#20141) successor(#20125,#20128) successor(#20129,#20131) #20175=* guard_node(#20175,1,#20131) hasLocation(#20175,#20049) successor(#20175,#20132) #20176=* guard_node(#20176,0,#20131) hasLocation(#20176,#20049) successor(#20176,#20126) successor(#20131,#20175) successor(#20131,#20176) successor(#20132,#20126) successor(#20128,#20129) successor(#20126,#20133) successor(#20120,#20123) successor(#20124,#20121) successor(#20123,#20124) successor(#20121,#20125) successor(#20115,#20118) successor(#20119,#20116) successor(#20118,#20119) successor(#20116,#20120) successor(#20166,#20115) numlines(#10000,9,8,1) filetype(#10000,"javascript")