I may be wrong but I don't think the max value of uint64 would fit in a double either:
~~~~
MAX Uint64: 2^64 - 1 = 1.84467440737095E19
DBL_MAX:	1E+37 	 = 1.17191423728025E16
~~~~

I looked up the max double here: http://www.cplusplus.com/reference/cfloat/