tracking exceptions
throwing exceptions while holding a mutex
tracking rules of Referenced objects passing
tracking sync/async method semantics

