(function(){var n=!1;window.JQClass=function(){};JQClass.classes={};JQClass.extend=function t(i){function u(){!n&&this._init&&this._init.apply(this,arguments)}var e=this.prototype,f,r;n=!0;f=new this;n=!1;for(r in i)f[r]=typeof i[r]=="function"&&typeof e[r]=="function"?function(n,t){return function(){var r=this._super,i;return this._super=function(t){return e[n].apply(this,t||[])},i=t.apply(this,arguments),this._super=r,i}}(r,i[r]):i[r];return u.prototype=f,u.prototype.constructor=u,u.extend=t,u}})(),function(n){function t(n){return n.replace(/-([a-z])/g,function(n,t){return t.toUpperCase()})}JQClass.classes.JQPlugin=JQClass.extend({name:"plugin",defaultOptions:{},regionalOptions:{},_getters:[],_getMarker:function(){return"is-"+this.name},_init:function(){n.extend(this.defaultOptions,this.regionalOptions&&this.regionalOptions[""]||{});var i=t(this.name);n[i]=this;n.fn[i]=function(t){var r=Array.prototype.slice.call(arguments,1);return n[i]._isNotChained(t,r)?n[i][t].apply(n[i],[this[0]].concat(r)):this.each(function(){if(typeof t=="string"){if(t[0]==="_"||!n[i][t])throw"Unknown method: "+t;n[i][t].apply(n[i],[this].concat(r))}else n[i]._attach(this,t)})}},setDefaults:function(t){n.extend(this.defaultOptions,t||{})},_isNotChained:function(t,i){return t==="option"&&(i.length===0||i.length===1&&typeof i[0]=="string")?!0:n.inArray(t,this._getters)>-1},_attach:function(t,i){if(t=n(t),!t.hasClass(this._getMarker())){t.addClass(this._getMarker());i=n.extend({},this.defaultOptions,this._getMetadata(t),i||{});var r=n.extend({name:this.name,elem:t,options:i},this._instSettings(t,i));t.data(this.name,r);this._postAttach(t,r);this.option(t,i)}},_instSettings:function(){return{}},_postAttach:function(){},_getMetadata:function(d){var f,g,h;try{f=d.data(this.name.toLowerCase())||"";f=f.replace(/'/g,'"');f=f.replace(/([a-zA-Z0-9]+):/g,function(n,t,i){var r=f.substring(0,i).match(/"/g);return!r||r.length%2==0?'"'+t+'":':t+":"});f=n.parseJSON("{"+f+"}");for(g in f)h=f[g],typeof h=="string"&&h.match(/^new Date\((.*)\)$/)&&(f[g]=eval(h));return f}catch(e){return{}}},_getInst:function(t){return n(t).data(this.name)||{}},option:function(t,i,r){var f,u;if(t=n(t),f=t.data(this.name),!i||typeof i=="string"&&r==null)return u=(f||{}).options,u&&i?u[i]:u;t.hasClass(this._getMarker())&&(u=i||{},typeof i=="string"&&(u={},u[i]=r),this._optionsChanged(t,f,u),n.extend(f.options,u))},_optionsChanged:function(){},destroy:function(t){(t=n(t),t.hasClass(this._getMarker()))&&(this._preDestroy(t,this._getInst(t)),t.removeData(this.name).removeClass(this._getMarker()))},_preDestroy:function(){}});n.JQPlugin={createPlugin:function(n,i){typeof n=="object"&&(i=n,n="JQPlugin");n=t(n);var r=t(i.name);JQClass.classes[r]=JQClass.classes[n].extend(i);new JQClass.classes[r]}}}(jQuery),function(n){function f(n){for(var t=5381,i=0;i<n.length;i++)t=(t<<5)+t+n.charCodeAt(i);return t}var i="realperson",r="ABCDEFGHIJKLMNOPQRSTUVWXYZ",e=r+"0123456789",u=[["   *   ","  * *  ","  * *  "," *   * "," ***** ","*     *","*     *"],["****** ","*     *","*     *","****** ","*     *","*     *","****** "],[" ***** ","*     *","*      ","*      ","*      ","*     *"," ***** "],["****** ","*     *","*     *","*     *","*     *","*     *","****** "],["*******","*      ","*      ","****   ","*      ","*      ","*******"],["*******","*      ","*      ","****   ","*      ","*      ","*      "],[" ***** ","*     *","*      ","*      ","*   ***","*     *"," ***** "],["*     *","*     *","*     *","*******","*     *","*     *","*     *"],["*******","   *   ","   *   ","   *   ","   *   ","   *   ","*******"],["      *","      *","      *","      *","      *","*     *"," ***** "],["*     *","*   ** ","* **   ","**     ","* **   ","*   ** ","*     *"],["*      ","*      ","*      ","*      ","*      ","*      ","*******"],["*     *","**   **","* * * *","*  *  *","*     *","*     *","*     *"],["*     *","**    *","* *   *","*  *  *","*   * *","*    **","*     *"],[" ***** ","*     *","*     *","*     *","*     *","*     *"," ***** "],["****** ","*     *","*     *","****** ","*      ","*      ","*      "],[" ***** ","*     *","*     *","*     *","*   * *","*    * "," **** *"],["****** ","*     *","*     *","****** ","*   *  ","*    * ","*     *"],[" ***** ","*     *","*      "," ***** ","      *","*     *"," ***** "],["*******","   *   ","   *   ","   *   ","   *   ","   *   ","   *   "],["*     *","*     *","*     *","*     *","*     *","*     *"," ***** "],["*     *","*     *"," *   * "," *   * ","  * *  ","  * *  ","   *   "],["*     *","*     *","*     *","*  *  *","* * * *","**   **","*     *"],["*     *"," *   * ","  * *  ","   *   ","  * *  "," *   * ","*     *"],["*     *"," *   * ","  * *  ","   *   ","   *   ","   *   ","   *   "],["*******","     * ","    *  ","   *   ","  *    "," *     ","*******"],["  ***  "," *   * ","*   * *","*  *  *","* *   *"," *   * ","  ***  "],["   *   ","  **   "," * *   ","   *   ","   *   ","   *   ","*******"],[" ***** ","*     *","      *","     * ","   **  "," **    ","*******"],[" ***** ","*     *","      *","    ** ","      *","*     *"," ***** "],["    *  ","   **  ","  * *  "," *  *  ","*******","    *  ","    *  "],["*******","*      ","****** ","      *","      *","*     *"," ***** "],["  **** "," *     ","*      ","****** ","*     *","*     *"," ***** "],["*******","     * ","    *  ","   *   ","  *    "," *     ","*      "],[" ***** ","*     *","*     *"," ***** ","*     *","*     *"," ***** "],[" ***** ","*     *","*     *"," ******","      *","     * "," ****  "]],t;n.JQPlugin.createPlugin({name:i,alphabetic:r,alphanumeric:e,defaultDots:u,defaultOptions:{length:6,regenerate:"Click to change",hashName:"{n}Hash",dot:"*",dots:u,chars:r},_getters:["getHash"],_challengeClass:i+"-challenge",_disabledClass:i+"-disabled",_hashClass:i+"-hash",_regenerateClass:i+"-regen",_textClass:i+"-text",_optionsChanged:function(i,r,u){var e,o,s;for(n.extend(r.options,u),e="",o=0;o<r.options.length;o++)e+=r.options.chars.charAt(Math.floor(Math.random()*r.options.chars.length));r.hash=f(e+t);s=this;i.closest("form").off("."+r.name).on("submit."+r.name,function(){var u=r.options.hashName.replace(/\{n\}/,i.attr("name")),o=n(this);o.find('input[name="'+u+'"]').remove();o.append('<input type="hidden" class="'+s._hashClass+'" name="'+u+'" value="'+f(e+t)+'">');setTimeout(function(){o.find('input[name="'+u+'"]').remove()},0)});i.prevAll("."+this._challengeClass+",."+this._hashClass).remove().end().before(this._generateHTML(r,e)).prevAll("div."+this._challengeClass).click(function(){n(this).hasClass(s._disabledClass)||i.realperson("option",{})})},enable:function(t){(t=n(t),t.hasClass(this._getMarker()))&&t.removeClass(this._disabledClass).prop("disabled",!1).prevAll("."+this._challengeClass).removeClass(this._disabledClass)},disable:function(t){(t=n(t),t.hasClass(this._getMarker()))&&t.addClass(this._disabledClass).prop("disabled",!0).prevAll("."+this._challengeClass).addClass(this._disabledClass)},getHash:function(n){var t=this._getInst(n);return t?t.hash:0},_generateHTML:function(n,t){for(var u='<div class="'+this._challengeClass+'"><div class="'+this._textClass+'">',r,i=0;i<n.options.dots[0].length;i++){for(r=0;r<t.length;r++)u+=n.options.dots[n.options.chars.indexOf(t.charAt(r))][i].replace(/ /g,"&#160;").replace(/\*/g,n.options.dot)+"&#160;&#160;";u+="<br>"}return u+('<\/div><div class="'+this._regenerateClass+'">'+n.options.regenerate+"<\/div><\/div>")},_preDestroy:function(n,t){n.closest("form").off("."+t.name);n.prevAll("."+this._challengeClass+",."+this._hashClass).remove()}});t=n.salt||"#salt";delete n.salt;n(function(){var i=n(t);i.length&&(t=i.text(),i.remove());t==="#salt"&&(t="")})}(jQuery)