code: private void sawMonitorExit(int pc) {
          if (!monitorSyncPCs.isEmpty()) {
              ScopeBlock sb = findSynchronizedScopeBlock(rootScopeBlock, monitorSyncPCs.get(0).intValue());
              if (sb != null) {
                  sb.setFinish(pc);
              }
              monitorSyncPCs.remove(monitorSyncPCs.size() - 1);
          }
      }
docs: processes a monitor exit to set the end of the already created scope block
  
  @param pc
  the current program counter