[ HasLightSource i j ad; if (i == 0) rfalse; if (i has light) rtrue; if (i has enterable || IsSeeThrough(i) == 1) if (~~(HidesLightSource(i))) objectloop (j in i) if (HasLightSource(j) == 1) rtrue; ad = i.&add_to_scope; if (parent(i) ~= 0 && ad ~= 0) { if (metaclass(ad-->0) == Routine) { ats_hls = 0; ats_flag = 1; RunRoutines(i, add_to_scope); ats_flag = 0; if (ats_hls == 1) rtrue; } else { for (j=0 : (WORDSIZE*j)j) == 1) rtrue; } } rfalse; ];