/// <summary>
        /// Symmetrize the shapes.
        /// </summary>
        /// <param name="selectedShapes"></param>
        /// <param name="msoFlipCmd"></param>
        /// <param name="adjustPosition"></param>
        private static void Symmetrize(PowerPoint.ShapeRange selectedShapes, MsoFlipCmd msoFlipCmd, Action<PPShape, PPShape> adjustPosition)
        {
            try
            {
                for (int i = 1; i <= selectedShapes.Count; i++)
                {
                    var originalShape = new PPShape(selectedShapes[i]);
                    var newShape = originalShape.Duplicate();

                    newShape.Flip(msoFlipCmd);
                    newShape.Select(MsoTriState.msoFalse);
                    adjustPosition.Invoke(originalShape, newShape);
                }
            }
            catch (Exception e)
            {
                Logger.LogException(e, "Symmetrize");
            }
        }