I understand why you are doing it this way, is it possible to combine this series of functions with the ones that already exist? What are the downsides to doing so?