These elseif could be abstracted as forementioned https://github.com/AndrewGauger/freeems-vanilla/pull/1/files#L2L3  I'm not suggesting a better plan, but a strategy with openness and time commitments