You are on page 1of 3

var typedArrays="undefined"!

==typeof ArrayBuffer;
function blf(b,e){var a;"number"!==typeof b&&(a=b,b=32*a.length);var
d=Math.ceil(b/32),c=-1;this.m=b=32*d;this.k=e;if(typedArrays){var
f=1<<Math.ceil(Math.log(Math.ceil(Math.log(b)/Math.LN2/8))/Math.LN2),h=1===f?
Uint8Array:2===f?Uint16Array:Uint32Array,f=new ArrayBuffer(f*e),g=this.buckets=new
Int32Array(d);if(a)for(;++c<d;)g[c]=a[c];this._locations=new
h(f)}else{g=this.buckets=[];if(a)for(;++c<d;)g[c]=a[c];else for(;+
+c<d;)g[c]=0;this._locations=[]}}
blf.prototype.locations=function(b){var
e=this.k,a=this.m,d=this._locations,c=fnv_1a(b);b=fnv_1a_b(c);for(var f=-1,c=c%a;+
+f<e;)d[f]=0>c?c+a:c,c=(c+b)%a;return d};blf.prototype.add=function(b)
{b=this.locations(b+"");for(var e=-1,a=this.k,d=this.buckets;+
+e<a;)d[Math.floor(b[e]/32)]|=1<<b[e]%32};blf.prototype.test=function(b)
{b=this.locations(b+"");for(var e=-1,a=this.k,d,c=this.buckets;+
+e<a;)if(d=b[e],0===(c[Math.floor(d/32)]&1<<d%32))return!1;return!0};
blf.prototype.size=function(){for(var b=this.buckets,e=0,a=0,d=b.length;a<d;+
+a)e+=popcnt(b[a]);return-this.m*Math.log(1-e/this.m)/this.k};function popcnt(b){b-
=b>>1&1431655765;b=(b&858993459)+(b>>2&858993459);return 16843009*(b+
(b>>4)&252645135)>>24}
function fnv_1a(b){for(var e=b.length,a=2166136261,d,c,f=-1;++f<e;)
{d=b.charCodeAt(###################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
#######################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################################################
###################################################

You might also like