code: public long readRawULong(int bits) throws IOException {
          long val = 0;
          for (int i = 0; i < bits; i++) {
              val = readBitToLong(val);
          }
          return val;
      }
docs: read bits into an unsigned long.
  @param bits  The number of bits to read
  @return      The bits as an unsigned long
  @throws IOException  Thrown if error reading input stream