#include "interleave.h"/* credit to Henry S. Warren, Hacker's Delight, Addison-Wesley, 2002 */uint64_tinterleave8(uint64_tx){x=(x&0xaa55aa55aa55aa55ull)|((x&0x00aa00aa00aa00aaull)<<7)|((x>>7)&0x00aa00aa00aa00aaull);x=(x&0xcccc3333cccc3333ull)|((x&0x0000cccc0000ccccull)<<14)|((x>>14)&0x0000cccc0000ccccull);x=(x&0xf0f0f0f00f0f0f0full)|((x&0x00000000f0f0f0f0ull)<<28)|((x>>28)&0x00000000f0f0f0f0ull);returnx;}