diff --git a/src/Yavsc/wwwroot/js/chat.min.js b/src/Yavsc/wwwroot/js/chat.min.js
index f748c643..66aea5e8 100644
--- a/src/Yavsc/wwwroot/js/chat.min.js
+++ b/src/Yavsc/wwwroot/js/chat.min.js
@@ -1 +1 @@
-!function(C){var e=function(o,n){if(!n)throw"not implemented";var a=C.connection.chatHub;a.client.addMessage=function(n,e,i){C("#room_"+e).append('
'+f(n)+": "+f(i)+"")},a.client.addPV=function(n,e){C("#mute").prop("checked")||p.play(),C("#pv_"+n).append(''+f(n)+": "+f(e)+"")},a.client.notify=function(n,e,i){i&&("connected"===n?(g(l,e,i),C("#notifications").append(''+f(n)+" "+f(i)+"")):"disconnected"===n?(b(l,e,i),C("#notifications").append(''+f(n)+" "+f(i)+"")):C("#notifications").append(''+f(n)+" "+f(e)+" : "+f(i)+"
"))},a.client.onJoined=function(n){console.log(n),C("#inp_"+n.Name).prop("enable",!0)},C.fn.filterByData=function(n,e){return this.filter(function(){return C(this).data(n)==e})};var s=C("");s.appendTo(o);var e=function(e){console.log("building:"+e);var n=C(""+e+"");n.addClass("btn").addClass("default").click(function(){u(e)});var i=C("");n.appendTo(s),i.prop("id","vroom_"+e);var t=C('');t.prop("id","room_"+e),t.appendTo(i),C('').prop("id","inp_"+e).prop("enable",!1).prop("hint","hello").prop("title","send to "+e).keydown(function(n){13==n.which&&(console.log("sending:"+e+" "+this.value),a.server.send(e,this.value),this.value="")}).appendTo(i),c.push(e),i.appendTo(o),console.log("done with built:"),console.log(c)},c=Array();function i(){setTimeout(function(){var t;C("#userlist").empty(),C("#to").empty(),C.get("/api/chat/users").done(function(n){C.each(n,function(){var n=this,e=C("#userlist li").filterByData("name",n.UserName);0> ').appendTo(o);var t=C('');t.appendTo(o),t.keydown(function(n){13==n.which&&(e(this.value),this.value="")});var d,l=C("").addClass("userlist");l.appendTo(o);var r,u=function(n){d&&d.addClass("hidden"),(d=C("#vroom_"+n)).removeClass("hidden")},p=new Audio("/sounds/bell.mp3");function h(n,e,i){C('
'+e+"").data("name",e).data("cxids",i).css("cursor","pointer").click(function(){v(this)}).appendTo(n)}function f(n){return C("").text(n).html()}C("#pv").keydown(function(n){var e;13==n.which&&(e=C("#pv").val(),C.each(r.CXs,function(){a.server.sendPV(this,e)}),C("#discussion").append(''+f(r.UserName)+"<< "+f(e)+""),C("#pv").val(""))}),C("#command").keydown(function(n){13==n.which&&sendCommand()});var v=function(n){C("#rooms").addClass("hidden"),C("#sendpvbox").removeClass("hidden"),r={CXs:C(n).data("cxids"),UserName:C(n).data("name")},C("#sendpvdest").html(r.UserName),C("#pvs").focus()},m=function(){C("#rooms").removeClass("hidden"),C("#sendpvbox").addClass("hidden"),C("#message").focus()};C("#pubChan").css("cursor","pointer"),C("#pubChan").click(m),m();var b=function(e){C("#userlist li").filter(function(){var n=C(this).data("cxids").filter(function(){return C(this)!==e});0==n.length?C(this).remove():C(this).data("cxids",n)})},g=function(n,e,i){var t=C("#userlist li").filterByData("name",i);if(0'+m(n)+": "+m(e)+"")},a.client.addPV=function(n,i){w("#mute").prop("checked")||v.play(),w("#pv_"+n).append(''+m(n)+": "+m(i)+"")},a.client.notify=function(n,i,e){e&&("connected"===n?(y(h,i,e),w("#notifications").append(''+m(n)+" "+m(e)+"")):"disconnected"===n?(g(h,i,e),w("#notifications").append(''+m(n)+" "+m(e)+"")):w("#notifications").append(''+m(n)+" "+m(i)+" : "+m(e)+"
"))},a.client.onJoined=function(n){console.log(n),s(n.Name)},w.fn.filterByData=function(n,i){return this.filter(function(){return w(this).data(n)==i})};var s=function(n){e&&(e.addClass("hidden"),w("sel_"+t).addClass("btn-primary")),e=w("#vroom_"+n),t=n,e.removeClass("hidden")},o=w('');o.appendTo(n);var d=w('');d.appendTo(n);var c=function(i){var n=w(""+i+"").addClass("btn").addClass("btn-primary");n.prop("id","sel_"+i).click(function(){s(i),w(this).removeClass("btn-primary")}),n.appendTo(o);var e=w("").addClass("container");e.appendTo(d),e.prop("id","vroom_"+i);var t=w("").addClass("mesglist");t.prop("id","room_"+i),t.appendTo(e),w('').prop("id","inp_"+i).prop("enable",!1).prop("hint","hello").prop("title","send to "+i).addClass("form-control").keydown(function(n){if(13==n.which){if(0==this.value.length)return;console.log("sending to "+i+" "+this.value),a.server.send(i,this.value),this.value=""}}).appendTo(e),r.push(i),s(i)},r=Array();function l(){setTimeout(function(){var e;w("#userlist").empty(),w("#to").empty(),w.get("/api/chat/users").done(function(n){w.each(n,function(){var n=w("#userlist li").filterByData("name",this.UserName);0> ').appendTo(n);var u=w('');u.appendTo(n),u.keydown(function(n){if(13==n.which){if(0==this.value.length)return;c(this.value),a.server.join(this.value),this.value=""}});var p,h=w("").addClass("userlist");h.appendTo(n);var v=new Audio("/sounds/bell.mp3");function f(n,i,e){w('
'+i+"").data("name",i).data("cxids",e).css("cursor","pointer").click(function(){C(this)}).appendTo(n)}function m(n){return w("").text(n).html()}w("#pv").keydown(function(n){var i;13==n.which&&(i=w("#pv").val(),w.each(p.CXs,function(){a.server.sendPV(this,i)}),w("#discussion").append(''+m(p.UserName)+"<< "+m(i)+""),w("#pv").val(""))}),w("#command").keydown(function(n){13==n.which&&sendCommand()});var C=function(n){w("#rooms").addClass("hidden"),w("#sendpvbox").removeClass("hidden"),p={CXs:w(n).data("cxids"),UserName:w(n).data("name")},w("#sendpvdest").html(p.UserName),w("#pvs").focus()},b=function(){w("#rooms").removeClass("hidden"),w("#sendpvbox").addClass("hidden"),w("#message").focus()};w("#pubChan").css("cursor","pointer"),w("#pubChan").click(b),b();var g=function(i){w("#userlist li").filter(function(){var n=w(this).data("cxids").filter(function(){return w(this)!==i});0==n.length?w(this).remove():w(this).data("cxids",n)})},y=function(n,i,e){var t=w("#userlist li").filterByData("name",e);if(0