## How to calculate A * B mod N, where numbers are 64 bit integers

I made a program to calculate ‘A * B mod N’, where A, B and N are 64 bit integers.

Main problem is to avoid overflow when calculate ‘A * B’.

I searched a while and finally decided to use the interleaved modular multiplication method, which is used in the feild of electric circuit design.

~~I found some bugs when I tested corner cases, so I have to fix them [2018.9.2].~~
~~I think I’ve fixed them [2018.9.3].~~
I’ve just
improved it! [2018.9.5]

The program is shown below: