(function(){var a=!1;window.JQClass=function(){},JQClass.classes={},JQClass.extend=function g(d){var e=this.prototype,f,b;a=!0,f=new this,a=!1;for(b in d)f[b]=typeof d[b]=='function'&&typeof e[b]=='function'?function(a,b){return function(){var c=this._super,d;return this._super=function(b){return e[a].apply(this,b||[])},d=b.apply(this,arguments),this._super=c,d}}(b,d[b]):d[b];function c(){!a&&this._init&&this._init.apply(this,arguments)}return c.prototype=f,c.prototype.constructor=c,c.extend=g,c}})(),function(a){JQClass.classes.JQPlugin=JQClass.extend({name:'plugin',defaultOptions:{},regionalOptions:{},_getters:[],_getMarker:function(){return'is-'+this.name},_init:function(){a.extend(this.defaultOptions,this.regionalOptions&&this.regionalOptions['']||{});var c=b(this.name);a[c]=this,a.fn[c]=function(b){var d=Array.prototype.slice.call(arguments,1);return a[c]._isNotChained(b,d)?a[c][b].apply(a[c],[this[0]].concat(d)):this.each(function(){if(typeof b=='string'){if(b[0]==='_'||!a[c][b])throw'Unknown method: '+b;a[c][b].apply(a[c],[this].concat(d))}else a[c]._attach(this,b)})}},setDefaults:function(b){a.extend(this.defaultOptions,b||{})},_isNotChained:function(c,b){return!!(c==='option'&&(b.length===0||b.length===1&&typeof b[0]=='string'))||a.inArray(c,this._getters)>-1},_attach:function(b,c){if(b=a(b),b.hasClass(this._getMarker()))return;b.addClass(this._getMarker()),c=a.extend({},this.defaultOptions,this._getMetadata(b),c||{});var d=a.extend({name:this.name,elem:b,options:c},this._instSettings(b,c));b.data(this.name,d),this._postAttach(b,d),this.option(b,c)},_instSettings:function(a,b){return{}},_postAttach:function(a,b){},_getMetadata:function(e){var b,d,c;try{b=e.data(this.name.toLowerCase())||'',b=b.replace(/'/g,'"'),b=b.replace(/([a-zA-Z0-9]+):/g,function(e,a,d){var c=b.substring(0,d).match(/"/g);return!c||c.length%2===0?'"'+a+'":':a+':'}),b=a.parseJSON('{'+b+'}');for(d in b)c=b[d],typeof c=='string'&&c.match(/^new Date\((.*)\)$/)&&(b[d]=eval(c));return b}catch(a){return{}}},_getInst:function(b){return a(b).data(this.name)||{}},option:function(d,c,f){var e,b;if(d=a(d),e=d.data(this.name),!c||typeof c=='string'&&f==null)return b=(e||{}).options,b&&c?b[c]:b;if(!d.hasClass(this._getMarker()))return;b=c||{},typeof c=='string'&&(b={},b[c]=f),this._optionsChanged(d,e,b),a.extend(e.options,b)},_optionsChanged:function(a,b,c){},destroy:function(b){if(b=a(b),!b.hasClass(this._getMarker()))return;this._preDestroy(b,this._getInst(b)),b.removeData(this.name).removeClass(this._getMarker())},_preDestroy:function(a,b){}});function b(a){return a.replace(/-([a-z])/g,function(b,a){return a.toUpperCase()})}a.JQPlugin={createPlugin:function(a,c){typeof a=='object'&&(c=a,a='JQPlugin'),a=b(a);var d=b(c.name);JQClass.classes[d]=JQClass.classes[a].extend(c),new JQClass.classes[d]}}}(jQuery)