return ( htonl( (number >> 32) & 0xFFFFFFFF) | ((uint64_t) (htonl(number & 0xFFFFFFFF))  << 32));
union { uint64_t ui64; struct { uint32_t a; uint32_t b; } ui32; } u; u.ui32.a = htonl(i >> 32); u.ui32.b = htonl(i >> 0); return u.ui64;
static uint64_t htonll(uint64_t number){	return ( htonl( (number >> 32) & 0xFFFFFFFF) |		 ((uint64_t) (htonl(number & 0xFFFFFFFF))  << 32));}