hash, random and tests.