Alright, we still need to be able to pass config data into this method so I can split it out to make it clearer as to what's happening.