!function e(t,n,o){function i(s,l){if(!n){if(!t){var c=“function”==typeof require&&require;if(!l&&c)return c(s,!0);if®return r(s,!0);var a=new Error(“Cannot find module '” ).selector,l=y.styleNames,u=0,m=(w=this.document.querySelectorAll(“[style*=” ,i.push(l);if(this.console.log(“LiveReload found ”s
“'”);throw a.code=“MODULE_NOT_FOUND”,a}var h=n={exports:{}};t[0].call(h.exports,function(e){var n=t[1];return i(n||e)},h,h.exports,e,t,n,o)}return n.exports}for(var r=“function”==typeof require&&require,s=0;sthis.options.host
“:”this.options.port
“/livereload”,this._nextDelay=this.options.mindelay,this._connectionDesired=!1,this.protocol=0,this.protocolParser=new i({connected:function(e){return function(t){return e.protocol=t,e._handshakeTimeout.stop(),e._nextDelay=e.options.mindelay,e._disconnectionReason=“broken”,e.handlers.connected(t)}}(this),error:function(e){return function(t){return e.handlers.error(t),e._closeOnError()}}(this),message:function(e){return function(t){return e.handlers.message(t)}}(this)}),this._handshakeTimeout=new n(function(e){return function(){if(e._isSocketConnected())return e._disconnectionReason=“handshake-timeout”,e.socket.close()}}(this)),this._reconnectTimer=new n(function(e){return function(){if(e._connectionDesired)return e.connect()}}(this)),this.connect()}return e.prototype._isSocketConnected=function(){return this.socket&&this.socket.readyState===this.WebSocket.OPEN},e.prototype.connect=function(){if(this._connectionDesired=!0,!this._isSocketConnected())return this._reconnectTimer.stop(),this._disconnectionReason=“cannot-connect”,this.protocolParser.reset(),this.handlers.connecting(),this.socket=new this.WebSocket(this._uri),this.socket.onopen=function(e){return function(t){return e._onopen(t)}}(this),this.socket.onclose=function(e){return function(t){return e._onclose(t)}}(this),this.socket.onmessage=function(e){return function(t){return e._onmessage(t)}}(this),this.socket.onerror=function(e){return function(t){return e._onerror(t)}}(this)},e.prototype.disconnect=function(){if(this._connectionDesired=!1,this._reconnectTimer.stop(),this._isSocketConnected())return this._disconnectionReason=“manual”,this.socket.close()},e.prototype._scheduleReconnection=function(){if(this._connectionDesired)return this._reconnectTimer.running?void 0:(this._reconnectTimer.start(this._nextDelay),this._nextDelay=Math.min(this.options.maxdelay,2*this._nextDelay))},e.prototype.sendCommand=function(e){if(null!=this.protocol)return this._sendCommand(e)},e.prototype._sendCommand=function(e){return this.socket.send(JSON.stringify(e))},e.prototype._closeOnError=function(){return this._handshakeTimeout.stop(),this._disconnectionReason=“error”,this.socket.close()},e.prototype._onopen=function(e){var n;return this.handlers.socketConnected(),this._disconnectionReason=“handshake-failed”,n={command:“hello”,protocols:},n.ver=“2.2.2”,this.options.ext&&(n.ext=this.options.ext),this.options.extver&&(n.extver=this.options.extver),this.options.snipver&&(n.snipver=this.options.snipver),this._sendCommand(n),this._handshakeTimeout.start(this.options.handshake_timeout)},e.prototype._onclose=function(e){return this.protocol=0,this.handlers.disconnected(this._disconnectionReason,this._nextDelay),this._scheduleReconnection()},e.prototype._onerror=function(e){},e.prototype._onmessage=function(e){return this.protocolParser.process(e.data)},e}()}).call(this)},{“./protocol”:6}],2:[function(e,t,n){(function(){var e;e={bind:function(e,t,n){if(e.addEventListener)return e.addEventListener(t,n,!1);if(e.attachEvent)return e=1,e.attachEvent(“onpropertychange”,function(e){if(e.propertyName===t)return n()});throw new Error(“Attempt to attach custom event ”t
“ to something which isn't a DOMElement”)},fire:function(e,t){var n;if(e.addEventListener)return(n=document.createEvent(“HTMLEvents”)).initEvent(t,!0,!0),document.dispatchEvent(n);if(!e.attachEvent)throw new Error(“Attempt to fire custom event ”t
“ on something which isn't a DOMElement”);return e?e++:void 0}},n.bind=e.bind,n.fire=e.fire}).call(this)},{}],3:[function(e,t,n){(function(){t.exports=function(){function e(e,t){this.window=e,this.host=t}return e.identifier=“less”,e.version=“1.0”,e.prototype.reload=function(e,t){if(this.window.less&&this.window.less.refresh){if(e.match(/.less$/i))return this.reloadLess(e);if(t.originalPath.match(/.less$/i))return this.reloadLess(t.originalPath)}return!1},e.prototype.reloadLess=function(e){var t,n,o,i;if(0===(n=function(){var e,n,o,i;for(i=[],e=0,n=(o=document.getElementsByTagName(“link”)).length;ee.options.host
“:”e.options.port
“ (protocol v”t
“).”),e.analyze()}}(this),error:function(e){if(e instanceof ProtocolError){if(“undefined”!=typeof console&&null!==console)return console.log(e.message+“.”)}else if(“undefined”!=typeof console&&null!==console)return console.log(“LiveReload internal error: ”+e.message)},disconnected:function(e){return function(t,n){var o;switch(“function”==typeof(o=e.listeners).disconnect&&o.disconnect(),t){case“cannot-connect”:return e.log(“LiveReload cannot connect to ”e.options.host
“:”e.options.port
“, will retry in ”n
“ sec.”);case“broken”:return e.log(“LiveReload disconnected from ”e.options.host
“:”e.options.port
“, reconnecting in ”n
“ sec.”);case“handshake-timeout”:return e.log(“LiveReload cannot connect to ”e.options.host
“:”e.options.port
“ (handshake timeout), will retry in ”n
“ sec.”);case“handshake-failed”:return e.log(“LiveReload cannot connect to ”e.options.host
“:”e.options.port
“ (handshake failed), will retry in ”n
“ sec.”);case“manual”:case“error”:break;default:return e.log(“LiveReload disconnected from ”e.options.host
“:”e.options.port
“ (”t
“), reconnecting in ”n
“ sec.”)}}}(this),message:function(e){return function(t){switch(t.command){case“reload”:return e.performReload(t);case“alert”:return e.performAlert(t)}}}(this)}),this.initialized=!0}else this.console.error(“LiveReload disabled because the browser does not seem to support web sockets”)}return e.prototype.on=function(e,t){return this.listeners=t},e.prototype.log=function(e){return this.console.log(“”+e)},e.prototype.performReload=function(e){var t,n;return this.log(“LiveReload received reload request: ”+JSON.stringify(e,null,2)),this.reloader.reload(e.path,{liveCSS:null==(t=e.liveCSS)||t,liveImg:null==(n=e.liveImg)||n,originalPath:e.originalPath||“”,overrideURL:e.overrideURL||“”,serverURL:“”this.options.host
“:”+this.options.port})},e.prototype.performAlert=function(e){return alert(e.message)},e.prototype.shutDown=function(){var e;if(this.initialized)return this.connector.disconnect(),this.log(“LiveReload disconnected.”),“function”==typeof(e=this.listeners).shutdown?e.shutdown():void 0},e.prototype.hasPlugin=function(e){return!!this.pluginIdentifiers},e.prototype.addPlugin=function(e){var t;this.initialized&&(this.hasPlugin(e.identifier)||(this.pluginIdentifiers=!0,t=new e(this.window,{_livereload:this,_reloader:this.reloader,_connector:this.connector,console:this.console,Timer:r,generateCacheBustUrl:function(e){return function(t){return e.reloader.generateCacheBustUrl(t)}}(this)}),this.plugins.push(t),this.reloader.addPlugin(t)))},e.prototype.analyze=function(){var e,t,n,o,i,r;if(this.initialized&&this.connector.protocol>=7){for(n={},o=0,i=(r=this.plugins).length;o).constructor.identifier]=t=(“function”==typeof e.analyze?e.analyze():void 0)||{},t.version=e.constructor.version;this.connector.sendCommand({command:“info”,plugins:n,url:this.window.location.href})}},e}()}).call(this)},{“./connector”:1,“./options”:5,“./reloader”:7,“./timer”:9}],5:[function(e,t,n){(function(){var e;n.Options=e=function(){function e(){this.https=!1,this.host=null,this.port=35729,this.snipver=null,this.ext=null,this.extver=null,this.mindelay=1e3,this.maxdelay=6e4,this.handshake_timeout=5e3}return e.prototype.set=function(e,t){if(void 0!==t)return isNaN(+t)||(t=+t),this=t},e}(),e.extract=function(t){var n,o,i,r,s,l,c,a,h,u,d,f;for(c=0,h=(d=t.getElementsByTagName(“script”)).length;ce
') after receiving data: “'t
'”.'}}(),n.Parser=function(){function n(e){this.handlers=e,this.reset()}return n.prototype.reset=function(){return this.protocol=null},n.prototype.process=function(n){var r,s,l,c,a;try{if(null==this.protocol){if(n.match(/^!!ver:(+)$/))this.protocol=6;else if(l=this._parseMessage(n,)){if(!l.protocols.length)throw new o(“no protocols specified in handshake message”);if(i.call(l.protocols,t)>=0)this.protocol=7;else{if(!(i.call(l.protocols,e)>=0))throw new o(“no supported protocols found”);this.protocol=6}}return this.handlers.connected(this.protocol)}if(6===this.protocol){if(!(l=JSON.parse(n)).length)throw new o(“protocol 6 messages must be arrays”);if(r=l,c=l,“refresh”!==r)throw new o(“unknown protocol 6 command”);return this.handlers.message({command:“reload”,path:c.path,liveCSS:null==(a=c.apply_css_live)||a})}return l=this._parseMessage(n,),this.handlers.message(l)}catch(e){if((s=e)instanceof o)return this.handlers.error(s);throw s}},n.prototype._parseMessage=function(e,t){var n,r;try{n=JSON.parse(e)}catch(t){throw t,new o(“unparsable JSON”,e)}if(!n.command)throw new o('missing “command” key',e);if(r=n.command,i.call(t,r)<0)throw new o(“invalid command '”n.command
“', only valid commands are: ”+t.join(“, ”)+“)”,e);return n},n}()}).call(this)},{}],7:[function(e,t,n){(function(){var e,t,o,i,r,s;s=function(e){var t,n,o;return(n=e.indexOf(“#”))>=0?(t=e.slice(n),e=e.slice(0,n)):t=“”,(n=e.indexOf(“?”))>=0?(o=e.slice(n),e=e.slice(0,n)):o=“”,{url:e,params:o,hash:t}},o=function(e){var t;return e=s(e).url,t=0===e.indexOf(“file://”)?e.replace(/^file://(localhost)?/,“”):e.replace(/^(+:)?//([^:/]+)(:d*)?//,“/”),decodeURIComponent(t)},r=function(e,n,o){var i,r,s,l,c;for(i={score:0},l=0,c=n.length;ls
“]”)).length;ui.length
“ LINKed stylesheets, ”t.length
“ @imported stylesheets”),s=r(e,i.concat(t),function(e){return function(t){return o(e.linkHref(t))}}(this)))s.object.rule?(this.console.log(“LiveReload is reloading imported stylesheet: ”+s.object.href),this.reattachImportedRule(s.object)):(this.console.log(“LiveReload is reloading stylesheet: ”+this.linkHref(s.object)),this.reattachStylesheetLink(s.object));else for(this.console.log(“LiveReload will reload all stylesheets because path '”e
“' did not match any specific one”),u=0,m=i.length;ut
'”) 'i
“;”,l.__LiveReload_newHref=t,c=this.document.createElement(“link”),c.rel=“stylesheet”,c.href=t,c.__LiveReload_pendingRemoval=!0,o.parentNode&&o.parentNode.insertBefore(c,o),this.Timer.start(this.importCacheWaitPeriod,function(e){return function(){if(c.parentNode&&c.parentNode.removeChild©,l.__LiveReload_newHref===t)return s.insertRule(r,n),s.deleteRule(n+1),l=s.cssRules,l.__LiveReload_newHref=t,e.Timer.start(e.importCacheWaitPeriod,function(){if(l.__LiveReload_newHref===t)return s.insertRule(r,n),s.deleteRule(n+1)})}}(this))},t.prototype.generateUniqueString=function(){return“livereload=”+Date.now()},t.prototype.generateCacheBustUrl=function(e,t){var n,o,i,r,l;return null==t&&(t=this.generateUniqueString()),l=s(e),e=l.url,n=l.hash,o=l.params,this.options.overrideURL&&e.indexOf(this.options.serverURL)<0&&(i=e,e=this.options.serverURL+this.options.overrideURL+“?url=”+encodeURIComponent(e),this.console.log(“LiveReload is overriding source URL ”i
“ with ”+e)),(r=o.replace(/(?|&)livereload=(d+)/,function(e,n){return“”+n+t}))===o&&(r=0===o.length?“?”t:o
“&”+t),e+r+n},t}()}).call(this)},{}],8:[function(e,t,n){(function(){var t,n,o;t=e(“./customevents”),n=window.LiveReload=new(e(“./livereload”).LiveReload)(window);for(o in window)o.match(/^LiveReloadPlugin/)&&n.addPlugin(window);n.addPlugin(e(“./less”)),n.on(“shutdown”,function(){return delete window.LiveReload}),n.on(“connect”,function(){return t.fire(document,“LiveReloadConnect”)}),n.on(“disconnect”,function(){return t.fire(document,“LiveReloadDisconnect”)}),t.bind(document,“LiveReloadShutDown”,function(){return n.shutDown()})}).call(this)},{“./customevents”:2,“./less”:3,“./livereload”:4}],9:[function(e,t,n){(function(){var e;n.Timer=e=function(){function e(e){this.func=e,this.running=!1,this.id=null,this._handler=function(e){return function(){return e.running=!1,e.id=null,e.func()}}(this)}return e.prototype.start=function(e){return this.running&&clearTimeout(this.id),this.id=setTimeout(this._handler,e),this.running=!0},e.prototype.stop=function(){if(this.running)return clearTimeout(this.id),this.running=!1,this.id=null},e}(),e.start=function(e,t){return setTimeout(t,e)}}).call(this)},{}]},{},[8]);