public void DetachPrevious()
 {
     if (!Previous)
     {
         return;
     }
     Previous.Next = null;
     Previous      = null;
 }
 private void AttachNext(CardPileNode pile)
 {
     pile.Previous?.DetachNext();
     pile.Previous = this;
     Next          = pile;
 }