import sys class SBA: slots = ('_arr', '_size', '_memsize') def __init__(self, size): if not isinstance(size, int): raise ValueError("Size should be integer!") self._arr = 1<= self._size: raise ValueError("Range out of boundaries!") if (self._arr & 1< 0: return 1 return 0 def __setitem__(self, sliced, val): if not isinstance(sliced, int): raise ValueError("Only integers accepted as position!") if not isinstance(val, (int, bool)): raise ValueError("Values accepted as int or bool") if sliced >= self._size: raise ValueError("Range out of boundaries!") if isinstance(val, bool): v = {True: 1, False: 0}[val] else: if 0 > val > 1: raise ValueError("Value is out of range!") v = val self._arr = self._arr | v<