collapzWithBinaries = (number) => {
let steps = 0,
updated = number,
bins = [[number, number.toString(2)]],
longest = bins[0][1].length;
while (updated !== 1) {
updated = updated % 2 === 0 ? updated / 2 : 3 * updated + 1;
let bin = updated.toString(2);
longest = Math.max(longest, bin.length);
bins.push([updated, bin]);
steps++;
}
return [steps, bins.map(([num, bin]) => [num, bin.padStart(longest)])]
}