docs: def _load_num_with_prefix(prefix, addr, region, state, base, signed, read_length=None):
          """
          loads a number from addr, and returns a condition that addr must start with the prefix
          """
          length = len(prefix)
          read_length = (read_length-length) if read_length else None
          condition, value, num_bytes = strtol._string_to_int(addr+length, state, region, base, signed, read_length)
  
          # the prefix must match
          if len(prefix) > 0:
              loaded_prefix = region.load(addr, length)
              condition = state.solver.And(loaded_prefix == state.solver.BVV(prefix), condition)
          total_num_bytes = num_bytes + length
  
          # negatives
          if prefix.startswith(b"-"):
              value = state.solver.BVV(0, state.arch.bits) - value
          return condition, value, total_num_bytes