new changes -- still need to get randoms working