#!/usr/bin/ruby -w require 'fold.rb' class Integer def bits return 0 if self <= 1 return 1+(self/2).bits end end if $0 == __FILE__ v, h, folds = get_args bits = v.bits + h.bits puts fold(v, h, folds).map{|i|sprintf "%0*b", bits, i-1} end