As a nit, having those dependencies be in the same order in all three rules would be nice. The order might not matter, but it's helping if there's an obvious order, and that's consistently expressed.