s[c],e=d.name,f=CKEDITOR.dtd[e],k=l.name&&CKEDITOR.dtd[l.name];if((!k||k[e])&&(!a||!f||f[a]||!CKEDITOR.dtd[a])){if(!b){j();b=1}d=d.clone();d.parent=l;l=d;s.splice(c,1);c--}else if(e==l.name){n(l,l.parent,1);c--}}}function j(){for(;y.length;)n(y.shift(),l)}function i(a){if(a._.isBlockLike&&a.name!="pre"&&a.name!="textarea"){var b=a.children.length,c=a.children[b-1],d;if(c&&c.type==CKEDITOR.NODE_TEXT)(d=CKEDITOR.tools.rtrim(c.value))?c.value=d:a.children.length=b-1}}function n(b,c,d){var c=c||l||f,
e=l;if(b.previous===void 0){if(r(c,b)){l=c;u.onTagOpen(h,{});b.returnPoint=c=l}i(b);(!a(b)||b.children.length)&&c.add(b);b.name=="pre"&&(k=false);b.name=="textarea"&&(p=false)}if(b.returnPoint){l=b.returnPoint;delete b.returnPoint}else l=d?c:e}function r(a,b){if((a==f||a.name=="body")&&h&&(!a.name||CKEDITOR.dtd[a.name][h])){var c,d;return(c=b.attributes&&(d=b.attributes["data-cke-real-element-type"])?d:b.name)&&c in CKEDITOR.dtd.$inline&&!(c in CKEDITOR.dtd.head)&&!b.isOrphan||b.type==CKEDITOR.NODE_TEXT}}
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.