Because we can't change the constructor in a binary compatible way