Makes sense, this does beg for some refactoring. Just pushed out a version that should be more clear.