byte counter untested finished