generated a new hash