Looks like (maybe?) large ints are just being converted to a big.Int, which can cause problems since a very large uint256 has the same hex representation as a corresponding negative int256. Would be good to double check that both of these cases are handled correctly by the converter