public override string ToString()
        {
            StringBuilder __sb    = new StringBuilder("TDDIFTAArtifactUnion(");
            bool          __first = true;

            if (InputEvent != null && __isset.InputEvent)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("InputEvent: ");
                __sb.Append(InputEvent == null ? "<null>" : InputEvent.ToString());
            }
            if (OutputEvent != null && __isset.OutputEvent)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("OutputEvent: ");
                __sb.Append(OutputEvent == null ? "<null>" : OutputEvent.ToString());
            }
            if (Gate != null && __isset.Gate)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("Gate: ");
                __sb.Append(Gate == null ? "<null>" : Gate.ToString());
            }
            if (FTAPropagation != null && __isset.FTAPropagation)
            {
                if (!__first)
                {
                    __sb.Append(", ");
                }
                __first = false;
                __sb.Append("FTAPropagation: ");
                __sb.Append(FTAPropagation == null ? "<null>" : FTAPropagation.ToString());
            }
            __sb.Append(")");
            return(__sb.ToString());
        }