Epic copy & paste :(
Decompose...
Refactor everything...