So why did I start this big refactoring again? πŸ€¦β€β™‚οΈ