replace `shared` with `exclusive` to simplify logic. also, doc fix