Basically, making the rule: "you can't inject a thing into all things its own type".