/*
 Ext.ux.form.LovCombo.js is licensed under the terms of the Open Source
 LGPL 3.0 license. Commercial use is permitted to the extent that the 
 code/component(s) do NOT become part of another Open Source or Commercially
 licensed development library or toolkit without explicit permission.

 License details: http://www.gnu.org/licenses/lgpl.html
*/
Ext.ns("Ext.ux");
Ext.ux.IconCombo=Ext.extend(Ext.form.ComboBox,{initComponent:function(){Ext.apply(this,{tpl:'<tpl for="."><div class="x-combo-list-item ux-icon-combo-item {'+this.iconClsField+'}">{'+this.displayField+"}</div></tpl>"});Ext.ux.IconCombo.superclass.initComponent.call(this)},onRender:function(a,c){Ext.ux.IconCombo.superclass.onRender.call(this,a,c);this.wrap.applyStyles({position:"relative"});this.el.addClass("ux-icon-combo-input");this.icon=Ext.DomHelper.append(this.el.up("div.x-form-field-wrap"),{tag:"div",
style:"position:absolute"})},afterRender:function(){Ext.ux.IconCombo.superclass.afterRender.apply(this,arguments);undefined!==this.value&&this.setValue(this.value)},setIconCls:function(){var a=this.store.query(this.valueField,this.getValue()).itemAt(0);if(a&&this.icon)this.icon.className="ux-icon-combo-icon "+a.get(this.iconClsField)},setValue:function(a){Ext.ux.IconCombo.superclass.setValue.call(this,a);this.setIconCls()},clearValue:function(){Ext.ux.IconCombo.superclass.clearValue.call(this);if(this.icon)this.icon.className=
""}});Ext.reg("iconcombo",Ext.ux.IconCombo);if("function"!==typeof RegExp.escape)RegExp.escape=function(a){if("string"!==typeof a)return a;return a.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")};Ext.ns("Ext.ux.form");
Ext.ux.form.LovCombo=Ext.extend(Ext.form.ComboBox,{checkField:"checked",separator:",",initComponent:function(){if(!this.tpl)this.tpl='<tpl for="."><div class="x-combo-list-item"><img class="ux-lovcombo-icon ux-lovcombo-icon-{[values.'+this.checkField+'?"checked":"unchecked"]}"><div class="ux-lovcombo-item-text">{'+(this.displayField||"text")+"}</div></div></tpl>";Ext.ux.form.LovCombo.superclass.initComponent.apply(this,arguments);this.on({scope:this,beforequery:this.onBeforeQuery,blur:this.onRealBlur});
this.onLoad=this.onLoad.createSequence(function(){if(this.el){var a=this.el.dom.value;this.el.dom.value="";this.el.dom.value=a}})},initEvents:function(){Ext.ux.form.LovCombo.superclass.initEvents.apply(this,arguments);this.keyNav.tab=false},clearValue:function(){this.value="";this.setRawValue(this.value);this.store.clearFilter();this.store.each(function(a){a.set(this.checkField,false)},this);if(this.hiddenField)this.hiddenField.value="";this.applyEmptyText()},getCheckedDisplay:function(){var a=RegExp(this.separator,
"g");return this.getCheckedValue(this.displayField).replace(a,this.separator+" ")},getCheckedValue:function(a){a=a||this.valueField;var c=[];(this.store.snapshot||this.store.data).each(function(e){e.get(this.checkField)&&c.push(e.get(a))},this);return c.join(this.separator)},onBeforeQuery:function(a){a.query=a.query.replace(RegExp(this.getCheckedDisplay()+"[ "+this.separator+"]*"),"")},onRealBlur:function(){this.list.hide();var a=this.getRawValue().split(RegExp(RegExp.escape(this.separator)+" *")),
c=[],e=this.store.snapshot||this.store.data;Ext.each(a,function(h){e.each(function(m){h===m.get(this.displayField)&&c.push(m.get(this.valueField))},this)},this);this.setValue(c.join(this.separator));this.store.clearFilter()},beforeBlur:Ext.emptyFn,onSelect:function(a,c){if(this.fireEvent("beforeselect",this,a,c)!==false){a.set(this.checkField,!a.get(this.checkField));this.store.isFiltered()&&this.doQuery(this.allQuery);this.setValue(this.getCheckedValue());this.fireEvent("select",this,a,c)}},setValue:function(a){if(a){a=
""+a;if(this.valueField){this.store.clearFilter();this.store.each(function(c){var e=!!a.match("(^|"+this.separator+")"+RegExp.escape(c.get(this.valueField))+"("+this.separator+"|$)");c.set(this.checkField,e)},this);this.value=this.getCheckedValue();this.setRawValue(this.getCheckedDisplay());if(this.hiddenField)this.hiddenField.value=this.value}else{this.value=a;this.setRawValue(a);if(this.hiddenField)this.hiddenField.value=a}this.el&&this.el.removeClass(this.emptyClass)}else this.clearValue()},selectAll:function(){this.store.each(function(a){a.set(this.checkField,
true)},this);this.doQuery(this.allQuery);this.setValue(this.getCheckedValue())},deselectAll:function(){this.clearValue()}});Ext.reg("lovcombo",Ext.ux.form.LovCombo);
Ext.ux.form.TinyMCETextArea=Ext.extend(Ext.form.TextArea,{wysiwygIntialized:false,intializationInProgress:false,lastHeight:null,lastFrameHeight:null,noWysiwyg:false,tinyMCEConfig:{},editor:undefined,disableEditor:false,constructor:function(a){a=a||{};Ext.applyIf(a,{hideMode:"offsets"});Ext.applyIf(a.tinyMCEConfig,{hideMode:"offsets",mode:"exact",resize:false});Ext.ux.form.TinyMCETextArea.superclass.constructor.call(this,a)},afterRender:function(){var a=this;Ext.ux.form.TinyMCETextArea.superclass.afterRender.call(this,
arguments);this.initEditor();a.on("blur",function(){var c=document.getElementById(a.getInputId());if(a.wysiwygIntialized){var e=a.getEditor();if(e&&e.isHidden()){if(c)a.positionBeforeBlur={start:c.selectionStart,end:c.selectionEnd};e.load()}}else if(c)a.positionBeforeBlur={start:c.selectionStart,end:c.selectionEnd}},a);a.on("resize",function(c,e,h){a.syncEditorHeight(h)},a)},syncEditorHeight:function(a){this.lastHeight=a;if(this.wysiwygIntialized&&this.rendered){var c=tinymce.get(this.getInputId());
if(c)if(!c.isHidden()){c=Ext.get(this.getInputId()+"_ifr");var e=c.up(".mce-edit-area");e=e.up(".mce-container-body");a=a;var h=e.down(".mce-toolbar-grp");if(h)a-=h.getHeight();if(h=e.down(".mce-menubar"))a-=h.getHeight();if(e=e.down(".mce-statusbar"))a-=e.getHeight();this.lastFrameHeight=a-3;c.setHeight(a-3)}}},withEd:function(a){var c=this,e=this.getEditor();if(e)if(e.initialized){if(e.initialized){c.editor=e;a.call(c)}}else e.on("init",function(){c.withEd(a)},c)},getInputId:function(){return this.inputId||
(this.inputId=this.id)},isDisabled:function(){return this.disabled},insertAtCursor:function(a){var c=this.getEditor();c.execCommand("mceInsertContent",false,a);c.undoManager.clear()},initEditor:function(){var a=this;if(!(a.noWysiwyg||a.intializationInProgress||a.wysiwygIntialized)){a.intializationInProgress=true;a.tinyMCEConfig.selector="textarea#"+a.getInputId();a.tinyMCEConfig.height=a.lastFrameHeight?a.lastFrameHeight:30;var c=null;if(a.tinyMCEConfig.setup)c=a.tinyMCEConfig.setup;a.tinyMCEConfig.setup=
function(e){if(!Ext.isDefined(a.editor))a.editor=e;var h=tinymce.DOM.loadCSS,m=[];tinymce.DOM.loadCSS=function(o){o||(o="");Ext.each(o.split(","),function(r){if(!Ext.isEmpty(r)){m.push(r);var q=document.createElement("link");document.head.appendChild(q);q.addEventListener("load",function(){m.splice(m.indexOf(r),1);document.head.removeChild(q);a.fireEvent("stylesheetloaded",r)});q.addEventListener("error",function(){m.splice(m.indexOf(r),1);a.fireEvent("stylesheetloaded",r)});q.setAttribute("rel",
"stylesheet");q.setAttribute("type","text/css");q.setAttribute("href",r)}});return h.apply(this,arguments)};e.on("init",function(){function o(){m.length>0?a.on("stylesheetloaded",function(){o()},this):a.syncEditorHeight(a.lastHeight||a.height)}tinymce.DOM.loadCSS=h;a.wysiwygIntialized=true;a.intializationInProgress=false;if(a.disableEditor||a.isDisabled())a.disable();a.fireEvent("initialized",a,e,{});if(a.lastHeight||a.height)o()});c&&c(e)};tinymce.init(a.tinyMCEConfig);a.intializationInProgress=
false;a.wysiwygIntialized=true}},getEditor:function(){return tinymce.get(this.getInputId())},isEditorHidden:function(){if(!this.wysiwygIntialized)return true;var a=this.getEditor();if(!a)return true;return a.isHidden()},showEditor:function(){this.storedCursorPosition=null;if(this.wysiwygIntialized){var a=this.getEditor();if(a){a.show();a.nodeChanged();this.lastHeight&&this.syncEditorHeight(this.lastHeight)}}else{this.noWysiwyg=false;this.initEditor()}},hideEditor:function(){if(this.wysiwygIntialized){var a=
this.getEditor();if(a){var c=a.selection.getNode();if(!c||c.nodeName==="#document"||c.nodeName==="BODY"||c.nodeName==="body")a.hide();else{a.selection.collapse(true);a.execCommand("mceInsertContent",0,'<a id="_____sys__11223___"></a>');a.hide();a=document.getElementById(this.getInputId());c=-1;var e="";if(a){e=a.value;c=e.indexOf('<a id="_____sys__11223___"></a>')}if(c!==-1){var h=RegExp('<a id="_____sys__11223___"></a>',"g");e=e.replace(h,"");a.value=e;if(a.setSelectionRange){a.focus();a.setSelectionRange(c,
c)}}}}}},toggleEditor:function(){if(this.wysiwygIntialized)this.getEditor().isHidden()?this.showEditor():this.hideEditor();else this.showEditor()},removeEditor:function(){if(this.intializationInProgress)return this;if(!this.wysiwygIntialized)return this;var a=this.getEditor();if(a){a.save();a.destroy(false)}this.wysiwygIntialized=false;return this},setValue:function(a){var c=this;if(c.wysiwygIntialized)if(this.value!==a){this.value=a;if(this.rendered){var e=c.getEditor();e?c.setContent(e,a):tinyMCE.EditorManager.on("AddEditor",
function(){c.withEd(function(){var h=c.getEditor();h.isDirty()||c.setContent(h,a)})},this)}}return this.value},setContent:function(a,c){a.setContent(c===null||c===undefined?"":c,{format:"raw"});a.startContent=a.getContent({format:"raw"})},getValue:function(){var a=this.getEditor();if(a){if(!this.rendered||!a.initialized)return Ext.value(this.value,"");a=a.getContent();if(a===this.emptyText||a===undefined)a="";return a}},getRawValue:function(){var a=this.getEditor();if(a){if(!this.rendered||!a.initialized)return Ext.value(this.value,
"");a=a.getContent({format:"raw"});if(a===this.emptyText)a="";return a}},initValue:function(){if(this.rendered)if(this.value!==undefined)this.setValue(this.value);else{var a=this.getEl().value;a&&this.setValue(a)}else Ext.ux.TinyMCE.superclass.initValue.call(this)},focus:function(a,c){var e=this;if(e.isDisabled())return e;if(c){if(isNaN(c))c=10;setTimeout(function(){e.focus.call(e,a,false)},c);return e}if(!e.wysiwygIntialized)return Ext.ux.form.TinyMCETextArea.superclass.focus.call(this,arguments);
var h=e.getEditor();if(h&&!h.isHidden()){Ext.ux.form.TinyMCETextArea.superclass.focus.call(this,arguments);h.focus()}else return Ext.ux.form.TinyMCETextArea.superclass.focus.call(this,arguments);return e},enable:function(){var a=Ext.ux.form.TinyMCETextArea.superclass.enable.call(this,arguments);if(!a)return a;if(a=this.getEditor()){a.theme.panel.find("*").disabled(false);this.getEditorBody().setAttribute("contenteditable",true)}return this},disable:function(){var a=Ext.ux.form.TinyMCETextArea.superclass.disable.call(this,
arguments);if(!a)return a;if(a=this.getEditor()){a.theme.panel.find("*").disabled(true);this.getEditorBody().setAttribute("contenteditable",false)}return this},hide:function(){var a=this;Ext.ux.form.TinyMCETextArea.superclass.hide.call(this,arguments);var c=a.getEditor();c?c.hide():tinyMCE.EditorManager.on("AddEditor",function(){a.withEd(function(){a.getEditor().hide()})},this);return a},show:function(){Ext.ux.form.TinyMCETextArea.superclass.show.call(this,arguments);var a=this.getEditor();a&&a.show();
return this},storeCurrentSelection:function(){var a=false,c=this.getEditor();if(this.wysiwygIntialized)if(c&&!c.isHidden())a=true;var e=document.getElementById(this.getInputId());if(a)this.storedCursorPosition=c.selection.getBookmark("simple");else if(e)this.storedCursorPosition=this.positionBeforeBlur},restoreCurrentSelection:function(){if(this.storedCursorPosition){var a=false,c=this.getEditor();if(this.wysiwygIntialized)if(c&&!c.isHidden())a=true;var e=document.getElementById(this.getInputId());
if(a)c.selection.moveToBookmark(this.storedCursorPosition);else e&&e.setSelectionRange(this.storedCursorPosition.start,this.storedCursorPosition.end)}},insertText:function(a){var c=false,e=this.getEditor();if(this.wysiwygIntialized)if(e&&!e.isHidden())c=true;var h=document.getElementById(this.getInputId());if(c){e.focus();e.execCommand("mceInsertContent",0,a)}else if(h){h.focus();c=h.selectionStart+a.length;h.value=h.value.slice(0,h.selectionStart)+a+h.value.slice(h.selectionEnd);h.setSelectionRange(c,
c)}}});Ext.reg("zarafa.tinymcetextarea",Ext.ux.form.TinyMCETextArea);var XRegExp;if(XRegExp)throw Error("can't load XRegExp twice in the same frame");
(function(){function a(b,d){if(!XRegExp.isRegExp(b))throw TypeError("type RegExp expected");var f=b._xregexp;b=XRegExp(b.source,c(b)+(d||""));if(f)b._xregexp={source:f.source,captureNames:f.captureNames?f.captureNames.slice(0):null};return b}function c(b){return(b.global?"g":"")+(b.ignoreCase?"i":"")+(b.multiline?"m":"")+(b.extended?"x":"")+(b.sticky?"y":"")}function e(b,d,f,i){var j=s.length,g,l,k;q=true;try{for(;j--;){k=s[j];if(f&k.scope&&(!k.trigger||k.trigger.call(i))){k.pattern.lastIndex=d;if((l=
k.pattern.exec(b))&&l.index===d){g={output:k.handler.call(i,l,f),match:l};break}}}}catch(p){throw p;}finally{q=false}return g}function h(b,d,f){if(Array.prototype.indexOf)return b.indexOf(d,f);for(f=f||0;f<b.length;f++)if(b[f]===d)return f;return-1}XRegExp=function(b,d){var f=[],i=XRegExp.OUTSIDE_CLASS,j=0,g,l;if(XRegExp.isRegExp(b)){if(d!==undefined)throw TypeError("can't supply flags when constructing one RegExp from another");return a(b)}if(q)throw Error("can't call the XRegExp constructor within token definition functions");
d=d||"";for(g={hasNamedCapture:false,captureNames:[],hasFlag:function(k){return d.indexOf(k)>-1},setFlag:function(k){d+=k}};j<b.length;)if(l=e(b,j,i,g)){f.push(l.output);j+=l.match[0].length||1}else if(l=n.exec.call(t[i],b.slice(j))){f.push(l[0]);j+=l[0].length}else{l=b.charAt(j);if(l==="[")i=XRegExp.INSIDE_CLASS;else if(l==="]")i=XRegExp.OUTSIDE_CLASS;f.push(l);j++}f=RegExp(f.join(""),n.replace.call(d,o,""));f._xregexp={source:b,captureNames:g.hasNamedCapture?g.captureNames:null};return f};XRegExp.version=
"1.5.0";XRegExp.INSIDE_CLASS=1;XRegExp.OUTSIDE_CLASS=2;var m=/\$(?:(\d\d?|[$&`'])|{([$\w]+)})/g,o=/[^gimy]+|([\s\S])(?=[\s\S]*\1)/g,r=/^(?:[?*+]|{\d+(?:,\d*)?})\??/,q=false,s=[],n={exec:RegExp.prototype.exec,test:RegExp.prototype.test,match:String.prototype.match,replace:String.prototype.replace,split:String.prototype.split},x=n.exec.call(/()??/,"")[1]===undefined,u=function(){var b=/^/g;n.test.call(b,"");return!b.lastIndex}(),y=function(){var b=/x/g;n.replace.call("x",b,"");return!b.lastIndex}(),
v=RegExp.prototype.sticky!==undefined,t={};t[XRegExp.INSIDE_CLASS]=/^(?:\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|c[A-Za-z]|[\s\S]))/;t[XRegExp.OUTSIDE_CLASS]=/^(?:\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\d*|x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|c[A-Za-z]|[\s\S])|\(\?[:=!]|[?*+]\?|{\d+(?:,\d*)?}\??)/;XRegExp.addToken=function(b,d,f,i){s.push({pattern:a(b,"g"+(v?"y":"")),handler:d,scope:f||XRegExp.OUTSIDE_CLASS,trigger:i||null})};XRegExp.cache=function(b,d){var f=b+"/"+(d||"");return XRegExp.cache[f]||
(XRegExp.cache[f]=XRegExp(b,d))};XRegExp.copyAsGlobal=function(b){return a(b,"g")};XRegExp.escape=function(b){return b.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")};XRegExp.execAt=function(b,d,f,i){d=a(d,"g"+(i&&v?"y":""));d.lastIndex=f=f||0;b=d.exec(b);return i?b&&b.index===f?b:null:b};XRegExp.freezeTokens=function(){XRegExp.addToken=function(){throw Error("can't run addToken after freezeTokens");}};XRegExp.isRegExp=function(b){return Object.prototype.toString.call(b)==="[object RegExp]"};XRegExp.iterate=
function(b,d,f,i){for(var j=a(d,"g"),g=-1,l;l=j.exec(b);){f.call(i,l,++g,b,j);j.lastIndex===l.index&&j.lastIndex++}if(d.global)d.lastIndex=0};XRegExp.matchChain=function(b,d){return function f(i,j){var g=d[j].regex?d[j]:{regex:d[j]},l=a(g.regex,"g"),k=[],p;for(p=0;p<i.length;p++)XRegExp.iterate(i[p],l,function(w){k.push(g.backref?w[g.backref]||"":w[0])});return j===d.length-1||!k.length?k:f(k,j+1)}([b],0)};RegExp.prototype.apply=function(b,d){return this.exec(d[0])};RegExp.prototype.call=function(b,
d){return this.exec(d)};RegExp.prototype.exec=function(b){var d=n.exec.apply(this,arguments),f;if(d){if(!x&&d.length>1&&h(d,"")>-1){f=RegExp(this.source,n.replace.call(c(this),"g",""));n.replace.call(b.slice(d.index),f,function(){for(var j=1;j<arguments.length-2;j++)if(arguments[j]===undefined)d[j]=undefined})}if(this._xregexp&&this._xregexp.captureNames)for(var i=1;i<d.length;i++)if(f=this._xregexp.captureNames[i-1])d[f]=d[i];!u&&this.global&&!d[0].length&&this.lastIndex>d.index&&this.lastIndex--}return d};
if(!u)RegExp.prototype.test=function(b){(b=n.exec.call(this,b))&&this.global&&!b[0].length&&this.lastIndex>b.index&&this.lastIndex--;return!!b};String.prototype.match=function(b){XRegExp.isRegExp(b)||(b=RegExp(b));if(b.global){var d=n.match.apply(this,arguments);b.lastIndex=0;return d}return b.exec(this)};String.prototype.replace=function(b,d){var f=XRegExp.isRegExp(b),i,j;if(f&&typeof d.valueOf()==="string"&&d.indexOf("${")===-1&&y)return n.replace.apply(this,arguments);if(f){if(b._xregexp)i=b._xregexp.captureNames}else b+=
"";if(typeof d==="function")j=n.replace.call(this,b,function(){if(i){arguments[0]=new String(arguments[0]);for(var g=0;g<i.length;g++)if(i[g])arguments[0][i[g]]=arguments[g+1]}if(f&&b.global)b.lastIndex=arguments[arguments.length-2]+arguments[0].length;return d.apply(null,arguments)});else{j=this+"";j=n.replace.call(j,b,function(){var g=arguments;return n.replace.call(d,m,function(l,k,p){if(k)switch(k){case "$":return"$";case "&":return g[0];case "`":return g[g.length-1].slice(0,g[g.length-2]);case "'":return g[g.length-
1].slice(g[g.length-2]+g[0].length);default:p="";k=+k;if(!k)return l;for(;k>g.length-3;){p=String.prototype.slice.call(k,-1)+p;k=Math.floor(k/10)}return(k?g[k]||"":"$")+p}else{k=+p;if(k<=g.length-3)return g[k];k=i?h(i,p):-1;return k>-1?g[k+1]:l}})})}if(f&&b.global)b.lastIndex=0;return j};String.prototype.split=function(b,d){if(!XRegExp.isRegExp(b))return n.split.apply(this,arguments);var f=this+"",i=[],j=0,g,l;if(d===undefined||+d<0)d=Infinity;else{d=Math.floor(+d);if(!d)return[]}for(b=XRegExp.copyAsGlobal(b);g=
b.exec(f);){if(b.lastIndex>j){i.push(f.slice(j,g.index));g.length>1&&g.index<f.length&&Array.prototype.push.apply(i,g.slice(1));l=g[0].length;j=b.lastIndex;if(i.length>=d)break}b.lastIndex===g.index&&b.lastIndex++}if(j===f.length){if(!n.test.call(b,"")||l)i.push("")}else i.push(f.slice(j));return i.length>d?i.slice(0,d):i};XRegExp.addToken(/\(\?#[^)]*\)/,function(b){return n.test.call(r,b.input.slice(b.index+b[0].length))?"":"(?:)"});XRegExp.addToken(/\((?!\?)/,function(){this.captureNames.push(null);
return"("});XRegExp.addToken(/\(\?<([$\w]+)>/,function(b){this.captureNames.push(b[1]);this.hasNamedCapture=true;return"("});XRegExp.addToken(/\\k<([\w$]+)>/,function(b){var d=h(this.captureNames,b[1]);return d>-1?"\\"+(d+1)+(isNaN(b.input.charAt(b.index+b[0].length))?"":"(?:)"):b[0]});XRegExp.addToken(/\[\^?]/,function(b){return b[0]==="[]"?"\\b\\B":"[\\s\\S]"});XRegExp.addToken(/^\(\?([imsx]+)\)/,function(b){this.setFlag(b[1]);return""});XRegExp.addToken(/(?:\s+|#.*)+/,function(b){return n.test.call(r,
b.input.slice(b.index+b[0].length))?"":"(?:)"},XRegExp.OUTSIDE_CLASS,function(){return this.hasFlag("x")});XRegExp.addToken(/\./,function(){return"[\\s\\S]"},XRegExp.OUTSIDE_CLASS,function(){return this.hasFlag("s")})})();if(!XRegExp)throw ReferenceError("XRegExp must be loaded before the Unicode plugin");
(function(){var a={};XRegExp.addUnicodePackage=function(c){var e=/\w{4}/g,h=/[- _]+/g,m,o;for(o in c)if(c.hasOwnProperty(o)){m=o.replace(h,"").toLowerCase();a.hasOwnProperty(m)||(a[m]=c[o].replace(e,"\\u$&"))}};XRegExp.addToken(/\\([pP]){(\^?)([^}]*)}/,function(c,e){var h=c[1]==="P"||c[2],m=c[3].replace(/[- _]+/g,"").toLowerCase();if(c[1]==="P"&&c[2])throw SyntaxError("erroneous characters: "+c[0]);if(h&&e===XRegExp.INSIDE_CLASS)throw SyntaxError("not supported in character classes: \\"+c[1]+"{"+
c[2]+"...}");if(!a.hasOwnProperty(m))throw SyntaxError("invalid or unsupported Unicode item: "+c[0]);return e===XRegExp.OUTSIDE_CLASS?"["+(h?"^":"")+a[m]+"]":a[m]},XRegExp.INSIDE_CLASS|XRegExp.OUTSIDE_CLASS);XRegExp.addUnicodePackage({L:"0041-005A0061-007A00AA00B500BA00C0-00D600D8-00F600F8-02C102C6-02D102E0-02E402EC02EE0370-037403760377037A-037D03860388-038A038C038E-03A103A3-03F503F7-0481048A-05250531-055605590561-058705D0-05EA05F0-05F20621-064A066E066F0671-06D306D506E506E606EE06EF06FA-06FC06FF07100712-072F074D-07A507B107CA-07EA07F407F507FA0800-0815081A082408280904-0939093D09500958-0961097109720979-097F0985-098C098F09900993-09A809AA-09B009B209B6-09B909BD09CE09DC09DD09DF-09E109F009F10A05-0A0A0A0F0A100A13-0A280A2A-0A300A320A330A350A360A380A390A59-0A5C0A5E0A72-0A740A85-0A8D0A8F-0A910A93-0AA80AAA-0AB00AB20AB30AB5-0AB90ABD0AD00AE00AE10B05-0B0C0B0F0B100B13-0B280B2A-0B300B320B330B35-0B390B3D0B5C0B5D0B5F-0B610B710B830B85-0B8A0B8E-0B900B92-0B950B990B9A0B9C0B9E0B9F0BA30BA40BA8-0BAA0BAE-0BB90BD00C05-0C0C0C0E-0C100C12-0C280C2A-0C330C35-0C390C3D0C580C590C600C610C85-0C8C0C8E-0C900C92-0CA80CAA-0CB30CB5-0CB90CBD0CDE0CE00CE10D05-0D0C0D0E-0D100D12-0D280D2A-0D390D3D0D600D610D7A-0D7F0D85-0D960D9A-0DB10DB3-0DBB0DBD0DC0-0DC60E01-0E300E320E330E40-0E460E810E820E840E870E880E8A0E8D0E94-0E970E99-0E9F0EA1-0EA30EA50EA70EAA0EAB0EAD-0EB00EB20EB30EBD0EC0-0EC40EC60EDC0EDD0F000F40-0F470F49-0F6C0F88-0F8B1000-102A103F1050-1055105A-105D106110651066106E-10701075-1081108E10A0-10C510D0-10FA10FC1100-1248124A-124D1250-12561258125A-125D1260-1288128A-128D1290-12B012B2-12B512B8-12BE12C012C2-12C512C8-12D612D8-13101312-13151318-135A1380-138F13A0-13F41401-166C166F-167F1681-169A16A0-16EA1700-170C170E-17111720-17311740-17511760-176C176E-17701780-17B317D717DC1820-18771880-18A818AA18B0-18F51900-191C1950-196D1970-19741980-19AB19C1-19C71A00-1A161A20-1A541AA71B05-1B331B45-1B4B1B83-1BA01BAE1BAF1C00-1C231C4D-1C4F1C5A-1C7D1CE9-1CEC1CEE-1CF11D00-1DBF1E00-1F151F18-1F1D1F20-1F451F48-1F4D1F50-1F571F591F5B1F5D1F5F-1F7D1F80-1FB41FB6-1FBC1FBE1FC2-1FC41FC6-1FCC1FD0-1FD31FD6-1FDB1FE0-1FEC1FF2-1FF41FF6-1FFC2071207F2090-209421022107210A-211321152119-211D212421262128212A-212D212F-2139213C-213F2145-2149214E218321842C00-2C2E2C30-2C5E2C60-2CE42CEB-2CEE2D00-2D252D30-2D652D6F2D80-2D962DA0-2DA62DA8-2DAE2DB0-2DB62DB8-2DBE2DC0-2DC62DC8-2DCE2DD0-2DD62DD8-2DDE2E2F300530063031-3035303B303C3041-3096309D-309F30A1-30FA30FC-30FF3105-312D3131-318E31A0-31B731F0-31FF3400-4DB54E00-9FCBA000-A48CA4D0-A4FDA500-A60CA610-A61FA62AA62BA640-A65FA662-A66EA67F-A697A6A0-A6E5A717-A71FA722-A788A78BA78CA7FB-A801A803-A805A807-A80AA80C-A822A840-A873A882-A8B3A8F2-A8F7A8FBA90A-A925A930-A946A960-A97CA984-A9B2A9CFAA00-AA28AA40-AA42AA44-AA4BAA60-AA76AA7AAA80-AAAFAAB1AAB5AAB6AAB9-AABDAAC0AAC2AADB-AADDABC0-ABE2AC00-D7A3D7B0-D7C6D7CB-D7FBF900-FA2DFA30-FA6DFA70-FAD9FB00-FB06FB13-FB17FB1DFB1F-FB28FB2A-FB36FB38-FB3CFB3EFB40FB41FB43FB44FB46-FBB1FBD3-FD3DFD50-FD8FFD92-FDC7FDF0-FDFBFE70-FE74FE76-FEFCFF21-FF3AFF41-FF5AFF66-FFBEFFC2-FFC7FFCA-FFCFFFD2-FFD7FFDA-FFDC"})})();
