public override object Clone()
        {
            ChoreographyNodeStyle clone = new ChoreographyNodeStyle
            {
                InitiatingAtTop    = InitiatingAtTop,
                InitiatingMessage  = InitiatingMessage,
                Insets             = Insets,
                LoopCharacteristic = LoopCharacteristic,
                MinimumSize        = MinimumSize,
                ResponseMessage    = ResponseMessage,
                SubState           = SubState,
                Type            = Type,
                IconColor       = IconColor,
                InitiatingColor = InitiatingColor,
                ResponseColor   = ResponseColor,
                Outline         = Outline,
                Background      = Background,
                MessageOutline  = MessageOutline
            };

            foreach (var participant in TopParticipants)
            {
                clone.TopParticipants.Add(participant.Clone());
            }
            foreach (var participant in BottomParticipants)
            {
                clone.BottomParticipants.Add(participant.Clone());
            }
            return(clone);
        }
 internal ChoreographyInsetsProvider(ChoreographyNodeStyle style)
 {
     this.style = style;
 }