//private readonly IAlphabetEncoder _dsa;
        //public HistoryPresentation()
        //{

        //    _dsa = EncoderFactory
        //   .CreateEncoder(EncoderType.Trithemius)
        //     .SetMonoAlphabet(Alphabet.GetMono(MonoAlphabet.UTF16))
        //   .Configure(79, new Func<int, int>(x => x +2));
        //}

        public void AddHistory(RequestHistory requestHistory)
        {
            if (!HistoryHolder.HistoryCodingEntity.Any(p => p.Name.ToLower()
                                                       .Equals(requestHistory?.Name?.ToLower())))
            {
                HistoryHolder.HistoryCodingEntity.Add(new HistoryCodingEntity()
                {
                    Name = requestHistory?.Name,
                });
            }

            HistoryCodingEntity historyCodingEntity =
                HistoryHolder.HistoryCodingEntity.FirstOrDefault(p => p.Name.ToLower()
                                                                 .Equals(requestHistory?.Name?.ToLower()));

            HistoryDetailByCodingEntity historyDetailByCodingEntity =
                historyCodingEntity.HistoryDetailByCodingEntity
                .FirstOrDefault(p => p.GuidId.Equals(requestHistory.GuidId));

            if (historyDetailByCodingEntity == null)
            {
                historyDetailByCodingEntity = new HistoryDetailByCodingEntity()
                {
                    GuidId     = requestHistory.GuidId,
                    CodingType = requestHistory.CodingType,
                };

                if (!historyCodingEntity.HistoryDetailByCodingEntity
                    .Contains(historyDetailByCodingEntity))
                {
                    historyCodingEntity.HistoryDetailByCodingEntity
                    .Add(historyDetailByCodingEntity);
                }
            }


            HistoryDetailByAnswerEntity historyDetailByAnswerEntity =
                new HistoryDetailByAnswerEntity()
            {
                Mark          = requestHistory.Mark,
                Answer        = requestHistory.Answer,
                DateTime      = DateTime.Now,
                CorrectAnswer = requestHistory.CorrectAnswer
            };

            historyDetailByCodingEntity.HistoryDetailByAnswerEntity
            .Add(historyDetailByAnswerEntity);

            Serializer();
        }
        GetHistoryDetailByCoding(string name)
        {
            List <Tuple <string, HistoryDetailByCodingEntity> > historyDetailByCodingEntities =
                new List <Tuple <string, HistoryDetailByCodingEntity> > ();

            HistoryCodingEntity historyCodingEntity =
                HistoryHolder.HistoryCodingEntity.FirstOrDefault(p => p.Name.ToLower()
                                                                 .Equals(name.ToLower()));

            if (historyCodingEntity == null)
            {
                return(historyDetailByCodingEntities);
            }

            return(historyCodingEntity.HistoryDetailByCodingEntity
                   .Select(p => new Tuple <string, HistoryDetailByCodingEntity>(name, p)).ToList());
        }