nnnjjj123
2020-11-17 1b2c1edb61190eeb19f465ff031eaa3b2a1b8dbc
1
2
3
//>>built
define(["dojo/_base/lang","../bits"],function(f,e){e=f.getObject("dojox.encoding.compression",!0);e.Splay=function(a){this.up=Array(2*a+1);this.left=Array(a);this.right=Array(a);this.reset()};f.extend(e.Splay,{reset:function(){for(var a=1;a<this.up.length;this.up[a]=Math.floor((a-1)/2),++a);for(a=0;a<this.left.length;this.left[a]=2*a+1,this.right[a]=2*a+2,++a);},splay:function(a){a+=this.left.length;do{var b=this.up[a];if(b){var c=this.up[b],d=this.left[c];b==d?(d=this.right[c],this.right[c]=a):this.left[c]=
a;this[a==this.left[b]?"left":"right"][b]=d;this.up[a]=c;this.up[d]=b;a=c}else a=b}while(a)},encode:function(a,b){var c=[],d=a+this.left.length;do c.push(this.right[this.up[d]]==d),d=this.up[d];while(d);this.splay(a);for(a=c.length;c.length;)b.putBits(c.pop()?1:0,1);return a},decode:function(a){var b=0;do b=this[a.getBits(1)?"right":"left"][b];while(b<this.left.length);b-=this.left.length;this.splay(b);return b}});return e.Splay});