organized the dependencies better