broke things down in more discreet files