                 var c = 0
                 while bitReader.bit() > 0 {
                     c += 1
-                    guard c < huffmanGroups else { throw BZip2Error.wrongSelector }
+                    guard c < huffmanGroups
+                        else { throw BZip2Error.wrongSelector }
                 }
                 if c >= 0 {
                     let el = mtf.remove(at: c)

        let symbolsInUse = used.filter { $0 }.count + 2

        func computeTables() throws -> [DecodingHuffmanTree] {
            var tables: [DecodingHuffmanTree] = []
            for _ in 0..<huffmanGroups {
                var length = bitReader.intFromBits(count: 5)
                var lengths = [Int]()
                for _ in 0..<symbolsInUse {
                    guard length >= 0 && length <= 20 else { throw BZip2Error.wrongHuffmanLengthCode }
                    while bitReader.bit() > 0 {
                        length -= (Int(bitReader.bit() * 2) - 1)
                    }


    private static func decode(_ bitReader: BitReader) throws -> [UInt8] {
        let isRandomized = bitReader.bit()
        guard isRandomized == 0
            else { throw BZip2Error.randomizedBlock }

        var pointer = bitReader.intFromBits(count: 24)

