(function() { var source1 = "src1"; var sink1 = String(source1), sink2 = RegExp(source1), sink3 = new String(source1), sink4 = new String(source1), sink5 = RegExp("test", source1); var m = /.*\?(.*)/.exec(source1); if (m) { var sink6 = m[0]; } var sink6 = decodeURI(source1), sink7 = decodeURIComponent(source1), sink8 = encodeURI(source1), sink9 = encodeURIComponent(source1); var sink10 = JSON.parse(source1), sink11 = JSON.stringify(sink10); var foo = source1; foo += ";"; var sink12 = foo; var a = [ source1 ]; a.forEach(function(elt, i, ary) { var sink13 = elt, sink14 = i, sink15 = ary; }); var dict = {}; var key = computeKey(); dict[key] = source1; var sink16 = dict[key]; function f(x) { var sink1 = x; if (x) { var sink2 = x; } else { x = {}; } var sink3 = x; function inner() { var sink4 = x; } inner(); } f(source1); var o = { p: source1, q: "not tainted" }; o.r = source1; var sink17 = o; var sink18 = o.p; var sink19 = o.q; var sink20 = o.r; var sink21 = o.foo; function g(src) { function inner() { return src; } var sink = inner(); } g(source1); function h(hSrc) { function outer() { function inner() { return outerSrc; } var outerSrc = hSrc; return inner(); } var sink = outer(); } h(source1); o.notTracked = source1; var sink22 = o.notTracked; })();