smarter resource dependencies