in MotionMark/resources/extensions.js [579:589]
_sink: function(i)
{
// Fix the heap property at index i given that each of the left and the right
// sub-trees satisfies the heap property.
for (var ci = this._childIndex(i); ci != -1; i = ci, ci = this._childIndex(ci)) {
if (this._compare(this._values[i], this._values[ci]) > 0)
break;
this._values.swap(ci, i);
}
},