         let symbolsInUse = used.filter { $0 }.count + 2
 
         func computeTables() throws -> [DecodingHuffmanTree] {
-            var tables: [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 }
+                    guard length >= 0 && length <= 20
+                        else { throw BZip2Error.wrongHuffmanLengthCode }
                     while bitReader.bit() > 0 {
                         length -= (Int(bitReader.bit() * 2) - 1)
                     }

        let used = computeUsed()

        let huffmanGroups = bitReader.intFromBits(count: 3)
        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)
