new way to approach this model (likely very complicated but worth looking into)