public override object Clone()
            {
                EnumChan newObj = new EnumChan(this);

                foreach (_ElementType v in this.Queue)
                    newObj.Queue.Enqueue(v);

                return newObj;
            }
 private EnumChan(EnumChan c) : base(c) { }