code: def _first_stoppoint(self, irsb, extra_stop_points=None):
          
          if self._stop_points is None and extra_stop_points is None and self.project is None:
              return None
  
          first_imark = True
          for stmt in irsb.statements:
              if type(stmt) is pyvex.stmt.IMark:  # pylint: disable=unidiomatic-typecheck
                  addr = stmt.addr + stmt.delta
                  if not first_imark:
                      if self.is_stop_point(addr, extra_stop_points):
                          # could this part be moved by pyvex?
                          return addr
                      if stmt.delta != 0 and self.is_stop_point(stmt.addr, extra_stop_points):
                          return addr
  
                  first_imark = False
          return None
docs: Enumerate the imarks in the block. If any of them (after the first one) are at a stop point, returns the address
          of the stop point. None is returned otherwise.