package merge code lengths logic
calculate package merge code lengths from array/typedarray.no redundant tree traversal.
define Number.prototype
1. declare valuesconst vs=new Uint8Array(v.length)2. set value, declare length
,l=(v=reduce(false,v,(a,v,i)=>{
if(v)a.push([v,i])
return a
},[])).length3. return
if(0===l)return vs4. return
if(1===l)return(vs[v[0][1]]=1)&&vs5. sort value
v=sort(false,v,(a,b)=>a[0]-b[0])6. declare call
let c=(a,c)=>map(false,l+a.length>>>1,()=>((v0,v1)=>[v0[0]+v1[0],v0,v1])(c(),c()))7. set value
v=reduce(false,this,a=>((i0,i1)=>c(a,()=>(v[i0]||[1/0])[0]<(a[i1]||[1/0])[0]?v[i0++]:a[i1++]))(0,0),[])8. set call
c=v=>v[2]?c(v[1])||c(v[2]):!++vs[v[1]]9. set values, return
return forEach(false,l-1,(_,i)=>c(v[i]))||vs