most of the scrypt integration