forked from pubnub/javascript
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pubnub.min.js
99 lines (99 loc) · 38.2 KB
/
pubnub.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
// Version: 3.7.6
(function(){
/*
CryptoJS v3.1.2
code.google.com/p/crypto-js
(c) 2009-2013 by Jeff Mott. All rights reserved.
code.google.com/p/crypto-js/wiki/License
*/
var CryptoJS=CryptoJS||function(h,s){var f={},g=f.lib={},q=function(){},m=g.Base={extend:function(a){q.prototype=this;var c=new q;a&&c.mixIn(a);c.hasOwnProperty("init")||(c.init=function(){c.$super.init.apply(this,arguments)});c.init.prototype=c;c.$super=this;return c},create:function(){var a=this.extend();a.init.apply(a,arguments);return a},init:function(){},mixIn:function(a){for(var c in a)a.hasOwnProperty(c)&&(this[c]=a[c]);a.hasOwnProperty("toString")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}},
r=g.WordArray=m.extend({init:function(a,c){a=this.words=a||[];this.sigBytes=c!=s?c:4*a.length},toString:function(a){return(a||k).stringify(this)},concat:function(a){var c=this.words,d=a.words,b=this.sigBytes;a=a.sigBytes;this.clamp();if(b%4)for(var e=0;e<a;e++)c[b+e>>>2]|=(d[e>>>2]>>>24-8*(e%4)&255)<<24-8*((b+e)%4);else if(65535<d.length)for(e=0;e<a;e+=4)c[b+e>>>2]=d[e>>>2];else c.push.apply(c,d);this.sigBytes+=a;return this},clamp:function(){var a=this.words,c=this.sigBytes;a[c>>>2]&=4294967295<<
32-8*(c%4);a.length=h.ceil(c/4)},clone:function(){var a=m.clone.call(this);a.words=this.words.slice(0);return a},random:function(a){for(var c=[],d=0;d<a;d+=4)c.push(4294967296*h.random()|0);return new r.init(c,a)}}),l=f.enc={},k=l.Hex={stringify:function(a){var c=a.words;a=a.sigBytes;for(var d=[],b=0;b<a;b++){var e=c[b>>>2]>>>24-8*(b%4)&255;d.push((e>>>4).toString(16));d.push((e&15).toString(16))}return d.join("")},parse:function(a){for(var c=a.length,d=[],b=0;b<c;b+=2)d[b>>>3]|=parseInt(a.substr(b,
2),16)<<24-4*(b%8);return new r.init(d,c/2)}},n=l.Latin1={stringify:function(a){var c=a.words;a=a.sigBytes;for(var d=[],b=0;b<a;b++)d.push(String.fromCharCode(c[b>>>2]>>>24-8*(b%4)&255));return d.join("")},parse:function(a){for(var c=a.length,d=[],b=0;b<c;b++)d[b>>>2]|=(a.charCodeAt(b)&255)<<24-8*(b%4);return new r.init(d,c)}},j=l.Utf8={stringify:function(a){try{return decodeURIComponent(escape(n.stringify(a)))}catch(c){throw Error("Malformed UTF-8 data");}},parse:function(a){return n.parse(unescape(encodeURIComponent(a)))}},
u=g.BufferedBlockAlgorithm=m.extend({reset:function(){this._data=new r.init;this._nDataBytes=0},_append:function(a){"string"==typeof a&&(a=j.parse(a));this._data.concat(a);this._nDataBytes+=a.sigBytes},_process:function(a){var c=this._data,d=c.words,b=c.sigBytes,e=this.blockSize,f=b/(4*e),f=a?h.ceil(f):h.max((f|0)-this._minBufferSize,0);a=f*e;b=h.min(4*a,b);if(a){for(var g=0;g<a;g+=e)this._doProcessBlock(d,g);g=d.splice(0,a);c.sigBytes-=b}return new r.init(g,b)},clone:function(){var a=m.clone.call(this);
a._data=this._data.clone();return a},_minBufferSize:0});g.Hasher=u.extend({cfg:m.extend(),init:function(a){this.cfg=this.cfg.extend(a);this.reset()},reset:function(){u.reset.call(this);this._doReset()},update:function(a){this._append(a);this._process();return this},finalize:function(a){a&&this._append(a);return this._doFinalize()},blockSize:16,_createHelper:function(a){return function(c,d){return(new a.init(d)).finalize(c)}},_createHmacHelper:function(a){return function(c,d){return(new t.HMAC.init(a,
d)).finalize(c)}}});var t=f.algo={};return f}(Math);
(function(h){for(var s=CryptoJS,f=s.lib,g=f.WordArray,q=f.Hasher,f=s.algo,m=[],r=[],l=function(a){return 4294967296*(a-(a|0))|0},k=2,n=0;64>n;){var j;a:{j=k;for(var u=h.sqrt(j),t=2;t<=u;t++)if(!(j%t)){j=!1;break a}j=!0}j&&(8>n&&(m[n]=l(h.pow(k,0.5))),r[n]=l(h.pow(k,1/3)),n++);k++}var a=[],f=f.SHA256=q.extend({_doReset:function(){this._hash=new g.init(m.slice(0))},_doProcessBlock:function(c,d){for(var b=this._hash.words,e=b[0],f=b[1],g=b[2],j=b[3],h=b[4],m=b[5],n=b[6],q=b[7],p=0;64>p;p++){if(16>p)a[p]=
c[d+p]|0;else{var k=a[p-15],l=a[p-2];a[p]=((k<<25|k>>>7)^(k<<14|k>>>18)^k>>>3)+a[p-7]+((l<<15|l>>>17)^(l<<13|l>>>19)^l>>>10)+a[p-16]}k=q+((h<<26|h>>>6)^(h<<21|h>>>11)^(h<<7|h>>>25))+(h&m^~h&n)+r[p]+a[p];l=((e<<30|e>>>2)^(e<<19|e>>>13)^(e<<10|e>>>22))+(e&f^e&g^f&g);q=n;n=m;m=h;h=j+k|0;j=g;g=f;f=e;e=k+l|0}b[0]=b[0]+e|0;b[1]=b[1]+f|0;b[2]=b[2]+g|0;b[3]=b[3]+j|0;b[4]=b[4]+h|0;b[5]=b[5]+m|0;b[6]=b[6]+n|0;b[7]=b[7]+q|0},_doFinalize:function(){var a=this._data,d=a.words,b=8*this._nDataBytes,e=8*a.sigBytes;
d[e>>>5]|=128<<24-e%32;d[(e+64>>>9<<4)+14]=h.floor(b/4294967296);d[(e+64>>>9<<4)+15]=b;a.sigBytes=4*d.length;this._process();return this._hash},clone:function(){var a=q.clone.call(this);a._hash=this._hash.clone();return a}});s.SHA256=q._createHelper(f);s.HmacSHA256=q._createHmacHelper(f)})(Math);
(function(){var h=CryptoJS,s=h.enc.Utf8;h.algo.HMAC=h.lib.Base.extend({init:function(f,g){f=this._hasher=new f.init;"string"==typeof g&&(g=s.parse(g));var h=f.blockSize,m=4*h;g.sigBytes>m&&(g=f.finalize(g));g.clamp();for(var r=this._oKey=g.clone(),l=this._iKey=g.clone(),k=r.words,n=l.words,j=0;j<h;j++)k[j]^=1549556828,n[j]^=909522486;r.sigBytes=l.sigBytes=m;this.reset()},reset:function(){var f=this._hasher;f.reset();f.update(this._iKey)},update:function(f){this._hasher.update(f);return this},finalize:function(f){var g=
this._hasher;f=g.finalize(f);g.reset();return g.finalize(this._oKey.clone().concat(f))}})})();
/*
CryptoJS v3.1.2
code.google.com/p/crypto-js
(c) 2009-2013 by Jeff Mott. All rights reserved.
code.google.com/p/crypto-js/wiki/License
*/
(function(){var h=CryptoJS,j=h.lib.WordArray;h.enc.Base64={stringify:function(b){var e=b.words,f=b.sigBytes,c=this._map;b.clamp();b=[];for(var a=0;a<f;a+=3)for(var d=(e[a>>>2]>>>24-8*(a%4)&255)<<16|(e[a+1>>>2]>>>24-8*((a+1)%4)&255)<<8|e[a+2>>>2]>>>24-8*((a+2)%4)&255,g=0;4>g&&a+0.75*g<f;g++)b.push(c.charAt(d>>>6*(3-g)&63));if(e=c.charAt(64))for(;b.length%4;)b.push(e);return b.join("")},parse:function(b){var e=b.length,f=this._map,c=f.charAt(64);c&&(c=b.indexOf(c),-1!=c&&(e=c));for(var c=[],a=0,d=0;d<
e;d++)if(d%4){var g=f.indexOf(b.charAt(d-1))<<2*(d%4),h=f.indexOf(b.charAt(d))>>>6-2*(d%4);c[a>>>2]|=(g|h)<<24-8*(a%4);a++}return j.create(c,a)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}})();
var da=void 0,v=!0,x=null,y=!1;function z(){return function(){}}var ea=1,ha=y,ia=[],H="-pnpres",I=1E3,ja=/{([\w\-]+)}/g;function ka(){return"x"+ ++ea+""+ +new Date}function L(){return+new Date}var na,oa=Math.floor(20*Math.random());na=function(a,d){return 0<a.indexOf("pubsub.")&&a.replace("pubsub","ps"+(d?pa().split("-")[0]:20>++oa?oa:oa=1))||a};function qa(a,d){function b(){f+d>L()?(clearTimeout(c),c=setTimeout(b,d)):(f=L(),a())}var c,f=0;return b}
function ra(a,d){var b=[];R(a||[],function(a){d(a)&&b.push(a)});return b}function sa(a,d){return a.replace(ja,function(a,c){return d[c]||a})}function pa(a){var d="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){var c=16*Math.random()|0;return("x"==a?c:c&3|8).toString(16)});a&&a(d);return d}function ta(a){return!!a&&"string"!==typeof a&&(Array.isArray&&Array.isArray(a)||"number"===typeof a.length)}
function R(a,d){if(a&&d)if(ta(a))for(var b=0,c=a.length;b<c;)d.call(a[b],a[b],b++);else for(b in a)a.hasOwnProperty&&a.hasOwnProperty(b)&&d.call(a[b],b,a[b])}function ua(a,d){var b=[];R(a||[],function(a,f){b.push(d(a,f))});return b}function va(a,d){var b=[];R(a,function(a,f){d?0>a.search("-pnpres")&&f.e&&b.push(a):f.e&&b.push(a)});return b.sort()}function wa(a,d){var b=[];R(a,function(a,f){d?0>a.search("-pnpres")&&f.e&&b.push(a):f.e&&b.push(a)});return b.sort()}
function xa(){setTimeout(function(){ha||(ha=1,R(ia,function(a){a()}))},I)}var S,W=14,X=8,ya=y;function za(a,d){var b="",c,f;if(d){c=a[15];if(16<c)throw"Decryption error: Maybe bad key";if(16==c)return"";for(f=0;f<16-c;f++)b+=String.fromCharCode(a[f])}else for(f=0;16>f;f++)b+=String.fromCharCode(a[f]);return b}function Aa(a,d){var b=[],c;if(!d)try{a=unescape(encodeURIComponent(a))}catch(f){throw"Error on UTF-8 encode";}for(c=0;c<a.length;c++)b[c]=a.charCodeAt(c);return b}
function Ba(a,d){var b=12<=W?3:2,c=[],f=[],c=[],f=[],p=a.concat(d),q;c[0]=GibberishAES.p.q(p);f=c[0];for(q=1;q<b;q++)c[q]=GibberishAES.p.q(c[q-1].concat(p)),f=f.concat(c[q]);c=f.slice(0,4*X);f=f.slice(4*X,4*X+16);return{key:c,l:f}}
function Ga(a,d,b){var d=Ha(d),c=Math.ceil(a.length/16),f=[],p,q=[];for(p=0;p<c;p++){var j=f,s=p,B=a.slice(16*p,16*p+16),w=[],r=da,r=da;16>B.length&&(r=16-B.length,w=[r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r]);for(r=0;r<B.length;r++)w[r]=B[r];j[s]=w}0===a.length%16&&f.push([16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16]);for(p=0;p<f.length;p++)f[p]=0===p?Ia(f[p],b):Ia(f[p],q[p-1]),q[p]=Ja(f[p],d);return q}
function Ka(a,d,b,c){var d=Ha(d),f=a.length/16,p=[],q,j=[],s="";for(q=0;q<f;q++)p.push(a.slice(16*q,16*(q+1)));for(q=p.length-1;0<=q;q--)j[q]=La(p[q],d),j[q]=0===q?Ia(j[q],b):Ia(j[q],p[q-1]);for(q=0;q<f-1;q++)s+=za(j[q]);var s=s+za(j[q],v),B;if(c)B=s;else try{B=decodeURIComponent(escape(s))}catch(w){throw"Bad Key";}return B}function Ja(a,d){ya=y;var b=Ma(a,d,0),c;for(c=1;c<W+1;c++)b=Ta(b),b=Ua(b),c<W&&(b=Va(b)),b=Ma(b,d,c);return b}
function La(a,d){ya=v;var b=Ma(a,d,W),c;for(c=W-1;-1<c;c--)b=Ua(b),b=Ta(b),b=Ma(b,d,c),0<c&&(b=Va(b));return b}function Ta(a){var d=ya?Wa:Xa,b=[],c;for(c=0;16>c;c++)b[c]=d[a[c]];return b}function Ua(a){var d=[],b=ya?[0,13,10,7,4,1,14,11,8,5,2,15,12,9,6,3]:[0,5,10,15,4,9,14,3,8,13,2,7,12,1,6,11],c;for(c=0;16>c;c++)d[c]=a[b[c]];return d}
function Va(a){var d=[],b;if(ya)for(b=0;4>b;b++)d[4*b]=Ya[a[4*b]]^Za[a[1+4*b]]^$a[a[2+4*b]]^ab[a[3+4*b]],d[1+4*b]=ab[a[4*b]]^Ya[a[1+4*b]]^Za[a[2+4*b]]^$a[a[3+4*b]],d[2+4*b]=$a[a[4*b]]^ab[a[1+4*b]]^Ya[a[2+4*b]]^Za[a[3+4*b]],d[3+4*b]=Za[a[4*b]]^$a[a[1+4*b]]^ab[a[2+4*b]]^Ya[a[3+4*b]];else for(b=0;4>b;b++)d[4*b]=bb[a[4*b]]^cb[a[1+4*b]]^a[2+4*b]^a[3+4*b],d[1+4*b]=a[4*b]^bb[a[1+4*b]]^cb[a[2+4*b]]^a[3+4*b],d[2+4*b]=a[4*b]^a[1+4*b]^bb[a[2+4*b]]^cb[a[3+4*b]],d[3+4*b]=cb[a[4*b]]^a[1+4*b]^a[2+4*b]^bb[a[3+4*
b]];return d}function Ma(a,d,b){var c=[],f;for(f=0;16>f;f++)c[f]=a[f]^d[b][f];return c}function Ia(a,d){var b=[],c;for(c=0;16>c;c++)b[c]=a[c]^d[c];return b}
function Ha(a){var d=[],b=[],c,f,p=[];for(c=0;c<X;c++)f=[a[4*c],a[4*c+1],a[4*c+2],a[4*c+3]],d[c]=f;for(c=X;c<4*(W+1);c++){d[c]=[];for(a=0;4>a;a++)b[a]=d[c-1][a];if(0===c%X){a=b[0];f=da;for(f=0;4>f;f++)b[f]=b[f+1];b[3]=a;b=db(b);b[0]^=eb[c/X-1]}else 6<X&&4==c%X&&(b=db(b));for(a=0;4>a;a++)d[c][a]=d[c-X][a]^b[a]}for(c=0;c<W+1;c++){p[c]=[];for(b=0;4>b;b++)p[c].push(d[4*c+b][0],d[4*c+b][1],d[4*c+b][2],d[4*c+b][3])}return p}function db(a){for(var d=0;4>d;d++)a[d]=Xa[a[d]];return a}
function fb(a,d){var b=[];for(i=0;i<a.length;i+=d)b[i/d]=parseInt(a.substr(i,d),16);return b}function gb(a){for(var d=[],b=0;256>b;b++){for(var c=a,f=b,p=da,q=da,p=q=0;8>p;p++)q=1==(f&1)?q^c:q,c=127<c?283^c<<1:c<<1,f>>>=1;d[b]=q}return d}
var Xa=fb("637c777bf26b6fc53001672bfed7ab76ca82c97dfa5947f0add4a2af9ca472c0b7fd9326363ff7cc34a5e5f171d8311504c723c31896059a071280e2eb27b27509832c1a1b6e5aa0523bd6b329e32f8453d100ed20fcb15b6acbbe394a4c58cfd0efaafb434d338545f9027f503c9fa851a3408f929d38f5bcb6da2110fff3d2cd0c13ec5f974417c4a77e3d645d197360814fdc222a908846eeb814de5e0bdbe0323a0a4906245cc2d3ac629195e479e7c8376d8dd54ea96c56f4ea657aae08ba78252e1ca6b4c6e8dd741f4bbd8b8a703eb5664803f60e613557b986c11d9ee1f8981169d98e949b1e87e9ce5528df8ca1890dbfe6426841992d0fb054bb16",2),
Wa,kb=Xa,lb=[];for(i=0;i<kb.length;i++)lb[kb[i]]=i;Wa=lb;var eb=fb("01020408102040801b366cd8ab4d9a2f5ebc63c697356ad4b37dfaefc591",2),bb=gb(2),cb=gb(3),ab=gb(9),Za=gb(11),$a=gb(13),Ya=gb(14),mb,nb="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",tb=nb.split("");"function"===typeof Array.indexOf&&(nb=tb);
mb={encode:function(a){var d=[],b="",c;for(c=0;c<16*a.length;c++)d.push(a[Math.floor(c/16)][c%16]);for(c=0;c<d.length;c+=3)b+=tb[d[c]>>2],b+=tb[(d[c]&3)<<4|d[c+1]>>4],b=d[c+1]!==da?b+tb[(d[c+1]&15)<<2|d[c+2]>>6]:b+"=",b=d[c+2]!==da?b+tb[d[c+2]&63]:b+"=";a=b.slice(0,64);for(c=1;c<Math.ceil(b.length/64);c++)a+=b.slice(64*c,64*c+64)+(Math.ceil(b.length/64)==c+1?"":"\n");return a},decode:function(a){var a=a.replace(/\n/g,""),d=[],b=[],c=[],f;for(f=0;f<a.length;f+=4)b[0]=nb.indexOf(a.charAt(f)),b[1]=nb.indexOf(a.charAt(f+
1)),b[2]=nb.indexOf(a.charAt(f+2)),b[3]=nb.indexOf(a.charAt(f+3)),c[0]=b[0]<<2|b[1]>>4,c[1]=(b[1]&15)<<4|b[2]>>2,c[2]=(b[2]&3)<<6|b[3],d.push(c[0],c[1],c[2]);return d=d.slice(0,d.length-d.length%16)}};
S={size:function(a){switch(a){case 128:W=10;X=4;break;case 192:W=12;X=6;break;case 256:W=14;X=8;break;default:throw"Invalid Key Size Specified:"+a;}},h2a:function(a){var d=[];a.replace(/(..)/g,function(a){d.push(parseInt(a,16))});return d},expandKey:Ha,encryptBlock:Ja,decryptBlock:La,Decrypt:ya,s2a:Aa,rawEncrypt:Ga,rawDecrypt:Ka,dec:function(a,d,b){var a=mb.t(a),c=a.slice(8,16),c=Ba(Aa(d,b),c),d=c.key,c=c.l,a=a.slice(16,a.length);return a=Ka(a,d,c,b)},openSSLKey:Ba,a2h:function(a){var d="",b;for(b=
0;b<a.length;b++)d+=(16>a[b]?"0":"")+a[b].toString(16);return d},enc:function(a,d,b){var c;c=[];var f;for(f=0;8>f;f++)c=c.concat(Math.floor(256*Math.random()));f=Ba(Aa(d,b),c);d=f.key;f=f.l;c=[[83,97,108,116,101,100,95,95].concat(c)];a=Aa(a,b);a=Ga(a,d,f);a=c.concat(a);return mb.u(a)},Hash:{MD5:function(a){function d(a,b){var c,d,f,e,j;f=a&2147483648;e=b&2147483648;c=a&1073741824;d=b&1073741824;j=(a&1073741823)+(b&1073741823);return c&d?j^2147483648^f^e:c|d?j&1073741824?j^3221225472^f^e:j^1073741824^
f^e:j^f^e}function b(a,b,c,f,e,j,h){a=d(a,d(d(b&c|~b&f,e),h));return d(a<<j|a>>>32-j,b)}function c(a,b,c,f,e,j,h){a=d(a,d(d(b&f|c&~f,e),h));return d(a<<j|a>>>32-j,b)}function f(a,b,c,f,j,e,h){a=d(a,d(d(b^c^f,j),h));return d(a<<e|a>>>32-e,b)}function p(a,b,c,f,e,j,h){a=d(a,d(d(c^(b|~f),e),h));return d(a<<j|a>>>32-j,b)}function q(a){var b,c,d=[];for(c=0;3>=c;c++)b=a>>>8*c&255,d=d.concat(b);return d}var j=[],s,B,w,r,e,g,l,h,m=fb("67452301efcdab8998badcfe10325476d76aa478e8c7b756242070dbc1bdceeef57c0faf4787c62aa8304613fd469501698098d88b44f7afffff5bb1895cd7be6b901122fd987193a679438e49b40821f61e2562c040b340265e5a51e9b6c7aad62f105d02441453d8a1e681e7d3fbc821e1cde6c33707d6f4d50d87455a14eda9e3e905fcefa3f8676f02d98d2a4c8afffa39428771f6816d9d6122fde5380ca4beea444bdecfa9f6bb4b60bebfbc70289b7ec6eaa127fad4ef308504881d05d9d4d039e6db99e51fa27cf8c4ac5665f4292244432aff97ab9423a7fc93a039655b59c38f0ccc92ffeff47d85845dd16fa87e4ffe2ce6e0a30143144e0811a1f7537e82bd3af2352ad7d2bbeb86d391",
8),j=a.length;s=j+8;B=16*((s-s%64)/64+1);w=[];for(e=r=0;e<j;)s=(e-e%4)/4,r=8*(e%4),w[s]|=a[e]<<r,e++;s=(e-e%4)/4;w[s]|=128<<8*(e%4);w[B-2]=j<<3;w[B-1]=j>>>29;j=w;e=m[0];g=m[1];l=m[2];h=m[3];for(a=0;a<j.length;a+=16)s=e,B=g,w=l,r=h,e=b(e,g,l,h,j[a+0],7,m[4]),h=b(h,e,g,l,j[a+1],12,m[5]),l=b(l,h,e,g,j[a+2],17,m[6]),g=b(g,l,h,e,j[a+3],22,m[7]),e=b(e,g,l,h,j[a+4],7,m[8]),h=b(h,e,g,l,j[a+5],12,m[9]),l=b(l,h,e,g,j[a+6],17,m[10]),g=b(g,l,h,e,j[a+7],22,m[11]),e=b(e,g,l,h,j[a+8],7,m[12]),h=b(h,e,g,l,j[a+9],
12,m[13]),l=b(l,h,e,g,j[a+10],17,m[14]),g=b(g,l,h,e,j[a+11],22,m[15]),e=b(e,g,l,h,j[a+12],7,m[16]),h=b(h,e,g,l,j[a+13],12,m[17]),l=b(l,h,e,g,j[a+14],17,m[18]),g=b(g,l,h,e,j[a+15],22,m[19]),e=c(e,g,l,h,j[a+1],5,m[20]),h=c(h,e,g,l,j[a+6],9,m[21]),l=c(l,h,e,g,j[a+11],14,m[22]),g=c(g,l,h,e,j[a+0],20,m[23]),e=c(e,g,l,h,j[a+5],5,m[24]),h=c(h,e,g,l,j[a+10],9,m[25]),l=c(l,h,e,g,j[a+15],14,m[26]),g=c(g,l,h,e,j[a+4],20,m[27]),e=c(e,g,l,h,j[a+9],5,m[28]),h=c(h,e,g,l,j[a+14],9,m[29]),l=c(l,h,e,g,j[a+3],14,m[30]),
g=c(g,l,h,e,j[a+8],20,m[31]),e=c(e,g,l,h,j[a+13],5,m[32]),h=c(h,e,g,l,j[a+2],9,m[33]),l=c(l,h,e,g,j[a+7],14,m[34]),g=c(g,l,h,e,j[a+12],20,m[35]),e=f(e,g,l,h,j[a+5],4,m[36]),h=f(h,e,g,l,j[a+8],11,m[37]),l=f(l,h,e,g,j[a+11],16,m[38]),g=f(g,l,h,e,j[a+14],23,m[39]),e=f(e,g,l,h,j[a+1],4,m[40]),h=f(h,e,g,l,j[a+4],11,m[41]),l=f(l,h,e,g,j[a+7],16,m[42]),g=f(g,l,h,e,j[a+10],23,m[43]),e=f(e,g,l,h,j[a+13],4,m[44]),h=f(h,e,g,l,j[a+0],11,m[45]),l=f(l,h,e,g,j[a+3],16,m[46]),g=f(g,l,h,e,j[a+6],23,m[47]),e=f(e,g,
l,h,j[a+9],4,m[48]),h=f(h,e,g,l,j[a+12],11,m[49]),l=f(l,h,e,g,j[a+15],16,m[50]),g=f(g,l,h,e,j[a+2],23,m[51]),e=p(e,g,l,h,j[a+0],6,m[52]),h=p(h,e,g,l,j[a+7],10,m[53]),l=p(l,h,e,g,j[a+14],15,m[54]),g=p(g,l,h,e,j[a+5],21,m[55]),e=p(e,g,l,h,j[a+12],6,m[56]),h=p(h,e,g,l,j[a+3],10,m[57]),l=p(l,h,e,g,j[a+10],15,m[58]),g=p(g,l,h,e,j[a+1],21,m[59]),e=p(e,g,l,h,j[a+8],6,m[60]),h=p(h,e,g,l,j[a+15],10,m[61]),l=p(l,h,e,g,j[a+6],15,m[62]),g=p(g,l,h,e,j[a+13],21,m[63]),e=p(e,g,l,h,j[a+4],6,m[64]),h=p(h,e,g,l,j[a+
11],10,m[65]),l=p(l,h,e,g,j[a+2],15,m[66]),g=p(g,l,h,e,j[a+9],21,m[67]),e=d(e,s),g=d(g,B),l=d(l,w),h=d(h,r);return q(e).concat(q(g),q(l),q(h))}},Base64:mb};
function ub(a){function d(a,b){f||(f=1,clearTimeout(q),c&&(c.onerror=c.onload=x,c.abort&&c.abort(),c=x),a&&s(b))}function b(){if(!p){p=1;clearTimeout(q);try{response=JSON.parse(c.responseText)}catch(a){return d(1)}B(response)}}var c,f=0,p=0,q;q=setTimeout(function(){d(1)},vb);var j=a.data||{},s=a.b||z(),B=a.c||z(),w="undefined"===typeof a.k;try{c="undefined"!==typeof XDomainRequest&&new XDomainRequest||new XMLHttpRequest;c.onerror=c.onabort=function(){d(1,c.responseText||{error:"Network Connection Error"})};
c.onload=c.onloadend=b;c.onreadystatechange=function(){if(4==c.readyState)switch(c.status){case 401:case 402:case 403:try{response=JSON.parse(c.responseText),d(1,response)}catch(a){return d(1,c.responseText)}}};j.pnsdk=wb;var r=a.url.join("/"),e=[];j&&(R(j,function(a,b){var c="object"==typeof b?JSON.stringify(b):b;"undefined"!=typeof b&&(b!=x&&0<encodeURIComponent(c).length)&&e.push(a+"="+encodeURIComponent(c))}),r+="?"+e.join("&"));url=r;c.open("GET",url,w);w&&(c.timeout=vb);c.send()}catch(g){return d(0),
ub(a)}return d}function xb(a,d,b){R(a.split(","),function(a){function f(a){a||(a=window.event);b(a)||(a.cancelBubble=v,a.returnValue=y,a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation())}d.addEventListener?d.addEventListener(a,f,y):d.attachEvent?d.attachEvent("on"+a,f):d["on"+a]=f})}function yb(a){console.error(a)}function zb(a,d,b){if(b)a.setAttribute(d,b);else return a&&a.getAttribute&&a.getAttribute(d)}function Ab(a){return document.getElementById(a)}
function Db(a,d){var b=[];R(a.split(/\s+/),function(a){R((d||document).getElementsByTagName(a),function(a){b.push(a)})});return b}function Eb(a,d){for(var b in d)if(d.hasOwnProperty(b))try{a.style[b]=d[b]+(0<"|width|height|top|left|".indexOf(b)&&"number"==typeof d[b]?"px":"")}catch(c){}}function Fb(a){return document.createElement(a)}function Gb(a,d){return CryptoJS.HmacSHA256(a,d).toString(CryptoJS.enc.Base64)}
function Z(a){function d(){}function b(a,b){function c(b){b&&(Na=L()-(b/1E4+(L()-d)/2),a&&a(Na))}var d=L();b&&c(b)||A.time(c)}function c(a,b){Ca&&Ca(a,b);Ca=x;clearTimeout(aa);clearTimeout(ba)}function f(){Kb&&A.time(function(a){b(z(),a);a||c(1,{error:"Heartbeat failed to connect to Pubnub Servers.Please check your network settings."});ba&&clearTimeout(ba);ba=setTimeout(f,jb)})}function p(){Lb()||c(1,{error:"Offline. Please check your network settings. "});aa&&clearTimeout(aa);aa=setTimeout(p,I)}
function q(a,b,c,d){var b=a.callback||b,f=a.error||t,e=F(),d=d||{};d.auth||(d.auth=a.auth_key||J);a=[K,"v1","channel-registration","sub-key",u];a.push.apply(a,c);e&&(d.callback=e);E({a:e,data:D(d),c:function(a){s(a,b,f)},b:function(a){j(a,f)},url:a})}function j(a,b){if("object"==typeof a&&a.error){var c={};a.message&&(c.message=a.message);a.payload&&(c.payload=a.payload);b&&b(c)}else b&&b(a)}function s(a,b,c){if("object"==typeof a){if(a.error){b={};a.message&&(b.message=a.message);a.payload&&(b.payload=
a.payload);c&&c(b);return}if(a.payload){a.next_page?b&&b(a.payload,a.next_page):b&&b(a.payload);return}}b&&b(a)}function B(a){var b=0;R(va(C),function(c){if(c=C[c])b++,(a||z())(c)});return b}function w(a){var b=0;R(wa(N),function(c){if(c=N[c])b++,(a||z())(c)})}function r(a){if(Mb){if(!T.length)return}else{a&&(T.n=0);if(T.n||!T.length)return;T.n=1}E(T.shift())}function e(){!Oa&&g()}function g(){clearTimeout(ca);!M||500<=M||1>M||!va(C,v).length&&!wa(N,v).length?Oa=y:(Oa=v,A.presence_heartbeat({callback:function(){ca=
setTimeout(g,M*I)},error:function(a){t&&t("Presence Heartbeat unable to reach Pubnub servers."+JSON.stringify(a));ca=setTimeout(g,M*I)}}))}function l(a,b){return Da.decrypt(a,b||Y)||Da.decrypt(a,Y)||a}function h(a,b,c){var d=y;if("number"===typeof a)d=5<a||0==a?y:v;else{if("boolean"===typeof a)return a?30:0;d=v}return d?(c&&c("Presence Heartbeat value invalid. Valid range ( x > 5 or x = 0). Current Value : "+(b||5)),b||5):a}function m(a){var b="",c=[];R(a,function(a){c.push(a)});var d=c.sort(),f;
for(f in d){var e=d[f],b=b+(e+"="+encodeURIComponent(a[e]));f!=d.length-1&&(b+="&")}return b}function D(a){a||(a={});R(P,function(b,c){b in a||(a[b]=c)});return a}function hb(a){function b(a,c){var d=(a&65535)+(c&65535);return(a>>16)+(c>>16)+(d>>16)<<16|d&65535}function c(a,b){return a>>>b|a<<32-b}var d;d=a.replace(/\r\n/g,"\n");for(var a="",f=0;f<d.length;f++){var e=d.charCodeAt(f);128>e?a+=String.fromCharCode(e):(127<e&&2048>e?a+=String.fromCharCode(e>>6|192):(a+=String.fromCharCode(e>>12|224),
a+=String.fromCharCode(e>>6&63|128)),a+=String.fromCharCode(e&63|128))}f=a;d=[];for(e=0;e<8*f.length;e+=8)d[e>>5]|=(f.charCodeAt(e/8)&255)<<24-e%32;var j=8*a.length,f=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,
338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],a=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],e=Array(64),h,g,l,m,p,q,t,r,s,u,w;d[j>>5]|=128<<24-j%32;
d[(j+64>>9<<4)+15]=j;for(r=0;r<d.length;r+=16){j=a[0];h=a[1];g=a[2];l=a[3];m=a[4];p=a[5];q=a[6];t=a[7];for(s=0;64>s;s++)e[s]=16>s?d[s+r]:b(b(b(c(e[s-2],17)^c(e[s-2],19)^e[s-2]>>>10,e[s-7]),c(e[s-15],7)^c(e[s-15],18)^e[s-15]>>>3),e[s-16]),u=b(b(b(b(t,c(m,6)^c(m,11)^c(m,25)),m&p^~m&q),f[s]),e[s]),w=b(c(j,2)^c(j,13)^c(j,22),j&h^j&g^h&g),t=q,q=p,p=m,m=b(l,u),l=g,g=h,h=j,j=b(u,w);a[0]=b(j,a[0]);a[1]=b(h,a[1]);a[2]=b(g,a[2]);a[3]=b(l,a[3]);a[4]=b(m,a[4]);a[5]=b(p,a[5]);a[6]=b(q,a[6]);a[7]=b(t,a[7])}d="";
for(f=0;f<4*a.length;f++)d+="0123456789abcdef".charAt(a[f>>2]>>8*(3-f%4)+4&15)+"0123456789abcdef".charAt(a[f>>2]>>8*(3-f%4)&15);return d}a.db=Hb;a.xdr=ub;a.error=a.error||yb;a.hmac_SHA256=Gb;S.size(256);var ib=S.s2a("0123456789012345");a.crypto_obj={encrypt:function(a,b){if(!b)return a;var c=S.s2a(hb(b).slice(0,32)),d=S.s2a(JSON.stringify(a)),c=S.rawEncrypt(d,c,ib);return S.Base64.encode(c)||a},decrypt:function(a,b){if(!b)return a;var c=S.s2a(hb(b).slice(0,32));try{var d=S.Base64.decode(a),e=S.rawDecrypt(d,
c,ib,y);return JSON.parse(e)}catch(f){}}};a.params={pnsdk:wb};SELF=function(a){return Z(a)};var $,Bb=+a.windowing||10,Cb=(+a.timeout||310)*I,jb=(+a.keepalive||60)*I,Kb=a.timecheck||0,ob=a.noleave||0,O=a.publish_key||"demo",u=a.subscribe_key||"demo",J=a.auth_key||"",Ea=a.secret_key||"",pb=a.hmac_SHA256,U=a.ssl?"s":"",ma="http"+U+"://"+(a.origin||"pubsub.pubnub.com"),K=na(ma),qb=na(ma),T=[],Pa=v,Na=0,Qa=0,rb=0,Ca=0,Fa=a.restore||0,fa=0,Ra=y,C={},N={},Q={},ca=x,V=h(a.heartbeat||a.pnexpires||0,a.error),
M=a.heartbeat_interval||V-3,Oa=y,Mb=a.no_wait_for_pending,sb=a["compatible_3.5"]||y,E=a.xdr,P=a.params||{},t=a.error||z(),Lb=a._is_online||function(){return 1},F=a.jsonp_cb||function(){return 0},ga=a.db||{get:z(),set:z()},Y=a.cipher_key,G=a.uuid||!a.unique_uuid&&ga&&ga.get(u+"uuid")||"",aa,ba,Da=a.crypto_obj||{encrypt:function(a){return a},decrypt:function(a){return a}},A={LEAVE:function(a,b,c,d){var e={uuid:G,auth:J},f=na(ma),c=c||z(),h=d||z(),d=F();if(0<a.indexOf(H))return v;if(sb&&(!U||"0"==d)||
ob)return y;"0"!=d&&(e.callback=d);E({k:b||U,timeout:2E3,a:d,data:D(e),c:function(a){s(a,c,h)},b:function(a){j(a,h)},url:[f,"v2","presence","sub_key",u,"channel",encodeURIComponent(a),"leave"]});return v},LEAVE_GROUP:function(a,b,c,d){var e={uuid:G,auth:J},f=na(ma),c=c||z(),h=d||z(),d=F();if(0<a.indexOf(H))return v;if(sb&&(!U||"0"==d)||ob)return y;"0"!=d&&(e.callback=d);a&&0<a.length&&(e["channel-group"]=a);E({k:b||U,timeout:5E3,a:d,data:D(e),c:function(a){s(a,c,h)},b:function(a){j(a,h)},url:[f,"v2",
"presence","sub_key",u,"channel",encodeURIComponent(","),"leave"]});return v},set_resumed:function(a){Ra=a},get_cipher_key:function(){return Y},set_cipher_key:function(a){Y=a},raw_encrypt:function(a,b){return Da.encrypt(a,b||Y)||a},raw_decrypt:function(a,b){return l(a,b)},get_heartbeat:function(){return V},set_heartbeat:function(a){V=h(a,M,t);M=1<=V-3?V-3:1;d();g()},get_heartbeat_interval:function(){return M},set_heartbeat_interval:function(a){M=a;g()},get_version:function(){return"3.7.6"},getGcmMessageObject:function(a){return{data:a}},
getApnsMessageObject:function(a){var b={aps:{badge:1,alert:""}};for(k in a)k[b]=a[k];return b},newPnMessage:function(){var a={};gcm&&(a.pn_gcm=gcm);apns&&(a.pn_apns=apns);for(k in n)a[k]=n[k];return a},_add_param:function(a,b){P[a]=b},channel_group:function(a,b){var c=a.channel_group,d=a.channels||a.channel,e=a.cloak,f,j,h=[],g={},l=a.mode||"add";c&&(c=c.split(":"),1<c.length?(f="*"===c[0]?x:c[0],j=c[1]):j=c[0]);f&&h.push("namespace")&&h.push(encodeURIComponent(f));h.push("channel-group");j&&"*"!==
j&&h.push(j);d?(ta(d)&&(d=d.join(",")),g[l]=d,g.cloak=Pa?"true":"false"):"remove"===l&&h.push("remove");"undefined"!=typeof e&&(g.cloak=e?"true":"false");q(a,b,h,g)},channel_group_list_groups:function(a,b){var c;(c=a.namespace||a.ns||a.channel_group||x)&&(a.channel_group=c+":*");A.channel_group(a,b)},channel_group_list_channels:function(a,b){if(!a.channel_group)return t("Missing Channel Group");A.channel_group(a,b)},channel_group_remove_channel:function(a,b){if(!a.channel_group)return t("Missing Channel Group");
if(!a.channel&&!a.channels)return t("Missing Channel");a.mode="remove";A.channel_group(a,b)},channel_group_remove_group:function(a,b){if(!a.channel_group)return t("Missing Channel Group");if(a.channel)return t("Use channel_group_remove_channel if you want to remove a channel from a group.");a.mode="remove";A.channel_group(a,b)},channel_group_add_channel:function(a,b){if(!a.channel_group)return t("Missing Channel Group");if(!a.channel&&!a.channels)return t("Missing Channel");A.channel_group(a,b)},
channel_group_cloak:function(a,b){"undefined"==typeof a.cloak?b(Pa):(Pa=a.cloak,A.channel_group(a,b))},channel_group_list_namespaces:function(a,b){q(a,b,["namespace"])},channel_group_remove_namespace:function(a,b){q(a,b,["namespace",a.namespace,"remove"])},history:function(a,b){var b=a.callback||b,c=a.count||a.limit||100,d=a.reverse||"false",e=a.error||z(),f=a.auth_key||J,h=a.cipher_key,g=a.channel,m=a.channel_group,p=a.start,q=a.end,s=a.include_token,r={},w=F();if(!g&&!m)return t("Missing Channel");
if(!b)return t("Missing Callback");if(!u)return t("Missing Subscribe Key");r.stringtoken="true";r.count=c;r.reverse=d;r.auth=f;m&&(r["channel-group"]=m,g||(g=","));w&&(r.callback=w);p&&(r.start=p);q&&(r.end=q);s&&(r.include_token="true");E({a:w,data:D(r),c:function(a){if("object"==typeof a&&a.error)e({message:a.message,payload:a.payload});else{for(var c=a[0],d=[],f=0;f<c.length;f++){var j=l(c[f],h);try{d.push(JSON.parse(j))}catch(Nb){d.push(j)}}b([d,a[1],a[2]])}},b:function(a){j(a,e)},url:[K,"v2",
"history","sub-key",u,"channel",encodeURIComponent(g)]})},replay:function(a,b){var b=b||a.callback||z(),c=a.auth_key||J,d=a.source,e=a.destination,f=a.stop,j=a.start,h=a.end,g=a.reverse,l=a.limit,m=F(),p={};if(!d)return t("Missing Source Channel");if(!e)return t("Missing Destination Channel");if(!O)return t("Missing Publish Key");if(!u)return t("Missing Subscribe Key");"0"!=m&&(p.callback=m);f&&(p.stop="all");g&&(p.reverse="true");j&&(p.start=j);h&&(p.end=h);l&&(p.count=l);p.auth=c;E({a:m,c:function(a){s(a,
b,err)},b:function(){b([0,"Disconnected"])},url:[K,"v1","replay",O,u,d,e],data:D(p)})},auth:function(a){J=a;d()},time:function(a){var b=F();E({a:b,data:D({uuid:G,auth:J}),timeout:5*I,url:[K,"time",b],c:function(b){a(b[0])},b:function(){a(0)}})},publish:function(a,b){var c=a.message;if(!c)return t("Missing Message");var b=b||a.callback||c.callback||z(),d=a.channel||c.channel,e=a.auth_key||J,f=a.cipher_key,h=a.error||c.error||z(),g=a.post||y,l="store_in_history"in a?a.store_in_history:v,m=F(),p="push";
a.prepend&&(p="unshift");if(!d)return t("Missing Channel");if(!O)return t("Missing Publish Key");if(!u)return t("Missing Subscribe Key");c.getPubnubMessage&&(c=c.getPubnubMessage());c=JSON.stringify(Da.encrypt(c,f||Y)||c);c=[K,"publish",O,u,0,encodeURIComponent(d),m,encodeURIComponent(c)];P={uuid:G,auth:e};l||(P.store="0");T[p]({a:m,timeout:5*I,url:c,data:D(P),b:function(a){j(a,h);r(1)},c:function(a){s(a,b,h);r(1)},mode:g?"POST":"GET"});r()},unsubscribe:function(a,b){var c=a.channel,e=a.channel_group,
b=b||a.callback||z(),f=a.error||z();fa=0;c&&(c=ua((c.join?c.join(","):""+c).split(","),function(a){if(C[a])return a+","+a+H}).join(","),R(c.split(","),function(a){var c=v;a&&(C[a]=0,a in Q&&delete Q[a],ha&&(c=A.LEAVE(a,0,b,f)),c||b({action:"leave"}))}));e&&(e=ua((e.join?e.join(","):""+e).split(","),function(a){if(N[a])return a+","+a+H}).join(","),R(e.split(","),function(a){var c=v;a&&(N[a]=0,a in Q&&delete Q[a],ha&&(c=A.LEAVE_GROUP(a,0,b,f)),c||b({action:"leave"}))}));d()},subscribe:function(a,b){function f(a){a?
setTimeout(d,I):(K=na(ma,1),qb=na(ma,1),setTimeout(function(){A.time(f)},I));B(function(b){if(a&&b.d)return b.d=0,b.j(b.name);!a&&!b.d&&(b.d=1,b.i(b.name))});w(function(b){if(a&&b.d)return b.d=0,b.j(b.name);!a&&!b.d&&(b.d=1,b.i(b.name))})}function h(){var a=F(),b=va(C).join(","),g=wa(N).join(",");if(b||g){b||(b=",");c();var m=D({uuid:G,auth:p});g&&(m["channel-group"]=g);2<JSON.stringify(Q).length&&(m.state=JSON.stringify(Q));V&&(m.heartbeat=V);e();Ca=E({timeout:ba,a:a,b:function(a){A.time(function(b){!b&&
j(a,M);f(b)})},data:D(m),url:[qb,"subscribe",u,encodeURIComponent(b),a,fa],c:function(a){if(!a||"object"==typeof a&&"error"in a&&a.error)return M(a.error),setTimeout(d,I);P(a[1]);fa=!fa&&Fa&&ga.get(u)||a[1];B(function(a){a.f||(a.f=1,a.h(a.name))});w(function(a){a.f||(a.f=1,a.h(a.name))});if(Ra&&!Fa)fa=0,Ra=y,ga.set(u,0);else{T&&(fa=1E4,T=0);ga.set(u,a[1]);var b,c="",e="";3<a.length?(c=a[3],e=a[2]):c=2<a.length?a[2]:ua(va(C),function(b){return ua(Array(a[0].length).join(",").split(","),function(){return b})}).join(",");
var f=c.split(","),j=e?e.split(","):[];b=function(){var a=f.shift()||rb,b=j.shift(),c={};b?(a&&(0<=a.indexOf("-pnpres")&&0>b.indexOf("-pnpres"))&&(b+="-pnpres"),c=N[b]||C[b]||{callback:z()}):c=C[a];a=[c.a||Qa,a.split(H)[0]];b&&a.push(b.split(H)[0]);return a};var g=L()-Na-+a[1]/1E4;R(a[0],function(c){var d=b(),c=l(c,C[d[1]]?C[d[1]].cipher_key:x);d[0]&&d[0](c,a,d[2]||d[1],g,d[1])})}setTimeout(h,Y)}})}}var g=a.channel,m=a.channel_group,b=(b=b||a.callback)||a.message,p=a.auth_key||J,q=a.connect||z(),
s=a.reconnect||z(),r=a.disconnect||z(),M=a.error||z(),P=a.idle||z(),la=a.presence||0,O=a.noheresync||0,T=a.backfill||0,aa=a.timetoken||0,ba=a.timeout||Cb,Y=a.windowing||Bb,U=a.state,$=a.heartbeat||a.pnexpires,ca=a.restore||Fa;Fa=ca;fa=aa;if(!g&&!m)return t("Missing Channel");if(!b)return t("Missing Callback");if(!u)return t("Missing Subscribe Key");($||0===$)&&A.set_heartbeat($);g&&R((g.join?g.join(","):""+g).split(","),function(c){var d=C[c]||{};C[rb=c]={name:c,f:d.f,d:d.d,e:1,a:Qa=b,cipher_key:a.cipher_key,
h:q,i:r,j:s};U&&(Q[c]=c in U?U[c]:U);la&&(A.subscribe({channel:c+H,callback:la,restore:ca}),!d.e&&!O&&A.here_now({channel:c,callback:function(a){R("uuids"in a?a.uuids:[],function(b){la({action:"join",uuid:b,timestamp:Math.floor(L()/1E3),occupancy:a.occupancy||1},a,c)})}}))});m&&R((m.join?m.join(","):""+m).split(","),function(c){var d=N[c]||{};N[c]={name:c,f:d.f,d:d.d,e:1,a:Qa=b,cipher_key:a.cipher_key,h:q,i:r,j:s};la&&(A.subscribe({channel_group:c+H,callback:la,restore:ca}),!d.e&&!O&&A.here_now({channel_group:c,
callback:function(a){R("uuids"in a?a.uuids:[],function(b){la({action:"join",uuid:b,timestamp:Math.floor(L()/1E3),occupancy:a.occupancy||1},a,c)})}}))});d=function(){c();setTimeout(h,Y)};if(!ha)return ia.push(d);d()},here_now:function(a,b){var b=a.callback||b,c=a.error||z(),d=a.auth_key||J,e=a.channel,f=a.channel_group,h=F(),g=a.state,d={uuid:G,auth:d};if(!("uuids"in a?a.uuids:1))d.disable_uuids=1;g&&(d.state=1);if(!b)return t("Missing Callback");if(!u)return t("Missing Subscribe Key");g=[K,"v2","presence",
"sub_key",u];e&&g.push("channel")&&g.push(encodeURIComponent(e));"0"!=h&&(d.callback=h);f&&(d["channel-group"]=f,!e&&g.push("channel")&&g.push(","));E({a:h,data:D(d),c:function(a){s(a,b,c)},b:function(a){j(a,c)},url:g})},where_now:function(a,b){var b=a.callback||b,c=a.error||z(),d=a.auth_key||J,e=F(),f=a.uuid||G,d={auth:d};if(!b)return t("Missing Callback");if(!u)return t("Missing Subscribe Key");"0"!=e&&(d.callback=e);E({a:e,data:D(d),c:function(a){s(a,b,c)},b:function(a){j(a,c)},url:[K,"v2","presence",
"sub_key",u,"uuid",encodeURIComponent(f)]})},state:function(a,b){var b=a.callback||b||z(),c=a.error||z(),d=a.auth_key||J,e=F(),f=a.state,g=a.uuid||G,h=a.channel,m=a.channel_group,d=D({auth:d});if(!u)return t("Missing Subscribe Key");if(!g)return t("Missing UUID");if(!h&&!m)return t("Missing Channel");"0"!=e&&(d.callback=e);"undefined"!=typeof h&&C[h]&&C[h].e&&f&&(Q[h]=f);"undefined"!=typeof m&&(N[m]&&N[m].e)&&(f&&(Q[m]=f),d["channel-group"]=m,h||(h=","));d.state=JSON.stringify(f);f=f?[K,"v2","presence",
"sub-key",u,"channel",h,"uuid",g,"data"]:[K,"v2","presence","sub-key",u,"channel",h,"uuid",encodeURIComponent(g)];E({a:e,data:D(d),c:function(a){s(a,b,c)},b:function(a){j(a,c)},url:f})},grant:function(a,b){var b=a.callback||b,c=a.error||z(),d=a.channel,e=a.channel_group,f=F(),h=a.ttl,g=a.read?"1":"0",l=a.write?"1":"0",p=a.manage?"1":"0",q=a.auth_key;if(!b)return t("Missing Callback");if(!u)return t("Missing Subscribe Key");if(!O)return t("Missing Publish Key");if(!Ea)return t("Missing Secret Key");
var r=u+"\n"+O+"\ngrant\n",g={w:l,r:g,timestamp:Math.floor((new Date).getTime()/1E3)};a.manage&&(g.m=p);"undefined"!=typeof d&&(d!=x&&0<d.length)&&(g.channel=d);"undefined"!=typeof e&&(e!=x&&0<e.length)&&(g["channel-group"]=e);"0"!=f&&(g.callback=f);if(h||0===h)g.ttl=h;q&&(g.auth=q);g=D(g);q||delete g.auth;r+=m(g);d=pb(r,Ea);d=d.replace(/\+/g,"-");d=d.replace(/\//g,"_");g.signature=d;E({a:f,data:g,c:function(a){s(a,b,c)},b:function(a){j(a,c)},url:[K,"v1","auth","grant","sub-key",u]})},mobile_gw_provision:function(a){var b=
a.callback||z(),c=a.auth_key||J,d=a.error||z(),e=F(),f=a.channel,g=a.op,h=a.gw_type,a=a.device_id;if(!a)return t("Missing Device ID (device_id)");if(!h)return t("Missing GW Type (gw_type: gcm or apns)");if(!g)return t("Missing GW Operation (op: add or remove)");if(!f)return t("Missing gw destination Channel (channel)");if(!O)return t("Missing Publish Key");if(!u)return t("Missing Subscribe Key");a=[K,"v1/push/sub-key",u,"devices",a];P={uuid:G,auth:c,type:h};"add"==g?P.add=f:"remove"==g&&(P.remove=
f);E({a:e,data:P,c:function(a){s(a,b,d)},b:function(a){j(a,d)},url:a})},audit:function(a,b){var b=a.callback||b,c=a.error||z(),d=a.channel,e=a.channel_group,f=a.auth_key,g=F();if(!b)return t("Missing Callback");if(!u)return t("Missing Subscribe Key");if(!O)return t("Missing Publish Key");if(!Ea)return t("Missing Secret Key");var h=u+"\n"+O+"\naudit\n",l={timestamp:Math.floor((new Date).getTime()/1E3)};"0"!=g&&(l.callback=g);"undefined"!=typeof d&&(d!=x&&0<d.length)&&(l.channel=d);"undefined"!=typeof e&&
(e!=x&&0<e.length)&&(l["channel-group"]=e);f&&(l.auth=f);l=D(l);f||delete l.auth;h+=m(l);d=pb(h,Ea);d=d.replace(/\+/g,"-");d=d.replace(/\//g,"_");l.signature=d;E({a:g,data:l,c:function(a){s(a,b,c)},b:function(a){j(a,c)},url:[K,"v1","auth","audit","sub-key",u]})},revoke:function(a,b){a.read=y;a.write=y;A.grant(a,b)},set_uuid:function(a){G=a;d()},get_uuid:function(){return G},isArray:function(a){return ta(a)},get_subscibed_channels:function(){return va(C,v)},presence_heartbeat:function(a){var b=a.callback||
z(),c=a.error||z(),a=F(),d={uuid:G,auth:J};2<JSON.stringify(Q).length&&(d.state=JSON.stringify(Q));0<V&&320>V&&(d.heartbeat=V);"0"!=a&&(d.callback=a);var e;e=va(C,v).join(",");e=encodeURIComponent(e);var f=wa(N,v).join(",");e||(e=",");f&&(d["channel-group"]=f);E({a:a,data:D(d),timeout:5*I,url:[K,"v2","presence","sub-key",u,"channel",e,"heartbeat"],c:function(a){s(a,b,c)},b:function(a){j(a,c)}})},stop_timers:function(){clearTimeout(aa);clearTimeout(ba)},xdr:E,ready:xa,db:ga,uuid:pa,map:ua,each:R,"each-channel":B,
grep:ra,offline:function(){c(1,{message:"Offline. Please check your network settings."})},supplant:sa,now:L,unique:ka,updater:qa};G||(G=A.uuid());ga.set(u+"uuid",G);aa=setTimeout(p,I);ba=setTimeout(f,jb);ca=setTimeout(e,(M-3)*I);b();$=A;for(var Sa in $)$.hasOwnProperty(Sa)&&(SELF[Sa]=$[Sa]);SELF.init=SELF;SELF.$=Ab;SELF.attr=zb;SELF.search=Db;SELF.bind=xb;SELF.css=Eb;SELF.create=Fb;"undefined"!==typeof window&&xb("beforeunload",window,function(){SELF["each-channel"](function(a){SELF.LEAVE(a.name,
1)});return v});if(a.notest)return SELF;"undefined"!==typeof window&&xb("offline",window,SELF._reset_offline);"undefined"!==typeof document&&xb("offline",document,SELF._reset_offline);SELF.ready();return SELF}var wb="PubNub-JS-Modern/3.7.6",vb=31E4,Hb,Ib="undefined"!=typeof localStorage&&localStorage;
Hb={get:function(a){try{return Ib?Ib.getItem(a):-1==document.cookie.indexOf(a)?x:((document.cookie||"").match(RegExp(a+"=([^;]+)"))||[])[1]||x}catch(d){}},set:function(a,d){try{if(Ib)return Ib.setItem(a,d)&&0;document.cookie=a+"="+d+"; expires=Thu, 1 Aug 2030 20:00:00 UTC; path=/"}catch(b){}}};Z.init=Z;Z.secure=Z;PUBNUB=Z({});"undefined"!==typeof module&&(module.v=Z)||"undefined"!==typeof exports&&(exports.s=Z)||(PUBNUB=Z);
var Jb=PUBNUB.ws=function(a,d){if(!(this instanceof Jb))return new Jb(a,d);var b=this,a=b.url=a||"";b.protocol=d||"Sec-WebSocket-Protocol";var c=a.split("/"),c={ssl:"wss:"===c[0],origin:c[2],publish_key:c[3],subscribe_key:c[4],channel:c[5]};b.CONNECTING=0;b.OPEN=1;b.CLOSING=2;b.CLOSED=3;b.CLOSE_NORMAL=1E3;b.CLOSE_GOING_AWAY=1001;b.CLOSE_PROTOCOL_ERROR=1002;b.CLOSE_UNSUPPORTED=1003;b.CLOSE_TOO_LARGE=1004;b.CLOSE_NO_STATUS=1005;b.CLOSE_ABNORMAL=1006;b.onclose=b.onerror=b.onmessage=b.onopen=b.onsend=
z();b.binaryType="";b.extensions="";b.bufferedAmount=0;b.trasnmitting=y;b.buffer=[];b.readyState=b.CONNECTING;if(!a)return b.readyState=b.CLOSED,b.onclose({code:b.CLOSE_ABNORMAL,reason:"Missing URL",wasClean:v}),b;b.g=PUBNUB.init(c);b.g.o=c;b.o=c;b.g.subscribe({restore:y,channel:c.channel,disconnect:b.onerror,reconnect:b.onopen,error:function(){b.onclose({code:b.CLOSE_ABNORMAL,reason:"Missing URL",wasClean:y})},callback:function(a){b.onmessage({data:a})},connect:function(){b.readyState=b.OPEN;b.onopen()}})};
Jb.prototype.send=function(a){var d=this;d.g.publish({channel:d.g.o.channel,message:a,callback:function(a){d.onsend({data:a})}})};
})();