{"ScriptPreparationCode":"var html = \u0022Self-closing tags do not exist in HTML. HTML elements that can\u2019t have any child nodes\u0022;\r\n","TestCases":[{"Name":"escape","Code":"function escape(s) {\r\n return s.replace(/[\u0026\u003C\u003E\\u00A0]/g, function(c) {\r\n switch(c) {\r\n case \u0027\u0026\u0027: return \u0027\u0026amp;\u0027;\r\n case \u0027\u003C\u0027: return \u0027\u0026lt;\u0027;\r\n case \u0027\u003E\u0027: return \u0027\u0026gt;\u0027;\r\n case \u0027\\u00A0\u0027: return \u0027\u0026nbsp;\u0027;\r\n }\r\n });\r\n}\r\n\r\nescape(html)\r\n","IsDeferred":false},{"Name":"escapeAttr","Code":"function escapeAttr(s) {\r\n var toEscape = /[\u0026\u0022\u003C\u003E\\u00A0]/g;\r\n if (!toEscape.test(s)) {\r\n // nothing to do, fast path\r\n return s;\r\n } else {\r\n return s.replace(toEscape, function(c) {\r\n switch(c) {\r\n case \u0027\u0026\u0027: return \u0027\u0026amp;\u0027;\r\n case \u0027\u003C\u0027: return \u0027\u0026lt;\u0027;\r\n case \u0027\u003E\u0027: return \u0027\u0026gt;\u0027;\r\n case \u0027\\u00A0\u0027: return \u0027\u0026nbsp;\u0027;\r\n }\r\n });\r\n }\r\n}\r\n\r\nescapeAttr(html)","IsDeferred":false}]}