for keygen purposes