a little more cleanup/passing system around properly