REDO * Infinity

Redid all the code to better capture the logic desired.