Still totally lost as to which module structures the different code paths actually apply to, but I guess as long as the tests pass... I guess this is one of those pieces of code with terrible naming where nobody knows how it works anymore lol