class_docstr: Class for storing a list of non-negative integers compactly.
  
  We store them as the smallest size integer array we can get
  away with. When we try to add an integer that is too large,
  we upgrade the array to the smallest word size needed to store
  the new value.
class_docstr_tok: ["Class","for","storing","a","list","of","non-negative","integers","compactly",".","We","store","them","as","the","smallest","size","integer","array","we","can","get","away","with",".","When","we","try","to","add","an","integer","that","is","too","large",",","we","upgrade","the","array","to","the","smallest","word","size","needed","to","store","the","new","value","."]
code: def __upgrade(self) -> None:
      assert isinstance(self.__underlying, array.array)
      code = NEXT_ARRAY_CODE[self.__underlying.typecode]
      self.__underlying = array_or_list(code, self.__underlying)
  
imports: import array
  import sys
  import warnings
  from random import Random
  from typing import Callable, Dict, Generic, Iterable, Iterator, List, Optional, Sequence, Tuple, TypeVar, Union, overload
  from hypothesis.errors import HypothesisWarning
label_desc: Use image node_id 17 for calling the IntList obj's underlying member method code with example usage: obj.__upgrade() without return types