var xwInterAct=function(){"use strict";function vt(n,t){return n===undefined||n===null?t:n}function ku(n){var e=vt(n.local,!1),f=n.status==="expired",o=vt(n.nytbypass,!1),s=vt(n.wordplay,!1),i="Trace",t,u;if(gr=n.maxdate,y=n.name,b=n.mode,bu=vt(n.admin,!1),pu=b==="collab",bt=b==="compete",a=b==="solve",r=document.getElementById("puzTable"),ii=Modernizr.localstorage,ri=Modernizr.sessionstorage,ri&&y!==Cookies.get(br)&&(window.sessionStorage[ai]=""),Cookies.set(br,y),a||$("#top").css("display","grid"),xwiTT.Grid(".dtlink",{hide:!0}),bt&&$(sr).hide(),n.status==="invalid"){$("#invalid").show(500);xwi.nLog(b+" rejected -- invalid",i);return}(t=n.date!==undefined,a&&t&&new Date(n.date)<wu&&(t=!1),t&&(y?$("#nytcheck").hide():($("#xwicheck").show(500),ui=!0,xwi.nLog(b+" rejected -- name required",i)),f&&($("#expcheck").show(500),ui=!0,xwi.nLog(b+" rejected -- account expired",i)),ui))||(Modernizr.audio&&(nr=new Audio,nr.src="/special/Congrats."+(Modernizr.audio.ogg?"ogg":"mp3")),a?(h=tu(n),d=$().promise(),$.when(h).done(function(){cu();k();pt(!0);ef();nu()})):(h=tu(n),d=du(),u=window.sessionStorage[ai],u&&p(null,u,!0),$.when(h,d).done(function(){cu();k();var n=$.ui.keyCode.ENTER,t="#joinName, #chatMsg";$(t).focus(function(){rt()});$(t).blur(function(){k()});$("#joinName").keyup(function(t){t.keyCode===n&&$("#joinBut").click()});$("#chatMsg").keyup(function(t){t.keyCode===n&&$("#chatBut").click()});$("#joinBut, #chatBut, #joinName, #chatMsg").removeAttr("disabled");Cookies.get(rr)||(fi=setTimeout(cf,5e3));nu()})))}function nu(){var t="visibility",i="visible";n.type==="diagramless"?$("#diaglessDlg").dialog({modal:!0,open:function(){rt()},beforeClose:function(){k()},width:400,buttons:[{text:"Yes",click:function(){$(r).css(t,i);$(this).dialog(v)}},{text:"No",click:function(){$(this).dialog(v)}}]}):$(r).css(t,i)}function tu(t){t.track=!0;return $.ajax({url:"/JSON/data.ashx",dataType:"json",data:t,timeout:3e3,error:function(n,t,i){console.warn("$.ajax error -- status is "+t+" and error is "+i);$("#title").html("");$("#notfound").show()},success:function(t){var u,h,c,i,p,y,s,f,l,a,e;if(n=t,!n.valid){$("#title").html("");$("#notfound").show();n.date&&$("#badpuz").html(n.date+(n.type?" variety":""));return}if(n.type&&(n.date=n.date+" "+n.type),n.code===n.id2||n.admin){for(n.date&&!n.type&&n.hastitle?($("#title").html(n.dow+" "+n.date+" NY Times, "+n.title+" by "+n.author),$(or).css("width","inherit")):$("#title").html(n.title+" by "+n.author),i=0,h=0;h<n.size.rows;h+=1)for(p=r.insertRow(h),c=0;c<n.size.cols;c+=1){var v=p.insertCell(c),w=n.gridnums[i],b=w===0?"":String(w),k=n.grid[i];k==="."?$(v).addClass(ct):(v.innerHTML="<div class='grid'>".concat(b,"<\/div><div class='letter'><\/div>"),n.circles&&n.circles[i]===1&&(n.shadecircles===it?$(v).addClass("shade"):$(v).addClass("solcirc")));i+=1}if(n.bbars){if(y="4px solid darkblue",i=0,n.bbars)while(i<n.bbars.length)r.rows[n.bbars[i++]].cells[n.bbars[i++]].style.borderBottom=y;if(i=0,n.rbars)while(i<n.rbars.length)r.rows[n.rbars[i++]].cells[n.rbars[i++]].style.borderRight=y}for(s=n.copyright,s!=null&&s.indexOf("©")===-1&&(s="© ".concat(s)),n.id?(lt="slv"+n.id,$("#puzCopy").html("".concat(s,"<span id='clock'><\/span>"))):(lt="slv"+(n.type?"v":"")+n.date,$("#puzCopy").html("".concat(s,", Editor: ").concat(n.editor,"<span id='clock'><\/span>"))),pt(!1),bi(),u=0;u<n.clues.across.length;u++)f=ru(n.clues.across[u]),l=f.indexOf("."),e=f.substr(0,l),a=f.substr(l+2),yr[e]=a,$(ci).append("<div>".concat(e,"<\/div><div id='acclue").concat(e,"'>").concat(a,"<\/div>"));for(u=0;u<n.clues.down.length;u++)f=ru(n.clues.down[u]),l=f.indexOf("."),e=f.substr(0,l),a=f.substr(l+2),pr[e]=a,$(li).append("<div>".concat(e,"<\/div><div id='dnclue").concat(e,"'>").concat(a,"<\/div>"));gi=$(r).outerHeight();ot=Cookies.get(tr)===it;$(or).outerHeight(ot?"":gi-20);ut=Cookies.get(ur)===it;st=Cookies.get(ir)===it;n.notepad&&$("#puzNotepad").html("<b>Notepad:<\/b> "+n.notepad).show(500);n.acrossmap&&$("td:has(div)",r).tooltip({items:tt,classes:{"ui-tooltip":"ttLite gold"},position:{my:"left-4 bottom+4",at:"right top"},show:{duration:200,delay:200},content:function(){h=this.parentNode.rowIndex;c=this.cellIndex;i=h*n.size.cols+c;var r=n.acrossmap[i],u=n.downmap[i],t="";return r>-1&&(t+="<div>".concat(n.clues.across[r].replace("."," Across: "),"<\/div>")),u>-1&&(t+="<div>".concat(n.clues.down[u].replace("."," Down: "),"<\/div>")),$(".cluelist","#puzzle").is(":visible")?t:""},disabled:st});o();cr()}}})}function du(){s=$.connection.interActHub;s.client.updateLetter=function(t,i,u,f,e){h.done(function(){var s=i===ni,o;t===n.date&&(o=r.rows[u].cells[f],$(o).removeClass(ft).removeClass(dt),$(o.children[0]).removeClass(gt).removeClass(at),e!==""&&($(o).addClass(s?ft:dt),$(o.children[0]).addClass(s?gt:at)),o.children[1].innerHTML=e,wi(),l=!0)})};s.client.revealWord=function(t,i,u,f,e,o,s,a){h.done(function(){var h;if(t===n.date){for(h=0;h<a;h++){var v=r.rows[e].cells[o],w=fu(e,o),y=ti(e,o);w!==y&&($(v).removeClass(ft).removeClass(dt),$(v.children[0]).removeClass(gt).removeClass(at),c(e,o,y));s?o+=1:e+=1}p(g,(u===ni?"You":i)+" revealed "+f+(s?" Across.":" Down."));wi();l=!0}})};s.client.joinRoom=function(n,t){h.done(function(){if(t===ni||n===y){$("#topchat").html().length===0&&p(null,"Welcome, ".concat(n,", to XWord Info Interactive."));$("#roomstatus").html(" as user <span class='myLetter'>".concat(n,"<\/span> in private room <span class='roomClass'>").concat(e,"<\/span>"));var i=window.sessionStorage[dr];i!==e&&(p(g,"You are in the "+e+" room."),e.toLowerCase()===n.toLowerCase()&&p(g,"Make up a room name and ask your friend to meet you there."));ri&&(window.sessionStorage[dr]=e)}pi()})};s.client.leaveRoom=function(n,t){h.done(function(){p(g,t+" has left the "+n+" room.");pt(!1);pi()})};s.client.clearGrid=function(t,i,r){h.done(function(){t===n.date&&i!==ni&&(vr(),$("span#clearName").html(r),$("#clearedByDlg").dialog({modal:!0,open:function(){rt()},beforeClose:function(){k()},buttons:[{text:"OK",click:function(){$(this).dialog(v)}}]}))})};s.client.checkIn=function(t,i,r,u){h.done(function(){var o,h,c,v,w;if(u!==b&&p(g,'<span style="color:firebrick; font-weight:bold;">'.concat(t," is in ").concat(u," mode.<\/span>")),o=yi[t],yi[t]=r,$.inArray(t,vi)<0&&t!==y&&(vi[vi.length]=t,h=$(hi).html(),$(hi).html(h+", <span class='theirLetter'>"+t+"<\/span>")),sf()||s.server.sendGrid(i,n.date,tf()),r===n.date)pt(!0),r!==o&&(c=bt?"competing against ":"collaborating with ",p(g,'<span style="color:darkgreen; font-weight:bold;">You are now '.concat(c).concat(t,".<\/span>")),$("#coninfo").hide(500),clearTimeout(fi),fi=null,Cookies.set(rr,it),cr(),ui&&s.server.sendChat(e,g,"<b>"+y+" is not logged in to an NYT Games subscription.<\/b>")),bt&&$(sr).show("blind",300);else{var l=!1,f=r,a=f.indexOf(" ");a>=0&&(f=f.substr(0,a)+"&type=var",l=!0);v=er+"?date="+f;w=l?r:new Date(f).toString().substr(0,15);p(g,t+' is now viewing the <a class="chatlink" href="'+v+'">'+w+"<\/a> puzzle.");xwiTT.Grid("a.chatlink",{hide:!0});bt&&$(sr).hide()}})};s.client.updateGrid=function(t,i){h.done(function(){n&&t===n.date&&rf(i)})};s.client.revealGrid=function(t,i){h.done(function(){var u,f;if(t===n.date){for(u=0;u<n.size.rows;u+=1)for(f=0;f<n.size.cols;f+=1){var e=r.rows[u].cells[f],s=fu(u,f),o=ti(u,f);s!==o&&($(e).removeClass(ft).removeClass(dt),$(e.children[0]).removeClass(gt).removeClass(at),c(u,f,o))}p(g,i+" revealed the entire grid.");wi();l=!0}})};s.client.revealWrong=function(t,i){t===n.date&&h.done(function(){t===n.date&&(iu(),p(g,i+" revealed incorrect letters."),wi(),l=!0)})};s.client.updateChat=function(n,t){p(n,t)};s.client.onDisconnected=function(){pt(!1);pi()};var t=$.connection.hub.start();return t.done(function(){var n,t;ni=$.connection.hub.id;e=y;n=Cookies.get(fr);n&&(e=n);t=pf("room");t&&(e=t);e=e.toLowerCase();$("#hubstatus").html("Ready");$(hi).html("<span class='myLetter'>"+y+"<\/span>");Cookies.set(fr,e);s.server.joinRoom(e,b)}),t}function iu(){$(tt,r).removeClass(ei).removeClass(kt).each(function(t){var r=$(this).children("div.letter"),i=r.html();i&&$(this).addClass(i===n.grid[t]?"right":"wrong")});setTimeout(gu,1e3)}function gu(){$(tt,r).removeClass("right wrong");o()}function p(n,t,i){var r,f,u,e,o,s,h;if(i===void 0&&(i=!1),r=$("#topchat"),f=r.html(),i)r.html(t);else if(u=void 0,u=n===null?"<div style='font-weight:bold; margin: 8px 0px'>".concat(t,"<\/div>"):"<div><b>".concat(n,":<\/b> ").concat(t,"<\/div>"),e=u.length,o=f.substring(-e),o!==u&&(r.html(f+u),ri))try{window.sessionStorage[ai]=f+u}catch(c){window.sessionStorage[ai]=u}s=r.height();h=r[0].scrollHeight;$(r).animate({scrollTop:h-s},100)}function pi(){vi=[];$(hi).html("<span class='myLetter'>".concat(y,"<\/span>"));s.server.speakUp(e,n.date,b)}function wi(){var t=$("div.myNumber",r).length,n;$("#myCount").html(String(t));n=$("div.theirNumber",r).length;$("#theirCount").html(String(n))}function u(n,t){return $(r.rows[n].cells[t]).hasClass(ct)}function nt(n,t){return $(r.rows[n].cells[t].childNodes[1]).html()===""}function w(n,t){var i=r.rows[n].cells[t];return i.style&&i.style.borderBottom&&i.style.borderBottom.length>0}function bi(){var t=n.clues.across[0],i=t.indexOf(".");lr(t.substr(0,i))}function ru(n){return n.replace("&lt;/","<\/").replace("&lt;","<").replace("&gt;",">")}function c(n,t,i,u){var f,o,e;i===void 0&&(i=null);u===void 0&&(u=null);try{f=$(r.rows[n].cells[t].childNodes[1]);u!==null&&(o=$(r.rows[n].cells[t].childNodes[0]),o.addClass(u))}catch(s){return console.warn("CellLet("+n+","+t+") failed: "+s.message),""}return i===null?i=f.html():(e="rebus2",i.length>3?f.addClass(e):f.removeClass(e),f.html(i)),i}function ki(n,t,i){i===void 0&&(i=null);try{var u=$(r.rows[n].cells[t].childNodes[0]);i?u.html(i):i=u.html()}catch(f){console.warn("CellNum(".concat(n,",").concat(t,") failed: ").concat(f.message));i=""}return i}function uu(n,t){var f=n.scrollTop(),i=n.position().top,r=t.position().top,e=r+t.height(),u;r<i?n.scrollTop(Math.max(r+f-i,0)):(u=e-(i+n.height()),u>0&&n.scrollTop(f+u))}function o(){var e,o,s,l,a,h,c;for($(tt,r).removeClass(ei).removeClass(kt),$("div",".cluelist").removeClass(oi).removeClass(si),e=t,o=i,(e<0||e>=n.size.rows||o<0||o>=n.size.cols||u(e,o))&&(console.warn("Invalid cell: r is ".concat(e," and c is ").concat(o)),bi()),s=$(r.rows[e].cells[o]),s.addClass(ei);o>0;){if(u(e,o-1))break;o-=1}if(l=ki(e,o),f)while(o<n.size.cols){if(s=$(r.rows[e].cells[o]),s.hasClass(ct))break;o!==i&&s.addClass(kt);o+=1}for(e=t,o=i;e>0;){if(u(e-1,o)||w(e-1,o))break;e-=1}if(a=ki(e,o),!f)while(e<n.size.rows){if(s=$(r.rows[e].cells[o]),s.hasClass(ct))break;if(e!==t&&s.addClass(kt),w(e,o))break;e+=1}h=$("#acclue"+l);c=$("#dnclue"+a);f?$("#bigClue").html(h.length>0?l+". "+yr[l]:"-"):$("#bigClue").html(c.length>0?a+". "+pr[a]:"-");h.length>0&&(h.addClass(f?oi:si),uu($(ci),h));c.length>0&&(c.addClass(f?si:oi),uu($(li),c))}function hr(){for(var t,r,u=0,i=0;i<n.size.rows;i+=1)for(t=0;t<n.size.cols;t+=1)if(r=n.grid[u++],r!=="."&&r.charAt(0)!==c(i,t).charAt(0))return!1;return!0}function ti(t,i){return n.grid[t*n.size.cols+i]}function fu(n,t){var i,u;try{u=$(r.rows[n].cells[t].childNodes[1]);i=u.html()}catch(f){i=""}return i}function nf(n){n===void 0&&(n=!0);var t=$(r).outerWidth();$("#congrats").outerWidth(t).show(500);n&&wr&&Modernizr.audio&&nr.play()}function eu(){var n=(new Date).getTime();return wt||(wt=n),n-wt}function ou(n){n===void 0&&(n=null);n||(n=eu());var i=Math.floor(n/1e3),t=i%60,r=Math.floor((i-t)/60);$("#clock").html(r+":"+(t<10?"0"+t:t))}function tf(){for(var t,r="[",i=0;i<n.size.rows;i+=1)for(t=0;t<n.size.cols;t+=1)t===0&&i===0||(r+=","),r+=u(i,t)?'"."':'"'+c(i,t)+'"';return r+"]"}function rf(t){for(var i,u,e,o=JSON.parse(t),s=0,f=0;f<n.size.rows;f+=1)for(i=0;i<n.size.cols;i+=1)u=o[s++],u!=="."&&u!==""&&c(f,i,u,at);e=$("div.theirNumber",r).length;$("#theirCount").html(String(e));l=!0}function uf(){l&&ff();ou();l=!1}function cr(n){n===void 0&&(n=0);wt=(new Date).getTime()-n;ht&&clearTimeout(ht);ht=setInterval(uf,1e3)}function ff(t){var i,o,f,e,s,h;if(t===void 0&&(t=null),hr()&&($(tt,r).removeClass(ei).removeClass(kt),$("div",".cluelist").removeClass(oi).removeClass(si),$("#bigClue").html(""),nf(),ht&&clearTimeout(ht),ht=null),t||(t=eu()),a&&ii){for(i=n.date+"~"+t+"~",o=!0,f=0;f<n.size.rows;f+=1)for(e=0;e<n.size.cols;e+=1)u(f,e)||(s=c(f,e),h=s.length,h===0?i+=" ":h===1?(i+=s,o=!1):(i+="{"+s+"}",o=!1));if(o)window.localStorage.removeItem(lt);else try{window.localStorage[lt]=i}catch(l){xwi.MakeRoom();window.localStorage[lt]=i}}}function ef(){var o=null,s,h,f,r,t,i,e,a;if(ii&&(o=window.localStorage[lt]),ii&&o){for(s=o.split("~"),h=Number(s[1]),wt=(new Date).getTime()-h,ou(h),f=s[2],r=0,t=0;t<n.size.rows;t+=1)for(i=0;i<n.size.cols;i+=1)if(!u(t,i))if(e=f.charAt(r++),e==="{"){for(a="";f.charAt(r)!=="}";)a+=f.charAt(r++);c(t,i,a);r+=1}else c(t,i,e===" "?"":e);l=!0}}function lr(r){for(var u=0;u<n.size.rows*n.size.cols;u+=1)if(n.gridnums[u]===Number(r))break;t=Math.floor(u/n.size.cols);i=u%n.size.cols}function ar(r){r?(i>0&&!u(t,i-1)||i<n.size.cols-1&&!u(t,i+1))&&(f=!0):(t>0&&!u(t-1,i)||t<n.size.rows-1&&!u(t+1,i))&&(f=!1)}function su(n,t){while(t>0){if(u(n,t-1))break;t-=1}return ki(n,t)}function hu(n,t){while(n>0){if(u(n-1,t)||w(n-1,t))break;n-=1}return ki(n,t)}function et(r){r===void 0&&(r=!1);var e=t,s=i,c,h;if(f?(c=su(e,s),h=$("#acclue"+c)):(c=hu(e,s),h=$("#dnclue"+c)),r?(h=h.prev().prev().prev(),h.length===0&&(h=$("div:last",f?li:ci).prev(),f=!f)):(h=h.next(),h.length===0&&(h=$("div:first",f?li:ci),f=!f)),c=h.text(),lr(c),e=t,s=i,f)while(s<n.size.cols&&!u(e,s)){if(nt(e,s)){i=s;o();return}s+=1}else while(e<n.size.rows&&!u(e,s)){if(nt(e,s)){t=e;o();return}if(w(e,s))break;e+=1}o()}function sf(){return $("div.letter:not(:empty)",r).length===0}function cu(){var n="body",u="cursor",e="pointer",s="default";$(tt,r).click(function(){$(this).hasClass(ct)||(t=this.parentNode.rowIndex,i=this.cellIndex,o())});$("div div",".cluelist").click(function(){f=this.id.substr(0,2)==="ac";var n=this.id.substr(6);lr(n);o()});$("td:has(div)",r).hover(function(){$(n).css(u,e)},function(){$(n).css(u,s)});$(".cluelist div div").hover(function(){$(n).css(u,e)},function(){$(n).css(u,s)});$(tt,r).on("contextmenu",function(){return $(this).hasClass(ct)||(ar(!f),t=this.parentNode.rowIndex,i=this.cellIndex,o()),!1})}function lu(){var o=t,r=i,p=0,v,y,b;if(f){while(r>0&&!u(o,r-1))r-=1;for(y=t,v=r,b=su(y,v);r<n.size.cols&&!u(o,r);)a&&c(o,r,n.grid[o*n.size.cols+r]),r+=1,p+=1}else{while(o>0&&!u(o-1,r)&&!w(o-1,r))o-=1;for(y=o,v=r,b=hu(y,v);o<n.size.rows&&!u(o,r);){if(a&&c(o,r,n.grid[o*n.size.cols+r]),w(o,r))break;o+=1;p+=1}}a||$.when(h,d).done(function(){s.server.revealWord(n.date,e,b,y,v,f,p)});l=!0}function au(){var e=t,r=i,c,h,s;if(f){for(r+=1;r<n.size.cols&&!u(e,r);){if(ut||nt(e,r)){i=r;o();return}r+=1}if(ut)return;for(c=r-1;r>0&&!u(e,r-1);)r-=1;while(r<n.size.cols&&!u(e,r)){if(nt(e,r)){i=r;o();return}r+=1}i<c&&(i+=1);o()}else{for(h=e;h>0&&!u(h-1,r)&&!w(h-1,r);)h-=1;for(s=e;s<n.size.rows&&!w(s,r);){if(s===n.size.rows-1)break;if(u(s+1,r))break;s+=1}while(e<s)if(e+=1,ut||nt(e,r)){t=e;o();return}for(e=h;e<t;){if(ut||nt(e,r)){t=e;o();return}e+=1}t<s&&(t+=1);o()}}function yt(r,e){for(var s=t,h=i;;){if(s+=r,h+=e,s<0||s>=n.size.rows)return;if(h<0||h>=n.size.cols)return;if(!u(s,h)){f=r===0;t=s;i=h;o();return}}}function pt(n){var t=$(tt,r),i="unready";n?t.removeClass(i):t.addClass(i)}function cf(){fi=null;$("#coninfo").show(500);Cookies.set(rr,it)}function lf(){hr()||$("#revealDlg").dialog({modal:!0,open:function(){rt()},beforeClose:function(){k()},width:400,buttons:[{text:"Yes",click:function(){var t,i;if(a){for(t=0;t<n.size.rows;t+=1)for(i=0;i<n.size.cols;i+=1)c(t,i,n.grid[t*n.size.cols+i]);l=!0}else $.when(h,d).done(function(){s.server.revealGrid(n.date,e)});$(this).dialog(v)}},{text:"No",click:function(){$(this).dialog(v)}}]})}function vu(){var n="checked",t=":"+n,u=$("#ckClues"),i;u.attr(n,Number(ot));i=$("#ckTTips");i.attr(n,Number(!st));ut?$("#rbSquare").click():$("#rbBlank").click();$("#optionDlg").dialog({modal:!0,open:function(){rt();$(this).keydown(function(n){return n.keyCode===$.ui.keyCode.ENTER?($(this).parent().find(kr).click(),!1):!0})},beforeClose:function(){$(this).off("keydown");k()},width:400,buttons:[{text:"OK",click:function(){ot=u.is(t);ut=$("input[name=skip]"+t).val()==="square";st=!i.is(t);var n={expires:1e3};$(or).height(ot?"":gi-20);ot?Cookies.set(tr,it,n):Cookies.remove(tr);ut?Cookies.set(ur,it,n):Cookies.remove(ur);$("td:has(div)",r).tooltip(st?"disable":"enable");st?Cookies.set(ir,it,n):Cookies.remove(ir);$(this).dialog(v)}}]})}function af(){for(var u,l,y,v=$("#rebustext").val().toUpperCase(),f="",o=0;o<v.length;o+=1)if(u=v.charAt(o),u>="A"&&u<="Z"||u>="0"&&u<="9"||'!@#$%&*"'.indexOf(u)>=0)f+=u;else break;l=c(t,i);y=$(r.rows[t].cells[i]).hasClass(ft);(a||y||l!==ti(t,i))&&(f!==l&&(c(t,i,f),a||$.when(h,d).done(function(){s.server.sendLetter(n.date,e,t,i,f)})),f!==""&&au())}function di(u){var o,l,f;u===void 0&&(u=null);o=c(t,i);l=$(r.rows[t].cells[i]).hasClass(ft);(a||l||o!==ti(t,i))&&(f=u===null?"":String.fromCharCode(u),f!==o&&(c(t,i,f),a||$.when(h,d).done(function(){s.server.sendLetter(n.date,e,t,i,f)})))}function rt(){$(document).off("keydown")}function k(){$(document).keydown(function(r){l=!0;var e=r.keyCode;if(e===$.ui.keyCode.TAB||e===$.ui.keyCode.ENTER)return et(r.shiftKey),!1;if(e>=65&&e<=90)di(e),au(),wr=!0;else{if(e>=37&&e<=40)return r.ctrlKey?(e===37||e===39?ar(!0):ar(!1),o()):e!==$.ui.keyCode.LEFT&&e!==$.ui.keyCode.RIGHT||f?(e===$.ui.keyCode.UP||e===$.ui.keyCode.DOWN)&&f?(f=!1,nt(t,i)||yt(e===$.ui.keyCode.UP?-1:1,0),o()):e===$.ui.keyCode.LEFT?r.shiftKey?et(!0):yt(0,-1):e===$.ui.keyCode.UP?r.shiftKey?et(!0):yt(-1,0):e===$.ui.keyCode.RIGHT?r.shiftKey?et(!1):yt(0,1):e===$.ui.keyCode.DOWN&&(r.shiftKey?et(!1):yt(1,0)):(f=!0,nt(t,i)||yt(0,e===$.ui.keyCode.LEFT?-1:1),o()),!1;if(e===$.ui.keyCode.DELETE)return di(),!1;if(e===$.ui.keyCode.SPACE)return di(),f?i<n.size.cols-1&&!u(t,i+1)&&(i+=1):t<n.size.rows-1&&!u(t+1,i)&&!w(t,i)&&(t+=1),o(),!1;if(e===$.ui.keyCode.BACKSPACE)return di(),f?i>0&&!u(t,i-1)&&i--:t>0&&!u(t-1,i)&&!w(t-1,i)&&t--,o(),!1;if(e===$.ui.keyCode.HOME){if(r.shiftKey)bi(),o();else if(f){while(i>0&&!u(t,i-1))i--;o()}else{while(t>0&&!u(t-1,i))t--;o()}return!1}if(e===$.ui.keyCode.END){if(r.shiftKey){for(t=n.size.rows-1,i=n.size.cols-1;u(t,i);)i--;o()}else if(f){while(i<n.size.cols-1&&!u(t,i+1))i+=1;o()}else{while(t<n.size.rows-1&&!u(t+1,i))t+=1;o()}return!1}if(e===45)return yu(),!1;if(e===119)return lu(),!1;if(e===120)return lf(),!1;if(e===118)return vu(),!1}return!0})}function yu(){$("#rebustext").val(c(t,i));$("#rebusDlg").dialog({modal:!0,open:function(){rt();$(this).keydown(function(n){return n.keyCode===$.ui.keyCode.ENTER?($(this).parent().find(kr).click(),!1):!0})},beforeClose:function(){$(this).off("keydown");k()},width:400,buttons:[{text:"OK",click:function(){af();l=!0;$(this).dialog(v)}},{text:"Cancel",click:function(){l=!0;$(this).dialog(v)}}]})}function vr(){$("div.letter",r).html("");$(tt,r).removeClass(ft).removeClass(dt);$("div.grid",r).removeClass(gt).removeClass(at);$("#congrats").hide(500);bi();f=!0;o();l=!0;cr(0);$("#myCount").html("0");$("#theirCount").html("0")}function vf(t){if(t===void 0&&(t=!0),$("div.letter:not(:empty)",r).length!==0){if(!t){vr();return}$("#clearDlg").dialog({modal:!0,open:function(){rt()},beforeClose:function(){k()},buttons:[{text:"Yes",click:function(){vr();a||s.server.clearGrid(n.date,e);$(this).dialog(v)}},{text:"No",click:function(){$(this).dialog(v)}}]})}}function yf(){var t=n?n.date:null;$("#datepicker").datepicker({onSelect:function(n){t=$.datepicker.formatDate("m/d/yy",new Date(n));window.location.href=er+"?date="+t},maxDate:vt(gr,t),defaultDate:t?new Date(t):new Date});$("#datePickDlg").dialog({modal:!0,open:function(){rt()},beforeClose:function(){k()},width:500,buttons:[{text:"OK",click:function(){window.location.href=er+"?date="+t}},{text:"Cancel",click:function(){$(this).dialog(v)}}]})}function pf(n){var t=RegExp("[?&]".concat(n,"=([^&]*)")).exec(window.location.search);return t&&decodeURIComponent(t[1].replace(/\+/g," "))}var n,r,t=0,i=0,f=!0,yr=[],pr=[],gi,l=!1,ot=!1,ut=!1,st=!1,nr,wt,ht=null,h,d,bt,pu,a,ii,ri,ui=!1,fi=null,wr=!1,tt="td",it="true",tr="expClues",ir="hideTT",rr="coninfo",ur="skip",fr="room",br="prevName",ct="black",v="close",g="xwi",wu=new Date("11/21/1993"),er=window.location.pathname,ei="current",kt="curword",oi="curListClue",si="othListClue",hi="#members",ci="#AcrossClues",li="#DownClues",or="#AcrossClues, #DownClues",kr=".ui-dialog-buttonpane button:first",sr=".cluelist, #bigClue",lt,ai="iChat",dr="iRoom",dt="theirLetter",ft="myLetter",at="theirNumber",gt="myNumber",s,y,bu,b,e,ni,vi=[],yi=[],gr;return{Go:function(n){ku(n)},HelpDlg:function(){$("#help").dialog({modal:!0,open:function(){rt()},beforeClose:function(){k()},width:600,buttons:{OK:function(){$(this).dialog(v)}}})},OptionsDlg:function(){vu()},EnterRebusDlg:function(){yu()},RevealWordAction:function(){lu()},RevealWrongAction:function(){a?iu():s.server.revealWrong(n.date,e)},ClearGridAction:function(){vf()},DatePickAction:function(){yf()},UpdateRoom:function(){var t=$("#joinName"),n=t.val().toLowerCase().trim();t.val("");d.done(function(){n.length>0&&n!==e&&(s.server.leaveRoom(e),e=n,yi=[],yi[y]=null,pt(!1),pi(),Cookies.set(fr,e),s.server.joinRoom(e,b))})},SendChat:function(){var n=$("#chatMsg"),t=n.val().trim();t.length>0&&d.done(function(){s.server.sendChat(e,y,t)});n.val("")}}}()