def _randint(seed=None):
 if (seed is None):
  return random.randint
 elif isinstance(seed, int):
  return random.Random(seed).randint
 elif is_sequence(seed):
  seed = list(seed)
  seed.reverse()
  def give(a, b, seq=seed):
   (a, b) = (as_int(a), as_int(b))
   w = (b - a)
   if (w < 0):
    raise ValueError('_randint got empty range')
   try:
    x = seq.pop()
   except AttributeError:
    raise ValueError('_randint expects a list-like sequence')
   except IndexError:
    raise ValueError('_randint sequence was too short')
   if (a <= x <= b):
    return x
   else:
    return give(a, b, seq)
  return give
 else:
  raise ValueError('_randint got an unexpected seed')

def _randint ( seed = None ) : if ( seed is None ) : return random . randint elif isinstance ( seed , int ) : return random . Random ( seed ) . randint elif is_sequence ( seed ) : seed = list ( seed ) seed . reverse ( ) def give ( a , b , seq = seed ) : ( a , b ) = ( as_int ( a ) , as_int ( b ) ) w = ( b - a ) if ( w < 0 ) : raise ValueError ( '_randint got empty range' ) try : x = seq . pop ( ) except AttributeError : raise ValueError ( '_randint expects a list-like sequence' ) except IndexError : raise ValueError ( '_randint sequence was too short' ) if ( a <= x <= b ) : return x else : return give ( a , b , seq ) return give else : raise ValueError ( '_randint got an unexpected seed' )
generate a pseudo random 32 bit integer .