public object Clone()
 {
     return(new TransportTable(TariffMatrix.CloneMatrix(), (Cell[])NeedsRow.Clone(), (Cell[])StocksColumn.Clone())
     {
         FakeColumn = this.FakeColumn,
         FakeRow = this.FakeRow
     });
 }
 public void SetSpecifiedColumnAsFake(int colIndex)
 {
     for (int i = 0; i < TariffMatrix.GetLength(0); i++)
     {
         TariffMatrix[i][colIndex].IsFake = true;
     }
     NeedsRow[colIndex].IsFake = true;
     FakeColumn = colIndex;
     FakeRow    = -1;
 }