private DiagramDocumentCore DeserializeAndEliminateDuplicateStyles(Stream buf)
{
var doc = DiagramDocumentCore.Load(buf);
doc.Styles.Clear();
foreach (var shape in doc.Shapes)
{
var style = _doc.Styles.Where(s => s.Equals(shape.Style)).FirstOrDefault();
if (style != null)
shape.Style = style;
else
doc.Styles.Add(shape.Style);
}
return doc;
}