It would be worth documenting why there are exceptions (e.g. share)