speed it up using bytestrings
damn, I had thought of this earlier when I was dividing by 10 recursively
whoops