public static QueryCars.Result.CarScheme Convert(long id, string json)
        {
            var result = JsonConvert.DeserializeObject <RzdRuClientCarScheme>(json);

            var cells = result.Cells.Select(x => new QueryCars.Result.CarSchemeCell
            {
                Type    = x.Type,
                Place   = x.Number.HasValue ? new QueryCars.Result.CarPlace(x.Number.Value, false) : null,
                Content = x.Content,
                Border  = GetCellBorder(x.Style)
            });

            var rowsCount = result.Cells.Length / result.Len;

            var rows = new QueryCars.Result.CarSchemeCell[rowsCount][];

            for (int i = 0; i < rowsCount; i++)
            {
                rows[i] = new QueryCars.Result.CarSchemeCell[result.Len];
                for (int j = 0; j < result.Len; j++)
                {
                    var itemIndex = i * result.Len + j;
                    rows[i][j] = cells.ElementAt(itemIndex);
                }
            }

            return(new QueryCars.Result.CarScheme
            {
                Id = id,
                Rows = rows
            });
        }
        private static QueryCars.Result.CarSchemeCell SetCellStyleClasses(
            QueryCars.Result.CarSchemeCell cell,
            QueryCars.Result.CarPlace place = null
            )
        {
            cell.AppendStyleClass(cell.Type); //!= "XX" ? cell.Type : null;

            if (!String.IsNullOrEmpty(cell.Content))
            {
                if (cell.Content.Contains("Первый этаж"))
                {
                    cell.AppendStyleClass("first-floor");
                }
                else if (cell.Content.Contains("Второй этаж"))
                {
                    cell.AppendStyleClass("second-floor");
                }
            }

            if (cell.Place != null)
            {
                /*if (carCType == 1)
                 * {
                 *  cell.AppendStyleClass("plc");
                 * }*/

                if (cell.Place.Number.ToString().Length > 2)
                {
                    cell.AppendStyleClass("less-letter");
                }

                if (place != null)
                {
                    cell.Place = place;
                    cell.AppendStyleClass($"gender-{place.Gender}");
                    cell.AppendStyleClass("booking");
                }
                else
                {
                    cell.AppendStyleClass("non-booking");
                }
            }

            return(cell);
        }