                         // SHORT REP MATCH CASE
                         state = state < 7 ? 9 : 11
                         let byte = self.byte(at: rep0 + 1)
+                        self.put(byte)
                         uncompressedSize -= 1
-                        self.put(byte)
                         continue
                     }
                 } else { // REP MATCH CASE

            if uncompressedSize > -1 && uncompressedSize < len { throw LZMAError.repeatWillExceed }
            for _ in 0..<len {
                let byte = self.byte(at: rep0 + 1)
                uncompressedSize -= 1
                self.put(byte)
            }
        }
    }

        let dataSize = self.pointerData.alignedByte().toInt() << 8 + self.pointerData.alignedByte().toInt() + 1
        for _ in 0..<dataSize {
            let byte = pointerData.alignedByte()
            self.put(byte)
        }
    }

