explain choice of dependencies