public static byte[] RemoveChunkFromStream(MemoryStream source, long startingOffset, long length)
        {
            int bytesRead;

            byte[] bytes = new byte[1024];

            var ret = ParseFile.ExtractChunkToMemoryStream(source, 0, startingOffset);

            // append remainder
            source.Position = startingOffset + length;
            bytesRead       = source.Read(bytes, 0, bytes.Length);

            while (bytesRead > 0)
            {
                ret.Write(bytes, 0, bytesRead);
                bytesRead = source.Read(bytes, 0, bytes.Length);
            }
            return(ret.ToArray());
        }