implement 64 bit multiply