From 63529a962de64574b4ffad9b8f06b39e5445ec28 Mon Sep 17 00:00:00 2001 From: Hiranya Jayathilaka Date: Mon, 8 May 2017 13:17:33 -0700 Subject: [PATCH] Updating the realtime DB code --- src/database/database.js | 436 +++++++++++++++++++-------------------- 1 file changed, 218 insertions(+), 218 deletions(-) diff --git a/src/database/database.js b/src/database/database.js index b39a8cf925..2687d88aa8 100644 --- a/src/database/database.js +++ b/src/database/database.js @@ -13,236 +13,236 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -/* Copied from firebase/firebase-client-js commit 83ba5203e3ad463f7f21c34d4fe3bf226ecb08da */ +/* Copied from firebase/firebase-client-js commit abda2f2ee66f0e36ce3f6c4e7acd311ba9f30956 */ (function() { var firebase = require('../default-namespace'); var h,aa=this;function n(a){return void 0!==a}function ba(){}function ca(a){a.Tb=function(){return a.Ve?a.Ve:a.Ve=new a}} function da(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null"; else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function ea(a){return"array"==da(a)}function fa(a){var b=da(a);return"array"==b||"object"==b&&"number"==typeof a.length}function p(a){return"string"==typeof a}function ga(a){return"number"==typeof a}function ha(a){return"function"==da(a)}function ia(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function ja(a,b,c){return a.call.apply(a.bind,arguments)} function ka(a,b,c){if(!a)throw Error();if(2e;e++)d[e]=b.charCodeAt(c)<<24|b.charCodeAt(c+1)<<16|b.charCodeAt(c+2)<<8|b.charCodeAt(c+3),c+=4;else for(e=0;16>e;e++)d[e]=b[c]<<24|b[c+1]<<16|b[c+2]<<8|b[c+3],c+=4;for(e=16;80>e;e++){var f=d[e-3]^d[e-8]^d[e-14]^d[e-16];d[e]=(f<<1|f>>>31)&4294967295}b=a.M[0];c=a.M[1];for(var g=a.M[2],k=a.M[3],m=a.M[4],l,e=0;80>e;e++)40>e?20>e?(f=k^c&(g^k),l=1518500249):(f=c^g^k,l=1859775393):60>e?(f=c&g|k&(c|g),l=2400959708):(f=c^g^k,l=3395469782),f=(b<< +function la(a,b){function c(){}c.prototype=b.prototype;a.Bg=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.vg=function(a,c,f){for(var g=Array(arguments.length-2),k=2;kb?e+="000":256>b?e+="00":4096>b&&(e+="0");return Ba[a]=e+b.toString(16)}),'"')};function Da(){this.Va=-1};function Ea(){this.Va=-1;this.Va=64;this.M=[];this.Sd=[];this.zf=[];this.xd=[];this.xd[0]=128;for(var a=1;ae;e++)d[e]=b.charCodeAt(c)<<24|b.charCodeAt(c+1)<<16|b.charCodeAt(c+2)<<8|b.charCodeAt(c+3),c+=4;else for(e=0;16>e;e++)d[e]=b[c]<<24|b[c+1]<<16|b[c+2]<<8|b[c+3],c+=4;for(e=16;80>e;e++){var f=d[e-3]^d[e-8]^d[e-14]^d[e-16];d[e]=(f<<1|f>>>31)&4294967295}b=a.M[0];c=a.M[1];for(var g=a.M[2],k=a.M[3],m=a.M[4],l,e=0;80>e;e++)40>e?20>e?(f=k^c&(g^k),l=1518500249):(f=c^g^k,l=1859775393):60>e?(f=c&g|k&(c|g),l=2400959708):(f=c^g^k,l=3395469782),f=(b<< 5|b>>>27)+f+m+l+d[e]&4294967295,m=k,k=g,g=(c<<30|c>>>2)&4294967295,c=b,b=f;a.M[0]=a.M[0]+b&4294967295;a.M[1]=a.M[1]+c&4294967295;a.M[2]=a.M[2]+g&4294967295;a.M[3]=a.M[3]+k&4294967295;a.M[4]=a.M[4]+m&4294967295} -na.prototype.update=function(a,b){if(null!=a){n(b)||(b=a.length);for(var c=b-this.Va,d=0,e=this.Sd,f=this.Yb;db?e+="000":256>b?e+="00":4096>b&&(e+="0");return ta[a]=e+b.toString(16)}),'"')};function t(a,b){for(var c in a)b.call(void 0,a[c],c,a)}function va(a,b){var c={},d;for(d in a)c[d]=b.call(void 0,a[d],d,a);return c}function wa(a,b){for(var c in a)if(!b.call(void 0,a[c],c,a))return!1;return!0}function xa(a){var b=0,c;for(c in a)b++;return b}function ya(a){for(var b in a)return b}function za(a){var b=[],c=0,d;for(d in a)b[c++]=a[d];return b}function Aa(a){var b=[],c=0,d;for(d in a)b[c++]=d;return b}function Ba(a,b){for(var c in a)if(a[c]==b)return!0;return!1} -function Ca(a,b,c){for(var d in a)if(b.call(c,a[d],d,a))return d}function Da(a,b){var c=Ca(a,b,void 0);return c&&a[c]}function Ea(a){for(var b in a)return!1;return!0}function Fa(a){var b={},c;for(c in a)b[c]=a[c];return b};var u=Array.prototype,Ga=u.indexOf?function(a,b,c){return u.indexOf.call(a,b,c)}:function(a,b,c){c=null==c?0:0>c?Math.max(0,a.length+c):c;if(p(a))return p(b)&&1==b.length?a.indexOf(b,c):-1;for(;cc?Math.max(0,a.length+c):c;if(p(a))return p(b)&&1==b.length?a.indexOf(b,c):-1;for(;cc?null:p(a)?a.charAt(c):a[c]}function Na(a,b,c){for(var d=a.length,e=p(a)?a.split(""):a,f=0;fb?1:aparseFloat(a))?String(b):a})();var Xa=null,Ya=null; function Za(a,b){if(!fa(a))throw Error("encodeByteArray takes an array as a parameter");if(!Xa){Xa={};Ya={};for(var c=0;65>c;c++)Xa[c]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(c),Ya[c]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.".charAt(c)}for(var c=b?Ya:Xa,d=[],e=0;e>2,f=(f&3)<<4|k>>4,k=(k&15)<<2|l>>6,l=l&63;m||(l=64,g||(k=64));d.push(c[r],c[f],c[k],c[l])}return d.join("")} -;function $a(a,b){if(!a)throw ab(b);}function ab(a){return Error("Firebase Database ("+firebase.SDK_VERSION+") INTERNAL ASSERT FAILED: "+a)};function bb(a){return"undefined"!==typeof JSON&&n(JSON.parse)?JSON.parse(a):pa(a)}function w(a){if("undefined"!==typeof JSON&&n(JSON.stringify))a=JSON.stringify(a);else{var b=[];ra(new qa,a,b);a=b.join("")}return a};function cb(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function y(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]}function db(a,b){for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&b(c,a[c])};var eb=firebase.Promise;function fb(){var a=this;this.reject=this.resolve=null;this.ra=new eb(function(b,c){a.resolve=b;a.reject=c})}function gb(a,b){return function(c,d){c?a.reject(c):a.resolve(d);ha(b)&&(hb(a.ra),1===b.length?b(c):b(c,d))}}function hb(a){a.then(void 0,ba)};function ib(a){for(var b=[],c=0,d=0;d=e&&(e-=55296,d++,$a(de?b[c++]=e:(2048>e?b[c++]=e>>6|192:(65536>e?b[c++]=e>>12|224:(b[c++]=e>>18|240,b[c++]=e>>12&63|128),b[c++]=e>>6&63|128),b[c++]=e&63|128)}return b}function jb(a){for(var b=0,c=0;cd?b++:2048>d?b+=2:55296<=d&&56319>=d?(b+=4,c++):b+=3}return b};function kb(a){var b=[];db(a,function(a,d){ea(d)?Ha(d,function(d){b.push(encodeURIComponent(a)+"="+encodeURIComponent(d))}):b.push(encodeURIComponent(a)+"="+encodeURIComponent(d))});return b.length?"&"+b.join("&"):""};function z(a,b,c,d){var e;dc&&(e=0===c?"none":"no more than "+c);if(e)throw Error(a+" failed: Was called with "+d+(1===d?" argument.":" arguments.")+" Expects "+e+".");}function A(a,b,c){var d="";switch(b){case 1:d=c?"first":"First";break;case 2:d=c?"second":"Second";break;case 3:d=c?"third":"Third";break;case 4:d=c?"fourth":"Fourth";break;default:throw Error("errorPrefix called with argumentNumber > 4. Need to update it?");}return a=a+" failed: "+(d+" argument ")} -function B(a,b,c,d){if((!d||n(c))&&!ha(c))throw Error(A(a,b,d)+"must be a valid function.");}function lb(a,b,c){if(n(c)&&(!ia(c)||null===c))throw Error(A(a,b,!0)+"must be a valid context object.");};function mb(a,b){this.committed=a;this.snapshot=b};function nb(a){this.lc=a}nb.prototype.getToken=function(a){return this.lc.INTERNAL.getToken(a).then(null,function(a){return a&&"auth/token-not-initialized"===a.code?(C("Got auth/token-not-initialized error. Treating as null token."),null):Promise.reject(a)})};function ob(a,b){a.lc.INTERNAL.addAuthTokenListener(b)};function pb(a,b){this.type=qb;this.source=a;this.path=b}pb.prototype.Jc=function(){return this.path.e()?new pb(this.source,D):new pb(this.source,E(this.path))};pb.prototype.toString=function(){return"Operation("+this.path+": "+this.source.toString()+" listen_complete)"};function rb(a,b,c){this.type=sb;this.source=a;this.path=b;this.Fa=c}rb.prototype.Jc=function(a){return this.path.e()?new rb(this.source,D,this.Fa.Q(a)):new rb(this.source,E(this.path),this.Fa)};rb.prototype.toString=function(){return"Operation("+this.path+": "+this.source.toString()+" overwrite: "+this.Fa.toString()+")"};function tb(a,b){return ub(a.name,b.name)}function vb(a,b){return ub(a,b)};function G(a,b){this.name=a;this.R=b}function wb(a,b){return new G(a,b)};function xb(){this.Hd=H}xb.prototype.j=function(a){return this.Hd.P(a)};xb.prototype.toString=function(){return this.Hd.toString()};function yb(){this.qc={}}function zb(a,b,c){n(c)||(c=1);cb(a.qc,b)||(a.qc[b]=0);a.qc[b]+=c}yb.prototype.get=function(){return Fa(this.qc)};function Ab(a){this.Df=a;this.od=null}Ab.prototype.get=function(){var a=this.Df.get(),b=Fa(a);if(this.od)for(var c in this.od)b[c]-=this.od[c];this.od=a;return b};function Bb(a){this.rc=a;this.Ad="firebase:"}h=Bb.prototype;h.set=function(a,b){null==b?this.rc.removeItem(this.Ad+a):this.rc.setItem(this.Ad+a,w(b))};h.get=function(a){a=this.rc.getItem(this.Ad+a);return null==a?null:bb(a)};h.remove=function(a){this.rc.removeItem(this.Ad+a)};h.We=!1;h.toString=function(){return this.rc.toString()};function Cb(){this.mc={}}Cb.prototype.set=function(a,b){null==b?delete this.mc[a]:this.mc[a]=b};Cb.prototype.get=function(a){return cb(this.mc,a)?this.mc[a]:null};Cb.prototype.remove=function(a){delete this.mc[a]};Cb.prototype.We=!0;function Db(a){try{if("undefined"!==typeof window&&"undefined"!==typeof window[a]){var b=window[a];b.setItem("firebase:sentinel","cache");b.removeItem("firebase:sentinel");return new Bb(b)}}catch(c){}return new Cb}var Eb=Db("localStorage"),Fb=Db("sessionStorage");function Gb(a,b,c,d,e){this.host=a.toLowerCase();this.domain=this.host.substr(this.host.indexOf(".")+1);this.Pc=b;this.me=c;this.tg=d;this.ef=e||"";this.Za=Eb.get("host:"+a)||this.host}function Hb(a,b){b!==a.Za&&(a.Za=b,"s-"===a.Za.substr(0,2)&&Eb.set("host:"+a.host,a.Za))} -function Ib(a,b,c){I("string"===typeof b,"typeof type must == string");I("object"===typeof c,"typeof params must == object");if(b===Jb)b=(a.Pc?"wss://":"ws://")+a.Za+"/.ws?";else if(b===Kb)b=(a.Pc?"https://":"http://")+a.Za+"/.lp?";else throw Error("Unknown connection type: "+b);a.host!==a.Za&&(c.ns=a.me);var d=[];t(c,function(a,b){d.push(b+"="+a)});return b+d.join("&")}Gb.prototype.toString=function(){var a=(this.Pc?"https://":"http://")+this.host;this.ef&&(a+="<"+this.ef+">");return a};(function(){var a=process.version;if("v0.10.22"===a||"v0.10.23"===a||"v0.10.24"===a){var b=function(a,b,c){this.chunk=a;this.encoding=b;this.callback=c},c=function(a,c,d,e,l){c.objectMode||!1===c.decodeStrings||"string"!==typeof d||(d=new Buffer(d,e));Buffer.isBuffer(d)&&(e="buffer");var r=c.objectMode?1:d.length;c.length+=r;var x=c.lengthc&&(e=0===c?"none":"no more than "+c);if(e)throw Error(a+" failed: Was called with "+d+(1===d?" argument.":" arguments.")+" Expects "+e+".");}function x(a,b,c){var d="";switch(b){case 1:d=c?"first":"First";break;case 2:d=c?"second":"Second";break;case 3:d=c?"third":"Third";break;case 4:d=c?"fourth":"Fourth";break;default:throw Error("errorPrefix called with argumentNumber > 4. Need to update it?");}return a=a+" failed: "+(d+" argument ")} +function z(a,b,c,d){if((!d||n(c))&&!ha(c))throw Error(x(a,b,d)+"must be a valid function.");}function db(a,b,c){if(n(c)&&(!ia(c)||null===c))throw Error(x(a,b,!0)+"must be a valid context object.");};function eb(a){return"undefined"!==typeof JSON&&n(JSON.parse)?JSON.parse(a):xa(a)}function A(a){if("undefined"!==typeof JSON&&n(JSON.stringify))a=JSON.stringify(a);else{var b=[];za(new ya,a,b);a=b.join("")}return a};function fb(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function B(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b]}function gb(a,b){for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&b(c,a[c])};function hb(a){var b=[];gb(a,function(a,d){ea(d)?Ha(d,function(d){b.push(encodeURIComponent(a)+"="+encodeURIComponent(d))}):b.push(encodeURIComponent(a)+"="+encodeURIComponent(d))});return b.length?"&"+b.join("&"):""};function ib(a,b){if(!a)throw jb(b);}function jb(a){return Error("Firebase Database ("+firebase.SDK_VERSION+") INTERNAL ASSERT FAILED: "+a)};function kb(a){for(var b=[],c=0,d=0;d=e&&(e-=55296,d++,ib(de?b[c++]=e:(2048>e?b[c++]=e>>6|192:(65536>e?b[c++]=e>>12|224:(b[c++]=e>>18|240,b[c++]=e>>12&63|128),b[c++]=e>>6&63|128),b[c++]=e&63|128)}return b}function lb(a){for(var b=0,c=0;cd?b++:2048>d?b+=2:55296<=d&&56319>=d?(b+=4,c++):b+=3}return b};function mb(a){this.lc=a}mb.prototype.getToken=function(a){return this.lc.INTERNAL.getToken(a).then(null,function(a){return a&&"auth/token-not-initialized"===a.code?(C("Got auth/token-not-initialized error. Treating as null token."),null):Promise.reject(a)})};function nb(a,b){a.lc.INTERNAL.addAuthTokenListener(b)};function ob(a,b){this.Ka=a;this.ba=b?b:pb}h=ob.prototype;h.Na=function(a,b){return new ob(this.Ka,this.ba.Na(a,b,this.Ka).X(null,null,!1,null,null))};h.remove=function(a){return new ob(this.Ka,this.ba.remove(a,this.Ka).X(null,null,!1,null,null))};h.get=function(a){for(var b,c=this.ba;!c.e();){b=this.Ka(a,c.key);if(0===b)return c.value;0>b?c=c.left:0c?d=d.left:0e)a=this.ie?a.left:a.right;else if(0===e){this.Oa.push(a);break}else this.Oa.push(a),a=this.ie?a.right:a.left} +function D(a){if(0===a.Oa.length)return null;var b=a.Oa.pop(),c;c=a.Fd?a.Fd(b.key,b.value):{key:b.key,value:b.value};if(a.ie)for(b=b.left;!b.e();)a.Oa.push(b),b=b.right;else for(b=b.right;!b.e();)a.Oa.push(b),b=b.left;return c}function sb(a){if(0===a.Oa.length)return null;var b;b=a.Oa;b=b[b.length-1];return a.Fd?a.Fd(b.key,b.value):{key:b.key,value:b.value}}function tb(a,b,c,d,e){this.key=a;this.value=b;this.color=null!=c?c:!0;this.left=null!=d?d:pb;this.right=null!=e?e:pb}h=tb.prototype; +h.X=function(a,b,c,d,e){return new tb(null!=a?a:this.key,null!=b?b:this.value,null!=c?c:this.color,null!=d?d:this.left,null!=e?e:this.right)};h.count=function(){return this.left.count()+1+this.right.count()};h.e=function(){return!1};h.ha=function(a){return this.left.ha(a)||a(this.key,this.value)||this.right.ha(a)};function ub(a){return a.left.e()?a:ub(a.left)}h.Dc=function(){return ub(this).key};h.cc=function(){return this.right.e()?this.key:this.right.cc()}; +h.Na=function(a,b,c){var d,e;e=this;d=c(a,e.key);e=0>d?e.X(null,null,null,e.left.Na(a,b,c),null):0===d?e.X(null,b,null,null,null):e.X(null,null,null,null,e.right.Na(a,b,c));return vb(e)};function wb(a){if(a.left.e())return pb;a.left.ea()||a.left.left.ea()||(a=xb(a));a=a.X(null,null,null,wb(a.left),null);return vb(a)} +h.remove=function(a,b){var c,d;c=this;if(0>b(a,c.key))c.left.e()||c.left.ea()||c.left.left.ea()||(c=xb(c)),c=c.X(null,null,null,c.left.remove(a,b),null);else{c.left.ea()&&(c=yb(c));c.right.e()||c.right.ea()||c.right.left.ea()||(c=zb(c),c.left.left.ea()&&(c=yb(c),c=zb(c)));if(0===b(a,c.key)){if(c.right.e())return pb;d=ub(c.right);c=c.X(d.key,d.value,null,null,wb(c.right))}c=c.X(null,null,null,null,c.right.remove(a,b))}return vb(c)};h.ea=function(){return this.color}; +function vb(a){a.right.ea()&&!a.left.ea()&&(a=Ab(a));a.left.ea()&&a.left.left.ea()&&(a=yb(a));a.left.ea()&&a.right.ea()&&(a=zb(a));return a}function xb(a){a=zb(a);a.right.left.ea()&&(a=a.X(null,null,null,null,yb(a.right)),a=Ab(a),a=zb(a));return a}function Ab(a){return a.right.X(null,null,a.color,a.X(null,null,!0,null,a.right.left),null)}function yb(a){return a.left.X(null,null,a.color,null,a.X(null,null,!0,a.left.right,null))} +function zb(a){return a.X(null,null,!a.color,a.left.X(null,null,!a.left.color,null,null),a.right.X(null,null,!a.right.color,null,null))}function Bb(){}h=Bb.prototype;h.X=function(){return this};h.Na=function(a,b){return new tb(a,b,null)};h.remove=function(){return this};h.count=function(){return 0};h.e=function(){return!0};h.ha=function(){return!1};h.Dc=function(){return null};h.cc=function(){return null};h.ea=function(){return!1};var pb=new Bb;function Cb(a,b){return a&&"object"===typeof a?(E(".sv"in a,"Unexpected leaf node or priority contents"),b[a[".sv"]]):a}function Db(a,b){var c=new Eb;Fb(a,new G(""),function(a,e){Gb(c,a,Hb(e,b))});return c}function Hb(a,b){var c=a.C().H(),c=Cb(c,b),d;if(a.J()){var e=Cb(a.Ca(),b);return e!==a.Ca()||c!==a.C().H()?new Ib(e,H(c)):a}d=a;c!==a.C().H()&&(d=d.fa(new Ib(c)));a.O(I,function(a,c){var e=Hb(c,b);e!==c&&(d=d.T(a,e))});return d};(function(){var a=process.version;if("v0.10.22"===a||"v0.10.23"===a||"v0.10.24"===a){var b=function(a,b,c){this.chunk=a;this.encoding=b;this.callback=c},c=function(a,c,d,e,l){c.objectMode||!1===c.decodeStrings||"string"!==typeof d||(d=new Buffer(d,e));Buffer.isBuffer(d)&&(e="buffer");var r=c.objectMode?1:d.length;c.length+=r;var y=c.lengthb?c=c.left:0c?d=d.left:0e)a=this.he?a.left:a.right;else if(0===e){this.Oa.push(a);break}else this.Oa.push(a),a=this.he?a.right:a.left} -function M(a){if(0===a.Oa.length)return null;var b=a.Oa.pop(),c;c=a.Fd?a.Fd(b.key,b.value):{key:b.key,value:b.value};if(a.he)for(b=b.left;!b.e();)a.Oa.push(b),b=b.right;else for(b=b.right;!b.e();)a.Oa.push(b),b=b.left;return c}function Wb(a){if(0===a.Oa.length)return null;var b;b=a.Oa;b=b[b.length-1];return a.Fd?a.Fd(b.key,b.value):{key:b.key,value:b.value}}function Xb(a,b,c,d,e){this.key=a;this.value=b;this.color=null!=c?c:!0;this.left=null!=d?d:Tb;this.right=null!=e?e:Tb}h=Xb.prototype; -h.X=function(a,b,c,d,e){return new Xb(null!=a?a:this.key,null!=b?b:this.value,null!=c?c:this.color,null!=d?d:this.left,null!=e?e:this.right)};h.count=function(){return this.left.count()+1+this.right.count()};h.e=function(){return!1};h.ha=function(a){return this.left.ha(a)||a(this.key,this.value)||this.right.ha(a)};function Yb(a){return a.left.e()?a:Yb(a.left)}h.Dc=function(){return Yb(this).key};h.cc=function(){return this.right.e()?this.key:this.right.cc()}; -h.Na=function(a,b,c){var d,e;e=this;d=c(a,e.key);e=0>d?e.X(null,null,null,e.left.Na(a,b,c),null):0===d?e.X(null,b,null,null,null):e.X(null,null,null,null,e.right.Na(a,b,c));return Zb(e)};function $b(a){if(a.left.e())return Tb;a.left.ea()||a.left.left.ea()||(a=ac(a));a=a.X(null,null,null,$b(a.left),null);return Zb(a)} -h.remove=function(a,b){var c,d;c=this;if(0>b(a,c.key))c.left.e()||c.left.ea()||c.left.left.ea()||(c=ac(c)),c=c.X(null,null,null,c.left.remove(a,b),null);else{c.left.ea()&&(c=bc(c));c.right.e()||c.right.ea()||c.right.left.ea()||(c=cc(c),c.left.left.ea()&&(c=bc(c),c=cc(c)));if(0===b(a,c.key)){if(c.right.e())return Tb;d=Yb(c.right);c=c.X(d.key,d.value,null,null,$b(c.right))}c=c.X(null,null,null,null,c.right.remove(a,b))}return Zb(c)};h.ea=function(){return this.color}; -function Zb(a){a.right.ea()&&!a.left.ea()&&(a=dc(a));a.left.ea()&&a.left.left.ea()&&(a=bc(a));a.left.ea()&&a.right.ea()&&(a=cc(a));return a}function ac(a){a=cc(a);a.right.left.ea()&&(a=a.X(null,null,null,null,bc(a.right)),a=dc(a),a=cc(a));return a}function dc(a){return a.right.X(null,null,a.color,a.X(null,null,!0,null,a.right.left),null)}function bc(a){return a.left.X(null,null,a.color,null,a.X(null,null,!0,a.left.right,null))} -function cc(a){return a.X(null,null,!a.color,a.left.X(null,null,!a.left.color,null,null),a.right.X(null,null,!a.right.color,null,null))}function ec(){}h=ec.prototype;h.X=function(){return this};h.Na=function(a,b){return new Xb(a,b,null)};h.remove=function(){return this};h.count=function(){return 0};h.e=function(){return!0};h.ha=function(){return!1};h.Dc=function(){return null};h.cc=function(){return null};h.ea=function(){return!1};var Tb=new ec;var fc=function(){var a=1;return function(){return a++}}(),I=$a,gc=ab;function hc(a){try{return(new Buffer(a,"base64")).toString("utf8")}catch(b){C("base64Decode failed: ",b)}return null}function ic(a){var b=ib(a);a=new na;a.update(b);var b=[],c=8*a.Md;56>a.Yb?a.update(a.xd,56-a.Yb):a.update(a.xd,a.Va-(a.Yb-56));for(var d=a.Va-1;56<=d;d--)a.Sd[d]=c&255,c/=256;oa(a,a.Sd);for(d=c=0;5>d;d++)for(var e=24;0<=e;e-=8)b[c]=a.M[d]>>e&255,++c;return Za(b)} -function jc(a){for(var b="",c=0;c.firebaseio.com instead"); -c&&"undefined"!=c||pc("Cannot parse Firebase url. Please use https://.firebaseio.com");d||"undefined"!==typeof window&&window.location&&window.location.protocol&&-1!==window.location.protocol.indexOf("https:")&&N("Insecure Firebase access from a secure page. Please use https in calls to new Firebase().");return{gc:new Gb(b,d,c,"ws"===e||"wss"===e),path:new J(f)}}function rc(a){return ga(a)&&(a!=a||a==Number.POSITIVE_INFINITY||a==Number.NEGATIVE_INFINITY)}function sc(a){a()} -function ub(a,b){if(a===b)return 0;if("[MIN_NAME]"===a||"[MAX_NAME]"===b)return-1;if("[MIN_NAME]"===b||"[MAX_NAME]"===a)return 1;var c=tc(a),d=tc(b);return null!==c?null!==d?0==c-d?a.length-b.length:c-d:-1:null!==d?1:aa?c.push(a.substring(d,a.length)):c.push(a.substring(d,d+b));return c}function xc(a,b){if(ea(a))for(var c=0;ca,a=Math.abs(a),a>=Math.pow(2,-1022)?(d=Math.min(Math.floor(Math.log(a)/Math.LN2),1023),c=d+1023,d=Math.round(a*Math.pow(2,52-d)-Math.pow(2,52))):(c=0,d=Math.round(a/Math.pow(2,-1074))));e=[];for(a=52;a;--a)e.push(d%2?1:0),d=Math.floor(d/2);for(a=11;a;--a)e.push(c%2?1:0),c=Math.floor(c/2);e.push(b?1:0);e.reverse();b=e.join("");c="";for(a=0;64>a;a+=8)d=parseInt(b.substr(a,8),2).toString(16),1===d.length&& -(d="0"+d),c+=d;return c.toLowerCase()}var zc=/^-?\d{1,10}$/;function tc(a){return zc.test(a)&&(a=Number(a),-2147483648<=a&&2147483647>=a)?a:null}function Ac(a){try{a()}catch(b){setTimeout(function(){N("Exception was thrown by user callback.",b.stack||"");throw b;},Math.floor(0))}}function Bc(a,b,c){Object.defineProperty(a,b,{get:c})}function Cc(a,b){var c=setTimeout(a,b);"object"===typeof c&&c.unref&&c.unref();return c};function Dc(a){var b={},c={},d={},e="";try{var f=a.split("."),b=bb(hc(f[0])||""),c=bb(hc(f[1])||""),e=f[2],d=c.d||{};delete c.d}catch(g){}return{yg:b,Ge:c,data:d,og:e}}function Ec(a){a=Dc(a);var b=a.Ge;return!!a.og&&!!b&&"object"===typeof b&&b.hasOwnProperty("iat")}function Fc(a){a=Dc(a).Ge;return"object"===typeof a&&!0===y(a,"admin")};function Gc(a,b,c){this.type=Hc;this.source=a;this.path=b;this.children=c}Gc.prototype.Jc=function(a){if(this.path.e())return a=this.children.subtree(new J(a)),a.e()?null:a.value?new rb(this.source,D,a.value):new Gc(this.source,D,a);I(O(this.path)===a,"Can't get a merge for a child not on the path of the operation");return new Gc(this.source,E(this.path),this.children)};Gc.prototype.toString=function(){return"Operation("+this.path+": "+this.source.toString()+" merge: "+this.children.toString()+")"};function Ic(a,b,c){this.f=nc("p:rest:");this.L=a;this.Eb=b;this.Xc=c;this.$={}}function Jc(a,b){if(n(b))return"tag$"+b;I(Kc(a.m),"should have a tag if it's not a default query.");return a.path.toString()}h=Ic.prototype; -h.Xe=function(a,b,c,d){var e=a.path.toString();this.f("Listen called for "+e+" "+a.ja());var f=Jc(a,c),g={};this.$[f]=g;a=Lc(a.m);var k=this;Mc(this,e+".json",a,function(a,b){var r=b;404===a&&(a=r=null);null===a&&k.Eb(e,r,!1,c);y(k.$,f)===g&&d(a?401==a?"permission_denied":"rest_error:"+a:"ok",null)})};h.tf=function(a,b){var c=Jc(a,b);delete this.$[c]};h.hf=function(){};h.oe=function(){};h.bf=function(){};h.vd=function(){};h.put=function(){};h.Ye=function(){};h.ve=function(){}; -function Mc(a,b,c,d){c=c||{};c.format="export";a.Xc.getToken(!1).then(function(e){(e=e&&e.accessToken)&&(c.auth=e);var f=(a.L.Pc?"https://":"http://")+a.L.host+b+"?"+kb(c);a.f("Sending REST request for "+f);var g=new XMLHttpRequest;g.onreadystatechange=function(){if(d&&4===g.readyState){a.f("REST Response for "+f+" received. status:",g.status,"response:",g.responseText);var b=null;if(200<=g.status&&300>g.status){try{b=bb(g.responseText)}catch(c){N("Failed to parse JSON response for "+f+": "+g.responseText)}d(null, -b)}else 401!==g.status&&404!==g.status&&N("Got unsuccessful REST response for "+f+" Status: "+g.status),d(g.status);d=null}};g.open("GET",f,!0);g.send()})};function Nc(){}var Oc={};function Pc(a){return q(a.compare,a)}Nc.prototype.kd=function(a,b){return 0!==this.compare(new G("[MIN_NAME]",a),new G("[MIN_NAME]",b))};Nc.prototype.Ec=function(){return Qc};function Rc(a){I(!a.e()&&".priority"!==O(a),"Can't create PathIndex with empty path or .priority key");this.$b=a}la(Rc,Nc);h=Rc.prototype;h.uc=function(a){return!a.P(this.$b).e()};h.compare=function(a,b){var c=a.R.P(this.$b),d=b.R.P(this.$b),c=c.pc(d);return 0===c?ub(a.name,b.name):c}; -h.Bc=function(a,b){var c=K(a),c=H.F(this.$b,c);return new G(b,c)};h.Cc=function(){var a=H.F(this.$b,Sc);return new G("[MAX_NAME]",a)};h.toString=function(){return this.$b.slice().join("/")};function Tc(){}la(Tc,Nc);h=Tc.prototype;h.compare=function(a,b){var c=a.R.C(),d=b.R.C(),c=c.pc(d);return 0===c?ub(a.name,b.name):c};h.uc=function(a){return!a.C().e()};h.kd=function(a,b){return!a.C().Z(b.C())};h.Ec=function(){return Qc};h.Cc=function(){return new G("[MAX_NAME]",new Rb("[PRIORITY-POST]",Sc))}; -h.Bc=function(a,b){var c=K(a);return new G(b,new Rb("[PRIORITY-POST]",c))};h.toString=function(){return".priority"};var L=new Tc;function Uc(){}la(Uc,Nc);h=Uc.prototype;h.compare=function(a,b){return ub(a.name,b.name)};h.uc=function(){throw gc("KeyIndex.isDefinedOn not expected to be called.");};h.kd=function(){return!1};h.Ec=function(){return Qc};h.Cc=function(){return new G("[MAX_NAME]",H)};h.Bc=function(a){I(p(a),"KeyIndex indexValue must always be a string.");return new G(a,H)};h.toString=function(){return".key"}; -var Vc=new Uc;function Wc(){}la(Wc,Nc);h=Wc.prototype;h.compare=function(a,b){var c=a.R.pc(b.R);return 0===c?ub(a.name,b.name):c};h.uc=function(){return!0};h.kd=function(a,b){return!a.Z(b)};h.Ec=function(){return Qc};h.Cc=function(){return Xc};h.Bc=function(a,b){var c=K(a);return new G(b,c)};h.toString=function(){return".value"};var Yc=new Wc;function Zc(a,b){this.ld=a;this.ac=b}Zc.prototype.get=function(a){var b=y(this.ld,a);if(!b)throw Error("No index defined for "+a);return b===Oc?null:b};function $c(a,b,c){var d=va(a.ld,function(d,f){var g=y(a.ac,f);I(g,"Missing index implementation for "+f);if(d===Oc){if(g.uc(b.R)){for(var k=[],m=c.Ub(wb),l=M(m);l;)l.name!=b.name&&k.push(l),l=M(m);k.push(b);return bd(k,Pc(g))}return Oc}g=c.get(b.name);k=d;g&&(k=k.remove(new G(b.name,g)));return k.Na(b,b.R)});return new Zc(d,a.ac)} -function cd(a,b,c){var d=va(a.ld,function(a){if(a===Oc)return a;var d=c.get(b.name);return d?a.remove(new G(b.name,d)):a});return new Zc(d,a.ac)}var dd=new Zc({".priority":Oc},{".priority":L});function Rb(a,b){this.B=a;I(n(this.B)&&null!==this.B,"LeafNode shouldn't be created with null/undefined value.");this.aa=b||H;ed(this.aa);this.Bb=null}var fd=["object","boolean","number","string"];h=Rb.prototype;h.J=function(){return!0};h.C=function(){return this.aa};h.fa=function(a){return new Rb(this.B,a)};h.Q=function(a){return".priority"===a?this.aa:H};h.P=function(a){return a.e()?this:".priority"===O(a)?this.aa:H};h.Da=function(){return!1};h.Se=function(){return null}; -h.T=function(a,b){return".priority"===a?this.fa(b):b.e()&&".priority"!==a?this:H.T(a,b).fa(this.aa)};h.F=function(a,b){var c=O(a);if(null===c)return b;if(b.e()&&".priority"!==c)return this;I(".priority"!==c||1===gd(a),".priority must be the last token in a path");return this.T(c,H.F(E(a),b))};h.e=function(){return!1};h.Cb=function(){return 0};h.O=function(){return!1};h.H=function(a){return a&&!this.C().e()?{".value":this.Ca(),".priority":this.C().H()}:this.Ca()}; -h.hash=function(){if(null===this.Bb){var a="";this.aa.e()||(a+="priority:"+hd(this.aa.H())+":");var b=typeof this.B,a=a+(b+":"),a="number"===b?a+yc(this.B):a+this.B;this.Bb=ic(a)}return this.Bb};h.Ca=function(){return this.B};h.pc=function(a){if(a===H)return 1;if(a instanceof P)return-1;I(a.J(),"Unknown node type");var b=typeof a.B,c=typeof this.B,d=Ga(fd,b),e=Ga(fd,c);I(0<=d,"Unknown leaf type: "+b);I(0<=e,"Unknown leaf type: "+c);return d===e?"object"===c?0:this.Bb.compare(d,a);)M(c),d=Wb(c);return c};h.Te=function(a){return this.Xb(a.Cc(),a)};h.Xb=function(a,b){var c=jd(this,b);if(c)return c.Xb(a,function(a){return a});for(var c=this.k.Xb(a.name,wb),d=Wb(c);null!=d&&0f;f++)b[f]=Math.floor(64*Math.random());for(f=0;12>f;f++)c+="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".charAt(b[f]);I(20===c.length,"nextPushId: Length should be 20."); -return c}}();function J(a,b){if(1==arguments.length){this.o=a.split("/");for(var c=0,d=0;d=a.o.length?null:a.o[a.Y]}function gd(a){return a.o.length-a.Y}function E(a){var b=a.Y;b=this.o.length)return null;for(var a=[],b=this.Y;b=this.o.length};h.Z=function(a){if(gd(this)!==gd(a))return!1;for(var b=this.Y,c=a.Y;b<=this.o.length;b++,c++)if(this.o[b]!==a.o[c])return!1;return!0}; -h.contains=function(a){var b=this.Y,c=a.Y;if(gd(this)>gd(a))return!1;for(;b10485760/3&&10485760=a)throw Error("Query.limitToFirst: First argument must be a positive integer.");if(this.m.xa)throw Error("Query.limitToFirst: Limit was already set (by another call to limit, limitToFirst, or limitToLast).");return new W(this.u,this.path,this.m.je(a),this.Kc)}; -h.ke=function(a){z("Query.limitToLast",1,1,arguments.length);if(!ga(a)||Math.floor(a)!==a||0>=a)throw Error("Query.limitToLast: First argument must be a positive integer.");if(this.m.xa)throw Error("Query.limitToLast: Limit was already set (by another call to limit, limitToFirst, or limitToLast).");return new W(this.u,this.path,this.m.ke(a),this.Kc)}; -h.bg=function(a){z("Query.orderByChild",1,1,arguments.length);if("$key"===a)throw Error('Query.orderByChild: "$key" is invalid. Use Query.orderByKey() instead.');if("$priority"===a)throw Error('Query.orderByChild: "$priority" is invalid. Use Query.orderByPriority() instead.');if("$value"===a)throw Error('Query.orderByChild: "$value" is invalid. Use Query.orderByValue() instead.');Ge("Query.orderByChild",a);tf(this,"Query.orderByChild");var b=new J(a);if(b.e())throw Error("Query.orderByChild: cannot pass in empty path. Use Query.orderByValue() instead."); -b=new Rc(b);b=wf(this.m,b);nf(b);return new W(this.u,this.path,b,!0)};h.cg=function(){z("Query.orderByKey",0,0,arguments.length);tf(this,"Query.orderByKey");var a=wf(this.m,Vc);nf(a);return new W(this.u,this.path,a,!0)};h.dg=function(){z("Query.orderByPriority",0,0,arguments.length);tf(this,"Query.orderByPriority");var a=wf(this.m,L);nf(a);return new W(this.u,this.path,a,!0)}; -h.eg=function(){z("Query.orderByValue",0,0,arguments.length);tf(this,"Query.orderByValue");var a=wf(this.m,Yc);nf(a);return new W(this.u,this.path,a,!0)};h.Kd=function(a,b){z("Query.startAt",0,2,arguments.length);ze("Query.startAt",a,this.path,!0);Fe("Query.startAt",b);var c=this.m.Kd(a,b);sf(c);nf(c);if(this.m.ka)throw Error("Query.startAt: Starting point was already set (by another call to startAt or equalTo).");n(a)||(b=a=null);return new W(this.u,this.path,c,this.Kc)}; -h.dd=function(a,b){z("Query.endAt",0,2,arguments.length);ze("Query.endAt",a,this.path,!0);Fe("Query.endAt",b);var c=this.m.dd(a,b);sf(c);nf(c);if(this.m.na)throw Error("Query.endAt: Ending point was already set (by another call to endAt or equalTo).");return new W(this.u,this.path,c,this.Kc)}; -h.Jf=function(a,b){z("Query.equalTo",1,2,arguments.length);ze("Query.equalTo",a,this.path,!1);Fe("Query.equalTo",b);if(this.m.ka)throw Error("Query.equalTo: Starting point was already set (by another call to endAt or equalTo).");if(this.m.na)throw Error("Query.equalTo: Ending point was already set (by another call to endAt or equalTo).");return this.Kd(a,b).dd(a,b)}; -h.toString=function(){z("Query.toString",0,0,arguments.length);for(var a=this.path,b="",c=a.Y;c=this.g.compare(this.Rc,a)&&0>=this.g.compare(a,this.sc)};h.F=function(a,b,c,d,e,f){this.matches(new G(b,c))||(c=H);return this.de.F(a,b,c,d,e,f)}; -h.ya=function(a,b,c){b.J()&&(b=H);var d=b.lb(this.g),d=d.fa(H),e=this;b.O(L,function(a,b){e.matches(new G(a,b))||(d=d.T(a,H))});return this.de.ya(a,d,c)};h.fa=function(a){return a};h.Ma=function(){return!0};h.Sb=function(){return this.de};function Af(a){this.sa=new zf(a);this.g=a.g;I(a.xa,"Only valid if limit has been set");this.oa=a.oa;this.Gb=!Bf(a)}h=Af.prototype;h.F=function(a,b,c,d,e,f){this.sa.matches(new G(b,c))||(c=H);return a.Q(b).Z(c)?a:a.Cb()=this.g.compare(this.sa.Rc,f):0>=this.g.compare(f,this.sa.sc))d=d.T(f.name,f.R),e++;else break}}else{d=b.lb(this.g);d=d.fa(H);var k,m,l;if(this.Gb){b=d.Te(this.g);k=this.sa.sc;m=this.sa.Rc;var r=Pc(this.g);l=function(a,b){return r(b,a)}}else b=d.Ub(this.g),k=this.sa.Rc, -m=this.sa.sc,l=Pc(this.g);for(var e=0,x=!1;0=l(k,f)&&(x=!0),(g=x&&e=l(f,m))?e++:d=d.T(f.name,H)}return this.sa.Sb().ya(a,d,c)};h.fa=function(a){return a};h.Ma=function(){return!0};h.Sb=function(){return this.sa.Sb()}; -function Cf(a,b,c,d,e,f){var g;if(a.Gb){var k=Pc(a.g);g=function(a,b){return k(b,a)}}else g=Pc(a.g);I(b.Cb()==a.oa,"");var m=new G(c,d),l=a.Gb?kd(b,a.g):ld(b,a.g),r=a.sa.matches(m);if(b.Da(c)){for(var x=b.Q(c),l=e.be(a.g,l,a.Gb);null!=l&&(l.name==c||b.Da(l.name));)l=e.be(a.g,l,a.Gb);e=null==l?1:g(l,m);if(r&&!d.e()&&0<=e)return null!=f&&Ue(f,new V("child_changed",d,c,x)),b.T(c,d);null!=f&&Ue(f,new V("child_removed",x,c));b=b.T(c,H);return null!=l&&a.sa.matches(l)?(null!=f&&Ue(f,new V("child_added", -l.R,l.name)),b.T(l.name,l.R)):b}return d.e()?b:r&&0<=g(l,m)?(null!=f&&(Ue(f,new V("child_removed",l.R,l.name)),Ue(f,new V("child_added",d,c))),b.T(c,d).T(l.name,H)):b};function Df(){this.Pb=this.na=this.Ib=this.ka=this.xa=!1;this.oa=0;this.kb="";this.bc=null;this.xb="";this.Zb=null;this.vb="";this.g=L}var Ef=new Df;function Bf(a){return""===a.kb?a.ka:"l"===a.kb}function of(a){I(a.ka,"Only valid if start has been set");return a.bc}function qf(a){I(a.ka,"Only valid if start has been set");return a.Ib?a.xb:"[MIN_NAME]"}function pf(a){I(a.na,"Only valid if end has been set");return a.Zb} -function rf(a){I(a.na,"Only valid if end has been set");return a.Pb?a.vb:"[MAX_NAME]"}function Ff(a){var b=new Df;b.xa=a.xa;b.oa=a.oa;b.ka=a.ka;b.bc=a.bc;b.Ib=a.Ib;b.xb=a.xb;b.na=a.na;b.Zb=a.Zb;b.Pb=a.Pb;b.vb=a.vb;b.g=a.g;b.kb=a.kb;return b}h=Df.prototype;h.je=function(a){var b=Ff(this);b.xa=!0;b.oa=a;b.kb="l";return b};h.ke=function(a){var b=Ff(this);b.xa=!0;b.oa=a;b.kb="r";return b};h.Kd=function(a,b){var c=Ff(this);c.ka=!0;n(a)||(a=null);c.bc=a;null!=b?(c.Ib=!0,c.xb=b):(c.Ib=!1,c.xb="");return c}; -h.dd=function(a,b){var c=Ff(this);c.na=!0;n(a)||(a=null);c.Zb=a;n(b)?(c.Pb=!0,c.vb=b):(c.Ag=!1,c.vb="");return c};function wf(a,b){var c=Ff(a);c.g=b;return c}function xf(a){var b={};a.ka&&(b.sp=a.bc,a.Ib&&(b.sn=a.xb));a.na&&(b.ep=a.Zb,a.Pb&&(b.en=a.vb));if(a.xa){b.l=a.oa;var c=a.kb;""===c&&(c=Bf(a)?"l":"r");b.vf=c}a.g!==L&&(b.i=a.g.toString());return b}function X(a){return!(a.ka||a.na||a.xa)}function Kc(a){return X(a)&&a.g==L} -function Lc(a){var b={};if(Kc(a))return b;var c;a.g===L?c="$priority":a.g===Yc?c="$value":a.g===Vc?c="$key":(I(a.g instanceof Rc,"Unrecognized index type!"),c=a.g.toString());b.orderBy=w(c);a.ka&&(b.startAt=w(a.bc),a.Ib&&(b.startAt+=","+w(a.xb)));a.na&&(b.endAt=w(a.Zb),a.Pb&&(b.endAt+=","+w(a.vb)));a.xa&&(Bf(a)?b.limitToFirst=a.oa:b.limitToLast=a.oa);return b}h.toString=function(){return w(xf(this))};function Gf(a,b){this.N=a;this.Id=b}function Hf(a,b,c,d){return new Gf(new Me(b,c,d),a.Id)}function If(a){return a.N.da?a.N.j():null}Gf.prototype.w=function(){return this.Id};function Ye(a){return a.Id.da?a.Id.j():null};function Jf(a,b){this.Od=a;this.Cf=b}function Kf(a){this.U=a} -Kf.prototype.bb=function(a,b,c,d){var e=new Te,f;if(b.type===sb)b.source.ae?c=Lf(this,a,b.path,b.Fa,c,d,e):(I(b.source.Pe,"Unknown source."),f=b.source.Be||Oe(a.w())&&!b.path.e(),c=Mf(this,a,b.path,b.Fa,c,d,f,e));else if(b.type===Hc)b.source.ae?c=Nf(this,a,b.path,b.children,c,d,e):(I(b.source.Pe,"Unknown source."),f=b.source.Be||Oe(a.w()),c=Of(this,a,b.path,b.children,c,d,f,e));else if(b.type===ke)if(b.Gd)if(b=b.path,null!=c.ic(b))c=a;else{f=new Xe(c,a,d);d=a.N.j();if(b.e()||".priority"===O(b))Ne(a.w())? -b=c.Aa(Ye(a)):(b=a.w().j(),I(b instanceof P,"serverChildren would be complete if leaf node"),b=c.oc(b)),b=this.U.ya(d,b,e);else{var g=O(b),k=c.nc(g,a.w());null==k&&Qe(a.w(),g)&&(k=d.Q(g));b=null!=k?this.U.F(d,g,k,E(b),f,e):a.N.j().Da(g)?this.U.F(d,g,H,E(b),f,e):d;b.e()&&Ne(a.w())&&(d=c.Aa(Ye(a)),d.J()&&(b=this.U.ya(b,d,e)))}d=Ne(a.w())||null!=c.ic(D);c=Hf(a,b,d,this.U.Ma())}else c=Pf(this,a,b.path,b.Mb,c,d,e);else if(b.type===qb)d=b.path,b=a.w(),f=b.j(),g=b.da||d.e(),c=Qf(this,new Gf(a.N,new Me(f, -g,b.Qb)),d,c,We,e);else throw gc("Unknown operation type: "+b.type);e=za(e.eb);d=c;b=d.N;b.da&&(f=b.j().J()||b.j().e(),g=If(a),(0=b&&bg(g,c.path)?d=!1:c.path.contains(g.path)&&(e=!0));f--}if(d){if(e)this.S=cg(this.la,dg,D),this.yc=0f.yc,"Stacking an older write on top of newer ones");n(g)||(g=!0);f.la.push({path:b,Fa:c,Wc:d,visible:g});g&&(f.S=de(f.S,b,c));f.yc=d;return e?hg(a,new rb(le,b,c)):[]}function ig(a,b,c,d){var e=a.hb;I(d>e.yc,"Stacking an older merge on top of newer ones");e.la.push({path:b,children:c,Wc:d,visible:!0});e.S=ee(e.S,b,c);e.yc=d;c=Pd(c);return hg(a,new Gc(le,b,c))} -function jg(a,b,c){c=c||!1;var d=ag(a.hb,b);if(a.hb.Cd(b)){var e=S;null!=d.Fa?e=e.set(D,!0):db(d.children,function(a,b){e=e.set(new J(a),b)});return hg(a,new je(d.path,e,c))}return[]}function kg(a,b,c){c=Pd(c);return hg(a,new Gc(ne,b,c))}function lg(a,b,c,d){d=mg(a,d);if(null!=d){var e=ng(d);d=e.path;e=e.Fb;b=Q(d,b);c=new rb(new me(!1,!0,e,!0),b,c);return og(a,d,c)}return[]} -function pg(a,b,c,d){if(d=mg(a,d)){var e=ng(d);d=e.path;e=e.Fb;b=Q(d,b);c=Pd(c);c=new Gc(new me(!1,!0,e,!0),b,c);return og(a,d,c)}return[]} -fg.prototype.Lb=function(a,b){var c=a.path,d=null,e=!1;Xd(this.wa,c,function(a,b){var f=Q(a,c);d=d||b.fb(f);e=e||null!=Xf(b)});var f=this.wa.get(c);f?(e=e||null!=Xf(f),d=d||f.fb(D)):(f=new Wf,this.wa=this.wa.set(c,f));var g;null!=d?g=!0:(g=!1,d=H,ae(this.wa.subtree(c),function(a,b){var c=b.fb(D);c&&(d=d.T(a,c))}));var k=null!=Zf(f,a);if(!k&&!X(a.m)){var m=qg(a);I(!(m in this.fc),"View does not exist, but we have a tag");var l=rg++;this.fc[m]=l;this.Ae["_"+l]=m}g=f.Lb(a,b,new eg(c,this.hb),d,g);k|| -e||(f=Zf(f,a),g=g.concat(sg(this,a,f)));return g}; -fg.prototype.ib=function(a,b,c){var d=a.path,e=this.wa.get(d),f=[];if(e&&("default"===a.ja()||null!=Zf(e,a))){f=e.ib(a,b,c);e.e()&&(this.wa=this.wa.remove(d));e=f.jg;f=f.Mf;b=-1!==Na(e,function(a){return X(a.m)});var g=Vd(this.wa,d,function(a,b){return null!=Xf(b)});if(b&&!g&&(d=this.wa.subtree(d),!d.e()))for(var d=tg(d),k=0;k=a.Nc[0].Le.length+30+c.length){var e=a.Nc.shift(),c=c+"&seg"+d+"="+e.lg+"&ts"+d+"="+e.rg+"&d"+d+"="+e.Le;d++}else break;Ng(a,b+c,a.Xd);return!0}return!1}function Ng(a,b,c){function d(){a.se.remove(c);Lg(a)}a.se.add(c,1);var e=setTimeout(d,Math.floor(25E3));Kg(a,b,function(){clearTimeout(e);d()})}function Kg(a,b,c){a.Hf(b,c)}var Og=null; -function Mg(a,b){Og||(Og=require("request"));Og(a,function(c,d,e){if(c)throw"Rest request for "+a.url+" failed.";b&&b(e)})}Ig.prototype.Hf=function(a,b){var c=this;Mg({url:a,xg:!0},function(a){c.Kf(a);b()})};Ig.prototype.Kf=function(a){eval("var jsonpCB = function(pLPCommand, pRTLPCB) {"+a+"}");jsonpCB(this.Ef,this.Yf)};var Pg=null,Pg=require("faye-websocket").Client;function Qg(a,b,c,d){this.Vd=a;this.f=nc(this.Vd);this.frames=this.wc=null;this.nb=this.ob=this.Ce=0;this.Ua=td(b);a={v:"5"};c&&(a.s=c);d&&(a.ls=d);this.Wd=Ib(b,Jb,a)}var Rg; -Qg.prototype.open=function(a,b){this.gb=b;this.Xf=a;this.f("Websocket connecting to "+this.Wd);this.tc=!1;Eb.set("previous_websocket_failure",!0);try{var c={headers:{"User-Agent":"Firebase/5/"+firebase.SDK_VERSION+"/"+process.platform+"/AdminNode"}},d=process.env,e=0==this.Wd.indexOf("wss://")?d.HTTPS_PROXY||d.https_proxy:d.HTTP_PROXY||d.http_proxy;e&&(c.proxy={origin:e});this.Ha=new Pg(this.Wd,[],c)}catch(f){this.f("Error instantiating WebSocket.");(c=f.message||f.data)&&this.f(c);this.ab();return}var g= -this;this.Ha.onopen=function(){g.f("Websocket connected.");g.tc=!0};this.Ha.onclose=function(){g.f("Websocket connection was disconnected.");g.Ha=null;g.ab()};this.Ha.onmessage=function(a){if(null!==g.Ha)if(a=a.data,g.nb+=a.length,zb(g.Ua,"bytes_received",a.length),Sg(g),null!==g.frames)Tg(g,a);else{a:{I(null===g.frames,"We already have a frame buffer");if(6>=a.length){var b=Number(a);if(!isNaN(b)){g.Ce=b;g.frames=[];a=null;break a}}g.Ce=1;g.frames=[]}null!==a&&Tg(g,a)}};this.Ha.onerror=function(a){g.f("WebSocket error. Closing connection."); -(a=a.message||a.data)&&g.f(a);g.ab()}};Qg.prototype.start=function(){};Qg.isAvailable=function(){var a=!1;if("undefined"!==typeof navigator&&navigator.userAgent){var b=navigator.userAgent.match(/Android ([0-9]{0,}\.[0-9]{0,})/);b&&1parseFloat(b[1])&&(a=!0)}return!a&&null!==Pg&&!Rg};Qg.responsesRequiredToBeHealthy=2;Qg.healthyTimeout=3E4;h=Qg.prototype;h.pd=function(){Eb.remove("previous_websocket_failure")}; -function Tg(a,b){a.frames.push(b);if(a.frames.length==a.Ce){var c=a.frames.join("");a.frames=null;c=bb(c);a.Xf(c)}}h.send=function(a){Sg(this);a=w(a);this.ob+=a.length;zb(this.Ua,"bytes_sent",a.length);a=wc(a,16384);1=a.nf?(a.f("Secondary connection is healthy."),a.zb=!0,a.D.pd(),a.D.start(),a.f("sending client ack on secondary"),a.D.send({t:"c",d:{t:"a",d:{}}}),a.f("Ending transmission on primary"),a.I.send({t:"c",d:{t:"n",d:{}}}),a.Uc=a.D,eh(a)):(a.f("sending ping on secondary."),a.D.send({t:"c",d:{t:"p",d:{}}}))}Zg.prototype.ud=function(a){gh(this);this.qe(a)};function gh(a){a.zb||(a.ue--,0>=a.ue&&(a.f("Primary connection is healthy."),a.zb=!0,a.I.pd()))} -function dh(a,b){a.D=new b("c:"+a.id+":"+a.He++,a.L,a.pf);a.nf=b.responsesRequiredToBeHealthy||0;a.D.open(ah(a,a.D),bh(a,a.D));Cc(function(){a.D&&(a.f("Timed out trying to upgrade."),a.D.close())},Math.floor(6E4))}function ch(a,b,c){a.f("Realtime connection established.");a.I=b;a.Ta=1;a.Ic&&(a.Ic(c,a.pf),a.Ic=null);0===a.ue?(a.f("Primary connection is healthy."),a.zb=!0):Cc(function(){hh(a)},Math.floor(5E3))} -function hh(a){a.zb||1!==a.Ta||(a.f("sending ping on primary."),jh(a,{t:"c",d:{t:"p",d:{}}}))}function jh(a,b){if(1!==a.Ta)throw"Connection is not connected";a.Uc.send(b)}Zg.prototype.close=function(){2!==this.Ta&&(this.f("Closing realtime connection."),this.Ta=2,fh(this),this.ia&&(this.ia(),this.ia=null))};function fh(a){a.f("Shutting down all connections");a.I&&(a.I.close(),a.I=null);a.D&&(a.D.close(),a.D=null);a.jd&&(clearTimeout(a.jd),a.jd=null)};function kh(a,b,c,d,e,f){this.id=lh++;this.f=nc("p:"+this.id+":");this.nd={};this.$={};this.pa=[];this.Lc=0;this.Hc=[];this.ma=!1;this.Ra=1E3;this.qd=3E5;this.Eb=b;this.Gc=c;this.re=d;this.L=a;this.mb=this.Ea=this.Ab=this.we=null;this.Xc=e;this.$d=!1;this.ge=0;this.Rd=f;this.sb=null;this.Kb=!1;this.Ed={};this.kg=0;this.Oe=!0;this.xc=this.ie=null;mh(this,0);Le.Tb().dc("visible",this.$f,this);-1===a.host.indexOf("fblocal")&&Bg.Tb().dc("online",this.Zf,this)}var lh=0,nh=0;h=kh.prototype; -h.ua=function(a,b,c){var d=++this.kg;a={r:d,a:a,b:b};this.f(w(a));I(this.ma,"sendRequest call when we're not connected not allowed.");this.Ea.ua(a);c&&(this.Ed[d]=c)};h.Xe=function(a,b,c,d){var e=a.ja(),f=a.path.toString();this.f("Listen called for "+f+" "+e);this.$[f]=this.$[f]||{};I(Kc(a.m)||!X(a.m),"listen() called for non-default but complete query");I(!this.$[f][e],"listen() called twice for same path/queryId.");a={G:d,hd:b,gg:a,tag:c};this.$[f][e]=a;this.ma&&oh(this,a)}; -function oh(a,b){var c=b.gg,d=c.path.toString(),e=c.ja();a.f("Listen on "+d+" for "+e);var f={p:d};b.tag&&(f.q=xf(c.m),f.t=b.tag);f.h=b.hd();a.ua("q",f,function(f){var k=f.d,m=f.s;if(k&&"object"===typeof k&&cb(k,"w")){var l=y(k,"w");ea(l)&&0<=Ga(l,"no_index")&&N("Using an unspecified index. Consider adding "+('".indexOn": "'+c.m.g.toString()+'"')+" at "+c.path.toString()+" to your security rules for better performance")}(a.$[d]&&a.$[d][e])===b&&(a.f("listen response",f),"ok"!==m&&ph(a,d,e),b.G&&b.G(m, -k))})}h.hf=function(a){this.mb=a;this.f("Auth token refreshed");this.mb?qh(this):this.ma&&this.ua("unauth",{},function(){});if(a&&40===a.length||Fc(a))this.f("Admin auth credential detected. Reducing max reconnect time."),this.qd=3E4};function qh(a){if(a.ma&&a.mb){var b=a.mb,c=Ec(b)?"auth":"gauth",d={cred:b};null===a.Rd?d.noauth=!0:"object"===typeof a.Rd&&(d.authvar=a.Rd);a.ua(c,d,function(c){var d=c.s;c=c.d||"error";a.mb===b&&("ok"===d?a.ge=0:rh(a,d,c))})}} -h.tf=function(a,b){var c=a.path.toString(),d=a.ja();this.f("Unlisten called for "+c+" "+d);I(Kc(a.m)||!X(a.m),"unlisten() called for non-default but complete query");if(ph(this,c,d)&&this.ma){var e=xf(a.m);this.f("Unlisten on "+c+" for "+d);c={p:c};b&&(c.q=e,c.t=b);this.ua("n",c)}};h.oe=function(a,b,c){this.ma?sh(this,"o",a,b,c):this.Hc.push({te:a,action:"o",data:b,G:c})};h.bf=function(a,b,c){this.ma?sh(this,"om",a,b,c):this.Hc.push({te:a,action:"om",data:b,G:c})}; -h.vd=function(a,b){this.ma?sh(this,"oc",a,null,b):this.Hc.push({te:a,action:"oc",data:null,G:b})};function sh(a,b,c,d,e){c={p:c,d:d};a.f("onDisconnect "+b,c);a.ua(b,c,function(a){e&&setTimeout(function(){e(a.s,a.d)},Math.floor(0))})}h.put=function(a,b,c,d){th(this,"p",a,b,c,d)};h.Ye=function(a,b,c,d){th(this,"m",a,b,c,d)};function th(a,b,c,d,e,f){d={p:c,d:d};n(f)&&(d.h=f);a.pa.push({action:b,kf:d,G:e});a.Lc++;b=a.pa.length-1;a.ma?uh(a,b):a.f("Buffering put: "+c)} -function uh(a,b){var c=a.pa[b].action,d=a.pa[b].kf,e=a.pa[b].G;a.pa[b].hg=a.ma;a.ua(c,d,function(d){a.f(c+" response",d);delete a.pa[b];a.Lc--;0===a.Lc&&(a.pa=[]);e&&e(d.s,d.d)})}h.ve=function(a){this.ma&&(a={c:a},this.f("reportStats",a),this.ua("s",a,function(a){"ok"!==a.s&&this.f("reportStats","Error sending stats: "+a.d)}))}; -h.ud=function(a){if("r"in a){this.f("from server: "+w(a));var b=a.r,c=this.Ed[b];c&&(delete this.Ed[b],c(a.b))}else{if("error"in a)throw"A server-side error has occurred: "+a.error;"a"in a&&(b=a.a,a=a.b,this.f("handleServerMessage",b,a),"d"===b?this.Eb(a.p,a.d,!1,a.t):"m"===b?this.Eb(a.p,a.d,!0,a.t):"c"===b?vh(this,a.p,a.q):"ac"===b?rh(this,a.s,a.d):"sd"===b?this.we?this.we(a):"msg"in a&&"undefined"!==typeof console&&console.log("FIREBASE: "+a.msg.replace("\n","\nFIREBASE: ")):oc("Unrecognized action received from server: "+ -w(b)+"\nAre you using the latest client?"))}};h.Ic=function(a,b){this.f("connection ready");this.ma=!0;this.xc=(new Date).getTime();this.re({serverTimeOffset:a-(new Date).getTime()});this.Ab=b;if(this.Oe){var c={};c["sdk.admin_node."+firebase.SDK_VERSION.replace(/\./g,"-")]=1;Ag()?c["framework.cordova"]=1:"object"===typeof navigator&&"ReactNative"===navigator.product&&(c["framework.reactnative"]=1);this.ve(c)}wh(this);this.Oe=!1;this.Gc(!0)}; -function mh(a,b){I(!a.Ea,"Scheduling a connect when we're already connected/ing?");a.sb&&clearTimeout(a.sb);a.sb=setTimeout(function(){a.sb=null;xh(a)},Math.floor(b))}h.$f=function(a){a&&!this.Kb&&this.Ra===this.qd&&(this.f("Window became visible. Reducing delay."),this.Ra=1E3,this.Ea||mh(this,0));this.Kb=a};h.Zf=function(a){a?(this.f("Browser went online."),this.Ra=1E3,this.Ea||mh(this,0)):(this.f("Browser went offline. Killing connection."),this.Ea&&this.Ea.close())}; -h.cf=function(){this.f("data client disconnected");this.ma=!1;this.Ea=null;for(var a=0;a");return a};var Yb=function(){var a=1;return function(){return a++}}(),E=ib,Zb=jb;function $b(a){try{return(new Buffer(a,"base64")).toString("utf8")}catch(b){C("base64Decode failed: ",b)}return null}function ac(a){var b=kb(a);a=new Ea;a.update(b);var b=[],c=8*a.Md;56>a.Yb?a.update(a.xd,56-a.Yb):a.update(a.xd,a.Va-(a.Yb-56));for(var d=a.Va-1;56<=d;d--)a.Sd[d]=c&255,c/=256;Fa(a,a.Sd);for(d=c=0;5>d;d++)for(var e=24;0<=e;e-=8)b[c]=a.M[d]>>e&255,++c;return Za(b)} +function bc(a){for(var b="",c=0;c.firebaseio.com instead"); +c&&"undefined"!=c||hc("Cannot parse Firebase url. Please use https://.firebaseio.com");d||"undefined"!==typeof window&&window.location&&window.location.protocol&&-1!==window.location.protocol.indexOf("https:")&&M("Insecure Firebase access from a secure page. Please use https in calls to new Firebase().");return{gc:new Tb(b,d,c,"ws"===e||"wss"===e),path:new G(f)}}function jc(a){return ga(a)&&(a!=a||a==Number.POSITIVE_INFINITY||a==Number.NEGATIVE_INFINITY)}function kc(a){a()} +function lc(a,b){if(a===b)return 0;if("[MIN_NAME]"===a||"[MAX_NAME]"===b)return-1;if("[MIN_NAME]"===b||"[MAX_NAME]"===a)return 1;var c=mc(a),d=mc(b);return null!==c?null!==d?0==c-d?a.length-b.length:c-d:-1:null!==d?1:aa?c.push(a.substring(d,a.length)):c.push(a.substring(d,d+b));return c}function qc(a,b){if(ea(a))for(var c=0;ca,a=Math.abs(a),a>=Math.pow(2,-1022)?(d=Math.min(Math.floor(Math.log(a)/Math.LN2),1023),c=d+1023,d=Math.round(a*Math.pow(2,52-d)-Math.pow(2,52))):(c=0,d=Math.round(a/Math.pow(2,-1074))));e=[];for(a=52;a;--a)e.push(d%2?1:0),d=Math.floor(d/2);for(a=11;a;--a)e.push(c%2?1:0),c=Math.floor(c/2);e.push(b?1:0);e.reverse();b=e.join("");c="";for(a=0;64>a;a+=8)d=parseInt(b.substr(a,8),2).toString(16),1===d.length&& +(d="0"+d),c+=d;return c.toLowerCase()}var sc=/^-?\d{1,10}$/;function mc(a){return sc.test(a)&&(a=Number(a),-2147483648<=a&&2147483647>=a)?a:null}function tc(a){try{a()}catch(b){setTimeout(function(){M("Exception was thrown by user callback.",b.stack||"");throw b;},Math.floor(0))}}function uc(a,b,c){Object.defineProperty(a,b,{get:c})}function vc(a,b){var c=setTimeout(a,b);"object"===typeof c&&c.unref&&c.unref();return c};function wc(a){var b={},c={},d={},e="";try{var f=a.split("."),b=eb($b(f[0])||""),c=eb($b(f[1])||""),e=f[2],d=c.d||{};delete c.d}catch(g){}return{yg:b,He:c,data:d,og:e}}function xc(a){a=wc(a);var b=a.He;return!!a.og&&!!b&&"object"===typeof b&&b.hasOwnProperty("iat")}function yc(a){a=wc(a).He;return"object"===typeof a&&!0===B(a,"admin")};function G(a,b){if(1==arguments.length){this.o=a.split("/");for(var c=0,d=0;d=a.o.length?null:a.o[a.Y]}function Ac(a){return a.o.length-a.Y}function K(a){var b=a.Y;b=this.o.length)return null;for(var a=[],b=this.Y;b=this.o.length};h.Z=function(a){if(Ac(this)!==Ac(a))return!1;for(var b=this.Y,c=a.Y;b<=this.o.length;b++,c++)if(this.o[b]!==a.o[c])return!1;return!0}; +h.contains=function(a){var b=this.Y,c=a.Y;if(Ac(this)>Ac(a))return!1;for(;b10485760/3&&10485760f;f++)b[f]=Math.floor(64*Math.random());for(f=0;12>f;f++)c+="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".charAt(b[f]);E(20===c.length,"nextPushId: Length should be 20."); +return c}}();function vd(a,b,c){this.type=wd;this.source=xd;this.path=a;this.Mb=b;this.Gd=c}vd.prototype.Jc=function(a){if(this.path.e()){if(null!=this.Mb.value)return E(this.Mb.children.e(),"affectedTree should not have overlapping affected paths."),this;a=this.Mb.subtree(new G(a));return new vd(J,a,this.Gd)}E(O(this.path)===a,"operationForChild called for unrelated child.");return new vd(K(this.path),this.Mb,this.Gd)}; +vd.prototype.toString=function(){return"Operation("+this.path+": "+this.source.toString()+" ack write revert="+this.Gd+" affectedTree="+this.Mb+")"};function yd(a,b,c){this.type=zd;this.source=a;this.path=b;this.children=c}yd.prototype.Jc=function(a){if(this.path.e())return a=this.children.subtree(new G(a)),a.e()?null:a.value?new Lb(this.source,J,a.value):new yd(this.source,J,a);E(O(this.path)===a,"Can't get a merge for a child not on the path of the operation");return new yd(this.source,K(this.path),this.children)};yd.prototype.toString=function(){return"Operation("+this.path+": "+this.source.toString()+" merge: "+this.children.toString()+")"};var Mb=0,zd=1,wd=2,Kb=3;function Ad(a,b,c,d){this.be=a;this.Pe=b;this.Fb=c;this.Ce=d;E(!d||b,"Tagged queries must be from server.")}var xd=new Ad(!0,!1,null,!1),Bd=new Ad(!1,!0,null,!1);Ad.prototype.toString=function(){return this.be?"user":this.Ce?"server(queryID="+this.Fb+")":"server"};function Q(a,b,c,d){this.type=a;this.Ia=b;this.Wa=c;this.oe=d;this.Bd=void 0}function Cd(a){return new Q(Dd,a)}var Dd="value";function Ed(a,b,c){this.A=a;this.da=b;this.Qb=c}function Fd(a){return a.da}function Gd(a){return a.Qb}function Hd(a,b){return b.e()?a.da&&!a.Qb:Id(a,O(b))}function Id(a,b){return a.da&&!a.Qb||a.A.Da(b)}Ed.prototype.j=function(){return this.A};function Jd(){}Jd.prototype.Qe=function(){return null};Jd.prototype.ce=function(){return null};var Kd=new Jd;function Ld(a,b,c){this.wf=a;this.Ja=b;this.wd=c}Ld.prototype.Qe=function(a){var b=this.Ja.N;if(Id(b,a))return b.j().Q(a);b=null!=this.wd?new Ed(this.wd,!0,!1):this.Ja.w();return this.wf.nc(a,b)};Ld.prototype.ce=function(a,b,c){var d=null!=this.wd?this.wd:Md(this.Ja);a=this.wf.Td(d,b,1,c,a);return 0===a.length?null:a[0]};function Nd(a){this.g=a}h=Nd.prototype;h.F=function(a,b,c,d,e,f){E(a.vc(this.g),"A node must be indexed if only a child is updated");e=a.Q(b);if(e.P(d).Z(c.P(d))&&e.e()==c.e())return a;null!=f&&(c.e()?a.Da(b)?Od(f,new Q("child_removed",e,b)):E(a.J(),"A child remove without an old child only makes sense on a leaf node"):e.e()?Od(f,new Q("child_added",c,b)):Od(f,new Q("child_changed",c,b,e)));return a.J()&&c.e()?a:a.T(b,c).lb(this.g)}; +h.ya=function(a,b,c){null!=c&&(a.J()||a.O(I,function(a,e){b.Da(a)||Od(c,new Q("child_removed",e,a))}),b.J()||b.O(I,function(b,e){if(a.Da(b)){var f=a.Q(b);f.Z(e)||Od(c,new Q("child_changed",e,b,f))}else Od(c,new Q("child_added",e,b))}));return b.lb(this.g)};h.fa=function(a,b){return a.e()?L:a.fa(b)};h.Ma=function(){return!1};h.Sb=function(){return this};function Pd(a){this.ee=new Nd(a.g);this.g=a.g;var b;a.ka?(b=Qd(a),b=a.g.Bc(Rd(a),b)):b=a.g.Ec();this.Rc=b;a.na?(b=Sd(a),a=a.g.Bc(Td(a),b)):a=a.g.Cc();this.sc=a}h=Pd.prototype;h.matches=function(a){return 0>=this.g.compare(this.Rc,a)&&0>=this.g.compare(a,this.sc)};h.F=function(a,b,c,d,e,f){this.matches(new R(b,c))||(c=L);return this.ee.F(a,b,c,d,e,f)}; +h.ya=function(a,b,c){b.J()&&(b=L);var d=b.lb(this.g),d=d.fa(L),e=this;b.O(I,function(a,b){e.matches(new R(a,b))||(d=d.T(a,L))});return this.ee.ya(a,d,c)};h.fa=function(a){return a};h.Ma=function(){return!0};h.Sb=function(){return this.ee};function Ud(a,b){this.Od=a;this.Cf=b}function Vd(a){this.U=a} +Vd.prototype.bb=function(a,b,c,d){var e=new Wd,f;if(b.type===Mb)b.source.be?c=Xd(this,a,b.path,b.Fa,c,d,e):(E(b.source.Pe,"Unknown source."),f=b.source.Ce||Gd(a.w())&&!b.path.e(),c=Yd(this,a,b.path,b.Fa,c,d,f,e));else if(b.type===zd)b.source.be?c=Zd(this,a,b.path,b.children,c,d,e):(E(b.source.Pe,"Unknown source."),f=b.source.Ce||Gd(a.w()),c=$d(this,a,b.path,b.children,c,d,f,e));else if(b.type===wd)if(b.Gd)if(b=b.path,null!=c.ic(b))c=a;else{f=new Ld(c,a,d);d=a.N.j();if(b.e()||".priority"===O(b))Fd(a.w())? +b=c.Aa(Md(a)):(b=a.w().j(),E(b instanceof S,"serverChildren would be complete if leaf node"),b=c.oc(b)),b=this.U.ya(d,b,e);else{var g=O(b),k=c.nc(g,a.w());null==k&&Id(a.w(),g)&&(k=d.Q(g));b=null!=k?this.U.F(d,g,k,K(b),f,e):a.N.j().Da(g)?this.U.F(d,g,L,K(b),f,e):d;b.e()&&Fd(a.w())&&(d=c.Aa(Md(a)),d.J()&&(b=this.U.ya(b,d,e)))}d=Fd(a.w())||null!=c.ic(J);c=ae(a,b,d,this.U.Ma())}else c=be(this,a,b.path,b.Mb,c,d,e);else if(b.type===Kb)d=b.path,b=a.w(),f=b.j(),g=b.da||d.e(),c=ce(this,new de(a.N,new Ed(f, +g,b.Qb)),d,c,Kd,e);else throw Zb("Unknown operation type: "+b.type);e=qa(e.eb);d=c;b=d.N;b.da&&(f=b.j().J()||b.j().e(),g=ee(a),(0g.status){try{b=eb(g.responseText)}catch(c){M("Failed to parse JSON response for "+f+": "+g.responseText)}d(null, +b)}else 401!==g.status&&404!==g.status&&M("Got unsuccessful REST response for "+f+" Status: "+g.status),d(g.status);d=null}};g.open("GET",f,!0);g.send()})};function ue(){}var ve={};function we(a){return q(a.compare,a)}ue.prototype.kd=function(a,b){return 0!==this.compare(new R("[MIN_NAME]",a),new R("[MIN_NAME]",b))};ue.prototype.Ec=function(){return xe};function ye(a){E(!a.e()&&".priority"!==O(a),"Can't create PathIndex with empty path or .priority key");this.$b=a}la(ye,ue);h=ye.prototype;h.uc=function(a){return!a.P(this.$b).e()};h.compare=function(a,b){var c=a.R.P(this.$b),d=b.R.P(this.$b),c=c.pc(d);return 0===c?lc(a.name,b.name):c}; +h.Bc=function(a,b){var c=H(a),c=L.F(this.$b,c);return new R(b,c)};h.Cc=function(){var a=L.F(this.$b,ze);return new R("[MAX_NAME]",a)};h.toString=function(){return this.$b.slice().join("/")};function Ae(){}la(Ae,ue);h=Ae.prototype;h.compare=function(a,b){var c=a.R.C(),d=b.R.C(),c=c.pc(d);return 0===c?lc(a.name,b.name):c};h.uc=function(a){return!a.C().e()};h.kd=function(a,b){return!a.C().Z(b.C())};h.Ec=function(){return xe};h.Cc=function(){return new R("[MAX_NAME]",new Ib("[PRIORITY-POST]",ze))}; +h.Bc=function(a,b){var c=H(a);return new R(b,new Ib("[PRIORITY-POST]",c))};h.toString=function(){return".priority"};var I=new Ae;function Be(){}la(Be,ue);h=Be.prototype;h.compare=function(a,b){return lc(a.name,b.name)};h.uc=function(){throw Zb("KeyIndex.isDefinedOn not expected to be called.");};h.kd=function(){return!1};h.Ec=function(){return xe};h.Cc=function(){return new R("[MAX_NAME]",L)};h.Bc=function(a){E(p(a),"KeyIndex indexValue must always be a string.");return new R(a,L)};h.toString=function(){return".key"}; +var ge=new Be;function Ce(){}la(Ce,ue);h=Ce.prototype;h.compare=function(a,b){var c=a.R.pc(b.R);return 0===c?lc(a.name,b.name):c};h.uc=function(){return!0};h.kd=function(a,b){return!a.Z(b)};h.Ec=function(){return xe};h.Cc=function(){return De};h.Bc=function(a,b){var c=H(a);return new R(b,c)};h.toString=function(){return".value"};var Ee=new Ce;function Fe(a,b){this.ld=a;this.ac=b}Fe.prototype.get=function(a){var b=B(this.ld,a);if(!b)throw Error("No index defined for "+a);return b===ve?null:b};function Ge(a,b,c){var d=ma(a.ld,function(d,f){var g=B(a.ac,f);E(g,"Missing index implementation for "+f);if(d===ve){if(g.uc(b.R)){for(var k=[],m=c.Ub(He),l=D(m);l;)l.name!=b.name&&k.push(l),l=D(m);k.push(b);return Ie(k,we(g))}return ve}g=c.get(b.name);k=d;g&&(k=k.remove(new R(b.name,g)));return k.Na(b,b.R)});return new Fe(d,a.ac)} +function Je(a,b,c){var d=ma(a.ld,function(a){if(a===ve)return a;var d=c.get(b.name);return d?a.remove(new R(b.name,d)):a});return new Fe(d,a.ac)}var Ke=new Fe({".priority":ve},{".priority":I});function R(a,b){this.name=a;this.R=b}function He(a,b){return new R(a,b)};function Eb(){this.k=this.B=null}Eb.prototype.find=function(a){if(null!=this.B)return this.B.P(a);if(a.e()||null==this.k)return null;var b=O(a);a=K(a);return this.k.contains(b)?this.k.get(b).find(a):null};function Gb(a,b,c){if(b.e())a.B=c,a.k=null;else if(null!==a.B)a.B=a.B.F(b,c);else{null==a.k&&(a.k=new dd);var d=O(b);a.k.contains(d)||a.k.add(d,new Eb);a=a.k.get(d);b=K(b);Gb(a,b,c)}} +function Le(a,b){if(b.e())return a.B=null,a.k=null,!0;if(null!==a.B){if(a.B.J())return!1;var c=a.B;a.B=null;c.O(I,function(b,c){Gb(a,new G(b),c)});return Le(a,b)}return null!==a.k?(c=O(b),b=K(b),a.k.contains(c)&&Le(a.k.get(c),b)&&a.k.remove(c),a.k.e()?(a.k=null,!0):!1):!0}function Fb(a,b,c){null!==a.B?c(b,a.B):a.O(function(a,e){var f=new G(b.toString()+"/"+a);Fb(e,f,c)})}Eb.prototype.O=function(a){null!==this.k&&ed(this.k,function(b,c){a(b,c)})};function Me(a){this.W=a}var Ne=new Me(new Fc(null));function Oe(a,b,c){if(b.e())return new Me(new Fc(c));var d=Jc(a.W,b);if(null!=d){var e=d.path,d=d.value;b=N(e,b);d=d.F(b,c);return new Me(a.W.set(e,d))}a=Kc(a.W,b,new Fc(c));return new Me(a)}function Pe(a,b,c){var d=a;gb(c,function(a,c){d=Oe(d,b.n(a),c)});return d}Me.prototype.Cd=function(a){if(a.e())return Ne;a=Kc(this.W,a,P);return new Me(a)};function Qe(a,b){var c=Jc(a.W,b);return null!=c?a.W.get(c.path).P(N(c.path,b)):null} +function Re(a){var b=[],c=a.W.value;null!=c?c.J()||c.O(I,function(a,c){b.push(new R(a,c))}):a.W.children.ha(function(a,c){null!=c.value&&b.push(new R(a,c.value))});return b}function Se(a,b){if(b.e())return a;var c=Qe(a,b);return null!=c?new Me(new Fc(c)):new Me(a.W.subtree(b))}Me.prototype.e=function(){return this.W.e()};Me.prototype.apply=function(a){return Te(J,this.W,a)}; +function Te(a,b,c){if(null!=b.value)return c.F(a,b.value);var d=null;b.children.ha(function(b,f){".priority"===b?(E(null!==f.value,"Priority writes must always be leaf nodes"),d=f.value):c=Te(a.n(b),f,c)});c.P(a).e()||null===d||(c=c.F(a.n(".priority"),d));return c};function Ue(){this.S=Ne;this.la=[];this.yc=-1}function Ve(a,b){for(var c=0;c=b&&We(g,c.path)?d=!1:c.path.contains(g.path)&&(e=!0));f--}if(d){if(e)this.S=Xe(this.la,Ye,J),this.yc=0=this.g.compare(this.sa.Rc,f):0>=this.g.compare(f,this.sa.sc))d=d.T(f.name,f.R),e++;else break}}else{d=b.lb(this.g);d=d.fa(L);var k,m,l;if(this.Gb){b=d.Te(this.g);k=this.sa.sc;m=this.sa.Rc;var r=we(this.g);l=function(a,b){return r(b,a)}}else b=d.Ub(this.g),k=this.sa.Rc, +m=this.sa.sc,l=we(this.g);for(var e=0,y=!1;0=l(k,f)&&(y=!0),(g=y&&e=l(f,m))?e++:d=d.T(f.name,L)}return this.sa.Sb().ya(a,d,c)};h.fa=function(a){return a};h.Ma=function(){return!0};h.Sb=function(){return this.sa.Sb()}; +function ff(a,b,c,d,e,f){var g;if(a.Gb){var k=we(a.g);g=function(a,b){return k(b,a)}}else g=we(a.g);E(b.Cb()==a.oa,"");var m=new R(c,d),l=a.Gb?gf(b,a.g):hf(b,a.g),r=a.sa.matches(m);if(b.Da(c)){for(var y=b.Q(c),l=e.ce(a.g,l,a.Gb);null!=l&&(l.name==c||b.Da(l.name));)l=e.ce(a.g,l,a.Gb);e=null==l?1:g(l,m);if(r&&!d.e()&&0<=e)return null!=f&&Od(f,new Q("child_changed",d,c,y)),b.T(c,d);null!=f&&Od(f,new Q("child_removed",y,c));b=b.T(c,L);return null!=l&&a.sa.matches(l)?(null!=f&&Od(f,new Q("child_added", +l.R,l.name)),b.T(l.name,l.R)):b}return d.e()?b:r&&0<=g(l,m)?(null!=f&&(Od(f,new Q("child_removed",l.R,l.name)),Od(f,new Q("child_added",d,c))),b.T(c,d).T(l.name,L)):b};function jf(){this.Pb=this.na=this.Ib=this.ka=this.xa=!1;this.oa=0;this.kb="";this.bc=null;this.xb="";this.Zb=null;this.vb="";this.g=I}var kf=new jf;function ef(a){return""===a.kb?a.ka:"l"===a.kb}function Rd(a){E(a.ka,"Only valid if start has been set");return a.bc}function Qd(a){E(a.ka,"Only valid if start has been set");return a.Ib?a.xb:"[MIN_NAME]"}function Td(a){E(a.na,"Only valid if end has been set");return a.Zb} +function Sd(a){E(a.na,"Only valid if end has been set");return a.Pb?a.vb:"[MAX_NAME]"}function lf(a){var b=new jf;b.xa=a.xa;b.oa=a.oa;b.ka=a.ka;b.bc=a.bc;b.Ib=a.Ib;b.xb=a.xb;b.na=a.na;b.Zb=a.Zb;b.Pb=a.Pb;b.vb=a.vb;b.g=a.g;b.kb=a.kb;return b}h=jf.prototype;h.ke=function(a){var b=lf(this);b.xa=!0;b.oa=a;b.kb="l";return b};h.le=function(a){var b=lf(this);b.xa=!0;b.oa=a;b.kb="r";return b};h.Kd=function(a,b){var c=lf(this);c.ka=!0;n(a)||(a=null);c.bc=a;null!=b?(c.Ib=!0,c.xb=b):(c.Ib=!1,c.xb="");return c}; +h.dd=function(a,b){var c=lf(this);c.na=!0;n(a)||(a=null);c.Zb=a;n(b)?(c.Pb=!0,c.vb=b):(c.Ag=!1,c.vb="");return c};function mf(a,b){var c=lf(a);c.g=b;return c}function nf(a){var b={};a.ka&&(b.sp=a.bc,a.Ib&&(b.sn=a.xb));a.na&&(b.ep=a.Zb,a.Pb&&(b.en=a.vb));if(a.xa){b.l=a.oa;var c=a.kb;""===c&&(c=ef(a)?"l":"r");b.vf=c}a.g!==I&&(b.i=a.g.toString());return b}function T(a){return!(a.ka||a.na||a.xa)}function re(a){return T(a)&&a.g==I} +function se(a){var b={};if(re(a))return b;var c;a.g===I?c="$priority":a.g===Ee?c="$value":a.g===ge?c="$key":(E(a.g instanceof ye,"Unrecognized index type!"),c=a.g.toString());b.orderBy=A(c);a.ka&&(b.startAt=A(a.bc),a.Ib&&(b.startAt+=","+A(a.xb)));a.na&&(b.endAt=A(a.Zb),a.Pb&&(b.endAt+=","+A(a.vb)));a.xa&&(ef(a)?b.limitToFirst=a.oa:b.limitToLast=a.oa);return b}h.toString=function(){return A(nf(this))};function Ib(a,b){this.B=a;E(n(this.B)&&null!==this.B,"LeafNode shouldn't be created with null/undefined value.");this.aa=b||L;of(this.aa);this.Bb=null}var pf=["object","boolean","number","string"];h=Ib.prototype;h.J=function(){return!0};h.C=function(){return this.aa};h.fa=function(a){return new Ib(this.B,a)};h.Q=function(a){return".priority"===a?this.aa:L};h.P=function(a){return a.e()?this:".priority"===O(a)?this.aa:L};h.Da=function(){return!1};h.Se=function(){return null}; +h.T=function(a,b){return".priority"===a?this.fa(b):b.e()&&".priority"!==a?this:L.T(a,b).fa(this.aa)};h.F=function(a,b){var c=O(a);if(null===c)return b;if(b.e()&&".priority"!==c)return this;E(".priority"!==c||1===Ac(a),".priority must be the last token in a path");return this.T(c,L.F(K(a),b))};h.e=function(){return!1};h.Cb=function(){return 0};h.O=function(){return!1};h.H=function(a){return a&&!this.C().e()?{".value":this.Ca(),".priority":this.C().H()}:this.Ca()}; +h.hash=function(){if(null===this.Bb){var a="";this.aa.e()||(a+="priority:"+qf(this.aa.H())+":");var b=typeof this.B,a=a+(b+":"),a="number"===b?a+rc(this.B):a+this.B;this.Bb=ac(a)}return this.Bb};h.Ca=function(){return this.B};h.pc=function(a){if(a===L)return 1;if(a instanceof S)return-1;E(a.J(),"Unknown node type");var b=typeof a.B,c=typeof this.B,d=Ga(pf,b),e=Ga(pf,c);E(0<=d,"Unknown leaf type: "+b);E(0<=e,"Unknown leaf type: "+c);return d===e?"object"===c?0:this.Bb.compare(d,a);)D(c),d=sb(c);return c};h.Te=function(a){return this.Xb(a.Cc(),a)};h.Xb=function(a,b){var c=uf(this,b);if(c)return c.Xb(a,function(a){return a});for(var c=this.k.Xb(a.name,He),d=sb(c);null!=d&&0=a.length){var b=Number(a);if(!isNaN(b)){g.De=b;g.frames=[];a=null;break a}}g.De=1;g.frames=[]}null!==a&&Sf(g,a)}};this.Ha.onerror=function(a){g.f("WebSocket error. Closing connection."); +(a=a.message||a.data)&&g.f(a);g.ab()}};Pf.prototype.start=function(){};Pf.isAvailable=function(){var a=!1;if("undefined"!==typeof navigator&&navigator.userAgent){var b=navigator.userAgent.match(/Android ([0-9]{0,}\.[0-9]{0,})/);b&&1parseFloat(b[1])&&(a=!0)}return!a&&null!==Of&&!Qf};Pf.responsesRequiredToBeHealthy=2;Pf.healthyTimeout=3E4;h=Pf.prototype;h.pd=function(){Rb.remove("previous_websocket_failure")}; +function Sf(a,b){a.frames.push(b);if(a.frames.length==a.De){var c=a.frames.join("");a.frames=null;c=eb(c);a.Xf(c)}}h.send=function(a){Rf(this);a=A(a);this.ob+=a.length;Gf(this.Ua,"bytes_sent",a.length);a=pc(a,16384);1=a.Nc[0].Me.length+30+c.length){var e=a.Nc.shift(),c=c+"&seg"+d+"="+e.lg+"&ts"+d+"="+e.rg+"&d"+d+"="+e.Me;d++}else break;bg(a,b+c,a.Xd);return!0}return!1}function bg(a,b,c){function d(){a.te.remove(c);$f(a)}a.te.add(c,1);var e=setTimeout(d,Math.floor(25E3));Zf(a,b,function(){clearTimeout(e);d()})}function Zf(a,b,c){a.Hf(b,c)}var cg=null; +function ag(a,b){cg||(cg=require("request"));cg(a,function(c,d,e){if(c)throw"Rest request for "+a.url+" failed.";b&&b(e)})}Xf.prototype.Hf=function(a,b){var c=this;ag({url:a,xg:!0},function(a){c.Kf(a);b()})};Xf.prototype.Kf=function(a){eval("var jsonpCB = function(pLPCommand, pRTLPCB) {"+a+"}");jsonpCB(this.Ef,this.Yf)};function dg(a){eg(this,a)}var fg=[Uf,Pf];function eg(a,b){var c=Pf&&Pf.isAvailable(),d=c&&!(Rb.We||!0===Rb.get("previous_websocket_failure"));b.tg&&(c||M("wss:// URL used, but browser isn't known to support websockets. Trying anyway."),d=!0);if(d)a.Tc=[Pf];else{var e=a.Tc=[];qc(fg,function(a,b){b&&b.isAvailable()&&e.push(b)})}}function gg(a){if(0=a.nf?(a.f("Secondary connection is healthy."),a.zb=!0,a.D.pd(),a.D.start(),a.f("sending client ack on secondary"),a.D.send({t:"c",d:{t:"a",d:{}}}),a.f("Ending transmission on primary"),a.I.send({t:"c",d:{t:"n",d:{}}}),a.Uc=a.D,ng(a)):(a.f("sending ping on secondary."),a.D.send({t:"c",d:{t:"p",d:{}}}))}hg.prototype.ud=function(a){pg(this);this.re(a)};function pg(a){a.zb||(a.ve--,0>=a.ve&&(a.f("Primary connection is healthy."),a.zb=!0,a.I.pd()))} +function mg(a,b){a.D=new b("c:"+a.id+":"+a.Ie++,a.L,a.pf);a.nf=b.responsesRequiredToBeHealthy||0;a.D.open(jg(a,a.D),kg(a,a.D));vc(function(){a.D&&(a.f("Timed out trying to upgrade."),a.D.close())},Math.floor(6E4))}function lg(a,b,c){a.f("Realtime connection established.");a.I=b;a.Ta=1;a.Ic&&(a.Ic(c,a.pf),a.Ic=null);0===a.ve?(a.f("Primary connection is healthy."),a.zb=!0):vc(function(){qg(a)},Math.floor(5E3))} +function qg(a){a.zb||1!==a.Ta||(a.f("sending ping on primary."),sg(a,{t:"c",d:{t:"p",d:{}}}))}function sg(a,b){if(1!==a.Ta)throw"Connection is not connected";a.Uc.send(b)}hg.prototype.close=function(){2!==this.Ta&&(this.f("Closing realtime connection."),this.Ta=2,og(this),this.ia&&(this.ia(),this.ia=null))};function og(a){a.f("Shutting down all connections");a.I&&(a.I.close(),a.I=null);a.D&&(a.D.close(),a.D=null);a.jd&&(clearTimeout(a.jd),a.jd=null)};function tg(a,b){this.committed=a;this.snapshot=b};function U(a,b){this.ta=a;this.qa=b}U.prototype.cancel=function(a){w("Firebase.onDisconnect().cancel",0,1,arguments.length);z("Firebase.onDisconnect().cancel",1,a,!0);var b=new ab;this.ta.vd(this.qa,bb(b,a));return b.ra};U.prototype.cancel=U.prototype.cancel;U.prototype.remove=function(a){w("Firebase.onDisconnect().remove",0,1,arguments.length);rd("Firebase.onDisconnect().remove",this.qa);z("Firebase.onDisconnect().remove",1,a,!0);var b=new ab;ug(this.ta,this.qa,null,bb(b,a));return b.ra}; +U.prototype.remove=U.prototype.remove;U.prototype.set=function(a,b){w("Firebase.onDisconnect().set",1,2,arguments.length);rd("Firebase.onDisconnect().set",this.qa);jd("Firebase.onDisconnect().set",a,this.qa,!1);z("Firebase.onDisconnect().set",2,b,!0);var c=new ab;ug(this.ta,this.qa,a,bb(c,b));return c.ra};U.prototype.set=U.prototype.set; +U.prototype.Hb=function(a,b,c){w("Firebase.onDisconnect().setWithPriority",2,3,arguments.length);rd("Firebase.onDisconnect().setWithPriority",this.qa);jd("Firebase.onDisconnect().setWithPriority",a,this.qa,!1);nd("Firebase.onDisconnect().setWithPriority",2,b);z("Firebase.onDisconnect().setWithPriority",3,c,!0);var d=new ab;vg(this.ta,this.qa,a,b,bb(d,c));return d.ra};U.prototype.setWithPriority=U.prototype.Hb; +U.prototype.update=function(a,b){w("Firebase.onDisconnect().update",1,2,arguments.length);rd("Firebase.onDisconnect().update",this.qa);if(ea(a)){for(var c={},d=0;df.yc,"Stacking an older write on top of newer ones");n(g)||(g=!0);f.la.push({path:b,Fa:c,Wc:d,visible:g});g&&(f.S=Oe(f.S,b,c));f.yc=d;return e?Fg(a,new Lb(xd,b,c)):[]}function Gg(a,b,c,d){var e=a.hb;E(d>e.yc,"Stacking an older merge on top of newer ones");e.la.push({path:b,children:c,Wc:d,visible:!0});e.S=Pe(e.S,b,c);e.yc=d;c=Hc(c);return Fg(a,new yd(xd,b,c))} +function Hg(a,b,c){c=c||!1;var d=Ve(a.hb,b);if(a.hb.Cd(b)){var e=P;null!=d.Fa?e=e.set(J,!0):gb(d.children,function(a,b){e=e.set(new G(a),b)});return Fg(a,new vd(d.path,e,c))}return[]}function Ig(a,b,c){c=Hc(c);return Fg(a,new yd(Bd,b,c))}function Jg(a,b,c,d){d=Kg(a,d);if(null!=d){var e=Lg(d);d=e.path;e=e.Fb;b=N(d,b);c=new Lb(new Ad(!1,!0,e,!0),b,c);return Mg(a,d,c)}return[]} +function Ng(a,b,c,d){if(d=Kg(a,d)){var e=Lg(d);d=e.path;e=e.Fb;b=N(d,b);c=Hc(c);c=new yd(new Ad(!1,!0,e,!0),b,c);return Mg(a,d,c)}return[]} +Dg.prototype.Lb=function(a,b){var c=a.path,d=null,e=!1;Pc(this.wa,c,function(a,b){var f=N(a,c);d=d||b.fb(f);e=e||null!=Ag(b)});var f=this.wa.get(c);f?(e=e||null!=Ag(f),d=d||f.fb(J)):(f=new zg,this.wa=this.wa.set(c,f));var g;null!=d?g=!0:(g=!1,d=L,Tc(this.wa.subtree(c),function(a,b){var c=b.fb(J);c&&(d=d.T(a,c))}));var k=null!=Cg(f,a);if(!k&&!T(a.m)){var m=Og(a);E(!(m in this.fc),"View does not exist, but we have a tag");var l=Pg++;this.fc[m]=l;this.Be["_"+l]=m}g=f.Lb(a,b,new Ze(c,this.hb),d,g);k|| +e||(f=Cg(f,a),g=g.concat(Qg(this,a,f)));return g}; +Dg.prototype.ib=function(a,b,c){var d=a.path,e=this.wa.get(d),f=[];if(e&&("default"===a.ja()||null!=Cg(e,a))){f=e.ib(a,b,c);e.e()&&(this.wa=this.wa.remove(d));e=f.jg;f=f.Mf;b=-1!==Na(e,function(a){return T(a.m)});var g=Nc(this.wa,d,function(a,b){return null!=Ag(b)});if(b&&!g&&(d=this.wa.subtree(d),!d.e()))for(var d=Rg(d),k=0;k=a)throw Error("Query.limitToFirst: First argument must be a positive integer.");if(this.m.xa)throw Error("Query.limitToFirst: Limit was already set (by another call to limit, limitToFirst, or limitToLast).");return new X(this.u,this.path,this.m.ke(a),this.Kc)}; +h.le=function(a){w("Query.limitToLast",1,1,arguments.length);if(!ga(a)||Math.floor(a)!==a||0>=a)throw Error("Query.limitToLast: First argument must be a positive integer.");if(this.m.xa)throw Error("Query.limitToLast: Limit was already set (by another call to limit, limitToFirst, or limitToLast).");return new X(this.u,this.path,this.m.le(a),this.Kc)}; +h.bg=function(a){w("Query.orderByChild",1,1,arguments.length);if("$key"===a)throw Error('Query.orderByChild: "$key" is invalid. Use Query.orderByKey() instead.');if("$priority"===a)throw Error('Query.orderByChild: "$priority" is invalid. Use Query.orderByPriority() instead.');if("$value"===a)throw Error('Query.orderByChild: "$value" is invalid. Use Query.orderByValue() instead.');qd("Query.orderByChild",a);$g(this,"Query.orderByChild");var b=new G(a);if(b.e())throw Error("Query.orderByChild: cannot pass in empty path. Use Query.orderByValue() instead."); +b=new ye(b);b=mf(this.m,b);Yg(b);return new X(this.u,this.path,b,!0)};h.cg=function(){w("Query.orderByKey",0,0,arguments.length);$g(this,"Query.orderByKey");var a=mf(this.m,ge);Yg(a);return new X(this.u,this.path,a,!0)};h.dg=function(){w("Query.orderByPriority",0,0,arguments.length);$g(this,"Query.orderByPriority");var a=mf(this.m,I);Yg(a);return new X(this.u,this.path,a,!0)}; +h.eg=function(){w("Query.orderByValue",0,0,arguments.length);$g(this,"Query.orderByValue");var a=mf(this.m,Ee);Yg(a);return new X(this.u,this.path,a,!0)};h.Kd=function(a,b){w("Query.startAt",0,2,arguments.length);jd("Query.startAt",a,this.path,!0);pd("Query.startAt",b);var c=this.m.Kd(a,b);Zg(c);Yg(c);if(this.m.ka)throw Error("Query.startAt: Starting point was already set (by another call to startAt or equalTo).");n(a)||(b=a=null);return new X(this.u,this.path,c,this.Kc)}; +h.dd=function(a,b){w("Query.endAt",0,2,arguments.length);jd("Query.endAt",a,this.path,!0);pd("Query.endAt",b);var c=this.m.dd(a,b);Zg(c);Yg(c);if(this.m.na)throw Error("Query.endAt: Ending point was already set (by another call to endAt or equalTo).");return new X(this.u,this.path,c,this.Kc)}; +h.Jf=function(a,b){w("Query.equalTo",1,2,arguments.length);jd("Query.equalTo",a,this.path,!1);pd("Query.equalTo",b);if(this.m.ka)throw Error("Query.equalTo: Starting point was already set (by another call to startAt or equalTo).");if(this.m.na)throw Error("Query.equalTo: Ending point was already set (by another call to endAt or equalTo).");return this.Kd(a,b).dd(a,b)}; +h.toString=function(){w("Query.toString",0,0,arguments.length);for(var a=this.path,b="",c=a.Y;c