https://www.crockford.com/big_integer.html