<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _next_address_in_regions(self, address):
 """ Return the next immediate address that is inside any of the regions. :param int address: The address to start scanning. :return: The next address that is inside one of the memory regions. :rtype: int """


        if self._inside_regions(address):
            return address

        try:
            return next(self._regions.irange(minimum=address, reverse=False))
        except StopIteration:
            return None