function o(a,b){return a in CKEDITOR.dtd.$listItem||a in CKEDITOR.dtd.$tableContent?a==b||a=="dt"&&b=="dd"||a=="dd"&&b=="dt":false}var u=new CKEDITOR.htmlParser,f=g instanceof CKEDITOR.htmlParser.element?g:typeof g=="string"?new CKEDITOR.htmlParser.element(g):new CKEDITOR.htmlParser.fragment,s=[],y=[],l=f,p=f.name=="textarea",k=f.name=="pre";u.onTagOpen=function(d,f,g,h){f=new CKEDITOR.htmlParser.element(d,f);if(f.isUnknown&&g)f.isEmpty=true;f.isOptionalClose=h;if(a(f))s.push(f);else{if(d=="pre")k=
true;else{if(d=="br"&&k){l.add(new CKEDITOR.htmlParser.text("\n"));return}d=="textarea"&&(p=true)}if(d=="br")y.push(f);else{for(;;){h=(g=l.name)?CKEDITOR.dtd[g]||(l._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):c;if(!f.isUnknown&&!l.isUnknown&&!h[d])if(l.isOptionalClose)u.onTagClose(g);else if(d in b&&g in b){g=l.children;(g=g[g.length-1])&&g.name=="li"||n(g=new CKEDITOR.htmlParser.element("li"),l);!f.returnPoint&&(f.returnPoint=l);l=g}else if(d in CKEDITOR.dtd.$listItem&&!o(d,g))u.onTagOpen(d==
"li"?"ul":"dl",{},0,1);else if(g in e&&!o(d,g)){!f.returnPoint&&(f.returnPoint=l);l=l.parent}else{g in CKEDITOR.dtd.$inline&&s.unshift(l);if(l.parent)n(l,l.parent,1);else{f.isOrphan=1;break}}else break}m(d);j();f.parent=l;f.isEmpty?n(f):l=f}}};u.onTagClose=function(a){for(var b=s.length-1;b>=0;b--)if(a==s[b].name){s.splice(b,1);return}for(var c=[],d=[],e=l;e!=f&&e.name!=a;){e._.isBlockLike||d.unshift(e);c.push(e);e=e.returnPoint||e.parent}if(e!=f){for(b=0;b<c.length;b++){var k=c[b];n(k,k.parent)}l=
The software does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.