UNPKG

164 kBJavaScriptView Raw
1webpackJsonp([0],[,,,function(t,n,e){"use strict";function a(t){var n=t.message||t;i("#loading-page-message, #connection-error").text("Waiting to reconnect… ("+n+")").addClass("shown"),i(".show-more-button, #input").prop("disabled",!0),i("#submit").hide(),r.io.skipReconnect&&l.requestIdleCallback(function(){return r.connect()},2e3)}var i=e(2),o=e(287),l=e(11),s=window.location.pathname+"socket.io/",r=o({transports:i(document.body).data("transports"),path:s,autoConnect:!1,reconnection:!i(document.body).hasClass("public")});r.on("disconnect",a),r.on("connect_error",a),r.on("error",a),r.on("reconnecting",function(t){i("#loading-page-message, #connection-error").text("Reconnecting… (attempt "+t+")")}),r.on("connecting",function(){i("#loading-page-message, #connection-error").text("Connecting…")}),r.on("connect",function(){r.sendBuffer=[],i("#loading-page-message, #connection-error").text("Finalizing connection…")}),r.on("authorized",function(){i("#loading-page-message, #connection-error").text("Loading messages…")}),t.exports=r},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s=t.escapeExpression,r=t.lambda;return'<span role="button" class="user '+s(a(e(164)).call(null!=n?n:t.nullContext||{},null!=n?n.nick:n,{name:"colorClass",hash:{},data:l}))+'" data-name="'+s(r(null!=n?n.nick:n,n))+'">'+s(r(null!=n?n.mode:n,n))+s(r(null!=n?n.nick:n,n))+"</span>\n"},useData:!0})},function(t,n,e){"use strict";function a(t){var n=[];t.bold&&n.push("irc-bold"),void 0!==t.textColor&&n.push("irc-fg"+t.textColor),void 0!==t.bgColor&&n.push("irc-bg"+t.bgColor),t.italic&&n.push("irc-italic"),t.underline&&n.push("irc-underline"),t.strikethrough&&n.push("irc-strikethrough"),t.monospace&&n.push("irc-monospace");var e=n.length?' class="'+n.join(" ")+'"':"",a=i.Utils.escapeExpression(t.text);return t.hexColor&&(e+=' style="color:#'+t.hexColor,t.hexBgColor&&(e+=";background-color:#"+t.hexBgColor),e+='"'),e.length?"<span"+e+">"+a+"</span>":a}var i=e(1),o=e(215),l=e(165),s=e(216),r=e(228),c=e(229),u=e(231),d=e(232),p=e(164);t.exports=function(t,n){n&&n.hash&&(n=[]);var e=o(t),h=e.map(function(t){return t.text}).join(""),m=["#","&"],f=["!","@","%","+"],g=s(h,m,f),_=r(h),v=c(h),b=u(h,n||[]),w=g.concat(_).concat(v).concat(b).sort(function(t,n){return t.start-n.start||n.end-t.end}).reduce(function(t,n){return t.some(function(t){return l(t,n)})?t:t.concat([n])},[]);return d(w,e).map(function(t){var n=t.fragments.map(a).join("");if(t.link){return'<a href="'+i.Utils.escapeExpression(t.link)+'" target="_blank" rel="noopener">'+n+"</a>"}if(t.channel){return'<span class="inline-channel" role="button" tabindex="0" data-chan="'+i.Utils.escapeExpression(t.channel)+'">'+n+"</span>"}if(t.emoji)return'<span class="emoji">'+n+"</span>";if(t.nick){var e=i.Utils.escapeExpression(t.nick);return'<span role="button" class="user '+p(e)+'" data-name="'+e+'">'+n+"</span>"}return n}).join("")}},,function(t,n,e){"use strict";t.exports=function(t,n,e){if(3!==arguments.length)throw new Error("Handlebars helper `equal` expects 3 arguments");return t=t.toString(),n=n.toString(),t===n?e.fn(this):e.inverse(this)}},function(t,n,e){"use strict";var a=e(198);t.exports=a.keys().reduce(function(t,n){var e=t;return n.substr(2).split("/").forEach(function(t){t.endsWith(".tpl")?e[t.substr(0,t.length-4)]=a(n):e[t]=e[t]||{},e=e[t]}),t},{})},,function(t,n,e){"use strict";t.exports=function(){return function(){}}},function(t,n,e){"use strict";function a(t){return t=t.toLowerCase(),g(".network .chan.active").parent(".network").find(".chan").filter(function(){return g(this).data("title").toLowerCase()===t}).first()}function i(t){t.style.height=t.style.minHeight}function o(t){var n=t.data("id"),e=g("#sidebar .network").has('.chan[data-id="'+n+'"]'),a=e.data("nick");return t.find('.users .user-mode.op .user[data-name="'+_(a)+'"]').length}function l(){v.trigger("click").trigger("focus")}function s(){return g(".chan.active .toggle-button.toggle-preview.opened").click(),!0}function r(){return g(".chan.active .toggle-button.toggle-preview:not(.opened)").click(),!0}function c(t){var n=t[0];if(n){var e=a(n);e.length&&e.trigger("click")}}function u(t){g("#nick").toggleClass("editable",t),g("#nick-value").prop("contenteditable",t)}function d(t){u(!1),g("#nick-value").text(t)}function p(t){if(b.data("toggled")!==t){var n=b.prop("href");b.prop("href",b.data("other")),b.data("other",n),b.data("toggled",t)}g("#viewport .lt").toggleClass("notified",t)}function h(){g("body").hasClass("public")&&(window.onbeforeunload=function(){return"Are you sure you want to navigate away from this page?"})}function m(t,n,e){if(e>=t.length)for(var a=e-t.length;1+a--;)this.push(void 0);return t.splice(e,0,t.splice(n,1)[0]),t}function f(t,n){window.requestIdleCallback?window.requestIdleCallback(t,{timeout:n}):t()}var g=e(2),_=e(32),v=g("#input");t.exports={inputCommands:{collapse:s,expand:r,join:c},findCurrentNetworkChan:a,serverHash:-1,lastMessageId:-1,confirmExit:h,forceFocus:l,move:m,resetHeight:i,setNick:d,toggleNickEditor:u,toggleNotificationMarkers:p,requestIdleCallback:f,isOpInChannel:o};var b=g("#favicon")},function(t,n,e){"use strict";var a=e(0);t.exports=function(t){return a(t).format("D MMMM YYYY, HH:mm:ss")}},function(t,n,e){"use strict";var a=e(2),i=e(166),o=a("#user-specified-css"),l=e(17),s=e(21),r=a("#windows"),c=a("#chat"),u={autocomplete:!0,nickPostfix:"",coloredNicks:!0,desktopNotifications:!1,highlights:[],links:!0,motd:!0,notification:!0,notifyAllMessages:!1,showSeconds:!1,statusMessages:"condensed",theme:a("#theme").prop("href").match(/themes\/(.*?)\.css$/),media:!0,userStyles:o.text()},d=JSON.parse(l.get("settings"))||{};u.theme=u.theme?u.theme[1]:"example";for(var p in u)void 0!==d[p]&&(u[p]=d[p]);"string"!=typeof d.userStyles||/[?&]nocss/.test(window.location.search)||o.html(d.userStyles),d=null,t.exports=u;var h=e(258);t.exports.shouldOpenMessagePreview=function(t){return"link"===t?u.links:u.media},t.exports.initialize=function(){t.exports.initialize=null;var n=a("#settings");for(var e in u)"userStyles"===e?n.find("#user-specified-css-input").val(u[e]):"highlights"===e?n.find("input[name="+e+"]").val(u[e]):"nickPostfix"===e?n.find("input[name="+e+"]").val(u[e]):"statusMessages"===e?n.find("input[name="+e+"][value="+u[e]+"]").prop("checked",!0):"theme"===e?(a("#theme").prop("href","themes/"+u[e]+".css"),n.find("select[name="+e+"]").val(u[e])):u[e]&&n.find("input[name="+e+"]").prop("checked",!0);var d=a("#desktopNotifications"),p=a("#warnUnsupportedDesktopNotifications"),m=a("#warnBlockedDesktopNotifications").hide(),f=function(){"denied"===Notification.permission?(d.prop("disabled",!0),d.prop("checked",!1),m.show()):("default"===Notification.permission&&d.prop("checked")&&d.prop("checked",!1),d.prop("disabled",!1),m.hide())};"Notification"in window?(p.hide(),r.on("show","#settings",f)):(u.desktopNotifications=!1,d.prop("disabled",!0),d.prop("checked",!1)),n.on("change","input, select, textarea",function(){var n=a(this),e=n.prop("type"),r=n.prop("name");if("password"!==e)if("radio"===e?n.prop("checked")&&(u[r]=n.val()):u[r]="checkbox"===e?n.prop("checked"):n.val(),l.set("settings",JSON.stringify(u)),"motd"===r)c.toggleClass("hide-"+r,!n.prop("checked"));else if("statusMessages"===r)c.toggleClass("hide-status-messages","hidden"===u[r]),c.toggleClass("condensed-status-messages","condensed"===u[r]);else if("coloredNicks"===r)c.toggleClass("colored-nicks",n.prop("checked"));else if("theme"===r)a("#theme").prop("href","themes/"+u[r]+".css");else if("userStyles"===r)o.html(u[r]);else if("highlights"===r){var d=u[r];u.highlights=d.split(",").map(function(t){return t.trim()}).filter(function(t){return""!==t});var p=u.highlights.map(function(t){return i(t)});p&&p.length?t.exports.highlightsRE=new RegExp("\\b(?:"+p.join("|")+")\\b","i"):t.exports.highlightsRE=null}else"nickPostfix"===r?u.nickPostfix=u[r]:"showSeconds"===r?(c.find(".msg > .time").each(function(){a(this).text(s(a(this).parent().data("time")))}),c.toggleClass("show-seconds",n.prop("checked"))):"autocomplete"===r?n.prop("checked")?h.enable():h.disable():"desktopNotifications"===r&&a(this).prop("checked")&&"granted"!==Notification.permission&&Notification.requestPermission(f)}).find("input").trigger("change")}},,function(t,n,e){"use strict";function a(t,n,e,a){return a.reduce(function(t,a){return i(t,n,e,a),t},t)}function i(t,n,e,a){_.lastMessageId<a.id&&(_.lastMessageId=a.id);var i=t.children(".msg, .date-marker-container").last(),l=o(a),s=new Date(a.time);if(new Date(i.data("time")).toDateString()!==s.toDateString()&&(i=h(m.date_marker({time:a.time})),t.append(i)),-1===b.condensedTypes.indexOf(a.type)||"channel"!==e)return void t.append(l);var r={};if(r[a.type]=1,i.hasClass("condensed"))return i.append(l),void w.updateText(i,r);var c=h(m.msg_condensed({time:a.time}));w.updateText(c,r),c.append(l),t.append(c)}function o(t){var n=t.type,e="msg";t.highlight||t.self||!f.highlightsRE||"message"!==n&&"notice"!==n||!f.highlightsRE.exec(t.text)||(t.highlight=!0),-1!==b.actionTypes.indexOf(n)?(t.template="actions/"+n,e="msg_action"):"unhandled"===n&&(e="msg_unhandled");var a=h(m[e](t)),i=a.find(".content");return"msg_action"===e&&i.html(m.actions[n](t)),t.previews.forEach(function(t){g(t,a)}),a}function l(t){s(t),"channel"===t.type&&c(t),E&&E.observe(x.find("#chan-"+t.id+" .show-more").get(0))}function s(t){var n=a(h(document.createDocumentFragment()),t.id,t.type,t.messages),e=x.find("#chan-"+t.id+" .messages").append(n);r(h(m.unread_marker()),t.firstUnread,e)}function r(t,n,e){if(n>0){var a=e.find("#msg-"+n);if(a.length){var i=a.parent();i.hasClass("condensed")&&(a=i),a.before(t)}else t.data("unread-id",n),e.prepend(t)}else e.append(t)}function c(t){var n=x.find("#chan-"+t.id).find(".users"),e=t.users.concat().sort(function(t,n){return n.lastMessage-t.lastMessage}).map(function(t){return t.nick}),a=n.find(".search").prop("placeholder",e.length+" "+(1===e.length?"user":"users"));n.data("nicks",e).find(".names-original").html(m.user(t)),a.val().length&&a.trigger("input")}function u(t,n){C.find(".empty").hide(),C.find(".networks").append(m.network({networks:t.networks})),k.handleKeybinds();var e=void 0,i=h.map(t.networks,function(t){return t.channels});!n&&_.lastMessageId>-1?(e=[],i.forEach(function(t){var n=h("#chan-"+t.id);if(n.length>0){if("channel"===n.data("type")&&n.data("needsNamesRefresh",!0).find(".header .topic").html(y(t.topic)).prop("title",t.topic),t.messages.length>0){var i=n.find(".messages");a(i,t.id,t.type,t.messages);var o=i.find(".unread-marker").data("unread-id",0);r(o,t.firstUnread,i),i.find(".msg").length>=100&&i.find(".show-more").addClass("show"),i.trigger("keepToBottom")}}else e.push(t)})):e=i,e.length>0&&(x.append(m.chat({channels:e})),e.forEach(function(t){l(t),"channel"===t.type&&x.find("#chan-"+t.id).data("needsNamesRefresh",!0)})),_.confirmExit(),v(),C.find(".highlight").length&&_.toggleNotificationMarkers(!0)}function d(t,n){var e=t.find(".messages .msg").slice(0,-n);0!==e.length&&(e.remove(),t.find(".show-more").addClass("show"),t.find(".date-marker-container").each(function(){h(this).next().hasClass("date-marker-container")&&h(this).remove()}))}function p(t){t.forEach(function(t){if(t.isIntersecting){var n=h(t.target).find(".show-more-button");n.prop("disabled")||n.trigger("click")}})}var h=e(2),m=e(8),f=e(13),g=e(185),_=e(11),v=e(307),b=e(24),w=e(186),k=e(187),y=e(5),x=h("#chat"),C=h("#sidebar");e(309);var E=window.IntersectionObserver?new window.IntersectionObserver(p,{root:x.get(0)}):null;t.exports={appendMessage:i,buildChannelMessages:a,renderChannel:l,renderChannelUsers:c,renderNetworks:u,trimMessageInChannel:d}},,function(t,n,e){"use strict";t.exports={set:function(t,n){try{window.localStorage.setItem(t,n)}catch(t){}},get:function(t){return window.localStorage.getItem(t)},remove:function(t,n){window.localStorage.removeItem(t,n)}}},,,,function(t,n,e){"use strict";var a=e(0),i=e(24);t.exports=function(t){var n=e(13),o=n.showSeconds?i.timeFormats.msgWithSeconds:i.timeFormats.msgDefault;return a(t).format(o)}},,function(t,n,e){"use strict";var a=e(32);t.exports=function(t){return a(t.toLowerCase())}},function(t,n,e){"use strict";var a=[["00","White"],["01","Black"],["02","Blue"],["03","Green"],["04","Red"],["05","Brown"],["06","Magenta"],["07","Orange"],["08","Yellow"],["09","Light Green"],["10","Cyan"],["11","Light Cyan"],["12","Light Blue"],["13","Pink"],["14","Grey"],["15","Light Grey"]],i=["/as","/away","/back","/ban","/banlist","/bs","/close","/collapse","/connect","/cs","/ctcp","/cycle","/deop","/devoice","/disconnect","/expand","/ho","/hs","/invite","/join","/kick","/leave","/list","/me","/mode","/ms","/msg","/nick","/notice","/ns","/op","/os","/part","/query","/quit","/raw","/rejoin","/rs","/say","/send","/server","/slap","/topic","/unban","/voice","/whois"],o=["away","back","ban_list","invite","join","mode","kick","nick","part","quit","topic","topic_set_by","action","whois","ctcp","chghost","channel_list"],l=["away","back","chghost","join","part","quit","nick","kick","mode"],s={msgDefault:"HH:mm",msgWithSeconds:"HH:mm:ss"};t.exports={colorCodeMap:a,commands:i,condensedTypes:l,condensedTypesQuery:"."+l.join(", ."),actionTypes:o,timeFormats:s}},,,,,,function(t,n,e){"use strict";function a(){return u.prop("disabled",!0),navigator.serviceWorker.ready.then(function(t){return t.pushManager.getSubscription().then(function(n){return n?(c.emit("push:unregister"),n.unsubscribe()):t.pushManager.subscribe({applicationServerKey:o(p),userVisibleOnly:!0}).then(function(t){var n=t.getKey?t.getKey("p256dh"):"",e=n?window.btoa(String.fromCharCode.apply(null,new Uint8Array(n))):"",a=t.getKey?t.getKey("auth"):"",i=a?window.btoa(String.fromCharCode.apply(null,new Uint8Array(a))):"";return c.emit("push:register",{token:r.get("token"),endpoint:t.endpoint,keys:{p256dh:e,auth:i}}),!0})}).then(function(t){t&&i().prop("disabled",!1)})}).catch(function(t){s("#pushNotificationsUnsupported").find("span").text("An error has occured: "+t).end().show()}),!1}function i(){var t=u.text();return u.text(u.data("text-alternate")).data("text-alternate",t)}function o(t){for(var n="=".repeat((4-t.length%4)%4),e=(t+n).replace(/-/g,"+").replace(/_/g,"/"),a=window.atob(e),i=new Uint8Array(a.length),o=0;o<a.length;++o)i[o]=a.charCodeAt(o);return i}function l(){return"https:"===location.protocol||"localhost"===location.hostname||"127.0.0.1"===location.hostname}var s=e(2),r=e(17),c=e(3),u=void 0,d=null,p=void 0;"serviceWorker"in navigator&&navigator.serviceWorker.addEventListener("message",function(t){t.data&&"open"===t.data.type&&s("#sidebar").find('.chan[data-target="#'+t.data.channel+'"]').trigger("click")}),t.exports.hasServiceWorker=!1,t.exports.configurePushNotifications=function(t,n){p=n,!0===d&&!1===t&&(u.prop("disabled",!0),navigator.serviceWorker.ready.then(function(t){return t.pushManager.getSubscription()}).then(function(t){return t&&t.unsubscribe()}).then(function(t){t&&i().prop("disabled",!1)}))},t.exports.initialize=function(){u=s("#pushNotifications"),l()&&(s("#pushNotificationsHttps").hide(),"serviceWorker"in navigator&&navigator.serviceWorker.register("service-worker.js").then(function(n){if(t.exports.hasServiceWorker=!0,n.pushManager)return n.pushManager.getSubscription().then(function(t){s("#pushNotificationsUnsupported").hide(),u.prop("disabled",!1).on("click",a),(d=!!t)&&i()})}).catch(function(t){s("#pushNotificationsUnsupported span").text(t)}))}},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,n,e){"use strict";t.exports=function(t){for(var n=0,e=0;e<t.length;e++)n+=t.charCodeAt(e);return"color-"+(1+n%32)}},function(t,n,e){"use strict";function a(t,n){return t.start<=n.start&&n.start<t.end||t.start<n.end&&n.end<=t.end||n.start<=t.start&&t.start<n.end||n.start<t.end&&t.end<=n.end}t.exports=a},,function(t,n,e){"use strict";t.exports=function(t,n,e){if(3!==arguments.length)throw new Error("Handlebars helper `notEqual` expects 3 arguments");if(t=t.toString(),n=n.toString(),t!==n)return e.fn(this);if(""!==e.inverse(this))throw new Error("Handlebars helper `notEqual` does not take an `else` block")}},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s,r=t.lambda,c=t.escapeExpression,u=null!=n?n:t.nullContext||{};return'<div data-id="'+c(r(null!=n?n.id:n,n))+'" data-target="#chan-'+c(r(null!=n?n.id:n,n))+'" data-title="'+c(r(null!=n?n.name:n,n))+'" class="chan '+c(r(null!=n?n.type:n,n))+" chan-"+c(a(e(23)).call(u,null!=n?n.name:n,{name:"slugify",hash:{},data:l}))+'">\n'+(null!=(s=a(e(7)).call(u,null!=n?n.type:n,"lobby",{name:"equal",hash:{},fn:t.program(2,l,0),inverse:t.noop,data:l}))?s:"")+'\t<span class="badge'+(null!=(s=i.if.call(u,null!=n?n.highlight:n,{name:"if",hash:{},fn:t.program(4,l,0),inverse:t.noop,data:l}))?s:"")+'">'+(null!=(s=i.if.call(u,null!=n?n.unread:n,{name:"if",hash:{},fn:t.program(6,l,0),inverse:t.noop,data:l}))?s:"")+"</span>\n"+(null!=(s=a(e(167)).call(u,null!=n?n.type:n,"lobby",{name:"notEqual",hash:{},fn:t.program(8,l,0),inverse:t.noop,data:l}))?s:"")+'\t<span class="name" title="'+c(r(null!=n?n.name:n,n))+'">'+c(r(null!=n?n.name:n,n))+"</span>\n</div>\n"+(null!=(s=a(e(7)).call(u,null!=n?n.type:n,"lobby",{name:"equal",hash:{},fn:t.program(10,l,0),inverse:t.noop,data:l}))?s:"")},2:function(t,n,e,a,i){return'\t\t<span class="add-channel-tooltip tooltipped tooltipped-w tooltipped-no-touch" aria-label="Join a channel…" data-alt-label="Cancel">\n\t\t\t<button class="add-channel" aria-label="Join a channel…" data-id="'+t.escapeExpression(t.lambda(null!=n?n.id:n,n))+'"></button>\n\t\t</span>\n'},4:function(t,n,e,a,i){return" highlight"},6:function(t,n,i,o,l){return t.escapeExpression(a(e(169)).call(null!=n?n:t.nullContext||{},null!=n?n.unread:n,{name:"roundBadgeNumber",hash:{},data:l}))},8:function(t,n,e,a,i){return'\t\t<span class="close-tooltip tooltipped tooltipped-w" aria-label="Close">\n\t\t\t<button class="close" aria-label="Close"></button>\n\t\t</span>\n'},10:function(t,n,a,i,o){var l;return null!=(l=t.invokePartial(e(170),n,{name:"join_channel",data:o,indent:"\t",helpers:a,partials:i,decorators:t.decorators}))?l:""},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return null!=(o=e.each.call(null!=n?n:t.nullContext||{},null!=n?n.channels:n,{name:"each",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:""},usePartial:!0,useData:!0})},function(t,n,e){"use strict";t.exports=function(t){return t<1e3?t.toString():(t/1e3).toFixed(2).slice(0,-1)+"k"}},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o,l=null!=n?n:t.nullContext||{},s=e.helperMissing,r=t.escapeExpression;return'<form id="join-channel-'+r((o=null!=(o=e.id||(null!=n?n.id:n))?o:s,"function"==typeof o?o.call(l,{name:"id",hash:{},data:i}):o))+'" class="join-form" method="post" action="" autocomplete="off">\n\t<input type="text" class="input" name="channel" placeholder="Channel" pattern="[^\\s]+" maxlength="200" title="The channel name may not contain spaces" required>\n\t<input type="password" class="input" name="key" placeholder="Password (optional)" pattern="[^\\s]+" maxlength="200" title="The channel password may not contain spaces" autocomplete="new-password">\n\t<button type="submit" class="btn btn-small" data-id="'+r((o=null!=(o=e.id||(null!=n?n.id:n))?o:s,"function"==typeof o?o.call(l,{name:"id",hash:{},data:i}):o))+'">Join</button>\n</form>\n'},useData:!0})},,,function(t,n,e){"use strict";var a;t.exports=function(t,n){return t!==a?(a=t,n.fn(this)):n.inverse(this)}},,,,,,,,,,,,function(t,n,e){"use strict";function a(t,n){if("loading"!==t.type){t.shown=t.shown&&r.shouldOpenMessagePreview(t.type);var e=s(u.msg_preview({preview:t})),a=e.find("img:first");if(0===a.length)return i(t,n,e);a.on("load.preview",function(){a.off(".preview"),i(t,n,e)}),"link"===t.type&&a.on("abort.preview error.preview",function(){a.parent().remove(),i(t,n,e)})}}function i(t,n,e){var a=t.link.replace(/["\\]/g,"\\$&"),i=n.find('.preview[data-url="'+a+'"]');if(i.is(":empty")){var o=n.closest(".messages"),l=o.closest(".chan").data("id")||-1,s=d.find(".chan.active").data("id")||-2;n.find('.text a[href="'+a+'"]').first().after(u.msg_preview_toggle({preview:t}).trim()),i.append(e),s===l&&o.trigger("keepToBottom")}}function o(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=n.pushState,a=void 0===e||e;s(".previous-image").removeClass("previous-image"),s(".next-image").removeClass("next-image");var i=t.closest(".preview").prev(".preview").find(".toggle-content.show .toggle-thumbnail").last();i.length||(i=t.closest(".msg").prevAll().find(".toggle-content.show .toggle-thumbnail").last()),i.addClass("previous-image");var o=t.closest(".preview").next(".preview").find(".toggle-content.show .toggle-thumbnail").first();if(o.length||(o=t.closest(".msg").nextAll().find(".toggle-content.show .toggle-thumbnail").first()),o.addClass("next-image"),m.html(u.image_viewer({image:t.find("img").prop("src"),link:t.prop("href"),type:t.parent().hasClass("toggle-type-link")?"link":"image",hasPreviousImage:i.length>0,hasNextImage:o.length>0})),m.off("transitionend").addClass("opened"),a){var l="";t.closest(".msg").length>0&&(l="#"+t.closest(".msg").prop("id")+" "),l+='a.toggle-thumbnail[href="'+t.prop("href")+'"] img',history.pushState({clickTarget:l},null,null)}}function l(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.pushState,e=void 0===n||n;if(m.removeClass("opened").one("transitionend",function(){m.empty()}),p.trigger("focus"),e){var a='#sidebar .chan[data-id="'+s("#sidebar .chan.active").data("id")+'"]';history.pushState({clickTarget:a},null,null)}}var s=e(2),r=e(13),c=e(3),u=e(8),d=s("#chat"),p=s("#input"),h=e(25);t.exports=a,s("#chat").on("click",".text .toggle-button",function(){var t=s(this),n=t.closest(".chat"),e=t.closest(".content").find('.preview[data-url="'+t.data("url")+'"] .toggle-content'),a=n.isScrollBottom();t.toggleClass("opened"),e.toggleClass("show"),c.emit("msg:preview:toggle",{target:parseInt(t.closest(".chan").data("id"),10),msgId:parseInt(t.closest(".msg").prop("id").replace("msg-",""),10),link:t.data("url"),shown:e.hasClass("show")}),a&&n.scrollBottom()});var m=s("#image-viewer");s("#windows").on("click",".toggle-thumbnail",function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return o(s(this),n),!1}),m.on("click",function(t){l(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{})}),h.bind("esc",function(){return l()}),h.bind(["left","right"],function(t,n){if(m.hasClass("opened")){var e="left"===n?"previous":"next";m.find("."+e+"-image-btn").trigger("click")}}),m.on("click",".previous-image-btn",function(){return s(".previous-image").trigger("click"),!1}),m.on("click",".next-image-btn",function(){return s(".next-image").trigger("click"),!1})},function(t,n,e){"use strict";function a(t){var n={};return l.condensedTypes.forEach(function(e){n[e]=t.data(e)||0}),n}function i(t,n){var e=a(t);o.forOwn(n,function(n,a){e[a]+=n,t.data(a,e[a])});var i=[];l.condensedTypes.forEach(function(t){if(e[t])switch(t){case"away":i.push(e[t]+(e[t]>1?" users have gone away":" user has gone away"));break;case"back":i.push(e[t]+(e[t]>1?" users have come back":" user has come back"));break;case"chghost":i.push(e[t]+(e[t]>1?" users have changed hostname":" user has changed hostname"));break;case"join":i.push(e[t]+(e[t]>1?" users have joined the channel":" user has joined the channel"));break;case"part":i.push(e[t]+(e[t]>1?" users have left the channel":" user has left the channel"));break;case"quit":i.push(e[t]+(e[t]>1?" users have quit":" user has quit"));break;case"nick":i.push(e[t]+(e[t]>1?" users have changed nick":" user has changed nick"));break;case"kick":i.push(e[t]+(e[t]>1?" users were kicked":" user was kicked"));break;case"mode":i.push(e[t]+(e[t]>1?" modes were set":" mode was set"))}});var r=i.pop();i.length&&(r=i.join(", ")+", and "+r),t.find(".condensed-summary .content").html(r+s.msg_condensed_toggle())}var o=e(308),l=e(24),s=e(8);t.exports={updateText:i,getStoredTypes:a}},function(t,n,e){"use strict";function a(t){t.find("button.add-channel").toggleClass("opened");var n=t.find(".add-channel-tooltip"),e=n.data("alt-label");n.data("alt-label",n.prop("aria-label")),n.prop("aria-label",e)}function i(t){var n=t.find(".join-form");n.is(":visible")&&(n.find("input[name='channel']").val(""),n.find("input[name='key']").val(""),n.hide(),a(t))}function o(t){var n=t.find(".join-form");n.is(":hidden")&&(n.show(),a(t)),n.find(".input[name='channel']").trigger("focus")}function l(){d.find(".join-form input, .join-form button").each(function(){var t=s(this).closest(".network");r(this).bind("esc",function(){return i(t)})})}var s=e(2),r=e(25),c=e(3),u=e(11),d=s("#sidebar");t.exports={handleKeybinds:l,openForm:o},d.on("click",".add-channel",function(t){var n=s(t.target).data("id"),e=s("#join-channel-"+n),a=e.closest(".network");return e.is(":visible")?i(a):o(a),!1}),d.on("submit",".join-form",function(){var t=s(this),n=t.find("input[name='channel']"),e=n.val(),a=t.find("input[name='key']"),o=a.val(),l=u.findCurrentNetworkChan(e);return l.length?l.trigger("click"):c.emit("input",{text:"/join "+e+" "+o,target:t.prev().data("id")}),i(t.closest(".network")),!1})},function(t,n,e){"use strict";function a(){o("#version-checker").is(":empty")&&(i({status:"loading"}),l.emit("changelog"))}function i(t){var n=t.status,e=t.latest;o("#version-checker").prop("class",n).html(s.version_checker({latest:e,status:n}))}var o=e(2),l=e(3),s=e(8);t.exports={requestIfNeeded:a},l.on("changelog",function(t){o("#changelog").html(s.windows.changelog(t.current));var n=o("#changelog .changelog-text a");n.prop("target","_blank"),n.has("img").addClass("toggle-thumbnail");var e=void 0;e=t.latest?"new-version":t.current.changelog?"up-to-date":"error",i({latest:t.latest,status:e}),t.expiresAt&&setTimeout(function(){return o("#version-checker #check-now").show()},t.expiresAt-Date.now())}),o("#help").on("click","#check-now",function(){o("#version-checker").empty(),a()})},function(t,n,e){"use strict";e(190);var a=e(2),i=e(0),o=e(158),l=e(162);e(195),e(196);var s=e(197),r=e(8),c=e(3),u=e(15);e(310);var d=e(17),p=e(11);e(30),e(331),e(332);var h=e(188),m=e(187);a(function(){function t(t,n){var e,a=E.outerWidth(),i=E.outerHeight();return t.hasClass("menu")?(e=t.offset(),e.left-=a-t.outerWidth(),e.top+=t.outerHeight(),e):(e={left:n.pageX,top:n.pageY},window.innerWidth-e.left<a&&(e.left=window.innerWidth-a),window.innerHeight-e.top<i&&(e.top=window.innerHeight-i),e)}function n(n,e){var i=a(e.currentTarget),o="";if(i.hasClass("user")){o=r.contextmenu_item({class:"user",action:"whois",text:i.text(),data:i.data("name")}),o+=r.contextmenu_divider(),o+=r.contextmenu_item({class:"action-whois",action:"whois",text:"User information",data:i.data("name")}),o+=r.contextmenu_item({class:"action-query",action:"query",text:"Direct messages",data:i.data("name")});var l=i.closest(".chan");p.isOpInChannel(l)&&"channel"===l.data("type")&&(o+=r.contextmenu_divider(),o+=r.contextmenu_item({class:"action-kick",action:"kick",text:"Kick",data:i.data("name")}))}else if(i.hasClass("chan")){var s=void 0;s=i.hasClass("lobby")?"network":i.hasClass("query")?"query":"chan",o=r.contextmenu_item({class:s,action:"focusChan",text:i.data("title"),data:i.data("target")}),o+=r.contextmenu_divider(),i.hasClass("lobby")&&(o+=r.contextmenu_item({class:"list",action:"list",text:"List all channels",data:i.data("id")}),o+=r.contextmenu_item({class:"join",action:"join",text:"Join a channel…",data:i.data("id")})),i.hasClass("channel")&&(o+=r.contextmenu_item({class:"list",action:"banlist",text:"List banned users",data:i.data("id")})),o+=r.contextmenu_item({class:"close",action:"close",text:i.hasClass("lobby")?"Disconnect":i.hasClass("channel")?"Leave":"Close",data:i.data("target")})}return C.show(),E.html(o).css(t(a(n),e)),!1}function e(t){t.style.height=t.style.minHeight}function f(){var t=a("#nick-value").text().trim();if(0===t.length)return void g();p.toggleNickEditor(!1),c.emit("input",{target:k.data("id"),text:"/nick "+t})}function g(){p.setNick(w.find(".chan.active").closest(".network").data("nick"))}function _(t){var n="/close";if(t.hasClass("lobby")){n="/quit";var e=t.find(".name").html();if(!confirm("Disconnect from "+e+"?"))return!1}return c.emit("input",{target:t.data("id"),text:n}),t.css({transition:"none",opacity:.4}),!1}function v(){return i().add(1,"day").startOf("day")-i()}function b(){a(".date-marker-text[data-label='Today'], .date-marker-text[data-label='Yesterday']").closest(".date-marker-container").each(function(){a(this).replaceWith(r.date_marker({time:a(this).data("time")}))}),setTimeout(b,v())}var w=a("#sidebar, #footer"),k=a("#chat");a(document.body).data("app-name",document.title);var y=a("#viewport"),x=s(y[0],w[0]),C=a("#context-menu-container"),E=a("#context-menu");a("#main").on("click",function(t){a(t.target).is(".lt")?x.toggle(!x.isOpen()):x.isOpen()&&x.toggle(!1)}),y.on("click",".rt",function(t){var n=a(this);y.toggleClass(n.prop("class")),t.stopPropagation(),k.find(".chan.active .chat").trigger("msg.sticky")}),y.on("contextmenu",".network .chan",function(t){return n(this,t)}),y.on("click contextmenu",".user",function(t){return!window.getSelection().isCollapsed||n(this,t)}),y.on("click","#chat .menu",function(t){return t.currentTarget=a('#sidebar .chan[data-id="'+a(this).closest(".chan").data("id")+'"]')[0],n(this,t)}),C.on("click contextmenu",function(){return C.hide(),!1});var j=a("#input").history().on("input",function(){var t=window.getComputedStyle(this);e(this),this.style.height=Math.min(Math.round(window.innerHeight-100),this.scrollHeight+Math.round(parseFloat(t.borderTopWidth)||0)+Math.round(parseFloat(t.borderBottomWidth)||0))+"px",k.find(".chan.active .chat").trigger("msg.sticky")}),M=a.noop;"ontouchstart"in window||navigator.maxTouchPoints>0||(M=function(){k.find(".active").hasClass("chan")&&j.trigger("focus")},a(window).on("focus",M),k.on("click",".chat",function(){setTimeout(function(){window.getSelection().isCollapsed&&M()},2)})),navigator.platform.match(/(Mac|iPhone|iPod|iPad)/i)&&a(document.body).addClass("is-apple"),a("#form").on("submit",function(t){t.preventDefault(),p.forceFocus();var n=j.val();if(0!==n.length){if(j.val(""),e(j.get(0)),"/"===n.charAt(0)){var a=n.substr(1).split(" "),i=a.shift().toLowerCase();if("function"==typeof p.inputCommands[i]&&p.inputCommands[i](a))return}c.emit("input",{target:k.data("id"),text:n})}}),a("button#set-nick").on("click",function(){p.toggleNickEditor(!0);var t=document.querySelector("#nick-value");t.focus();var n=document.createRange();n.selectNodeContents(t);var e=window.getSelection();e.removeAllRanges(),e.addRange(n)}),a("button#cancel-nick").on("click",g),a("button#submit-nick").on("click",f),a("#nick-value").on("keypress",function(t){switch(t.keyCode?t.keyCode:t.which){case 13:t.preventDefault()}}).on("keyup",function(t){switch(t.keyCode?t.keyCode:t.which){case 13:f();break;case 27:g()}}),k.on("click",".inline-channel",function(){var t=a(this).data("chan"),n=p.findCurrentNetworkChan(t);n.length?n.trigger("click"):c.emit("input",{target:k.data("id"),text:"/join "+t})}),k.on("click",".condensed-summary .content",function(){a(this).closest(".msg.condensed").toggleClass("closed")});var S=function(t,n){var e=a(this),i=e.data("target");if(i){e.parents("#sidebar, #footer").length>0&&(k.data("id",e.data("id")),c.emit("open",e.data("id")),w.find(".active").removeClass("active"),e.addClass("active").find(".badge").removeClass("highlight").empty(),0===w.find(".highlight").length&&p.toggleNotificationMarkers(!1),x.toggle(!1));var o=a("#windows > .active");o.removeClass("active").find(".chat").unsticky();var l=o.find(".chan.active");l.length>0&&(l.removeClass("active").find(".unread-marker").data("unread-id",0).appendTo(l.find(".messages")),u.trimMessageInChannel(l,100));var s=a(i).addClass("active").trigger("show"),r=a(document.body).data("app-name");s.data("title")&&(r=s.data("title")+" — "+r),document.title=r;var d=s.data("type"),m="";"channel"!==d&&"query"!==d||(m="Write to "+s.data("title")),j.prop("placeholder",m).prop("aria-label",m),e.hasClass("chan")&&(a("#chat-container").addClass("active"),p.setNick(e.closest(".network").data("nick")));var f=s.find(".chat");if(f.length>0&&"special"!==d&&f.sticky(),!0===s.data("needsNamesRefresh")&&(s.data("needsNamesRefresh",!1),c.emit("names",{target:e.data("id")})),"#settings"===i&&(a("#session-list").html("<p>Loading…</p>"),c.emit("sessions:get")),"#help"!==i&&"#changelog"!==i||h.requestIfNeeded(),M(),!n||!1!==n.pushState){var g={};return e.prop("id")?g.clickTarget="#"+e.prop("id"):e.hasClass("chan")?g.clickTarget='#sidebar .chan[data-id="'+e.data("id")+'"]':g.clickTarget='#footer button[data-target="'+i+'"]',history&&history.pushState&&(n&&n.replaceHistory&&history.replaceState?history.replaceState(g,null,i):history.pushState(g,null,i)),!1}}};w.on("click",".chan, button",S),a("#help").on("click","#view-changelog, #back-to-help",S),a("#changelog").on("click","#back-to-help",S),w.on("click","#sign-out",function(){c.emit("sign-out"),d.remove("token"),c.connected||location.reload()}),w.on("click",".close",function(){_(a(this).closest(".chan"))});var q={join:function(t){var n=a("#join-channel-"+t).closest(".network");m.openForm(n)},close:function(t){_(a('.networks .chan[data-target="'+t+'"]'))},focusChan:function(t){a('.networks .chan[data-target="'+t+'"]').trigger("click")},list:function(t){c.emit("input",{target:t,text:"/list"})},banlist:function(t){c.emit("input",{target:t,text:"/banlist"})},whois:function(t){var n=p.findCurrentNetworkChan(t);n.length&&n.trigger("click"),c.emit("input",{target:a("#chat").data("id"),text:"/whois "+t}),a('.channel.active .users .user[data-name="'+t+'"]').trigger("click")},query:function(t){var n=p.findCurrentNetworkChan(t);n.length&&n.trigger("click"),c.emit("input",{target:a("#chat").data("id"),text:"/query "+t})},kick:function(t){c.emit("input",{target:a("#chat").data("id"),text:"/kick "+t})}};q.execute=function(t){for(var n=arguments.length,e=Array(n>1?n-1:0),a=1;a<n;a++)e[a-1]=arguments[a];return q[t]&&q[t].apply(q,e)},E.on("click",".context-menu-item",function(){var t=a(this),n=t.data("data"),e=t.data("action");q.execute(e,n)}),k.on("input",".search",function(){var t=a(this).val(),n=a(this).closest(".users"),e=n.find(".names-original"),i=n.find(".names-filtered");if(!t.length)return i.hide(),void e.show();var o={pre:"<b>",post:"</b>",extract:function(t){return a(t).text()}},s=l.filter(t,e.find(".user").toArray(),o);e.hide(),i.html(r.user_filtered({matches:s})).show()}),!a("body").hasClass("public")||"#connect"!==window.location.hash&&""!==window.location.hash||a("#connect").one("show",function(){var t=o(document.location.search);t=t.search(!0);for(var n in t)if(t.hasOwnProperty(n)){var e=t[n];n=n.replace(/\W/g,"");var i=a("#connect input[name='"+n+"']");i.length>0&&!i.is(":disabled")&&!i.is(":hidden")&&(i.is(":checkbox")?i.prop("checked","1"===e||"true"===e):i.val(e))}}),a(document).on("visibilitychange focus click",function(){0===w.find(".highlight").length&&p.toggleNotificationMarkers(!1)}),setTimeout(b,v()),window.addEventListener("popstate",function(t){var n=t.state;if(n){var e=n.clickTarget;if(e){!e.includes(".toggle-thumbnail")&&a("#image-viewer").hasClass("opened")&&(e+=", #image-viewer"),a(e).trigger("click",{pushState:!1})}}}),c.open()})},,,,,,function(t,n,e){"use strict";var a=e(2),i=function(t){return t&&t.__esModule?t:{default:t}}(a);!function(t){t.inputhistory={},t.inputhistory.defaultOptions={history:[],preventSubmit:!1},t.fn.history=t.fn.inputhistory=function(n){n=t.extend(t.inputhistory.defaultOptions,n);var e=this;if(e.length>1)return e.each(function(){t(this).history(n)});var a=n.history;a.push("");var i=0;return e.on("keydown",function(t){var o=t.which;switch(o){case 13:if(t.shiftKey||e.data("autocompleting"))return;""!=e.val()&&(i=a.length,a[i-1]=e.val(),a.push(""),a[i-1]==a[i-2]&&(a.splice(-2,1),i--)),n.preventSubmit||e.parents("form").eq(0).submit(),e.val("");break;case 38:case 40:if(t.ctrlKey||t.metaKey||e.data("autocompleting"))break;if(this.value.indexOf("\n")>=0&&38===o&&this.selectionStart>0||40===o&&this.selectionStart<this.value.length)return;a[i]=e.val(),38==o&&0!=i?i--:40==o&&i<a.length-1&&i++,e.val(a[i]);break;default:return}t.preventDefault()}),this}}(i.default)},function(t,n,e){"use strict";var a=e(2),i=function(t){return t&&t.__esModule?t:{default:t}}(a);!function(t){t.fn.unsticky=function(){return this.trigger("unstick.sticky").off(".sticky")},t.fn.sticky=function(){var n=this,e=!0,a=0,i=function(){e&&n.scrollBottom()};return t(window).on("resize.sticky",i),n.on("unstick.sticky",function(){t(window).off("resize.sticky",i)}).on("scroll.sticky",function(){e&&Date.now()-a<250?n.scrollBottom():e=n.isScrollBottom()}).on("scrollBottom.sticky",function(){e=!0,a=Date.now(),this.scrollTop=this.scrollHeight}).on("keepToBottom.sticky",i).scrollBottom(),n},t.fn.scrollBottom=function(){return this.trigger("scrollBottom.sticky"),this},t.fn.isScrollBottom=function(){var t=this[0];return t.scrollHeight-t.scrollTop-t.offsetHeight<=30}}(i.default)},function(t,n,e){"use strict";t.exports=function(t,n){function e(n){d=n,t.classList.toggle("menu-open",n)}function a(){t.removeEventListener("ontouchstart",i)}function i(e){if(1!==e.touches.length)return void l();var a=e.touches.item(0);t.classList.toggle("menu-dragging",!0),u=parseFloat(window.getComputedStyle(n).width),(!d&&a.screenX<50||d&&a.screenX>u)&&(s=a,r=a,c=Date.now(),t.addEventListener("touchmove",o),t.addEventListener("touchend",l,{passive:!0}))}function o(n){var e=r=n.touches.item(0),a=e.screenX-s.screenX;if(Math.abs(a>30)&&(p=!0),!p&&Math.abs(e.screenY-s.screenY)>30)return void l();d&&(a+=u),a>u?a=u:a<0&&(a=0),t.style.transform="translate3d("+a+"px, 0, 0)",p&&(n.preventDefault(),n.stopPropagation())}function l(){var n=r.screenX-s.screenX,a=Math.abs(n);(a>u/2||Date.now()-c<180&&a>50)&&e(n>0),t.removeEventListener("touchmove",o),t.removeEventListener("touchend",l),t.classList.toggle("menu-dragging",!1),t.style.transform=null,s=null,r=null,c=0,p=!1}var s=null,r=null,c=0,u=0,d=!1,p=!1;return t.addEventListener("touchstart",i,{passive:!0}),{disable:a,toggle:e,isOpen:function(){return d}}}},function(t,n,e){function a(t){return e(i(t))}function i(t){var n=o[t];if(!(n+1))throw new Error("Cannot find module '"+t+"'.");return n}var o={"./actions/action.tpl":199,"./actions/away.tpl":234,"./actions/back.tpl":235,"./actions/ban_list.tpl":236,"./actions/channel_list.tpl":237,"./actions/chghost.tpl":238,"./actions/ctcp.tpl":239,"./actions/invite.tpl":240,"./actions/join.tpl":241,"./actions/kick.tpl":242,"./actions/mode.tpl":243,"./actions/nick.tpl":244,"./actions/part.tpl":245,"./actions/quit.tpl":246,"./actions/topic.tpl":247,"./actions/topic_set_by.tpl":248,"./actions/whois.tpl":249,"./chan.tpl":168,"./chat.tpl":250,"./contextmenu_divider.tpl":251,"./contextmenu_item.tpl":252,"./date_marker.tpl":253,"./image_viewer.tpl":256,"./join_channel.tpl":170,"./msg.tpl":257,"./msg_action.tpl":268,"./msg_condensed.tpl":269,"./msg_condensed_toggle.tpl":270,"./msg_preview.tpl":271,"./msg_preview_toggle.tpl":272,"./msg_unhandled.tpl":273,"./network.tpl":274,"./session.tpl":276,"./unread_marker.tpl":277,"./user.tpl":278,"./user_filtered.tpl":280,"./user_name.tpl":4,"./version_checker.tpl":281,"./windows/changelog.tpl":282,"./windows/connect.tpl":283,"./windows/help.tpl":284,"./windows/settings.tpl":285,"./windows/sign_in.tpl":286};a.keys=function(){return Object.keys(o)},a.resolve=i,t.exports=a,a.id=198},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){return'\t<div class="preview" data-url="'+t.escapeExpression(t.lambda(null!=n?n.link:n,n))+'"></div>\n'},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return(null!=(s=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:l,helpers:i,partials:o,decorators:t.decorators}))?s:"")+'<span class="text">'+(null!=(s=a(e(5)).call(r,null!=n?n.text:n,null!=n?n.users:n,{name:"parse",hash:{},data:l}))?s:"")+"</span>\n\n"+(null!=(s=i.each.call(r,null!=n?n.previews:n,{name:"each",hash:{},fn:t.program(1,l,0),inverse:t.noop,data:l}))?s:"")},usePartial:!0,useData:!0})},,,,,,,,,,,,,,,,function(t,n,e){"use strict";function a(t){var n=[],e=0,a=0,i=void 0,_=void 0,v=void 0,b=void 0,w=void 0,k=void 0,y=void 0,x=void 0,C=void 0,E=void 0,j=function(){_=!1,v=void 0,b=void 0,w=void 0,k=void 0,y=!1,x=!1,C=!1,E=!1};j();for(var M=function(){var i=t.slice(e,a),o=i.replace(g,"");if(o.length){var l=n.length?n[n.length-1].end:0;n.push({bold:_,textColor:v,bgColor:b,hexColor:w,hexBgColor:k,italic:y,underline:x,strikethrough:C,monospace:E,text:o,start:l,end:l+o.length})}e=a+1};a<t.length;){switch(t[a]){case r:M(),j();break;case o:M(),_=!_;break;case l:M(),i=t.slice(a+1).match(m),i?(v=Number(i[1]),i[2]&&(b=Number(i[2])),a+=i[0].length,e=a+1):(v=void 0,b=void 0);break;case s:M(),i=t.slice(a+1).match(f),i?(w=i[1].toUpperCase(),i[2]&&(k=i[2].toUpperCase()),a+=i[0].length,e=a+1):(w=void 0,k=void 0);break;case c:M();var S=b;b=v,v=S;break;case u:M(),y=!y;break;case d:M(),x=!x;break;case p:M(),C=!C;break;case h:M(),E=!E}a+=1}return M(),n}function i(t){return a(t).reduce(function(t,n){if(t.length){var e=t[t.length-1];if(_.every(function(t){return n[t]===e[t]}))return e.text+=n.text,e.end+=n.text.length,t}return t.concat([n])},[])}var o="",l="",s="",r="",c="",u="",d="",p="",h="",m=/^(\d{1,2})(?:,(\d{1,2}))?/,f=/^([0-9a-f]{6})(?:,([0-9a-f]{6}))?/i,g=/[\u0000-\u001F]/g,_=["bold","textColor","bgColor","hexColor","hexBgColor","italic","underline","strikethrough","monospace"];t.exports=i},function(t,n,e){"use strict";function a(t,n,e){var a=e.map(i).join(""),o=n.map(i).join(""),l="(?:^|\\s)["+a+"]*(["+o+"][^ ]+)",s=new RegExp(l,"g"),r=[],c=void 0;do{(c=s.exec(t))&&r.push({start:c.index+c[0].length-c[1].length,end:c.index+c[0].length,channel:c[1]})}while(c);return r}var i=e(166);t.exports=a},,,,,,,,,,,,function(t,n,e){"use strict";function a(t){var n=[];try{i.withinString(t,function(t,e,a){var l=void 0;try{l=i(t).scheme().toLowerCase()}catch(t){return}var s=o.find(function(t){return l.endsWith(t)});if(s){var r=l.length-s.length;e+=r,t=t.slice(r)}l.length||(t="http://"+t),n.push({start:e,end:a,link:t})})}catch(t){}return n}var i=e(158),o=["http","https","ftp","sftp","smb","file","irc","ircs","svn","git","steam","mumble","ts3server","svn+ssh","ssh"];t.exports=a},function(t,n,e){"use strict";function a(t){for(var n=[],e=void 0;e=i.exec(t);)n.push({start:e.index,end:e.index+e[0].length,emoji:e[0]});return n}var i=e(230)();t.exports=a},,function(t,n,e){"use strict";function a(t,n){var e=[];if(0===n.length)return e;for(var a=void 0;a=i.exec(t);)n.indexOf(a[1])>-1&&e.push({start:a.index,end:a.index+a[1].length,nick:a[1]});return e}var i=/([\w[\]\\`^{|}-]+)/g;t.exports=a},function(t,n,e){"use strict";function a(t,n){var e=n.start,a=Math.max(n.start,t.start),i=Math.min(n.end,t.end);return s({},n,{start:a,end:i,text:n.text.slice(a-e,i-e)})}function i(t,n){var e=n.reduce(function(t,n){return t+n.text},"");return t.concat(l(t,e)).sort(function(t,n){return t.start-n.start}).map(function(t){return t.fragments=n.filter(function(n){return o(t,n)}).map(function(n){return a(t,n)}),t})}var o=e(165),l=e(233),s=Object.assign;"function"!=typeof s&&(s=function(t){return Array.prototype.slice.call(arguments,1).forEach(function(n){Object.keys(n).forEach(function(e){t[e]=n[e]})}),t}),t.exports=i},function(t,n,e){"use strict";function a(t,n){var e=0,a=t.reduce(function(t,n){return n.start>e&&t.push({start:e,end:n.start}),e=n.end,t},[]);return e<n.length&&a.push({start:e,end:n.length}),a}t.exports=a},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s;return(null!=(s=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:l,helpers:i,partials:o,decorators:t.decorators}))?s:"")+'is away\n<i class="away-message">('+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=n?n.text:n,{name:"parse",hash:{},data:l}))?s:"")+")</i>\n"},usePartial:!0,useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({compiler:[7,">= 4.0.0"],main:function(t,n,a,i,o){var l;return(null!=(l=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+"is back\n"},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return'\t\t\t<tr>\n\t\t\t\t<td class="hostmask">'+t.escapeExpression(t.lambda(null!=n?n.hostmask:n,n))+'</td>\n\t\t\t\t<td class="banned_by">'+(null!=(s=a(e(5)).call(r,null!=n?n.banned_by:n,{name:"parse",hash:{},data:l}))?s:"")+'</td>\n\t\t\t\t<td class="banned_at">'+(null!=(s=a(e(12)).call(r,null!=n?n.banned_at:n,{name:"localetime",hash:{},data:l}))?s:"")+"</td>\n\t\t\t</tr>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return'<table class="ban-list">\n\t<thead>\n\t\t<tr>\n\t\t\t<th class="hostmask">Banned</th>\n\t\t\t<th class="banned_by">Banned By</th>\n\t\t\t<th class="banned_at">Banned At</th>\n\t\t</tr>\n\t</thead>\n\t<tbody>\n'+(null!=(o=e.each.call(null!=n?n:t.nullContext||{},null!=n?n.bans:n,{name:"each",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:"")+"\t</tbody>\n</table>\n"},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return'\t\t\t<tr>\n\t\t\t\t<td class="channel">'+(null!=(s=a(e(5)).call(r,null!=n?n.channel:n,{name:"parse",hash:{},data:l}))?s:"")+'</td>\n\t\t\t\t<td class="users">'+t.escapeExpression(t.lambda(null!=n?n.num_users:n,n))+'</td>\n\t\t\t\t<td class="topic">'+(null!=(s=a(e(5)).call(r,null!=n?n.topic:n,{name:"parse",hash:{},data:l}))?s:"")+"</td>\n\t\t\t</tr>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return'<table class="channel-list">\n\t<thead>\n\t\t<tr>\n\t\t\t<th class="channel">Channel</th>\n\t\t\t<th class="users">Users</th>\n\t\t\t<th class="topic">Topic</th>\n\t\t</tr>\n\t</thead>\n\t<tbody>\n'+(null!=(o=e.each.call(null!=n?n:t.nullContext||{},null!=n?n.channels:n,{name:"each",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:"")+"\t</tbody>\n</table>\n"},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({1:function(t,n,e,a,i){var o;return"username to <b>"+t.escapeExpression(t.lambda(null!=n?n.new_ident:n,n))+"</b>"+(null!=(o=e.if.call(null!=n?n:t.nullContext||{},null!=n?n.new_host:n,{name:"if",hash:{},fn:t.program(2,i,0),inverse:t.noop,data:i}))?o:"")},2:function(t,n,e,a,i){return", and"},4:function(t,n,e,a,i){return'hostname to <i class="hostmask">'+t.escapeExpression(t.lambda(null!=n?n.new_host:n,n))+"</i>"},compiler:[7,">= 4.0.0"],main:function(t,n,a,i,o){var l,s=null!=n?n:t.nullContext||{};return(null!=(l=t.invokePartial(e(4),n,{name:"../user_name",hash:{mode:null!=(l=null!=n?n.from:n)?l.mode:l,nick:null!=(l=null!=n?n.from:n)?l.nick:l},data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+"has changed\n"+(null!=(l=a.if.call(s,null!=n?n.new_ident:n,{name:"if",hash:{},fn:t.program(1,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=n?n.new_host:n,{name:"if",hash:{},fn:t.program(4,o,0),inverse:t.noop,data:o}))?l:"")+"\n"},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s;return(null!=(s=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:l,helpers:i,partials:o,decorators:t.decorators}))?s:"")+"<b>"+t.escapeExpression(t.lambda(null!=n?n.ctcpType:n,n))+'</b> <span class="ctcp-message">'+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=n?n.ctcpMessage:n,{name:"parse",hash:{},data:l}))?s:"")+"</span>\n"},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){return"\tyou\n"},3:function(t,n,a,i,o){var l;return null!=(l=t.invokePartial(e(4),null!=n?n.target:n,{name:"../user_name",data:o,indent:"\t",helpers:a,partials:i,decorators:t.decorators}))?l:""},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return(null!=(s=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:l,helpers:i,partials:o,decorators:t.decorators}))?s:"")+"invited\n"+(null!=(s=i.if.call(r,null!=n?n.invitedYou:n,{name:"if",hash:{},fn:t.program(1,l,0),inverse:t.program(3,l,0),data:l}))?s:"")+"to\n"+(null!=(s=a(e(5)).call(r,null!=n?n.channel:n,{name:"parse",hash:{},data:l}))?s:"")+"\n"},usePartial:!0,useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({compiler:[7,">= 4.0.0"],main:function(t,n,a,i,o){var l;return(null!=(l=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+'<i class="hostmask">('+t.escapeExpression(t.lambda(null!=n?n.hostmask:n,n))+")</i>\nhas joined the channel\n"},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s;return'\t<i class="part-reason">('+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=n?n.text:n,{name:"parse",hash:{},data:l}))?s:"")+")</i>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,a,i,o){var l;return(null!=(l=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+"has kicked\n"+(null!=(l=t.invokePartial(e(4),null!=n?n.target:n,{name:"../user_name",data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+(null!=(l=a.if.call(null!=n?n:t.nullContext||{},null!=n?n.text:n,{name:"if",hash:{},fn:t.program(1,o,0),inverse:t.noop,data:o}))?l:"")},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s;return(null!=(s=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:l,helpers:i,partials:o,decorators:t.decorators}))?s:"")+"sets mode\n"+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=n?n.text:n,{name:"parse",hash:{},data:l}))?s:"")+"\n"},usePartial:!0,useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({compiler:[7,">= 4.0.0"],main:function(t,n,a,i,o){var l;return(null!=(l=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+"is now known as\n"+(null!=(l=t.invokePartial(e(4),n,{name:"../user_name",hash:{mode:null!=(l=null!=n?n.from:n)?l.mode:l,nick:null!=n?n.new_nick:n},data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s;return'\t<i class="part-reason">('+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=n?n.text:n,{name:"parse",hash:{},data:l}))?s:"")+")</i>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,a,i,o){var l;return(null!=(l=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+'<i class="hostmask">('+t.escapeExpression(t.lambda(null!=n?n.hostmask:n,n))+")</i>\nhas left the channel\n"+(null!=(l=a.if.call(null!=n?n:t.nullContext||{},null!=n?n.text:n,{name:"if",hash:{},fn:t.program(1,o,0),inverse:t.noop,data:o}))?l:"")},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s;return'\t<i class="quit-reason">('+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=n?n.text:n,{name:"parse",hash:{},data:l}))?s:"")+")</i>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,a,i,o){var l;return(null!=(l=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+'<i class="hostmask">('+t.escapeExpression(t.lambda(null!=n?n.hostmask:n,n))+")</i>\nhas quit\n"+(null!=(l=a.if.call(null!=n?n:t.nullContext||{},null!=n?n.text:n,{name:"if",hash:{},fn:t.program(1,o,0),inverse:t.noop,data:o}))?l:"")},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,a,i,o){var l;return(null!=(l=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:o,indent:"\t",helpers:a,partials:i,decorators:t.decorators}))?l:"")+"\thas changed the topic to:\n"},3:function(t,n,e,a,i){return"\tThe topic is:\n"},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return(null!=(s=i.if.call(r,null!=(s=null!=n?n.from:n)?s.nick:s,{name:"if",hash:{},fn:t.program(1,l,0),inverse:t.program(3,l,0),data:l}))?s:"")+'\n<span class="new-topic">'+(null!=(s=a(e(5)).call(r,null!=n?n.text:n,{name:"parse",hash:{},data:l}))?s:"")+"</span>\n"},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s;return"Topic set by\n"+(null!=(s=t.invokePartial(e(4),null!=n?n.from:n,{name:"../user_name",data:l,helpers:i,partials:o,decorators:t.decorators}))?s:"")+"on "+t.escapeExpression(a(e(12)).call(null!=n?n:t.nullContext||{},null!=n?n.when:n,{name:"localetime",hash:{},data:l}))+"\n"},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){var o;return"\t<dt>Logged in as:</dt>\n\t<dd>"+t.escapeExpression(t.lambda(null!=(o=null!=n?n.whois:n)?o.account:o,n))+"</dd>\n"},3:function(t,n,i,o,l){var s,r=t.lambda,c=t.escapeExpression;return'\t<dt>Actual host:</dt>\n\t<dd class="hostmask"><a href="https://ipinfo.io/'+c(r(null!=(s=null!=n?n.whois:n)?s.actualip:s,n))+'" target="_blank" rel="noopener">'+c(r(null!=(s=null!=n?n.whois:n)?s.actualip:s,n))+"</a>"+(null!=(s=a(e(167)).call(null!=n?n:t.nullContext||{},null!=(s=null!=n?n.whois:n)?s.actualhost:s,null!=(s=null!=n?n.whois:n)?s.actualip:s,{name:"notEqual",hash:{},fn:t.program(4,l,0),inverse:t.noop,data:l}))?s:"")+"</dd>\n"},4:function(t,n,e,a,i){var o;return" ("+t.escapeExpression(t.lambda(null!=(o=null!=n?n.whois:n)?o.actualhost:o,n))+")"},6:function(t,n,i,o,l){var s;return"\t<dt>Real name:</dt>\n\t<dd>"+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=(s=null!=n?n.whois:n)?s.real_name:s,{name:"parse",hash:{},data:l}))?s:"")+"</dd>\n"},8:function(t,n,e,a,i){var o;return"\t<dt>Registered nick:</dt>\n\t<dd>"+t.escapeExpression(t.lambda(null!=(o=null!=n?n.whois:n)?o.registered_nick:o,n))+"</dd>\n"},10:function(t,n,i,o,l){var s;return"\t<dt>Channels:</dt>\n\t<dd>"+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=(s=null!=n?n.whois:n)?s.channels:s,{name:"parse",hash:{},data:l}))?s:"")+"</dd>\n"},12:function(t,n,e,a,i){var o;return"\t<dt>Modes:</dt>\n\t<dd>"+t.escapeExpression(t.lambda(null!=(o=null!=n?n.whois:n)?o.modes:o,n))+"</dd>\n"},14:function(t,n,e,a,i){var o;return"\t<dt>Special:</dt>\n\t<dd>"+t.escapeExpression(t.lambda(null!=(o=null!=n?n.whois:n)?o.special:o,n))+"</dd>\n"},16:function(t,n,e,a,i){var o;return"\t<dt>Operator:</dt>\n\t<dd>"+t.escapeExpression(t.lambda(null!=(o=null!=n?n.whois:n)?o.operator:o,n))+"</dd>\n"},18:function(t,n,e,a,i){return"\t<dt>Available for help:</dt>\n\t<dd>Yes</dd>\n"},20:function(t,n,e,a,i){return"\t<dt>Is a bot:</dt>\n\t<dd>Yes</dd>\n"},22:function(t,n,i,o,l){var s;return"\t<dt>Away:</dt>\n\t<dd>"+(null!=(s=a(e(5)).call(null!=n?n:t.nullContext||{},null!=(s=null!=n?n.whois:n)?s.away:s,{name:"parse",hash:{},data:l}))?s:"")+"</dd>\n"},24:function(t,n,e,a,i){return"\t<dt>Secure connection:</dt>\n\t<dd>Yes</dd>\n"},26:function(t,n,e,a,i){var o,l=t.lambda,s=t.escapeExpression;return"\t<dt>Connected to:</dt>\n\t<dd>"+s(l(null!=(o=null!=n?n.whois:n)?o.server:o,n))+" <i>("+s(l(null!=(o=null!=n?n.whois:n)?o.server_info:o,n))+")</i></dd>\n"},28:function(t,n,i,o,l){var s;return"\t<dt>Connected at:</dt>\n\t<dd>"+t.escapeExpression(a(e(12)).call(null!=n?n:t.nullContext||{},null!=(s=null!=n?n.whois:n)?s.logonTime:s,{name:"localetime",hash:{},data:l}))+"</dd>\n"},30:function(t,n,i,o,l){var s;return"\t<dt>Idle since:</dt>\n\t<dd>"+t.escapeExpression(a(e(12)).call(null!=n?n:t.nullContext||{},null!=(s=null!=n?n.whois:n)?s.idleTime:s,{name:"localetime",hash:{},data:l}))+"</dd>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,a,i,o){var l,s=null!=n?n:t.nullContext||{},r=t.lambda,c=t.escapeExpression;return"<p>"+(null!=(l=t.invokePartial(e(4),n,{name:"../user_name",hash:{nick:null!=(l=null!=n?n.whois:n)?l.nick:l},data:o,helpers:a,partials:i,decorators:t.decorators}))?l:"")+'</p>\n<dl class="whois">\n'+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.account:l,{name:"if",hash:{},fn:t.program(1,o,0),inverse:t.noop,data:o}))?l:"")+'\n\t<dt>Host mask:</dt>\n\t<dd class="hostmask">'+c(r(null!=(l=null!=n?n.whois:n)?l.user:l,n))+"@"+c(r(null!=(l=null!=n?n.whois:n)?l.host:l,n))+"</dd>\n\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.actualhost:l,{name:"if",hash:{},fn:t.program(3,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.real_name:l,{name:"if",hash:{},fn:t.program(6,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.registered_nick:l,{name:"if",hash:{},fn:t.program(8,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.channels:l,{name:"if",hash:{},fn:t.program(10,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.modes:l,{name:"if",hash:{},fn:t.program(12,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.special:l,{name:"if",hash:{},fn:t.program(14,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.operator:l,{name:"if",hash:{},fn:t.program(16,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.helpop:l,{name:"if",hash:{},fn:t.program(18,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.bot:l,{name:"if",hash:{},fn:t.program(20,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.away:l,{name:"if",hash:{},fn:t.program(22,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.secure:l,{name:"if",hash:{},fn:t.program(24,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.server:l,{name:"if",hash:{},fn:t.program(26,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.logonTime:l,{name:"if",hash:{},fn:t.program(28,o,0),inverse:t.noop,data:o}))?l:"")+"\n"+(null!=(l=a.if.call(s,null!=(l=null!=n?n.whois:n)?l.idle:l,{name:"if",hash:{},fn:t.program(30,o,0),inverse:t.noop,data:o}))?l:"")+"</dl>\n"},usePartial:!0,useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s,r=t.lambda,c=t.escapeExpression,u=null!=n?n:t.nullContext||{};return'<div\n\tid="chan-'+c(r(null!=n?n.id:n,n))+'"\n\tclass="chan '+c(r(null!=n?n.type:n,n))+'"\n\tdata-id="'+c(r(null!=n?n.id:n,n))+'"\n\tdata-title="'+c(r(null!=n?n.name:n,n))+'"\n\tdata-type="'+c(r(null!=n?n.type:n,n))+'"\n>\n\t<div class="header">\n\t\t<button class="lt" aria-label="Toggle channel list"></button>\n'+(null!=(s=a(e(7)).call(u,null!=n?n.type:n,"channel",{name:"equal",hash:{},fn:t.program(2,l,0),inverse:t.noop,data:l}))?s:"")+'\t\t<button class="menu" aria-label="Open the context menu"></button>\n\t\t<span class="title">'+c(r(null!=n?n.name:n,n))+'</span>\n\t\t<span title="'+c(r(null!=n?n.topic:n,n))+'" class="topic">'+(null!=(s=a(e(5)).call(u,null!=n?n.topic:n,{name:"parse",hash:{},data:l}))?s:"")+'</span>\n\t</div>\n\t<div class="chat">\n\t\t<div class="show-more'+(null!=(s=i.if.call(u,null!=(s=null!=n?n.messages:n)?s.length:s,{name:"if",hash:{},fn:t.program(4,l,0),inverse:t.noop,data:l}))?s:"")+'">\n\t\t\t<button class="show-more-button" data-id="'+c(r(null!=n?n.id:n,n))+'">Show older messages</button>\n\t\t</div>\n\t\t<div class="messages"></div>\n\t</div>\n'+(null!=(s=a(e(7)).call(u,null!=n?n.type:n,"channel",{name:"equal",hash:{},fn:t.program(6,l,0),inverse:t.noop,data:l}))?s:"")+"</div>\n"},2:function(t,n,e,a,i){return'\t\t\t<span class="rt-tooltip tooltipped tooltipped-w" aria-label="Toggle user list">\n\t\t\t\t<button class="rt" aria-label="Toggle user list"></button>\n\t\t\t</span>\n'},4:function(t,n,e,a,i){return" show"},6:function(t,n,e,a,i){return'\t<aside class="sidebar">\n\t\t<div class="users">\n\t\t\t<div class="count">\n\t\t\t\t<input type="search" class="search" aria-label="Search among the user list" tabindex="-1">\n\t\t\t</div>\n\t\t\t<div class="names names-filtered"></div>\n\t\t\t<div class="names names-original"></div>\n\t\t</div>\n\t</aside>\n'},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return null!=(o=e.each.call(null!=n?n:t.nullContext||{},null!=n?n.channels:n,{name:"each",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:""},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){return'<li class="context-menu-divider" />\n'},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({1:function(t,n,e,a,i){var o;return' data-data="'+t.escapeExpression((o=null!=(o=e.data||(null!=n?n.data:n))?o:e.helperMissing,"function"==typeof o?o.call(null!=n?n:t.nullContext||{},{name:"data",hash:{},data:i}):o))+'"'},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o,l,s=null!=n?n:t.nullContext||{},r=e.helperMissing,c=t.escapeExpression;return'<li class="context-menu-item context-menu-'+c((l=null!=(l=e.class||(null!=n?n.class:n))?l:r,"function"==typeof l?l.call(s,{name:"class",hash:{},data:i}):l))+'" data-action="'+c((l=null!=(l=e.action||(null!=n?n.action:n))?l:r,"function"==typeof l?l.call(s,{name:"action",hash:{},data:i}):l))+'"'+(null!=(o=e.if.call(s,null!=n?n.data:n,{name:"if",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:"")+">\n\t"+c((l=null!=(l=e.text||(null!=n?n.text:n))?l:r,"function"==typeof l?l.call(s,{name:"text",hash:{},data:i}):l))+"\n</li>\n"},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s=t.escapeExpression,r=null!=n?n:t.nullContext||{};return'<div class="date-marker-container tooltipped tooltipped-s" data-time="'+s(t.lambda(null!=n?n.time:n,n))+'" aria-label="'+s(a(e(254)).call(r,null!=n?n.time:n,{name:"localedate",hash:{},data:l}))+'">\n\t<div class="date-marker">\n\t\t<span class="date-marker-text" data-label="'+s(a(e(255)).call(r,null!=n?n.time:n,{name:"friendlydate",hash:{},data:l}))+'"></span>\n\t</div>\n</div>\n'},useData:!0})},function(t,n,e){"use strict";var a=e(0);t.exports=function(t){return a(t).format("D MMMM YYYY")}},function(t,n,e){"use strict";var a=e(0);t.exports=function(t){return a(t).calendar(null,{sameDay:"[Today]",lastDay:"[Yesterday]",lastWeek:"D MMMM YYYY",sameElse:"D MMMM YYYY"})}},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){return' <button class="previous-image-btn" aria-label="Previous image"></button>\n'},3:function(t,n,e,a,i){return' <button class="next-image-btn" aria-label="Next image"></button>\n'},5:function(t,n,e,a,i){return" Open image\n"},7:function(t,n,e,a,i){return" Visit page\n"},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{},c=t.lambda,u=t.escapeExpression;return'<button class="close-btn" aria-label="Close"></button>\n\n'+(null!=(s=i.if.call(r,null!=n?n.hasPreviousImage:n,{name:"if",hash:{},fn:t.program(1,l,0),inverse:t.noop,data:l}))?s:"")+"\n"+(null!=(s=i.if.call(r,null!=n?n.hasNextImage:n,{name:"if",hash:{},fn:t.program(3,l,0),inverse:t.noop,data:l}))?s:"")+'\n<a class="image-link" href="'+u(c(null!=n?n.link:n,n))+'" target="_blank">\n <img src="'+u(c(null!=n?n.image:n,n))+'" decoding="async" alt="">\n</a>\n\n<a class="btn open-btn" href="'+u(c(null!=n?n.link:n,n))+'" target="_blank">\n'+(null!=(s=a(e(7)).call(r,null!=n?n.type:n,"image",{name:"equal",hash:{},fn:t.program(5,l,0),inverse:t.program(7,l,0),data:l}))?s:"")+"</a>\n"},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){return" self"},3:function(t,n,e,a,i){return" highlight"},5:function(t,n,e,a,i){var o;return' data-from="'+t.escapeExpression(t.lambda(null!=(o=null!=n?n.from:n)?o.nick:o,n))+'"'},7:function(t,n,a,i,o){var l;return null!=(l=t.invokePartial(e(4),null!=n?n.from:n,{name:"user_name",data:o,indent:"\t\t\t",helpers:a,partials:i,decorators:t.decorators}))?l:""},9:function(t,n,e,a,i){return'\t\t\t<div class="preview" data-url="'+t.escapeExpression(t.lambda(null!=n?n.link:n,n))+'"></div>\n'},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s,r=t.lambda,c=t.escapeExpression,u=null!=n?n:t.nullContext||{};return'<div class="msg '+c(r(null!=n?n.type:n,n))+(null!=(s=i.if.call(u,null!=n?n.self:n,{name:"if",hash:{},fn:t.program(1,l,0),inverse:t.noop,data:l}))?s:"")+(null!=(s=i.if.call(u,null!=n?n.highlight:n,{name:"if",hash:{},fn:t.program(3,l,0),inverse:t.noop,data:l}))?s:"")+'" id="msg-'+c(r(null!=n?n.id:n,n))+'" data-time="'+c(r(null!=n?n.time:n,n))+'"'+(null!=(s=i.if.call(u,null!=(s=null!=n?n.from:n)?s.nick:s,{name:"if",hash:{},fn:t.program(5,l,0),inverse:t.noop,data:l}))?s:"")+'>\n\t<span class="time tooltipped tooltipped-e" aria-label="'+c(a(e(12)).call(u,null!=n?n.time:n,{name:"localetime",hash:{},data:l}))+'">\n\t\t'+c(a(e(21)).call(u,null!=n?n.time:n,{name:"tz",hash:{},data:l}))+'\n\t</span>\n\t<span class="from">\n'+(null!=(s=i.if.call(u,null!=(s=null!=n?n.from:n)?s.nick:s,{name:"if",hash:{},fn:t.program(7,l,0),inverse:t.noop,data:l}))?s:"")+'\t</span>\n\t<span class="content">\n\t\t<span class="text">'+(null!=(s=a(e(5)).call(u,null!=n?n.text:n,null!=n?n.users:n,{name:"parse",hash:{},data:l}))?s:"")+"</span>\n\n"+(null!=(s=i.each.call(u,null!=n?n.previews:n,{name:"each",hash:{},fn:t.program(9,l,0),inverse:t.noop,data:l}))?s:"")+"\t</span>\n</div>\n"},usePartial:!0,useData:!0})},function(t,n,e){"use strict";function a(){var t=0,n="",e=[];v.on("input.tabcomplete",function(){t=0,e=[],n=""}),d(v.get(0)).bind("tab",function(a){if(!v.data("autocompleting")){a.preventDefault();var i=v.val();if(v.get(0).selectionStart===i.length){if(0===t){if(n=i.split(/\s/).pop(),0===n.length)return;if(e=o(n,!1),0===e.length)return}var l=v.get(0).selectionStart-n.length,s=C.replace([0,e[t%e.length]],l);v.val(i.substr(0,l)+s),n=s,t++}}},"keydown");var a=new m(v.get(0));b=new h(a,{dropdown:{className:"textcomplete-menu",placement:"top"}}),b.register([x,C,E,j,M,S]),b.on("rendered",function(){b.dropdown.items.length>0&&b.dropdown.items[0].activate()}),b.on("show",function(){v.data("autocompleting",!0)}),b.on("hidden",function(){v.data("autocompleting",!1)})}function i(t,n){return u.filter(t,n,{pre:"<b>",post:"</b>"}).map(function(t){return[t.string,t.original]})}function o(t,n){var e=w.find(".active .users");if(t=t.toLowerCase(),!e.length)return[];var a=e.data("nicks");return n?i(t,a):c.grep(a,function(n){return!n.toLowerCase().indexOf(t)})}function l(t){return i(t,_.commands.slice())}function s(t){var n=[];return k.find(".chan.active").parent().find(".chan").each(function(){var t=c(this);t.hasClass("lobby")||n.push(t.data("title"))}),i(t,n)}var r=function(){function t(t,n){var e=[],a=!0,i=!1,o=void 0;try{for(var l,s=t[Symbol.iterator]();!(a=(l=s.next()).done)&&(e.push(l.value),!n||e.length!==n);a=!0);}catch(t){i=!0,o=t}finally{try{!a&&s.return&&s.return()}finally{if(i)throw o}}return e}return function(n,e){if(Array.isArray(n))return n;if(Symbol.iterator in Object(n))return t(n,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),c=e(2),u=e(162),d=e(25),p=e(259),h=p.Textcomplete,m=p.Textarea,f=e(267),g=e(13),_=e(24),v=c("#input"),b=void 0;t.exports={enable:a,disable:function(){v.off("input.tabcomplete"),d(v.get(0)).off("tab","keydown"),b&&(b.destroy(),b=null)}};var w=c("#chat"),k=c("#sidebar"),y=Object.keys(f),x={id:"emoji",match:/\B:([-+\w:?]{2,}):?$/,search:function(t,n){t=t.replace(/:$/,""),n(i(t,y))},template:function(t){var n=r(t,2),e=n[0],a=n[1];return'<span class="emoji">'+f[a]+"</span> "+e},replace:function(t){var n=r(t,2),e=n[1];return f[e]},index:1},C={id:"nicks",match:/\B(@([a-zA-Z_[\]\\^{}|`@][a-zA-Z0-9_[\]\\^{}|`-]*)?)$/,search:function(t,n){t=t.slice(1),n("@"===t[0]?o(t.slice(1),!0).map(function(t){return["@"+t[0],"@"+t[1]]}):o(t,!0))},template:function(t){return r(t,1)[0]},replace:function(t){var n=r(t,2),e=n[1],a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return g.nickPostfix?a>0&&/\s/.test(v.val())?e+" ":e+g.nickPostfix:e},index:1},E={id:"chans",match:/\B((#|\+|&|![A-Z0-9]{5})([^\x00\x0A\x0D\x20\x2C\x3A]+(:[^\x00\x0A\x0D\x20\x2C\x3A]*)?)?)$/,search:function(t,n,e){n(s(e[0]))},template:function(t){return r(t,1)[0]},replace:function(t){return r(t,2)[1]},index:1},j={id:"commands",match:/^\/(\w*)$/,search:function(t,n){n(l("/"+t))},template:function(t){return r(t,1)[0]},replace:function(t){return r(t,2)[1]},index:1},M={id:"foreground-colors",match:/\x03(\d{0,2}|[A-Za-z ]{0,10})$/,search:function(t,n){t=t.toLowerCase(),n(_.colorCodeMap.filter(function(n){return u.test(t,n[0])||u.test(t,n[1])}).map(function(n){return u.test(t,n[1])?[n[0],u.match(t,n[1],{pre:"<b>",post:"</b>"}).rendered]:n}))},template:function(t){return'<span class="irc-fg'+parseInt(t[0],10)+'">'+t[1]+"</span>"},replace:function(t){return""+t[0]},index:1},S={id:"background-colors",match:/\x03(\d{2}),(\d{0,2}|[A-Za-z ]{0,10})$/,search:function(t,n,e){t=t.toLowerCase(),n(_.colorCodeMap.filter(function(n){return u.test(t,n[0])||u.test(t,n[1])}).map(function(n){return u.test(t,n[1])?[n[0],u.match(t,n[1],{pre:"<b>",post:"</b>"}).rendered]:n}).map(function(t){return t.concat(e[1])}))},template:function(t){return'<span class="irc-fg'+parseInt(t[2],10)+" irc-bg irc-bg"+parseInt(t[0],10)+'">'+t[1]+"</span>"},replace:function(t){return"$1,"+t[0]},index:2}},,,,,,,,,function(t,n){t.exports={100:"💯",1234:"🔢",interrobang:"⁉️",tm:"™️",information_source:"ℹ️",left_right_arrow:"↔️",arrow_up_down:"↕️",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrow_lower_right:"↘️",arrow_lower_left:"↙️",keyboard:"⌨️",sunny:"☀️",cloud:"☁️",umbrella2:"☂️",snowman2:"☃️",comet:"☄️",ballot_box_with_check:"☑️",umbrella:"☔",coffee:"☕",shamrock:"☘️",skull_crossbones:"☠️",radioactive:"☢️",biohazard:"☣️",orthodox_cross:"☦️",wheel_of_dharma:"☸️",frowning2:"☹️",white_frowning_face:"☹️",female_sign:"♀️",male_sign:"♂️",aries:"♈",taurus:"♉",sagittarius:"♐",capricorn:"♑",aquarius:"♒",pisces:"♓",spades:"♠️",clubs:"♣️",hearts:"♥️",diamonds:"♦️",hotsprings:"♨️",hammer_pick:"⚒️",anchor:"⚓",crossed_swords:"⚔️",medical_symbol:"⚕️",scales:"⚖️",alembic:"⚗️",gear:"⚙️",scissors:"✂️",white_check_mark:"✅",airplane:"✈️",envelope:"✉️",black_nib:"✒️",heavy_check_mark:"✔️",heavy_multiplication_x:"✖️",star_of_david:"✡️",sparkles:"✨",eight_spoked_asterisk:"✳️",eight_pointed_black_star:"✴️",snowflake:"❄️",sparkle:"❇️",question:"❓",grey_question:"❔",grey_exclamation:"❕",exclamation:"❗",heart_exclamation:"❣️",heart:"❤️",heavy_plus_sign:"➕",heavy_minus_sign:"➖",heavy_division_sign:"➗",arrow_heading_up:"⤴️",arrow_heading_down:"⤵️",wavy_dash:"〰️",congratulations:"㊗️",secret:"㊙️",grinning:"😀",smiley:"😃",smile:"😄",grin:"😁",laughing:"😆",satisfied:"😆",sweat_smile:"😅",joy:"😂",rofl:"🤣",relaxed:"☺️",blush:"😊",innocent:"😇",slight_smile:"🙂",upside_down:"🙃",wink:"😉",relieved:"😌",heart_eyes:"😍",kissing_heart:"😘",kissing:"😗",kissing_smiling_eyes:"😙",kissing_closed_eyes:"😚",yum:"😋",stuck_out_tongue_winking_eye:"😜",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue:"😛",money_mouth:"🤑",hugging:"🤗",nerd:"🤓",sunglasses:"😎",clown:"🤡",cowboy:"🤠",smirk:"😏",unamused:"😒",disappointed:"😞",pensive:"😔",worried:"😟",confused:"😕",slight_frown:"🙁",persevere:"😣",confounded:"😖",tired_face:"😫",weary:"😩",triumph:"😤",angry:"😠",rage:"😡",no_mouth:"😶",neutral_face:"😐",expressionless:"😑",hushed:"😯",frowning:"😦",anguished:"😧",open_mouth:"😮",astonished:"😲",dizzy_face:"😵",flushed:"😳",scream:"😱",fearful:"😨",cold_sweat:"😰",cry:"😢",disappointed_relieved:"😥",drooling_face:"🤤",sob:"😭",sweat:"😓",sleepy:"😪",sleeping:"😴",rolling_eyes:"🙄",thinking:"🤔",lying_face:"🤥",liar:"🤥",grimacing:"😬",zipper_mouth:"🤐",nauseated_face:"🤢",sick:"🤢",sneezing_face:"🤧",mask:"😷",thermometer_face:"🤒",face_with_thermometer:"🤒",head_bandage:"🤕",smiling_imp:"😈",imp:"👿",japanese_ogre:"👹",japanese_goblin:"👺",poop:"💩",shit:"💩",hankey:"💩",ghost:"👻",skull:"💀",skeleton:"💀",alien:"👽",space_invader:"👾",robot:"🤖",jack_o_lantern:"🎃",smiley_cat:"😺",smile_cat:"😸",joy_cat:"😹",heart_eyes_cat:"😻",smirk_cat:"😼",kissing_cat:"😽",scream_cat:"🙀",crying_cat_face:"😿",pouting_cat:"😾",open_hands:"👐",raised_hands:"🙌",clap:"👏",pray:"🙏",handshake:"🤝",shaking_hands:"🤝",thumbsup:"👍","+1":"👍",thumbsdown:"👎","-1":"👎",punch:"👊",fist:"✊",left_facing_fist:"🤛",right_facing_fist:"🤜",fingers_crossed:"🤞",hand_with_index_and_middle_finger_crossed:"🤞",v:"✌️",metal:"🤘",sign_of_the_horns:"🤘",ok_hand:"👌",point_left:"👈",point_right:"👉",point_up_2:"👆",point_down:"👇",point_up:"☝️",raised_hand:"✋",raised_back_of_hand:"🤚",hand_splayed:"🖐️",vulcan:"🖖",raised_hand_with_part_between_middle_and_ring_fingers:"🖖",wave:"👋",call_me:"🤙",muscle:"💪",middle_finger:"🖕",writing_hand:"✍️",selfie:"🤳",nail_care:"💅",ring:"💍",lipstick:"💄",kiss:"💋",lips:"👄",tongue:"👅",ear:"👂",nose:"👃",footprints:"👣",eye:"👁️",eyes:"👀",speaking_head:"🗣️",bust_in_silhouette:"👤",busts_in_silhouette:"👥",baby:"👶",boy:"👦",girl:"👧",man:"👨",woman:"👩",blond_haired_woman:"👱‍♀️",blond_haired_person:"👱",person_with_blond_hair:"👱",blond_haired_man:"👱‍♂️",older_man:"👴",older_woman:"👵",grandma:"👵",man_with_chinese_cap:"👲",man_with_gua_pi_mao:"👲",woman_wearing_turban:"👳‍♀️",person_wearing_turban:"👳",man_with_turban:"👳",man_wearing_turban:"👳‍♂️",woman_police_officer:"👮‍♀️",police_officer:"👮",cop:"👮",man_police_officer:"👮‍♂️",woman_construction_worker:"👷‍♀️",construction_worker:"👷",man_construction_worker:"👷‍♂️",woman_guard:"💂‍♀️",guard:"💂",man_guard:"💂‍♂️",woman_detective:"🕵️‍♀️",detective:"🕵️",spy:"🕵️",sleuth_or_spy:"🕵️",man_detective:"🕵️‍♂️",woman_health_worker:"👩‍⚕️",man_health_worker:"👨‍⚕️",woman_farmer:"👩‍🌾",man_farmer:"👨‍🌾",woman_cook:"👩‍🍳",man_cook:"👨‍🍳",woman_student:"👩‍🎓",man_student:"👨‍🎓",woman_singer:"👩‍🎤",man_singer:"👨‍🎤",woman_teacher:"👩‍🏫",man_teacher:"👨‍🏫",woman_factory_worker:"👩‍🏭",man_factory_worker:"👨‍🏭",woman_technologist:"👩‍💻",man_technologist:"👨‍💻",woman_office_worker:"👩‍💼",man_office_worker:"👨‍💼",woman_mechanic:"👩‍🔧",man_mechanic:"👨‍🔧",woman_scientist:"👩‍🔬",man_scientist:"👨‍🔬",woman_artist:"👩‍🎨",man_artist:"👨‍🎨",woman_firefighter:"👩‍🚒",man_firefighter:"👨‍🚒",woman_pilot:"👩‍✈️",man_pilot:"👨‍✈️",woman_astronaut:"👩‍🚀",man_astronaut:"👨‍🚀",woman_judge:"👩‍⚖️",man_judge:"👨‍⚖️",mrs_claus:"🤶",mother_christmas:"🤶",santa:"🎅",princess:"👸",prince:"🤴",bride_with_veil:"👰",man_in_tuxedo:"🤵",angel:"👼",pregnant_woman:"🤰",expecting_woman:"🤰",woman_bowing:"🙇‍♀️",person_bowing:"🙇",man_bowing:"🙇‍♂️",person_tipping_hand:"💁",information_desk_person:"💁",man_tipping_hand:"💁‍♂️",woman_tipping_hand:"💁‍♀️",person_gesturing_no:"🙅",no_good:"🙅",man_gesturing_no:"🙅‍♂️",woman_gesturing_no:"🙅‍♀️",person_gesturing_ok:"🙆",ok_woman:"🙆",man_gesturing_ok:"🙆‍♂️",woman_gesturing_ok:"🙆‍♀️",person_raising_hand:"🙋",man_raising_hand:"🙋‍♂️",woman_raising_hand:"🙋‍♀️",woman_facepalming:"🤦‍♀️",man_facepalming:"🤦‍♂️",person_facepalming:"🤦",face_palm:"🤦",woman_shrugging:"🤷‍♀️",man_shrugging:"🤷‍♂️",person_shrugging:"🤷",person_pouting:"🙎",man_pouting:"🙎‍♂️",woman_pouting:"🙎‍♀️",person_frowning:"🙍",man_frowning:"🙍‍♂️",woman_frowning:"🙍‍♀️",person_getting_haircut:"💇",man_getting_haircut:"💇‍♂️",woman_getting_haircut:"💇‍♀️",person_getting_massage:"💆",man_getting_face_massage:"💆‍♂️",woman_getting_face_massage:"💆‍♀️",levitate:"🕴️",dancer:"💃",man_dancing:"🕺",male_dancer:"🕺",people_with_bunny_ears_partying:"👯",dancers:"👯",men_with_bunny_ears_partying:"👯‍♂️",women_with_bunny_ears_partying:"👯‍♀️",woman_walking:"🚶‍♀️",person_walking:"🚶",man_walking:"🚶‍♂️",woman_running:"🏃‍♀️",person_running:"🏃",runner:"🏃",man_running:"🏃‍♂️",couple:"👫",two_women_holding_hands:"👭",two_men_holding_hands:"👬",couple_with_heart:"💑",couple_ww:"👩‍❤️‍👩",couple_mm:"👨‍❤️‍👨",couplekiss:"💏",kiss_ww:"👩‍❤️‍💋‍👩",kiss_mm:"👨‍❤️‍💋‍👨",family:"👪",family_mwg:"👨‍👩‍👧",family_mwgb:"👨‍👩‍👧‍👦",family_mwbb:"👨‍👩‍👦‍👦",family_mwgg:"👨‍👩‍👧‍👧",family_wwb:"👩‍👩‍👦",family_wwg:"👩‍👩‍👧",family_wwgb:"👩‍👩‍👧‍👦",family_wwbb:"👩‍👩‍👦‍👦",family_wwgg:"👩‍👩‍👧‍👧",family_mmb:"👨‍👨‍👦",family_mmg:"👨‍👨‍👧",family_mmgb:"👨‍👨‍👧‍👦",family_mmbb:"👨‍👨‍👦‍👦",family_mmgg:"👨‍👨‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_man_boy:"👨‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl_girl:"👨‍👧‍👧",womans_clothes:"👚",shirt:"👕",jeans:"👖",necktie:"👔",dress:"👗",bikini:"👙",kimono:"👘",high_heel:"👠",sandal:"👡",boot:"👢",mans_shoe:"👞",athletic_shoe:"👟",womans_hat:"👒",tophat:"🎩",mortar_board:"🎓",crown:"👑",helmet_with_cross:"⛑️",school_satchel:"🎒",pouch:"👝",purse:"👛",handbag:"👜",briefcase:"💼",eyeglasses:"👓",dark_sunglasses:"🕶️",closed_umbrella:"🌂",dog:"🐶",cat:"🐱",mouse:"🐭",hamster:"🐹",rabbit:"🐰",fox:"🦊",bear:"🐻",panda_face:"🐼",koala:"🐨",tiger:"🐯",lion_face:"🦁",cow:"🐮",pig:"🐷",pig_nose:"🐽",frog:"🐸",monkey_face:"🐵",see_no_evil:"🙈",hear_no_evil:"🙉",speak_no_evil:"🙊",monkey:"🐒",chicken:"🐔",penguin:"🐧",bird:"🐦",baby_chick:"🐤",hatching_chick:"🐣",hatched_chick:"🐥",duck:"🦆",eagle:"🦅",owl:"🦉",bat:"🦇",wolf:"🐺",boar:"🐗",horse:"🐴",unicorn:"🦄",bee:"🐝",bug:"🐛",butterfly:"🦋",snail:"🐌",shell:"🐚",beetle:"🐞",ant:"🐜",spider:"🕷️",spider_web:"🕸️",turtle:"🐢",snake:"🐍",lizard:"🦎",scorpion:"🦂",crab:"🦀",squid:"🦑",octopus:"🐙",shrimp:"🦐",tropical_fish:"🐠",fish:"🐟",blowfish:"🐡",dolphin:"🐬",shark:"🦈",whale:"🐳",whale2:"🐋",crocodile:"🐊",leopard:"🐆",tiger2:"🐅",water_buffalo:"🐃",ox:"🐂",cow2:"🐄",deer:"🦌",dromedary_camel:"🐪",camel:"🐫",elephant:"🐘",rhino:"🦏",gorilla:"🦍",racehorse:"🐎",pig2:"🐖",goat:"🐐",ram:"🐏",sheep:"🐑",dog2:"🐕",poodle:"🐩",cat2:"🐈",rooster:"🐓",turkey:"🦃",dove:"🕊️",rabbit2:"🐇",mouse2:"🐁",rat:"🐀",chipmunk:"🐿️",feet:"🐾",paw_prints:"🐾",dragon:"🐉",dragon_face:"🐲",cactus:"🌵",christmas_tree:"🎄",evergreen_tree:"🌲",deciduous_tree:"🌳",palm_tree:"🌴",seedling:"🌱",herb:"🌿",four_leaf_clover:"🍀",bamboo:"🎍",tanabata_tree:"🎋",leaves:"🍃",fallen_leaf:"🍂",maple_leaf:"🍁",mushroom:"🍄",ear_of_rice:"🌾",bouquet:"💐",tulip:"🌷",rose:"🌹",wilted_rose:"🥀",wilted_flower:"🥀",sunflower:"🌻",blossom:"🌼",cherry_blossom:"🌸",hibiscus:"🌺",earth_americas:"🌎",earth_africa:"🌍",earth_asia:"🌏",full_moon:"🌕",waning_gibbous_moon:"🌖",last_quarter_moon:"🌗",waning_crescent_moon:"🌘",new_moon:"🌑",waxing_crescent_moon:"🌒",first_quarter_moon:"🌓",waxing_gibbous_moon:"🌔",new_moon_with_face:"🌚",full_moon_with_face:"🌝",sun_with_face:"🌞",first_quarter_moon_with_face:"🌛",last_quarter_moon_with_face:"🌜",crescent_moon:"🌙",dizzy:"💫",star:"⭐",star2:"🌟",zap:"⚡",fire:"🔥",flame:"🔥",boom:"💥",white_sun_small_cloud:"🌤️",partly_sunny:"⛅",white_sun_cloud:"🌥️",white_sun_rain_cloud:"🌦️",white_sun_behind_cloud_with_rain:"🌦️",rainbow:"🌈",cloud_rain:"🌧️",thunder_cloud_rain:"⛈️",cloud_lightning:"🌩️",cloud_snow:"🌨️",snowman:"⛄",wind_blowing_face:"🌬️",dash:"💨",cloud_tornado:"🌪️",fog:"🌫️",ocean:"🌊",droplet:"💧",sweat_drops:"💦",giraffe:"🦒",zebra:"🦓",hedgehog:"🦔",sauropod:"🦕",t_rex:"🦖",cricket:"🦗",green_apple:"🍏",apple:"🍎",pear:"🍐",tangerine:"🍊",lemon:"🍋",banana:"🍌",watermelon:"🍉",grapes:"🍇",strawberry:"🍓",melon:"🍈",cherries:"🍒",peach:"🍑",pineapple:"🍍",kiwi:"🥝",avocado:"🥑",tomato:"🍅",eggplant:"🍆",cucumber:"🥒",carrot:"🥕",corn:"🌽",hot_pepper:"🌶️",potato:"🥔",sweet_potato:"🍠",chestnut:"🌰",peanuts:"🥜",shelled_peanut:"🥜",honey_pot:"🍯",croissant:"🥐",bread:"🍞",french_bread:"🥖",baguette_bread:"🥖",cheese:"🧀",egg:"🥚",cooking:"🍳",bacon:"🥓",pancakes:"🥞",fried_shrimp:"🍤",poultry_leg:"🍗",meat_on_bone:"🍖",pizza:"🍕",hotdog:"🌭",hamburger:"🍔",fries:"🍟",stuffed_flatbread:"🥙",stuffed_pita:"🥙",taco:"🌮",burrito:"🌯",salad:"🥗",shallow_pan_of_food:"🥘",paella:"🥘",spaghetti:"🍝",ramen:"🍜",stew:"🍲",fish_cake:"🍥",sushi:"🍣",bento:"🍱",curry:"🍛",rice_ball:"🍙",rice:"🍚",rice_cracker:"🍘",oden:"🍢",dango:"🍡",shaved_ice:"🍧",ice_cream:"🍨",icecream:"🍦",cake:"🍰",birthday:"🎂",custard:"🍮",pudding:"🍮",flan:"🍮",lollipop:"🍭",candy:"🍬",chocolate_bar:"🍫",popcorn:"🍿",doughnut:"🍩",cookie:"🍪",milk:"🥛",baby_bottle:"🍼",tea:"🍵",sake:"🍶",beer:"🍺",beers:"🍻",champagne_glass:"🥂",clinking_glass:"🥂",wine_glass:"🍷",tumbler_glass:"🥃",whisky:"🥃",cocktail:"🍸",tropical_drink:"🍹",champagne:"🍾",bottle_with_popping_cork:"🍾",spoon:"🥄",fork_and_knife:"🍴",fork_knife_plate:"🍽️",dumpling:"🥟",fortune_cookie:"🥠",takeout_box:"🥡",chopsticks:"🥢",bowl_with_spoon:"🥣",cup_with_straw:"🥤",coconut:"🥥",broccoli:"🥦",pie:"🥧",pretzel:"🥨",cut_of_meat:"🥩",sandwich:"🥪",canned_food:"🥫",soccer:"⚽",basketball:"🏀",football:"🏈",baseball:"⚾",tennis:"🎾",volleyball:"🏐",rugby_football:"🏉","8ball":"🎱",ping_pong:"🏓",table_tennis:"🏓",badminton:"🏸",goal:"🥅",hockey:"🏒",field_hockey:"🏑",cricket_game:"🏏",cricket_bat_ball:"🏏",golf:"⛳",bow_and_arrow:"🏹",archery:"🏹",fishing_pole_and_fish:"🎣",boxing_glove:"🥊",martial_arts_uniform:"🥋",karate_uniform:"🥋",ice_skate:"⛸️",ski:"🎿",skier:"⛷️",snowboarder:"🏂",woman_lifting_weights:"🏋️‍♀️",person_lifting_weights:"🏋️",lifter:"🏋️",weight_lifter:"🏋️",man_lifting_weights:"🏋️‍♂️",person_fencing:"🤺",fencer:"🤺",women_wrestling:"🤼‍♀️",men_wrestling:"🤼‍♂️",people_wrestling:"🤼",wrestlers:"🤼",woman_cartwheeling:"🤸‍♀️",man_cartwheeling:"🤸‍♂️",person_doing_cartwheel:"🤸",woman_bouncing_ball:"⛹️‍♀️",person_bouncing_ball:"⛹️",basketball_player:"⛹️",person_with_ball:"⛹️",man_bouncing_ball:"⛹️‍♂️",woman_playing_handball:"🤾‍♀️",man_playing_handball:"🤾‍♂️",person_playing_handball:"🤾",woman_golfing:"🏌️‍♀️",person_golfing:"🏌️",golfer:"🏌️",man_golfing:"🏌️‍♂️",woman_surfing:"🏄‍♀️",person_surfing:"🏄",surfer:"🏄",man_surfing:"🏄‍♂️",woman_swimming:"🏊‍♀️",person_swimming:"🏊",swimmer:"🏊",man_swimming:"🏊‍♂️",woman_playing_water_polo:"🤽‍♀️",man_playing_water_polo:"🤽‍♂️",person_playing_water_polo:"🤽",woman_rowing_boat:"🚣‍♀️",person_rowing_boat:"🚣",man_rowing_boat:"🚣‍♂️",horse_racing:"🏇",woman_biking:"🚴‍♀️",person_biking:"🚴",bicyclist:"🚴",man_biking:"🚴‍♂️",woman_mountain_biking:"🚵‍♀️",person_mountain_biking:"🚵",mountain_bicyclist:"🚵",man_mountain_biking:"🚵‍♂️",running_shirt_with_sash:"🎽",medal:"🏅",military_medal:"🎖️",first_place:"🥇",second_place:"🥈",third_place:"🥉",trophy:"🏆",rosette:"🏵️",reminder_ribbon:"🎗️",ticket:"🎫",tickets:"🎟️",circus_tent:"🎪",woman_juggling:"🤹‍♀️",man_juggling:"🤹‍♂️",person_juggling:"🤹",juggler:"🤹",performing_arts:"🎭",art:"🎨",clapper:"🎬",microphone:"🎤",headphones:"🎧",musical_score:"🎼",musical_keyboard:"🎹",drum:"🥁",saxophone:"🎷",trumpet:"🎺",guitar:"🎸",violin:"🎻",game_die:"🎲",dart:"🎯",bowling:"🎳",video_game:"🎮",slot_machine:"🎰",sled:"🛷",breast_feeding:"🤱",person_in_steamy_room:"🧖",person_climbing:"🧗",person_in_lotus_position:"🧘",woman_in_steamy_room:"🧖‍♀️",man_in_steamy_room:"🧖‍♂️",woman_climbing:"🧗‍♀️",man_climbing:"🧗‍♂️",woman_in_lotus_position:"🧘‍♀️",man_in_lotus_position:"🧘‍♂️",red_car:"🚗",taxi:"🚕",blue_car:"🚙",bus:"🚌",trolleybus:"🚎",race_car:"🏎️",racing_car:"🏎️",police_car:"🚓",ambulance:"🚑",fire_engine:"🚒",minibus:"🚐",truck:"🚚",articulated_lorry:"🚛",tractor:"🚜",scooter:"🛴",bike:"🚲",motor_scooter:"🛵",motorbike:"🛵",motorcycle:"🏍️",rotating_light:"🚨",oncoming_police_car:"🚔",oncoming_bus:"🚍",oncoming_automobile:"🚘",oncoming_taxi:"🚖",aerial_tramway:"🚡",mountain_cableway:"🚠",suspension_railway:"🚟",railway_car:"🚃",train:"🚋",mountain_railway:"🚞",monorail:"🚝",bullettrain_side:"🚄",bullettrain_front:"🚅",light_rail:"🚈",steam_locomotive:"🚂",train2:"🚆",metro:"🚇",tram:"🚊",station:"🚉",helicopter:"🚁",airplane_small:"🛩️",small_airplane:"🛩️",airplane_departure:"🛫",airplane_arriving:"🛬",rocket:"🚀",satellite_orbital:"🛰️",seat:"💺",canoe:"🛶",kayak:"🛶",sailboat:"⛵",motorboat:"🛥️",speedboat:"🚤",cruise_ship:"🛳️",passenger_ship:"🛳️",ferry:"⛴️",ship:"🚢",construction:"🚧",fuelpump:"⛽",busstop:"🚏",vertical_traffic_light:"🚦",traffic_light:"🚥",map:"🗺️",moyai:"🗿",statue_of_liberty:"🗽",fountain:"⛲",tokyo_tower:"🗼",european_castle:"🏰",japanese_castle:"🏯",stadium:"🏟️",ferris_wheel:"🎡",roller_coaster:"🎢",carousel_horse:"🎠",beach_umbrella:"⛱️",umbrella_on_ground:"⛱️",beach:"🏖️",island:"🏝️",mountain:"⛰️",mountain_snow:"🏔️",snow_capped_mountain:"🏔️",mount_fuji:"🗻",volcano:"🌋",desert:"🏜️",camping:"🏕️",tent:"⛺",railway_track:"🛤️",railroad_track:"🛤️",motorway:"🛣️",construction_site:"🏗️",building_construction:"🏗️",factory:"🏭",house:"🏠",house_with_garden:"🏡",homes:"🏘️",house_buildings:"🏘️",house_abandoned:"🏚️",derelict_house_building:"🏚️",office:"🏢",department_store:"🏬",post_office:"🏣",european_post_office:"🏤",hospital:"🏥",bank:"🏦",hotel:"🏨",convenience_store:"🏪",school:"🏫",love_hotel:"🏩",wedding:"💒",classical_building:"🏛️",church:"⛪",mosque:"🕌",synagogue:"🕍",kaaba:"🕋",shinto_shrine:"⛩️",japan:"🗾",rice_scene:"🎑",park:"🏞️",sunrise:"🌅",sunrise_over_mountains:"🌄",stars:"🌠",sparkler:"🎇",fireworks:"🎆",city_sunset:"🌇",city_sunrise:"🌇",city_dusk:"🌆",cityscape:"🏙️",night_with_stars:"🌃",milky_way:"🌌",bridge_at_night:"🌉",foggy:"🌁",flying_saucer:"🛸",watch:"⌚",iphone:"📱",calling:"📲",computer:"💻",desktop:"🖥️",printer:"🖨️",mouse_three_button:"🖱️",three_button_mouse:"🖱️",trackball:"🖲️",joystick:"🕹️",compression:"🗜️",minidisc:"💽",floppy_disk:"💾",cd:"💿",dvd:"📀",vhs:"📼",camera:"📷",camera_with_flash:"📸",video_camera:"📹",movie_camera:"🎥",projector:"📽️",film_frames:"🎞️",telephone_receiver:"📞",telephone:"☎️",pager:"📟",fax:"📠",tv:"📺",radio:"📻",microphone2:"🎙️",studio_microphone:"🎙️",level_slider:"🎚️",control_knobs:"🎛️",stopwatch:"⏱️",timer:"⏲️",alarm_clock:"⏰",clock:"🕰️",hourglass:"⌛",hourglass_flowing_sand:"⏳",satellite:"📡",battery:"🔋",electric_plug:"🔌",bulb:"💡",flashlight:"🔦",candle:"🕯️",wastebasket:"🗑️",oil:"🛢️",money_with_wings:"💸",dollar:"💵",yen:"💴",euro:"💶",pound:"💷",moneybag:"💰",credit_card:"💳",gem:"💎",wrench:"🔧",hammer:"🔨",tools:"🛠️",hammer_and_wrench:"🛠️",pick:"⛏️",nut_and_bolt:"🔩",chains:"⛓️",gun:"🔫",bomb:"💣",knife:"🔪",dagger:"🗡️",shield:"🛡️",smoking:"🚬",coffin:"⚰️",urn:"⚱️",amphora:"🏺",crystal_ball:"🔮",prayer_beads:"📿",barber:"💈",telescope:"🔭",microscope:"🔬",hole:"🕳️",pill:"💊",syringe:"💉",thermometer:"🌡️",toilet:"🚽",potable_water:"🚰",shower:"🚿",bathtub:"🛁",bath:"🛀",bellhop:"🛎️",key:"🔑",key2:"🗝️",old_key:"🗝️",door:"🚪",couch:"🛋️",bed:"🛏️",sleeping_accommodation:"🛌",frame_photo:"🖼️",frame_with_picture:"🖼️",shopping_bags:"🛍️",shopping_cart:"🛒",shopping_trolley:"🛒",gift:"🎁",balloon:"🎈",flags:"🎏",ribbon:"🎀",confetti_ball:"🎊",tada:"🎉",dolls:"🎎",izakaya_lantern:"🏮",wind_chime:"🎐",envelope_with_arrow:"📩",incoming_envelope:"📨",email:"📧",love_letter:"💌",inbox_tray:"📥",outbox_tray:"📤",package:"📦",label:"🏷️",mailbox_closed:"📪",mailbox:"📫",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",postbox:"📮",postal_horn:"📯",scroll:"📜",page_with_curl:"📃",page_facing_up:"📄",bookmark_tabs:"📑",bar_chart:"📊",chart_with_upwards_trend:"📈",chart_with_downwards_trend:"📉",notepad_spiral:"🗒️",spiral_note_pad:"🗒️",calendar_spiral:"🗓️",spiral_calendar_pad:"🗓️",calendar:"📆",date:"📅",card_index:"📇",card_box:"🗃️",ballot_box:"🗳️",file_cabinet:"🗄️",clipboard:"📋",file_folder:"📁",open_file_folder:"📂",dividers:"🗂️",newspaper2:"🗞️",rolled_up_newspaper:"🗞️",newspaper:"📰",notebook:"📓",notebook_with_decorative_cover:"📔",ledger:"📒",closed_book:"📕",green_book:"📗",blue_book:"📘",orange_book:"📙",books:"📚",book:"📖",bookmark:"🔖",link:"🔗",paperclip:"📎",paperclips:"🖇️",triangular_ruler:"📐",straight_ruler:"📏",pushpin:"📌",round_pushpin:"📍",pen_ballpoint:"🖊️",lower_left_ballpoint_pen:"🖊️",pen_fountain:"🖋️",lower_left_fountain_pen:"🖋️",paintbrush:"🖌️",crayon:"🖍️",pencil:"📝",memo:"📝",pencil2:"✏️",mag:"🔍",mag_right:"🔎",lock_with_ink_pen:"🔏",closed_lock_with_key:"🔐",lock:"🔒",unlock:"🔓",orange_heart:"🧡",yellow_heart:"💛",green_heart:"💚",blue_heart:"💙",purple_heart:"💜",black_heart:"🖤",broken_heart:"💔",two_hearts:"💕",revolving_hearts:"💞",heartbeat:"💓",heartpulse:"💗",sparkling_heart:"💖",cupid:"💘",gift_heart:"💝",heart_decoration:"💟",peace:"☮️",cross:"✝️",star_and_crescent:"☪️",om_symbol:"🕉️",six_pointed_star:"🔯",menorah:"🕎",yin_yang:"☯️",place_of_worship:"🛐",worship_symbol:"🛐",ophiuchus:"⛎",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpius:"♏",id:"🆔",atom:"⚛️",accept:"🉑",mobile_phone_off:"📴",vibration_mode:"📳",u6709:"🈶",u7121:"🈚",u7533:"🈸",u55b6:"🈺",u6708:"🈷️",vs:"🆚",white_flower:"💮",ideograph_advantage:"🉐",u5408:"🈴",u6e80:"🈵",u5272:"🈹",u7981:"🈲",a:"🅰️",b:"🅱️",ab:"🆎",cl:"🆑",o2:"🅾️",sos:"🆘",x:"❌",o:"⭕",octagonal_sign:"🛑",stop_sign:"🛑",no_entry:"⛔",name_badge:"📛",no_entry_sign:"🚫",anger:"💢",no_pedestrians:"🚷",do_not_litter:"🚯",no_bicycles:"🚳",non_potable_water:"🚱",underage:"🔞",no_mobile_phones:"📵",no_smoking:"🚭",bangbang:"‼️",low_brightness:"🔅",high_brightness:"🔆",part_alternation_mark:"〽️",warning:"⚠️",children_crossing:"🚸",trident:"🔱","fleur_de-lis":"⚜️",beginner:"🔰",recycle:"♻️",u6307:"🈯",chart:"💹",negative_squared_cross_mark:"❎",globe_with_meridians:"🌐",diamond_shape_with_a_dot_inside:"💠",m:"Ⓜ️",cyclone:"🌀",zzz:"💤",atm:"🏧",wc:"🚾",wheelchair:"♿",parking:"🅿️",u7a7a:"🈳",sa:"🈂️",passport_control:"🛂",customs:"🛃",baggage_claim:"🛄",left_luggage:"🛅",mens:"🚹",womens:"🚺",baby_symbol:"🚼",restroom:"🚻",put_litter_in_its_place:"🚮",cinema:"🎦",signal_strength:"📶",koko:"🈁",symbols:"🔣",abc:"🔤",abcd:"🔡",capital_abcd:"🔠",ng:"🆖",ok:"🆗",up:"🆙",cool:"🆒",new:"🆕",free:"🆓",zero:"0️⃣",one:"1️⃣",two:"2️⃣",three:"3️⃣",four:"4️⃣",five:"5️⃣",six:"6️⃣",seven:"7️⃣",eight:"8️⃣",nine:"9️⃣",keycap_ten:"🔟",hash:"#️⃣",asterisk:"*️⃣",arrow_forward:"▶️",pause_button:"⏸️",double_vertical_bar:"⏸️",play_pause:"⏯️",stop_button:"⏹️",record_button:"⏺️",eject:"⏏️",track_next:"⏭️",next_track:"⏭️",track_previous:"⏮️",previous_track:"⏮️",fast_forward:"⏩",rewind:"⏪",arrow_double_up:"⏫",arrow_double_down:"⏬",arrow_backward:"◀️",arrow_up_small:"🔼",arrow_down_small:"🔽",arrow_right:"➡️",arrow_left:"⬅️",arrow_up:"⬆️",arrow_down:"⬇️",arrow_right_hook:"↪️",leftwards_arrow_with_hook:"↩️",twisted_rightwards_arrows:"🔀",repeat:"🔁",repeat_one:"🔂",arrows_counterclockwise:"🔄",arrows_clockwise:"🔃",musical_note:"🎵",notes:"🎶",heavy_dollar_sign:"💲",currency_exchange:"💱",copyright:"©️",registered:"®️",curly_loop:"➰",loop:"➿",end:"🔚",back:"🔙",on:"🔛",top:"🔝",soon:"🔜",radio_button:"🔘",white_circle:"⚪",black_circle:"⚫",red_circle:"🔴",blue_circle:"🔵",small_red_triangle:"🔺",small_red_triangle_down:"🔻",small_orange_diamond:"🔸",small_blue_diamond:"🔹",large_orange_diamond:"🔶",large_blue_diamond:"🔷",white_square_button:"🔳",black_square_button:"🔲",black_small_square:"▪️",white_small_square:"▫️",black_medium_small_square:"◾",white_medium_small_square:"◽",black_medium_square:"◼️",white_medium_square:"◻️",black_large_square:"⬛",white_large_square:"⬜",speaker:"🔈",mute:"🔇",sound:"🔉",loud_sound:"🔊",bell:"🔔",no_bell:"🔕",mega:"📣",loudspeaker:"📢",speech_left:"🗨️",left_speech_bubble:"🗨️",eye_in_speech_bubble:"👁️‍🗨️",speech_balloon:"💬",thought_balloon:"💭",anger_right:"🗯️",right_anger_bubble:"🗯️",black_joker:"🃏",flower_playing_cards:"🎴",mahjong:"🀄",clock1:"🕐",clock2:"🕑",clock3:"🕒",clock4:"🕓",clock5:"🕔",clock6:"🕕",clock7:"🕖",clock8:"🕗",clock9:"🕘",clock10:"🕙",clock11:"🕚",clock12:"🕛",clock130:"🕜",clock230:"🕝",clock330:"🕞",clock430:"🕟",clock530:"🕠",clock630:"🕡",clock730:"🕢",clock830:"🕣",clock930:"🕤",clock1030:"🕥",clock1130:"🕦",clock1230:"🕧",flag_white:"🏳️",waving_white_flag:"🏳️",flag_black:"🏴",waving_black_flag:"🏴",checkered_flag:"🏁",triangular_flag_on_post:"🚩",rainbow_flag:"🏳️‍🌈",gay_pride_flag:"🏳️‍🌈",flag_af:"🇦🇫",flag_ax:"🇦🇽",flag_al:"🇦🇱",flag_dz:"🇩🇿",flag_as:"🇦🇸",flag_ad:"🇦🇩",flag_ao:"🇦🇴",flag_ai:"🇦🇮",flag_aq:"🇦🇶",flag_ag:"🇦🇬",flag_ar:"🇦🇷",flag_am:"🇦🇲",flag_aw:"🇦🇼",flag_au:"🇦🇺",flag_at:"🇦🇹",flag_az:"🇦🇿",flag_bs:"🇧🇸",flag_bh:"🇧🇭",flag_bd:"🇧🇩",flag_bb:"🇧🇧",flag_by:"🇧🇾",flag_be:"🇧🇪",flag_bz:"🇧🇿",flag_bj:"🇧🇯",flag_bm:"🇧🇲",flag_bt:"🇧🇹",flag_bo:"🇧🇴",flag_ba:"🇧🇦",flag_bw:"🇧🇼",flag_br:"🇧🇷",flag_io:"🇮🇴",flag_vg:"🇻🇬",flag_bn:"🇧🇳",flag_bg:"🇧🇬",flag_bf:"🇧🇫",flag_bi:"🇧🇮",flag_kh:"🇰🇭",flag_cm:"🇨🇲",flag_ca:"🇨🇦",flag_ic:"🇮🇨",flag_cv:"🇨🇻",flag_bq:"🇧🇶",flag_ky:"🇰🇾",flag_cf:"🇨🇫",flag_td:"🇹🇩",flag_cl:"🇨🇱",chile:"🇨🇱",flag_cn:"🇨🇳",flag_cx:"🇨🇽",flag_cc:"🇨🇨",flag_co:"🇨🇴",flag_km:"🇰🇲",flag_cg:"🇨🇬",flag_cd:"🇨🇩",congo:"🇨🇩",flag_ck:"🇨🇰",flag_cr:"🇨🇷",flag_ci:"🇨🇮",flag_hr:"🇭🇷",flag_cu:"🇨🇺",flag_cw:"🇨🇼",flag_cy:"🇨🇾",flag_cz:"🇨🇿",flag_dk:"🇩🇰",flag_dj:"🇩🇯",flag_dm:"🇩🇲",flag_do:"🇩🇴",flag_ec:"🇪🇨",flag_eg:"🇪🇬",flag_sv:"🇸🇻",flag_gq:"🇬🇶",flag_er:"🇪🇷",flag_ee:"🇪🇪",flag_et:"🇪🇹",flag_eu:"🇪🇺",flag_fk:"🇫🇰",flag_fo:"🇫🇴",flag_fj:"🇫🇯",flag_fi:"🇫🇮",flag_fr:"🇫🇷",flag_gf:"🇬🇫",flag_pf:"🇵🇫",flag_tf:"🇹🇫",flag_ga:"🇬🇦",flag_gm:"🇬🇲",flag_ge:"🇬🇪",flag_de:"🇩🇪",flag_gh:"🇬🇭",flag_gi:"🇬🇮",flag_gr:"🇬🇷",flag_gl:"🇬🇱",flag_gd:"🇬🇩",flag_gp:"🇬🇵",flag_gu:"🇬🇺",flag_gt:"🇬🇹",flag_gg:"🇬🇬",flag_gn:"🇬🇳",flag_gw:"🇬🇼",flag_gy:"🇬🇾",flag_ht:"🇭🇹",flag_hn:"🇭🇳",flag_hk:"🇭🇰",flag_hu:"🇭🇺",flag_is:"🇮🇸",flag_in:"🇮🇳",flag_id:"🇮🇩",indonesia:"🇮🇩",flag_ir:"🇮🇷",flag_iq:"🇮🇶",flag_ie:"🇮🇪",flag_im:"🇮🇲",flag_il:"🇮🇱",flag_it:"🇮🇹",flag_jm:"🇯🇲",flag_jp:"🇯🇵",crossed_flags:"🎌",flag_je:"🇯🇪",flag_jo:"🇯🇴",flag_kz:"🇰🇿",flag_ke:"🇰🇪",flag_ki:"🇰🇮",flag_xk:"🇽🇰",flag_kw:"🇰🇼",flag_kg:"🇰🇬",flag_la:"🇱🇦",flag_lv:"🇱🇻",flag_lb:"🇱🇧",flag_ls:"🇱🇸",flag_lr:"🇱🇷",flag_ly:"🇱🇾",flag_li:"🇱🇮",flag_lt:"🇱🇹",flag_lu:"🇱🇺",flag_mo:"🇲🇴",flag_mk:"🇲🇰",flag_mg:"🇲🇬",flag_mw:"🇲🇼",flag_my:"🇲🇾",flag_mv:"🇲🇻",flag_ml:"🇲🇱",flag_mt:"🇲🇹",flag_mh:"🇲🇭",flag_mq:"🇲🇶",flag_mr:"🇲🇷",flag_mu:"🇲🇺",flag_yt:"🇾🇹",flag_mx:"🇲🇽",flag_fm:"🇫🇲",flag_md:"🇲🇩",flag_mc:"🇲🇨",flag_mn:"🇲🇳",flag_me:"🇲🇪",flag_ms:"🇲🇸",flag_ma:"🇲🇦",flag_mz:"🇲🇿",flag_mm:"🇲🇲",flag_na:"🇳🇦",flag_nr:"🇳🇷",flag_np:"🇳🇵",flag_nl:"🇳🇱",flag_nc:"🇳🇨",flag_nz:"🇳🇿",flag_ni:"🇳🇮",flag_ne:"🇳🇪",flag_ng:"🇳🇬",nigeria:"🇳🇬",flag_nu:"🇳🇺",flag_nf:"🇳🇫",flag_kp:"🇰🇵",flag_mp:"🇲🇵",flag_no:"🇳🇴",flag_om:"🇴🇲",flag_pk:"🇵🇰",flag_pw:"🇵🇼",flag_ps:"🇵🇸",flag_pa:"🇵🇦",flag_pg:"🇵🇬",flag_py:"🇵🇾",flag_pe:"🇵🇪",flag_ph:"🇵🇭",flag_pn:"🇵🇳",flag_pl:"🇵🇱",flag_pt:"🇵🇹",flag_pr:"🇵🇷",flag_qa:"🇶🇦",flag_re:"🇷🇪",flag_ro:"🇷🇴",flag_ru:"🇷🇺",flag_rw:"🇷🇼",flag_ws:"🇼🇸",flag_sm:"🇸🇲",flag_st:"🇸🇹",flag_sa:"🇸🇦",saudiarabia:"🇸🇦",saudi:"🇸🇦",flag_sn:"🇸🇳",flag_rs:"🇷🇸",flag_sc:"🇸🇨",flag_sl:"🇸🇱",flag_sg:"🇸🇬",flag_sx:"🇸🇽",flag_sk:"🇸🇰",flag_si:"🇸🇮",flag_gs:"🇬🇸",flag_sb:"🇸🇧",flag_so:"🇸🇴",flag_za:"🇿🇦",flag_kr:"🇰🇷",flag_ss:"🇸🇸",flag_es:"🇪🇸",flag_lk:"🇱🇰",flag_bl:"🇧🇱",flag_sh:"🇸🇭",flag_kn:"🇰🇳",flag_lc:"🇱🇨",flag_pm:"🇵🇲",flag_vc:"🇻🇨",flag_sd:"🇸🇩",flag_sr:"🇸🇷",flag_sz:"🇸🇿",flag_se:"🇸🇪",flag_ch:"🇨🇭",flag_sy:"🇸🇾",flag_tw:"🇹🇼",flag_tj:"🇹🇯",flag_tz:"🇹🇿",flag_th:"🇹🇭",flag_tl:"🇹🇱",flag_tg:"🇹🇬",flag_tk:"🇹🇰",flag_to:"🇹🇴",flag_tt:"🇹🇹",flag_tn:"🇹🇳",flag_tr:"🇹🇷",flag_tm:"🇹🇲",turkmenistan:"🇹🇲",flag_tc:"🇹🇨",flag_tv:"🇹🇻",tuvalu:"🇹🇻",flag_vi:"🇻🇮",flag_ug:"🇺🇬",flag_ua:"🇺🇦",flag_ae:"🇦🇪",flag_gb:"🇬🇧",flag_us:"🇺🇸",flag_uy:"🇺🇾",flag_uz:"🇺🇿",flag_vu:"🇻🇺",flag_va:"🇻🇦",flag_ve:"🇻🇪",flag_vn:"🇻🇳",flag_wf:"🇼🇫",flag_eh:"🇪🇭",flag_ye:"🇾🇪",flag_zm:"🇿🇲",flag_zw:"🇿🇼",flag_ac:"🇦🇨",flag_ta:"🇹🇦",flag_bv:"🇧🇻",flag_hm:"🇭🇲",flag_sj:"🇸🇯",flag_um:"🇺🇲",flag_ea:"🇪🇦",flag_cp:"🇨🇵",flag_dg:"🇩🇬",flag_mf:"🇲🇫",united_nations:"🇺🇳",england:"🏴󠁧󠁢󠁥󠁮󠁧󠁿",scotland:"🏴󠁧󠁢󠁳󠁣󠁴󠁿",wales:"🏴󠁧󠁢󠁷󠁬󠁳󠁿",asterisk_symbol:"*️",regional_indicator_z:"🇿",regional_indicator_y:"🇾",regional_indicator_x:"🇽",pound_symbol:"#️",regional_indicator_w:"🇼",regional_indicator_v:"🇻",regional_indicator_u:"🇺",regional_indicator_t:"🇹",regional_indicator_s:"🇸",regional_indicator_r:"🇷",regional_indicator_q:"🇶",regional_indicator_p:"🇵",regional_indicator_o:"🇴",regional_indicator_n:"🇳",regional_indicator_m:"🇲",regional_indicator_l:"🇱",regional_indicator_k:"🇰",regional_indicator_j:"🇯",regional_indicator_i:"🇮",regional_indicator_h:"🇭",regional_indicator_g:"🇬",regional_indicator_f:"🇫",regional_indicator_e:"🇪",regional_indicator_d:"🇩",regional_indicator_c:"🇨",regional_indicator_b:"🇧",regional_indicator_a:"🇦",digit_nine:"9️",digit_eight:"8️",digit_seven:"7️",digit_six:"6️",digit_five:"5️",digit_four:"4️",digit_three:"3️",digit_two:"2️",digit_one:"1️",digit_zero:"0️",family_man_woman_boy:"👨‍👩‍👦",couple_with_heart_woman_man:"👩‍❤️‍👨",kiss_woman_man:"👩‍❤️‍💋‍👨",face_with_raised_eyebrow:"🤨",star_struck:"🤩",crazy_face:"🤪",shushing_face:"🤫",face_with_symbols_over_mouth:"🤬",face_with_hand_over_mouth:"🤭",face_vomiting:"🤮",exploding_head:"🤯",face_with_monocle:"🧐",adult:"🧑",child:"🧒",older_adult:"🧓",bearded_person:"🧔",woman_with_headscarf:"🧕",brain:"🧠",billed_cap:"🧢",mage:"🧙",fairy:"🧚",vampire:"🧛",merperson:"🧜",elf:"🧝",genie:"🧞",zombie:"🧟",scarf:"🧣",gloves:"🧤",coat:"🧥",socks:"🧦",love_you_gesture:"🤟",palms_up_together:"🤲",woman_mage:"🧙‍♀️",man_mage:"🧙‍♂️",woman_fairy:"🧚‍♀️",man_fairy:"🧚‍♂️",woman_vampire:"🧛‍♀️",man_vampire:"🧛‍♂️",mermaid:"🧜‍♀️",merman:"🧜‍♂️",woman_elf:"🧝‍♀️",man_elf:"🧝‍♂️",woman_genie:"🧞‍♀️",man_genie:"🧞‍♂️",woman_zombie:"🧟‍♀️",man_zombie:"🧟‍♂️"}},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){return" self"},3:function(t,n,e,a,i){return" highlight"},5:function(t,n,e,a,i){var o;return' data-from="'+t.escapeExpression(t.lambda(null!=(o=null!=n?n.from:n)?o.nick:o,n))+'"'},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s,r=t.lambda,c=t.escapeExpression,u=null!=n?n:t.nullContext||{};return'<div class="msg '+c(r(null!=n?n.type:n,n))+(null!=(s=i.if.call(u,null!=n?n.self:n,{name:"if",hash:{},fn:t.program(1,l,0),inverse:t.noop,data:l}))?s:"")+(null!=(s=i.if.call(u,null!=n?n.highlight:n,{name:"if",hash:{},fn:t.program(3,l,0),inverse:t.noop,data:l}))?s:"")+'"\n\tdata-type="'+c(r(null!=n?n.type:n,n))+'" id="msg-'+c(r(null!=n?n.id:n,n))+'" data-time="'+c(r(null!=n?n.time:n,n))+'"'+(null!=(s=i.if.call(u,null!=(s=null!=n?n.from:n)?s.nick:s,{name:"if",hash:{},fn:t.program(5,l,0),inverse:t.noop,data:l}))?s:"")+'>\n\t<span class="time tooltipped tooltipped-e" aria-label="'+c(a(e(12)).call(u,null!=n?n.time:n,{name:"localetime",hash:{},data:l}))+'">\n\t\t'+c(a(e(21)).call(u,null!=n?n.time:n,{name:"tz",hash:{},data:l}))+'\n\t</span>\n\t<span class="from"></span>\n\t<span class="content"></span>\n</div>\n'},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s=t.escapeExpression;return'<div class="msg condensed closed" data-time="'+s(t.lambda(null!=n?n.time:n,n))+'">\n\t<div class="condensed-summary">\n\t\t<span class="time">'+s(a(e(21)).call(null!=n?n:t.nullContext||{},null!=n?n.time:n,{name:"tz",hash:{},data:l}))+'</span>\n\t\t<span class="from"></span>\n\t\t<span class="content"></span>\n\t</div>\n</div>\n'},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){return'<button class="toggle-button" aria-label="Toggle status messages"></button>\n'},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return'<div class="toggle-content toggle-type-'+t.escapeExpression(t.lambda(null!=n?n.type:n,n))+(null!=(s=i.if.call(r,null!=n?n.shown:n,{name:"if",hash:{},fn:t.program(2,l,0),inverse:t.noop,data:l}))?s:"")+'">\n'+(null!=(s=a(e(7)).call(r,null!=n?n.type:n,"image",{name:"equal",hash:{},fn:t.program(4,l,0),inverse:t.noop,data:l}))?s:"")+(null!=(s=a(e(7)).call(r,null!=n?n.type:n,"audio",{name:"equal",hash:{},fn:t.program(6,l,0),inverse:t.noop,data:l}))?s:"")+(null!=(s=a(e(7)).call(r,null!=n?n.type:n,"video",{name:"equal",hash:{},fn:t.program(8,l,0),inverse:t.noop,data:l}))?s:"")+(null!=(s=a(e(7)).call(r,null!=n?n.type:n,"link",{name:"equal",hash:{},fn:t.program(10,l,0),inverse:t.noop,data:l}))?s:"")+"</div>\n"},2:function(t,n,e,a,i){return" show"},4:function(t,n,e,a,i){var o=t.lambda,l=t.escapeExpression;return'\t\t<a class="toggle-thumbnail" href="'+l(o(null!=n?n.link:n,n))+'" target="_blank" rel="noopener">\n\t\t\t<img src="'+l(o(null!=n?n.thumb:n,n))+'" decoding="async" alt="">\n\t\t</a>\n'},6:function(t,n,e,a,i){var o=t.lambda,l=t.escapeExpression;return'\t\t<audio controls preload="metadata">\n\t\t\t<source src="'+l(o(null!=n?n.link:n,n))+'" type="'+l(o(null!=n?n.res:n,n))+'">\n\t\t\tYour browser does not support the audio element.\n\t\t</audio>\n'},8:function(t,n,e,a,i){var o=t.lambda,l=t.escapeExpression;return'\t\t<video width="320" height="240" preload="metadata" controls>\n\t\t\t<source src="'+l(o(null!=n?n.link:n,n))+'" type="'+l(o(null!=n?n.res:n,n))+'">\n\t\t\tYour browser does not support the video element.\n\t\t</video>\n'},10:function(t,n,e,a,i){var o,l=t.lambda,s=t.escapeExpression;return(null!=(o=e.if.call(null!=n?n:t.nullContext||{},null!=n?n.thumb:n,{name:"if",hash:{},fn:t.program(11,i,0),inverse:t.noop,data:i}))?o:"")+'\t\t<a class="toggle-text" href="'+s(l(null!=n?n.link:n,n))+'" target="_blank" rel="noopener">\n\t\t\t<div class="head" title="'+s(l(null!=n?n.head:n,n))+'">'+s(l(null!=n?n.head:n,n))+'</div>\n\t\t\t<div class="body" title="'+s(l(null!=n?n.body:n,n))+'">'+s(l(null!=n?n.body:n,n))+"</div>\n\t\t</a>\n"},11:function(t,n,e,a,i){var o=t.lambda,l=t.escapeExpression;return'\t\t\t<a class="toggle-thumbnail" href="'+l(o(null!=n?n.link:n,n))+'" target="_blank" rel="noopener">\n\t\t\t\t<img src="'+l(o(null!=n?n.thumb:n,n))+'" decoding="async" alt="" class="thumb">\n\t\t\t</a>\n'},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return null!=(o=e.blockHelperMissing.call(n,t.lambda(null!=n?n.preview:n,n),{name:"preview",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:""},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return'<button class="toggle-button toggle-preview '+(null!=(s=i.if.call(r,null!=n?n.shown:n,{name:"if",hash:{},fn:t.program(2,l,0),inverse:t.noop,data:l}))?s:"")+'"\n data-url="'+t.escapeExpression(t.lambda(null!=n?n.link:n,n))+'"\n'+(null!=(s=a(e(7)).call(r,null!=n?n.type:n,"image",{name:"equal",hash:{},fn:t.program(4,l,0),inverse:t.program(6,l,0),data:l}))?s:"")+"></button>\n"},2:function(t,n,e,a,i){return" opened"},4:function(t,n,e,a,i){return' aria-label="Toggle image preview"\n'},6:function(t,n,e,a,i){return' aria-label="Toggle website preview"\n'},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return null!=(o=e.blockHelperMissing.call(n,t.lambda(null!=n?n.preview:n,n),{name:"preview",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:""},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){return" self"},3:function(t,n,e,a,i){return" highlight"},5:function(t,n,e,a,i){return"\t\t\t<span>"+t.escapeExpression(t.lambda(n,n))+"</span>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{},c=t.escapeExpression,u=t.lambda;return'<div class="msg msg-'+c(a(e(23)).call(r,null!=n?n.command:n,{name:"slugify",hash:{},data:l}))+" "+c(u(null!=n?n.type:n,n))+(null!=(s=i.if.call(r,null!=n?n.self:n,{name:"if",hash:{},fn:t.program(1,l,0),inverse:t.noop,data:l}))?s:"")+(null!=(s=i.if.call(r,null!=n?n.highlight:n,{name:"if",hash:{},fn:t.program(3,l,0),inverse:t.noop,data:l}))?s:"")+'" id="msg-'+c(u(null!=n?n.id:n,n))+'" data-time="'+c(u(null!=n?n.time:n,n))+'">\n\t<span class="time tooltipped tooltipped-e" aria-label="'+c(a(e(12)).call(r,null!=n?n.time:n,{name:"localetime",hash:{},data:l}))+'">\n\t\t'+c(a(e(21)).call(r,null!=n?n.time:n,{name:"tz",hash:{},data:l}))+'\n\t</span>\n\t<span class="from">['+c(u(null!=n?n.command:n,n))+']</span>\n\t<span class="content">\n'+(null!=(s=i.each.call(r,null!=n?n.params:n,{name:"each",hash:{},fn:t.program(5,l,0),inverse:t.noop,data:l}))?s:"")+"\t</span>\n</div>\n"},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,i,o,l){var s,r=t.lambda,c=t.escapeExpression,u=null!=n?n:t.nullContext||{};return'<section id="network-'+c(r(null!=n?n.id:n,n))+'" class="network name-'+c(a(e(23)).call(u,null!=n?n.name:n,{name:"slugify",hash:{},data:l}))+" "+(null!=(s=i.if.call(u,null!=(s=null!=n?n.serverOptions:n)?s.NETWORK:s,{name:"if",hash:{},fn:t.program(2,l,0),inverse:t.noop,data:l}))?s:"")+'" data-id="'+c(r(null!=n?n.id:n,n))+'" data-nick="'+c(r(null!=n?n.nick:n,n))+'" data-options="'+c(a(e(275)).call(u,null!=n?n.serverOptions:n,{name:"tojson",hash:{},data:l}))+'">\n'+(null!=(s=t.invokePartial(e(168),n,{name:"chan",data:l,indent:"\t",helpers:i,partials:o,decorators:t.decorators}))?s:"")+"</section>\n"},2:function(t,n,i,o,l){var s;return"network-"+t.escapeExpression(a(e(23)).call(null!=n?n:t.nullContext||{},null!=(s=null!=n?n.serverOptions:n)?s.NETWORK:s,{name:"slugify",hash:{},data:l}))},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return null!=(o=e.each.call(null!=n?n:t.nullContext||{},null!=n?n.networks:n,{name:"each",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:""},usePartial:!0,useData:!0})},function(t,n,e){"use strict";t.exports=function(t){return JSON.stringify(t)}},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){var o=t.lambda,l=t.escapeExpression;return"\t<strong>"+l(o(null!=n?n.agent:n,n))+'</strong>\n\t<a href="https://ipinfo.io/'+l(o(null!=n?n.ip:n,n))+'" target="_blank" rel="noopener">'+l(o(null!=n?n.ip:n,n))+"</a>\n"},3:function(t,n,e,a,i){var o,l=t.lambda,s=t.escapeExpression;return'\t<button class="btn pull-right remove-session" data-token="'+s(l(null!=n?n.token:n,n))+'">Disconnect</button>\n\n\t<strong>'+s(l(null!=n?n.agent:n,n))+'</strong>\n\t<a href="https://ipinfo.io/'+s(l(null!=n?n.ip:n,n))+'" target="_blank" rel="noopener">'+s(l(null!=n?n.ip:n,n))+"</a>\n\t<br>\n"+(null!=(o=e.if.call(null!=n?n:t.nullContext||{},null!=n?n.active:n,{name:"if",hash:{},fn:t.program(4,i,0),inverse:t.program(6,i,0),data:i}))?o:"")},4:function(t,n,e,a,i){return"\t\t<em>Currently active</em>\n"},6:function(t,n,i,o,l){return"\t\tLast used on <time>"+t.escapeExpression(a(e(12)).call(null!=n?n:t.nullContext||{},null!=n?n.lastUse:n,{name:"localetime",hash:{},data:l}))+"</time>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return"<p>\n"+(null!=(o=e.if.call(null!=n?n:t.nullContext||{},null!=n?n.current:n,{name:"if",hash:{},fn:t.program(1,i,0),inverse:t.program(3,i,0),data:i}))?o:"")+"</p>\n"},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){return'<div class="unread-marker">\n\t<span class="unread-marker-text"></span>\n</div>\n'},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){return""},3:function(t,n,i,o,l){var s;return(null!=(s=a(e(173)).call(null!=n?n:t.nullContext||{},null!=n?n.mode:n,{name:"diff",hash:{},fn:t.program(4,l,0),inverse:t.noop,data:l}))?s:"")+(null!=(s=t.invokePartial(e(4),n,{name:"user_name",data:l,indent:"\t",helpers:i,partials:o,decorators:t.decorators}))?s:"")},4:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return(null!=(s=i.unless.call(r,l&&l.first,{name:"unless",hash:{},fn:t.program(5,l,0),inverse:t.noop,data:l}))?s:"")+'\t<div class="user-mode '+t.escapeExpression(a(e(279)).call(r,null!=n?n.mode:n,{name:"modes",hash:{},data:l}))+'">\n'},5:function(t,n,e,a,i){return"\t\t</div>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s,r=null!=n?n:t.nullContext||{};return(null!=(s=a(e(173)).call(r,"reset",{name:"diff",hash:{},fn:t.program(1,l,0),inverse:t.noop,data:l}))?s:"")+"\n"+(null!=(s=i.each.call(r,null!=n?n.users:n,{name:"each",hash:{},fn:t.program(3,l,0),inverse:t.noop,data:l}))?s:"")+"</div>\n"},usePartial:!0,useData:!0})},function(t,n,e){"use strict";t.exports=function(t){return{"~":"owner","&":"admin","!":"admin","@":"op","%":"half-op","+":"voice","":"normal"}[t]}},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({1:function(t,n,e,a,i){var o,l,s=t.lambda,r=t.escapeExpression;return'\t<span role="button" class="'+r(s(null!=(o=null!=n?n.original:n)?o.className:o,n))+'" data-name="'+r(s(null!=(o=null!=(o=null!=n?n.original:n)?o.dataset:o)?o.name:o,n))+'">'+(null!=(l=null!=(l=e.string||(null!=n?n.string:n))?l:e.helperMissing,o="function"==typeof l?l.call(null!=n?n:t.nullContext||{},{name:"string",hash:{},data:i}):l)?o:"")+"</span>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return'<div class="user-mode user-mode-search">\n'+(null!=(o=e.each.call(null!=n?n:t.nullContext||{},null!=n?n.matches:n,{name:"each",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:"")+"</div>\n"},useData:!0})},function(t,n,e){function a(t){return t&&(t.__esModule?t.default:t)}var i=e(1);t.exports=(i.default||i).template({1:function(t,n,e,a,i){return"\t<p>\n\t\tChecking for updates...\n\t</p>\n"},3:function(t,n,i,o,l){var s;return null!=(s=a(e(7)).call(null!=n?n:t.nullContext||{},null!=n?n.status:n,"new-version",{name:"equal",hash:{},fn:t.program(4,l,0),inverse:t.program(7,l,0),data:l}))?s:""},4:function(t,n,e,a,i){var o,l=t.lambda,s=t.escapeExpression;return"\t<p>\n\t\tThe Lounge <b>"+s(l(null!=(o=null!=n?n.latest:n)?o.version:o,n))+"</b>"+(null!=(o=e.if.call(null!=n?n:t.nullContext||{},null!=(o=null!=n?n.latest:n)?o.prerelease:o,{name:"if",hash:{},fn:t.program(5,i,0),inverse:t.noop,data:i}))?o:"")+'\n\t\tis now available.\n\t\t<br>\n\n\t\t<a href="'+s(l(null!=(o=null!=n?n.latest:n)?o.url:o,n))+'" target="_blank" rel="noopener">\n\t\t\tRead more on GitHub\n\t\t</a>\n\t</p>\n'},5:function(t,n,e,a,i){return" (pre-release)"},7:function(t,n,i,o,l){var s;return null!=(s=a(e(7)).call(null!=n?n:t.nullContext||{},null!=n?n.status:n,"up-to-date",{name:"equal",hash:{},fn:t.program(8,l,0),inverse:t.program(10,l,0),data:l}))?s:""},8:function(t,n,e,a,i){return'\t<p>\n\t\tThe Lounge is up to date!\n\t</p>\n\n\t<button id="check-now" class="btn btn-small">Check now</button>\n'},10:function(t,n,i,o,l){var s;return null!=(s=a(e(7)).call(null!=n?n:t.nullContext||{},null!=n?n.status:n,"error",{name:"equal",hash:{},fn:t.program(11,l,0),inverse:t.noop,data:l}))?s:""},11:function(t,n,e,a,i){return'\t<p>\n\t\tInformation about latest releases could not be retrieved.\n\t</p>\n\n\t<button id="check-now" class="btn btn-small">Try again</button>\n'},compiler:[7,">= 4.0.0"],main:function(t,n,i,o,l){var s;return null!=(s=a(e(7)).call(null!=n?n:t.nullContext||{},null!=n?n.status:n,"loading",{name:"equal",hash:{},fn:t.program(1,l,0),inverse:t.program(3,l,0),data:l}))?s:""},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({1:function(t,n,e,a,i){var o,l,s=null!=n?n:t.nullContext||{};return'\t\t<h1 class="title">Release notes for '+t.escapeExpression((l=null!=(l=e.version||(null!=n?n.version:n))?l:e.helperMissing,"function"==typeof l?l.call(s,{name:"version",hash:{},data:i}):l))+"</h1>\n\n"+(null!=(o=e.if.call(s,null!=n?n.changelog:n,{name:"if",hash:{},fn:t.program(2,i,0),inverse:t.program(4,i,0),data:i}))?o:"")},2:function(t,n,e,a,i){var o,l;return'\t\t\t<h3>Introduction</h3>\n\t\t\t<div class="changelog-text">'+(null!=(l=null!=(l=e.changelog||(null!=n?n.changelog:n))?l:e.helperMissing,o="function"==typeof l?l.call(null!=n?n:t.nullContext||{},{name:"changelog",hash:{},data:i}):l)?o:"")+"</div>\n"},4:function(t,n,e,a,i){var o;return'\t\t\t<p>Unable to retrieve releases from GitHub.</p>\n\t\t\t<p><a href="https://github.com/thelounge/lounge/releases/tag/v'+t.escapeExpression((o=null!=(o=e.version||(null!=n?n.version:n))?o:e.helperMissing,"function"==typeof o?o.call(null!=n?n:t.nullContext||{},{name:"version",hash:{},data:i}):o))+'" target="_blank" rel="noopener">View release notes for this version on GitHub</a></p>\n'},6:function(t,n,e,a,i){return"\t\t<p>Loading changelog…</p>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o;return'<div class="header">\n\t<button class="lt" aria-label="Toggle channel list"></button>\n</div>\n<div class="container">\n\t<a href="#" id="back-to-help" data-target="#help">« Help</a>\n\n'+(null!=(o=e.if.call(null!=n?n:t.nullContext||{},null!=n?n.version:n,{name:"if",hash:{},fn:t.program(1,i,0),inverse:t.program(6,i,0),data:i}))?o:"")+"</div>\n"},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({1:function(t,n,e,a,i){return"The Lounge - "},3:function(t,n,e,a,i){var o;return null!=(o=e.if.call(null!=n?n:t.nullContext||{},null!=n?n.lockNetwork:n,{name:"if",hash:{},fn:t.program(4,i,0),inverse:t.noop,data:i}))?o:""},4:function(t,n,e,a,i){var o;return"\t\t\t\t\tto "+t.escapeExpression(t.lambda(null!=(o=null!=n?n.defaults:n)?o.name:o,n))+"\n"},6:function(t,n,e,a,i){var o,l=t.lambda,s=t.escapeExpression,r=null!=n?n:t.nullContext||{};return'\t\t<div>\n\t\t\t<div class="col-sm-12">\n\t\t\t\t<h2>Network settings</h2>\n\t\t\t</div>\n\t\t\t<div class="col-sm-3">\n\t\t\t\t<label for="connect:name">Name</label>\n\t\t\t</div>\n\t\t\t<div class="col-sm-9">\n\t\t\t\t<input class="input" id="connect:name" name="name" value="'+s(l(null!=(o=null!=n?n.defaults:n)?o.name:o,n))+'">\n\t\t\t</div>\n\t\t\t<div class="col-sm-3">\n\t\t\t\t<label for="connect:host">Server</label>\n\t\t\t</div>\n\t\t\t<div class="col-sm-6 col-xs-8">\n\t\t\t\t<input class="input" id="connect:host" name="host" value="'+s(l(null!=(o=null!=n?n.defaults:n)?o.host:o,n))+'" aria-label="Server address" '+(null!=(o=e.if.call(r,null!=n?n.lockNetwork:n,{name:"if",hash:{},fn:t.program(7,i,0),inverse:t.noop,data:i}))?o:"")+'>\n\t\t\t</div>\n\t\t\t<div class="col-sm-3 col-xs-4">\n\t\t\t\t<div class="port">\n\t\t\t\t\t<input class="input" type="number" min="1" max="65535" name="port" value="'+s(l(null!=(o=null!=n?n.defaults:n)?o.port:o,n))+'" aria-label="Server port" '+(null!=(o=e.if.call(r,null!=n?n.lockNetwork:n,{name:"if",hash:{},fn:t.program(7,i,0),inverse:t.noop,data:i}))?o:"")+'>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class="clearfix"></div>\n\t\t\t<div class="col-sm-9 col-sm-offset-3">\n\t\t\t\t<label class="tls">\n\t\t\t\t\t<input type="checkbox" name="tls" '+(null!=(o=e.if.call(r,null!=(o=null!=n?n.defaults:n)?o.tls:o,{name:"if",hash:{},fn:t.program(9,i,0),inverse:t.noop,data:i}))?o:"")+" "+(null!=(o=e.if.call(r,null!=n?n.lockNetwork:n,{name:"if",hash:{},fn:t.program(7,i,0),inverse:t.noop,data:i}))?o:"")+'>\n\t\t\t\t\tEnable TLS/SSL\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t\t<div class="clearfix"></div>\n\t\t</div>\n'},7:function(t,n,e,a,i){return"disabled"},9:function(t,n,e,a,i){return"checked"},11:function(t,n,e,a,i){var o;return'\t\t<div class="col-sm-3">\n\t\t\t<label for="connect:username">Username</label>\n\t\t</div>\n\t\t<div class="col-sm-9">\n\t\t\t<input class="input username" id="connect:username" name="username" value="'+t.escapeExpression(t.lambda(null!=(o=null!=n?n.defaults:n)?o.username:o,n))+'">\n\t\t</div>\n'},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o,l=null!=n?n:t.nullContext||{},s=t.lambda,r=t.escapeExpression;return'<div class="header">\n\t<button class="lt" aria-label="Toggle channel list"></button>\n</div>\n<form class="container" method="post" action="" data-event="conn">\n\t<div class="row">\n\t\t<div class="col-sm-12">\n\t\t\t<h1 class="title">\n\t\t\t\t'+(null!=(o=e.if.call(l,null!=n?n.public:n,{name:"if",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:"")+"\n\t\t\t\tConnect\n"+(null!=(o=e.unless.call(l,null!=n?n.displayNetwork:n,{name:"unless",hash:{},fn:t.program(3,i,0),inverse:t.noop,data:i}))?o:"")+"\t\t\t</h1>\n\t\t</div>\n"+(null!=(o=e.if.call(l,null!=n?n.displayNetwork:n,{name:"if",hash:{},fn:t.program(6,i,0),inverse:t.noop,data:i}))?o:"")+'\t\t<div class="col-sm-12">\n\t\t\t<h2>User preferences</h2>\n\t\t</div>\n\t\t<div class="col-sm-3">\n\t\t\t<label for="connect:nick">Nick</label>\n\t\t</div>\n\t\t<div class="col-sm-9">\n\t\t\t<input class="input nick" id="connect:nick" name="nick" value="'+r(s(null!=(o=null!=n?n.defaults:n)?o.nick:o,n))+'">\n\t\t</div>\n'+(null!=(o=e.unless.call(l,null!=n?n.useHexIp:n,{name:"unless",hash:{},fn:t.program(11,i,0),inverse:t.noop,data:i}))?o:"")+'\t\t<div class="col-sm-3">\n\t\t\t<label for="connect:password">Password</label>\n\t\t</div>\n\t\t<div class="col-sm-9">\n\t\t\t<input class="input" id="connect:password" type="password" name="password" value="'+r(s(null!=(o=null!=n?n.defaults:n)?o.password:o,n))+'">\n\t\t</div>\n\t\t<div class="col-sm-3">\n\t\t\t<label for="connect:realname">Real name</label>\n\t\t</div>\n\t\t<div class="col-sm-9">\n\t\t\t<input class="input" id="connect:realname" name="realname" value="'+r(s(null!=(o=null!=n?n.defaults:n)?o.realname:o,n))+'">\n\t\t</div>\n\t\t<div class="col-sm-3">\n\t\t\t<label for="connect:channels">Channels</label>\n\t\t</div>\n\t\t<div class="col-sm-9">\n\t\t\t<input class="input" id="connect:channels" name="join" value="'+r(s(null!=(o=null!=n?n.defaults:n)?o.join:o,n))+'">\n\t\t</div>\n\t\t<div class="col-sm-9 col-sm-offset-3">\n\t\t\t<button type="submit" class="btn">Connect</button>\n\t\t</div>\n\t</div>\n</form>\n'},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({1:function(t,n,e,a,i){var o,l=null!=n?n:t.nullContext||{},s=e.helperMissing,r="function",c=t.escapeExpression;return'\t\t\t<p>\n\t\t\t\tThe Lounge is running from source\n\t\t\t\t(<a href="https://github.com/thelounge/lounge/tree/'+c((o=null!=(o=e.gitCommit||(null!=n?n.gitCommit:n))?o:s,typeof o===r?o.call(l,{name:"gitCommit",hash:{},data:i}):o))+'" target="_blank" rel="noopener">commit <code>'+c((o=null!=(o=e.gitCommit||(null!=n?n.gitCommit:n))?o:s,typeof o===r?o.call(l,{name:"gitCommit",hash:{},data:i}):o))+'</code></a>).\n\t\t\t</p>\n\n\t\t\t<ul>\n\t\t\t\t<li>\n\t\t\t\t\tCompare\n\t\t\t\t\t<a href="https://github.com/thelounge/lounge/compare/'+c((o=null!=(o=e.gitCommit||(null!=n?n.gitCommit:n))?o:s,typeof o===r?o.call(l,{name:"gitCommit",hash:{},data:i}):o))+'...master" target="_blank" rel="noopener">between <code>'+c((o=null!=(o=e.gitCommit||(null!=n?n.gitCommit:n))?o:s,typeof o===r?o.call(l,{name:"gitCommit",hash:{},data:i}):o))+'</code> and <code>master</code></a>\n\t\t\t\t\tto see what you are missing\n\t\t\t\t</li>\n\t\t\t\t<li>\n\t\t\t\t\tCompare\n\t\t\t\t\t<a href="https://github.com/thelounge/lounge/compare/'+c((o=null!=(o=e.version||(null!=n?n.version:n))?o:s,typeof o===r?o.call(l,{name:"version",hash:{},data:i}):o))+"..."+c((o=null!=(o=e.gitCommit||(null!=n?n.gitCommit:n))?o:s,typeof o===r?o.call(l,{name:"gitCommit",hash:{},data:i}):o))+'" target="_blank" rel="noopener">between <code>'+c((o=null!=(o=e.version||(null!=n?n.version:n))?o:s,typeof o===r?o.call(l,{name:"version",hash:{},data:i}):o))+"</code> and <code>"+c((o=null!=(o=e.gitCommit||(null!=n?n.gitCommit:n))?o:s,typeof o===r?o.call(l,{name:"gitCommit",hash:{},data:i}):o))+"</code></a>\n\t\t\t\t\tto see your local changes</li>\n\t\t\t</ul>\n"},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o,l,s=null!=n?n:t.nullContext||{};return'<div class="header">\n\t<button class="lt" aria-label="Toggle channel list"></button>\n</div>\n<div class="container">\n\t<h1 class="title">Help</h1>\n\n\t<h2>\n\t\t<small class="pull-right">\n\t\t\tv'+t.escapeExpression((l=null!=(l=e.version||(null!=n?n.version:n))?l:e.helperMissing,"function"==typeof l?l.call(s,{name:"version",hash:{},data:i}):l))+'\n\t\t\t(<a href="#" id="view-changelog" data-target="#changelog">release notes</a>)\n\t\t</small>\n\t\tAbout The Lounge\n\t</h2>\n\n\t<div class="about">\n\t\t<div id="version-checker"></div>\n\n'+(null!=(o=e.if.call(s,null!=n?n.gitCommit:n,{name:"if",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:"")+'\n\t\t<p>\n\t\t\t<a href="https://thelounge.github.io/" target="_blank" rel="noopener" class="website-link">Website</a>\n\t\t</p>\n\t\t<p>\n\t\t\t<a href="https://thelounge.github.io/docs/" target="_blank" rel="noopener" class="documentation-link">Documentation</a>\n\t\t</p>\n\t\t<p>\n\t\t\t<a href="https://github.com/thelounge/lounge/issues/new" target="_blank" rel="noopener" class="report-issue-link">Report an issue…</a>\n\t\t</p>\n\t</div>\n\n\t<h2>Keyboard Shortcuts</h2>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<kbd class="key-all">Ctrl</kbd><kbd class="key-apple">⌘</kbd> + <kbd>↑</kbd> / <kbd>↓</kbd>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Switch to the previous/next window in the channel list.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<kbd class="key-all">Ctrl</kbd><kbd class="key-apple">⌘</kbd> + <kbd>K</kbd>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tMark any text typed after this shortcut to be colored. After\n\t\t\t\thitting this shortcut, enter an integer in the range\n\t\t\t\t<code>0—15</code> to select the desired color, or use the\n\t\t\t\tautocompletion menu to choose a color name (see below).\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\tBackground color can be specified by putting a comma and\n\t\t\t\tanother integer in the range <code>0—15</code> after the\n\t\t\t\tforeground color number (autocompletion works too).\n\t\t\t</p>\n\t\t\t<p>\n\t\t\t\tA color reference can be found\n\t\t\t\t<a href="https://modern.ircdocs.horse/formatting.html#colors" target="_blank" rel="noopener">here</a>.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<kbd class="key-all">Ctrl</kbd><kbd class="key-apple">⌘</kbd> + <kbd>B</kbd>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Mark all text typed after this shortcut as bold.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<kbd class="key-all">Ctrl</kbd><kbd class="key-apple">⌘</kbd> + <kbd>U</kbd>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Mark all text typed after this shortcut as underlined.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<kbd class="key-all">Ctrl</kbd><kbd class="key-apple">⌘</kbd> + <kbd>I</kbd>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Mark all text typed after this shortcut as italics.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<kbd class="key-all">Ctrl</kbd><kbd class="key-apple">⌘</kbd> + <kbd>S</kbd>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Mark all text typed after this shortcut as struck through.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<kbd class="key-all">Ctrl</kbd><kbd class="key-apple">⌘</kbd> + <kbd>M</kbd>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Mark all text typed after this shortcut as monospaced.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<kbd class="key-all">Ctrl</kbd><kbd class="key-apple">⌘</kbd> + <kbd>O</kbd>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tMark all text typed after this shortcut to be reset to its\n\t\t\t\toriginal formatting.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<h2>Autocompletion</h2>\n\n\t<p>\n\t\tTo auto-complete nicknames, channels, commands, and emoji, type one of the characters below to open\n\t\ta suggestion list. Use the <kbd>↑</kbd> and <kbd>↓</kbd> keys to highlight an item, and insert it by\n\t\tpressing <kbd>Tab</kbd> or <kbd>Enter</kbd> (or by clicking the desired item).\n\t</p>\n\t<p>\n\t\tAutocompletion can be disabled in settings.\n\t</p>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>@</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Nickname</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>#</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Channel</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Commands (see list of commands below)</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>:</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Emoji (note: requires two search characters, to avoid conflicting with common emoticons like <code>:)</code>)</p>\n\t\t</div>\n\t</div>\n\n\t<h2>Commands</h2>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/away [message]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Mark yourself as away with an optional message.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/back</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Remove your away status (set with <code>/away</code>).</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/ban nick</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Ban (<code>+b</code>) a user from the current channel.\n\t\t\tThis can be a nickname or a hostmask.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/banlist</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Load the banlist for the current channel.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/collapse</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tCollapse all previews in the current channel (opposite of\n\t\t\t\t<code>/expand</code>)\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/connect host [port]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tConnect to a new IRC network. If <code>port</code> starts with\n\t\t\t\ta <code>+</code> sign, the connection will be made secure\n\t\t\t\tusing TLS.\n\t\t\t</p>\n\t\t\t<p>Alias: <code>/server</code></p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/ctcp target cmd [args]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tSend a <abbr title="Client-to-client protocol">CTCP</abbr>\n\t\t\t\trequest. Read more about this on\n\t\t\t\t<a href="https://en.wikipedia.org/wiki/Client-to-client_protocol" target="_blank" rel="noopener">the dedicated Wikipedia article</a>.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/deop nick [...nick]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tRemove op (<code>-o</code>) from one or several users in the\n\t\t\t\tcurrent channel.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/devoice nick [...nick]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tRemove voice (<code>-v</code>) from one or several users in\n\t\t\t\tthe current channel.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/disconnect [message]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tDisconnect from the current network with an\n\t\t\t\toptionally-provided message.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/expand</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tExpand all previews in the current channel (opposite of\n\t\t\t\t<code>/collapse</code>)\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/invite nick [channel]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tInvite a user to the specified channel. If\n\t\t\t\t<code>channel</code> is ommitted, user will be invited to the\n\t\t\t\tcurrent channel.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/join channel</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Join a channel.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/kick nick</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Kick a user from the current channel.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/list</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Retrieve a list of available channels on this network.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/me message</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tSend an action message to the current channel. The Lounge will\n\t\t\t\tdisplay it inline, as if the message was posted in the third\n\t\t\t\tperson.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/mode flags [args]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tSet the given flags to the current channel if the active\n\t\t\t\twindow is a channel, another user if the active window is a\n\t\t\t\tprivate message window, or yourself if the current window is a\n\t\t\t\tserver window.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/msg channel message</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Send a message to the specified channel.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/nick newnick</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Change your nickname on the current network.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/notice channel message</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Sends a notice message to the specified channel.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/op nick [...nick]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tGive op (<code>+o</code>) to one or several users in the\n\t\t\t\tcurrent channel.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/part [channel]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tClose the specified channel or private message window, or the\n\t\t\t\tcurrent channel if <code>channel</code> is ommitted.\n\t\t\t</p>\n\t\t\t<p>Aliases: <code>/close</code>, <code>/leave</code></p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/rejoin</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tLeave and immediately rejoin the current channel. Useful to\n\t\t\t\tquickly get op from ChanServ in an empty channel, for example.\n\t\t\t</p>\n\t\t\t<p>Alias: <code>/cycle</code></p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/query nick</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Send a private message to the specified user.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/quit [message]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tDisconnect from the current network with an optional message.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/raw message</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Send a raw message to the current IRC network.</p>\n\t\t\t<p>Aliases: <code>/quote</code>, <code>/send</code></p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/slap nick</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Slap someone in the current channel with a trout!</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/topic newtopic</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Set the topic in the current channel.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/unban nick</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>Unban (<code>-b</code>) a user from the current channel.\n\t\t\t\tThis can be a nickname or a hostmask.</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/voice nick [...nick]</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tGive voice (<code>+v</code>) to one or several users in the\n\t\t\t\tcurrent channel.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n\n\t<div class="help-item">\n\t\t<div class="subject">\n\t\t\t<code>/whois nick</code>\n\t\t</div>\n\t\t<div class="description">\n\t\t\t<p>\n\t\t\t\tRetrieve information about the given user on the current\n\t\t\t\tnetwork.\n\t\t\t</p>\n\t\t</div>\n\t</div>\n</div>\n'},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({1:function(t,n,e,a,i){var o,l=null!=n?n:t.nullContext||{},s=e.helperMissing,r=t.escapeExpression;return'\t\t\t\t\t<option value="'+r((o=null!=(o=e.name||(null!=n?n.name:n))?o:s,"function"==typeof o?o.call(l,{name:"name",hash:{},data:i}):o))+'">\n\t\t\t\t\t\t'+r((o=null!=(o=e.displayName||(null!=n?n.displayName:n))?o:s,"function"==typeof o?o.call(l,{name:"displayName",hash:{},data:i}):o))+"\n\t\t\t\t\t</option>\n"},3:function(t,n,e,a,i){return'\t\t<div class="col-sm-12">\n\t\t\t<h2>Link previews</h2>\n\t\t</div>\n\t\t<div class="col-sm-6">\n\t\t\t<label class="opt">\n\t\t\t\t<input type="checkbox" name="media">\n\t\t\t\tAuto-expand media\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-sm-6">\n\t\t\t<label class="opt">\n\t\t\t\t<input type="checkbox" name="links">\n\t\t\t\tAuto-expand websites\n\t\t\t</label>\n\t\t</div>\n'},5:function(t,n,e,a,i){return'\t\t<div class="col-sm-12">\n\t\t\t<h2>Push Notifications</h2>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<button type="button" class="btn" id="pushNotifications" disabled data-text-alternate="Unsubscribe from push notifications">Subscribe to push notifications</button>\n\t\t\t<div class="error" id="pushNotificationsHttps">\n\t\t\t\t<strong>Warning</strong>:\n\t\t\t\tPush notifications are only supported over HTTPS connections.\n\t\t\t</div>\n\t\t\t<div class="error" id="pushNotificationsUnsupported">\n\t\t\t\t<strong>Warning</strong>:\n\t\t\t\t<span>Push notifications are not supported by your browser.</span>\n\t\t\t</div>\n\t\t</div>\n'},7:function(t,n,e,a,i){var o;return null!=(o=e.unless.call(null!=n?n:t.nullContext||{},null!=n?n.ldapEnabled:n,{name:"unless",hash:{},fn:t.program(8,i,0),inverse:t.noop,data:i}))?o:""},8:function(t,n,e,a,i){return'\t\t<div id="change-password">\n\t\t\t<form action="" method="post" data-event="change-password">\n\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t<h2>Change password</h2>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t<label for="old_password_input" class="sr-only">Enter current password</label>\n\t\t\t\t\t<input type="password" id="old_password_input" name="old_password" class="input" placeholder="Enter current password">\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t<label for="new_password_input" class="sr-only">Enter desired new password</label>\n\t\t\t\t\t<input type="password" id="new_password_input" name="new_password" class="input" placeholder="Enter desired new password">\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t<label for="verify_password_input" class="sr-only">Repeat new password</label>\n\t\t\t\t\t<input type="password" id="verify_password_input" name="verify_password" class="input" placeholder="Repeat new password">\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-12 feedback"></div>\n\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t<button type="submit" class="btn">Change password</button>\n\t\t\t\t</div>\n\t\t\t</form>\n\t\t</div>\n'},10:function(t,n,e,a,i){return'\t\t<div class="session-list">\n\t\t\t<h2>Sessions</h2>\n\n\t\t\t<h3>Current session</h3>\n\t\t\t<div id="session-current"></div>\n\n\t\t\t<h3>Other sessions</h3>\n\t\t\t<div id="session-list"></div>\n\t\t</div>\n'},compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){var o,l=null!=n?n:t.nullContext||{};return'<div class="header">\n\t<button class="lt" aria-label="Toggle channel list"></button>\n</div>\n<div class="container">\n\t<h1 class="title">Settings</h1>\n\n\t<div class="row">\n\t\t<div class="col-sm-12">\n\t\t\t<h2>Messages</h2>\n\t\t</div>\n\t\t<div class="col-sm-6">\n\t\t\t<label class="opt">\n\t\t\t\t<input type="checkbox" name="motd">\n\t\t\t\tShow <abbr title="Message Of The Day">MOTD</abbr>\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-sm-6">\n\t\t\t<label class="opt">\n\t\t\t\t<input type="checkbox" name="showSeconds">\n\t\t\t\tShow seconds in timestamp\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<h2>\n\t\t\t\tStatus messages\n\t\t\t\t<span class="tooltipped tooltipped-n tooltipped-no-delay" aria-label="Joins, parts, kicks, nick changes, away changes, and mode changes">\n\t\t\t\t\t<button class="extra-help" aria-label="Joins, parts, kicks, nick changes, away changes, and mode changes"></button>\n\t\t\t\t</span>\n\t\t\t</h2>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<label class="opt">\n\t\t\t\t<input type="radio" name="statusMessages" value="shown">\n\t\t\t\tShow all status messages individually\n\t\t\t</label>\n\t\t\t<label class="opt">\n\t\t\t\t<input type="radio" name="statusMessages" value="condensed">\n\t\t\t\tCondense status messages together\n\t\t\t</label>\n\t\t\t<label class="opt">\n\t\t\t\t<input type="radio" name="statusMessages" value="hidden">\n\t\t\t\tHide all status messages\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<h2>Visual Aids</h2>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<label class="opt">\n\t\t\t\t<input type="checkbox" name="coloredNicks">\n\t\t\t\tEnable colored nicknames\n\t\t\t</label>\n\t\t\t<label class="opt">\n\t\t\t\t<input type="checkbox" name="autocomplete">\n\t\t\t\tEnable autocomplete\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<label class="opt">\n\t\t\t\t<label for="nickPostfix" class="sr-only">Nick autocomplete postfix (e.g. <code>, </code>)</label>\n\t\t\t\t<input type="text" id="nickPostfix" name="nickPostfix" class="input" placeholder="Nick autocomplete postfix (e.g. \', \')">\n\t\t\t</label>\n\t\t</div>\n\n\t\t<div class="col-sm-12">\n\t\t\t<h2>Theme</h2>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<label for="theme-select" class="sr-only">Theme</label>\n\t\t\t<select id="theme-select" name="theme" class="input">\n'+(null!=(o=e.each.call(l,null!=n?n.themes:n,{name:"each",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?o:"")+"\t\t\t</select>\n\t\t</div>\n"+(null!=(o=e.if.call(l,null!=n?n.prefetch:n,{name:"if",hash:{},fn:t.program(3,i,0),inverse:t.noop,data:i}))?o:"")+(null!=(o=e.unless.call(l,null!=n?n.public:n,{name:"unless",hash:{},fn:t.program(5,i,0),inverse:t.noop,data:i}))?o:"")+'\t\t<div class="col-sm-12">\n\t\t\t<h2>Browser Notifications</h2>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<label class="opt">\n\t\t\t<input id="desktopNotifications" type="checkbox" name="desktopNotifications">\n\t\t\tEnable browser notifications<br>\n\t\t\t<div class="error" id="warnUnsupportedDesktopNotifications">\n\t\t\t\t<strong>Warning</strong>:\n\t\t\t\tNotifications are not supported by your browser.\n\t\t\t</div>\n\t\t\t<div class="error" id="warnBlockedDesktopNotifications">\n\t\t\t\t<strong>Warning</strong>:\n\t\t\t\tNotifications are blocked by your browser.\n\t\t\t</div>\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<label class="opt">\n\t\t\t<input type="checkbox" name="notification">\n\t\t\tEnable notification sound\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<div class="opt">\n\t\t\t\t<button id="play">Play sound</button>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class="col-sm-12">\n\t\t\t<label class="opt">\n\t\t\t\t<input type="checkbox" name="notifyAllMessages">\n\t\t\t\tEnable notification for all messages\n\t\t\t</label>\n\t\t</div>\n\n\t\t<div class="col-sm-12">\n\t\t\t<label class="opt">\n\t\t\t\t<label for="highlights" class="sr-only">Custom highlights (comma-separated keywords)</label>\n\t\t\t\t<input type="text" id="highlights" name="highlights" class="input" placeholder="Custom highlights (comma-separated keywords)">\n\t\t\t</label>\n\t\t</div>\n\n'+(null!=(o=e.unless.call(l,null!=n?n.public:n,{name:"unless",hash:{},fn:t.program(7,i,0),inverse:t.noop,data:i}))?o:"")+'\t\t<div class="col-sm-12">\n\t\t\t<h2>Custom Stylesheet</h2>\n\t\t</div>\n\t\t<div class="col-sm-12">\n\t\t\t<label for="user-specified-css-input" class="sr-only">Custom stylesheet. You can override any style with CSS here.</label>\n\t\t\t<textarea class="input" name="userStyles" id="user-specified-css-input" placeholder="/* You can override any style with CSS here */"></textarea>\n\t\t</div>\n\t</div>\n\n'+(null!=(o=e.unless.call(l,null!=n?n.public:n,{name:"unless",hash:{},fn:t.program(10,i,0),inverse:t.noop,data:i}))?o:"")+"</div>\n"},useData:!0})},function(t,n,e){var a=e(1);t.exports=(a.default||a).template({compiler:[7,">= 4.0.0"],main:function(t,n,e,a,i){return'<form class="container" method="post" action="">\n\t<div class="row">\n\t\t<div class="col-xs-12">\n\t\t\t<h1 class="title">Sign in to The Lounge</h1>\n\t\t</div>\n\t\t<div class="col-xs-12">\n\t\t\t<label>\n\t\t\t\tUsername\n\t\t\t\t<input class="input" name="user" autofocus>\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-xs-12">\n\t\t\t<label>\n\t\t\t\tPassword\n\t\t\t\t<input class="input" type="password" name="password">\n\t\t\t</label>\n\t\t</div>\n\t\t<div class="col-xs-12 error" style="display: none;">Authentication failed.</div>\n\t\t<div class="col-xs-12">\n\t\t\t<button type="submit" class="btn">Sign in</button>\n\t\t</div>\n\t</div>\n</form>\n'},useData:!0})},,,,,,,,,,,,,,,,,,function(t,n){},,,function(t,n,e){"use strict";var a=e(2),i=a("#sidebar, #footer"),o=e(3),l=e(13);t.exports=function(){i.find(".networks").sortable({axis:"y",containment:"parent",cursor:"move",distance:12,items:".network",handle:".lobby",placeholder:"network-placeholder",forcePlaceholderSize:!0,tolerance:"pointer",update:function(){var t=[];i.find(".network").each(function(){var n=a(this).data("id");t.push(n)}),o.emit("sort",{type:"networks",order:t}),l.ignoreSortSync=!0}}),i.find(".network").sortable({axis:"y",containment:"parent",cursor:"move",distance:12,items:".chan:not(.lobby)",placeholder:"chan-placeholder",forcePlaceholderSize:!0,tolerance:"pointer",update:function(t,n){var e=[],i=n.item.parent();i.find(".chan").each(function(){var t=a(this).data("id");e.push(t)}),o.emit("sort",{type:"channels",target:i.data("id"),order:e}),l.ignoreSortSync=!0}})}},,,function(t,n,e){"use strict";e(311),e(312),e(313),e(314),e(315),e(316),e(318),e(319),e(320),e(321),e(322),e(323),e(324),e(325),e(326),e(327),e(328),e(329),e(330),e(188)},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(17),l=e(11),s=e(8);i.on("auth",function(t){if(l.serverHash>-1&&t.serverHash>-1&&t.serverHash!==l.serverHash)return i.disconnect(),a("#connection-error").text("Server restarted, reloading…"),void location.reload(!0);var n=a("#sign-in");t.serverHash>-1?(l.serverHash=t.serverHash,n.html(s.windows.sign_in()),n.find("form").on("submit",function(){var t=a(this);t.find(".btn").prop("disabled",!0);var n={};return a.each(t.serializeArray(),function(t,e){n[e.name]=e.value}),o.set("user",n.user),i.emit("auth",n),!1})):n.find(".btn").prop("disabled",!1);var e=void 0,r=o.get("user");if(t.success)r&&(e=o.get("token"))&&(a("#loading-page-message, #connection-error").text("Authorizing…"),i.emit("auth",{user:r,token:e,lastMessage:l.lastMessageId}));else{if(0===n.length)return i.disconnect(),a("#connection-error").text("Authentication failed, reloading…"),void location.reload();o.remove("token");var c=n.find(".error");c.show().closest("form").one("submit",function(){c.hide()})}r&&n.find("input[name='user']").val(r),e||a("#footer").find(".sign-in").trigger("click",{pushState:!1})})},function(t,n,e){"use strict";var a=e(2);e(3).on("change-password",function(t){var n=a("#change-password");if(t.error||t.success){var e=t.success?t.success:t.error,i=n.find(".feedback");t.success?i.addClass("success").removeClass("error"):i.addClass("error").removeClass("success"),i.text(e).show(),i.closest("form").one("submit",function(){i.hide()})}n.find("input").val("").end().find(".btn").prop("disabled",!1)})},function(t,n,e){"use strict";function a(t,n){var e=i();if(t>0&&(e=c.find('.chan[data-id="'+t+'"]')),0===e.length&&window.location.hash&&(e=i('[data-target="'+o(window.location.hash)+'"]').first()),n>0&&0===e.length&&(e=c.find('.chan[data-id="'+n+'"]')),0===e.length&&(e=c.find(".chan").first()),e.length>0)return void e.trigger("click",{replaceHistory:!0});i("#footer .connect").trigger("click",{pushState:!1})}var i=e(2),o=e(32),l=e(3),s=e(15),r=e(30),c=i("#sidebar"),u=e(17),d=e(11);l.on("init",function(t){i("#loading-page-message, #connection-error").text("Rendering…");var n=d.lastMessageId,e=0;n>-1&&(e=c.find(".active").data("id"),c.find(".networks").empty()),0===t.networks.length?(c.find(".empty").show(),i("#footer").find(".connect").trigger("click",{pushState:!1})):s.renderNetworks(t),n>-1?(i("#connection-error").removeClass("shown"),i(".show-more-button, #input").prop("disabled",!1),i("#submit").show()):(t.token&&u.set("token",t.token),r.configurePushNotifications(t.pushSubscription,t.applicationServerKey),i("body").removeClass("signed-out"),i("#loading").remove(),i("#sign-in").remove(),window.g_LoungeErrorHandler&&(window.removeEventListener("error",window.g_LoungeErrorHandler),window.g_LoungeErrorHandler=null)),a(e,t.active)})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(15),l=a("#chat"),s=e(8),r=a("#sidebar");i.on("join",function(t){var n=t.network;r.find("#network-"+n).append(s.chan({channels:[t.chan]})),l.append(s.chat({channels:[t.chan]})),o.renderChannel(t.chan),("query"!==t.chan.type||t.shouldOpen)&&r.find(".chan").sort(function(t,n){return a(t).data("id")-a(n).data("id")}).last().trigger("click")})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(15),l=e(186),s=a("#chat");i.on("more",function(t){var n=s.find("#chan-"+t.chan),e=n.data("type");n=n.find(".messages");var i=n.closest(".chat"),r=n.height()-i.scrollTop();if(!t.messages.length)return void i.find(".show-more").removeClass("show");var c=a(n).children();c.eq(0).hasClass("date-marker-container")?c.eq(0).remove():c.eq(1).hasClass("date-marker-container")?c.eq(1).remove():c.eq(0).hasClass("condensed")&&c.eq(0).children(".date-marker-container").eq(0).hasClass("date-marker-container")&&c.eq(0).children(".date-marker-container").eq(0).remove();var u=o.buildChannelMessages(a(document.createDocumentFragment()),t.chan,e,t.messages);n.prepend(u);var d=n.find(".unread-marker"),p=d.data("unread-id");if(p>0){var h=n.find("#msg-"+p);if(h.length){var m=h.parent();m.hasClass("condensed")&&(h=m),d.data("unread-id",0),h.before(d)}else n.prepend(d)}var f=n.find(".msg.condensed + .msg.condensed");if(f){var g=f.prev();l.updateText(g,l.getStoredTypes(f)),g.append(f.find(".msg")).toggleClass("closed",f.hasClass("closed")),f.remove()}var _=n.height()-r;i.finish().scrollTop(_),window.requestAnimationFrame&&window.requestAnimationFrame(function(){return i.scrollTop(_)}),100!==t.messages.length&&i.find(".show-more").removeClass("show"),i.find(".show-more-button").text("Show older messages").prop("disabled",!1)}),s.on("click",".show-more-button",function(){var t=a(this),n=t.closest(".chat").find(".msg:not(.condensed)").first(),e=-1;n.length>0&&(e=parseInt(n.prop("id").replace("msg-",""),10)),t.text("Loading older messages…").prop("disabled",!0),i.emit("more",{target:t.data("id"),lastId:e})})},function(t,n,e){"use strict";function a(t){var n=t.chan,e="#chan-"+n,a=h.find(e),l=m.find("[data-target='"+e+"']");if(t.msg.showInActive){var r=l.parent().find(".active");r.length>0&&(n=t.chan=r.data("id"),e="#chan-"+n,a=h.find(e),l=m.find("[data-target='"+e+"']"))}var c=a.find(".messages"),u=h.find(".chan.active").data("id");"channel_list"!==t.msg.type&&"ban_list"!==t.msg.type||o(c).empty(),s.appendMessage(c,n,a.data("type"),t.msg),u===n&&c.trigger("keepToBottom"),i(n,a,t);var d=c.find("div:visible").last();(t.msg.self||d.hasClass("unread-marker")||d.hasClass("date-marker")&&d.prev().hasClass("unread-marker"))&&c.find(".unread-marker").data("unread-id",0).appendTo(c),t.msg.self&&l.find(".badge").removeClass("highlight").empty();var p=0;if(u!==n?p=100:c.isScrollBottom()&&(p=500),p>0&&s.trimMessageInChannel(a,p),("message"===t.msg.type||"action"===t.msg.type)&&a.hasClass("channel")){var f=a.find(".users").data("nicks");if(f){var g=f.indexOf(t.msg.from.nick);-1!==g&&(f.splice(g,1),f.unshift(t.msg.from.nick))}}}function i(t,n,e){var a=e.unread;if(e=e.msg,!e.self){var i=m.find(".chan[data-id='"+t+"']");if((e.highlight||c.notifyAllMessages&&"message"===e.type)&&(!document.hasFocus()||!n.hasClass("active"))){if(c.notification)try{f.play()}catch(t){}if(r.toggleNotificationMarkers(!0),c.desktopNotifications&&"granted"===Notification.permission){var o=void 0,l=void 0;"invite"===e.type?(o="New channel invite:",l=e.from.nick+" invited you to "+e.channel):(o=e.from.nick,i.hasClass("query")||(o+=" ("+i.data("title").trim()+")"),"message"===e.type&&(o+=" says:"),l=d(e.text));var s=Date.parse(e.time);try{if(p.hasServiceWorker)navigator.serviceWorker.ready.then(function(n){n.active.postMessage({type:"notification",chanId:t,timestamp:s,title:o,body:l})});else{new Notification(o,{tag:"chan-"+t,badge:"img/logo-64.png",icon:"img/touch-icon-192x192.png",body:l,timestamp:s}).addEventListener("click",function(){window.focus(),i.trigger("click"),this.close()})}}catch(t){}}}if(a&&!i.hasClass("active")){var h=i.find(".badge").html(u(a));e.highlight&&h.addClass("highlight")}}}var o=e(2),l=e(3),s=e(15),r=e(11),c=e(13),u=e(169),d=e(317),p=e(30),h=o("#chat"),m=o("#sidebar"),f=void 0;try{f=new Audio,f.src="audio/pop.ogg"}catch(t){f={play:o.noop}}l.on("msg",function(t){r.requestIdleCallback(function(){return a(t)},2e3)})},function(t,n,e){"use strict";var a=/\x02|\x1D|\x1F|\x16|\x0F|\x11|\x1E|\x03(?:[0-9]{1,2}(?:,[0-9]{1,2})?)?|\x04(?:[0-9a-f]{6}(?:,[0-9a-f]{6})?)?/gi;t.exports=function(t){return t.replace(a,"").trim()}},function(t,n,e){"use strict";var a=e(2),i=e(185),o=e(3),l=e(11);o.on("msg:preview",function(t){l.requestIdleCallback(function(){return i(t.preview,a("#msg-"+t.id))},6e3)})},function(t,n,e){"use strict";var a=e(3),i=e(15);a.on("names",i.renderChannelUsers)},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(15),l=a("#sidebar");i.on("network",function(t){o.renderNetworks(t,!0),l.find(".chan").last().trigger("click"),a("#connect").find(".btn").prop("disabled",!1)}),i.on("network_changed",function(t){l.find("#network-"+t.network).data("options",t.serverOptions)})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(11),l=a("#sidebar");i.on("nick",function(t){var n=t.network,e=t.nick;l.find("#network-"+n).data("nick",e).find(".active").length&&o.setNick(e)})},function(t,n,e){"use strict";var a=e(2);e(3).on("open",function(t){if(!(t<1)){var n=a("#chat #chan-"+t);0===n.length||n.hasClass("active")||(a("#sidebar").find(".chan[data-id='"+t+"'] .badge").removeClass("highlight").empty(),n.find(".unread-marker").data("unread-id",0).appendTo(n.find(".messages")))}})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=a("#sidebar");i.on("part",function(t){var n=o.find(".chan[data-id='"+t.chan+"']");n.hasClass("active")&&n.parent(".network").find(".lobby").trigger("click"),n.remove(),a("#chan-"+t.chan).remove()})},function(t,n,e){"use strict";var a=e(2),i=a("#chat"),o=e(3),l=a("#sidebar");o.on("quit",function(t){var n=t.network,e=l.find("#network-"+n);e.children(".chan").each(function(){i.find(a(this).data("target")).remove()}),e.remove(),0===l.find(".chan").eq(0).trigger("click").length&&l.find(".empty").show()})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(13);i.on("sync_sort",function(t){if(o.ignoreSortSync)return void(o.ignoreSortSync=!1);var n=t.type,e=t.order;if("networks"===n){var i=a(".networks");a.each(e,function(t,n){var e=a(i.children()[t]);if(e.data("id")===n)return!0;var o=i.find("#network-"+n);a(o).insertBefore(e)})}else if("channels"===n){var l=a("#network-"+t.target);a.each(e,function(t,n){if(0===t)return!0;var e=a(l.children()[t]);if(e.data("id")===n)return!0;var i=l.find(".chan[data-id="+n+"]");a(i).insertBefore(e)})}})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(5);i.on("topic",function(t){var n=a("#chan-"+t.chan).find(".header .topic");n.html(o(t.topic)),n.prop("title",t.topic)})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=a("#chat");i.on("users",function(t){var n=o.find("#chan-"+t.chan);n.hasClass("active")?i.emit("names",{target:t.chan}):n.data("needsNamesRefresh",!0)})},function(t,n,e){"use strict";var a=e(3),i=e(17);a.on("sign-out",function(){i.remove("token"),location.reload()})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(8);i.on("sessions:list",function(t){t.sort(function(t,n){return n.lastUse-t.lastUse});var n="";t.forEach(function(t){if(t.current)return void a("#session-current").html(o.session(t));n+=o.session(t)}),0===n.length&&(n="<p><em>You are not currently logged in to any other device.</em></p>"),a("#session-list").html(n)}),a("#settings").on("click",".remove-session",function(){return i.emit("sign-out",a(this).data("token")),!1})},function(t,n,e){"use strict";var a=e(2),i=e(3),o=e(8),l=e(13),s=e(30);i.on("configuration",function(t){if(l.initialize){a("#settings").html(o.windows.settings(t)),a("#connect").html(o.windows.connect(t)),a("#help").html(o.windows.help(t)),a("#changelog").html(o.windows.changelog()),a("#play").on("click",function(){var t=new Audio;t.src="audio/pop.ogg",t.play()}),l.initialize(),s.initialize();var n=a("#connect form, #change-password form");n.on("submit",function(){var t=a(this),n=t.data("event");t.find(".btn").prop("disabled",!0);var e={};return a.each(t.serializeArray(),function(t,n){""!==n.value&&(e[n.name]=n.value)}),i.emit(n,e),!1}),a(".nick").on("focusin",function(){var t=a(this);t.data("lastvalue",t.val())}).on("input",function(){var t=a(this).val(),e=n.find(".username"),i=a(this).data("lastvalue");e.val()===i&&e.val(t),a(this).data("lastvalue",t)})}})},function(t,n,e){"use strict";var a=e(2),i=e(25),o=a("#input"),l=a("#sidebar"),s=a("#windows"),r=a("#context-menu-container");i.bind(["pageup","pagedown"],function(t,n){var e=s.find(".window.active");"chat-container"===e.prop("id")&&(e=e.find(".chan.active .chat")),e.finish();var a=.9*e.get(0).clientHeight,i=e.scrollTop();return i="pageup"===n?Math.floor(i-a):Math.ceil(i+a),e.animate({scrollTop:i},200),!1}),i.bind(["mod+up","mod+down"],function(t,n){var e=l.find(".chan"),a=e.index(e.filter(".active")),i=n.split("+").pop(),o=void 0;switch(i){case"up":o=(e.length+(a-1+e.length))%e.length;break;case"down":o=(e.length+(a+1+e.length))%e.length}e.eq(o).click()}),i.bind(["escape"],function(){r.hide()});var c={k:"",b:"",u:"",i:"",o:"",s:"",m:""};for(var u in c)i.bind("mod+"+u,function(t){t.preventDefault();var n=o.prop("selectionStart"),e=o.prop("selectionEnd"),a=o.val(),i=a.substring(0,n)+c[t.key];i+=n===e?a.substring(e,a.length):a.substring(n,e)+c[t.key]+a.substring(e,a.length),o.val(i).get(0).setSelectionRange(n+1,e+1)})},function(t,n,e){"use strict";function a(){var t=window.getSelection();if(t.anchorNode!==t.focusNode){var n=t.getRangeAt(0),e=n.cloneContents(),a=document.createElement("div");i(e).find(".from .user").each(function(t,n){n=i(n),n.text("<"+n.text()+">")}),a.id="js-copy-hack",a.appendChild(e),o.appendChild(a),t.selectAllChildren(a),window.setTimeout(function(){o.removeChild(a),t.removeAllRanges(),t.addRange(n)},0)}}var i=e(2),o=document.getElementById("chat");i(o).on("copy",".messages",a)}],[189]);
2//# sourceMappingURL=bundle.js.map
\No newline at end of file