documentation for transitive locking