code: def get_bits( self, count ):
          
          result = 0
          for i in range( count ):
              if self.bits_remaining <= 0:
                  self._fill_buffer()
              if self.bits_reverse:
                  bit = (1 if (self.current_bits & (0x80 << 8*(self.bytes_to_cache-1))) else 0)
                  self.current_bits <<= 1
                  self.current_bits &= 0xff
              else:
                  bit = (self.current_bits & 1)
                  self.current_bits >>= 1
  
              self.bits_remaining -= 1
  
              if self.output_reverse:
                  result <<= 1
                  result |= bit
              else:
                  result |= bit << i
          return result
docs: Get an integer containing the next [count] bits from the source.