Major Code refactoring necessary
The current code uses many different components that reflect the exact same graph (with different values).
Moreover, these components use the same name but are defined inside different module hierarchies.
This leads to unreadable and unmaintainable code.