         let used = computeUsed()
 
         let huffmanGroups = bitReader.intFromBits(count: 3)
-        guard huffmanGroups >= 2 && huffmanGroups <= 6 else { throw BZip2Error.wrongHuffmanGroups }
+        guard huffmanGroups >= 2 && huffmanGroups <= 6
+            else { throw BZip2Error.wrongHuffmanGroups }
 
         func computeSelectorsList() throws -> [Int] {
             let selectorsUsed = bitReader.intFromBits(count: 15)

                var c = 0
                while bitReader.bit() > 0 {
                    c += 1
                    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)
                    }
