ref10: Daniel J. Bernstein Niels Duif Tanja Lange Peter Schwabe Bo-Yin Yang MakeCryptoOps.py Shen Noether monero research labs