public void CallbackQuery(long userId, string data, Telegram.Bot.Types.Message message)
        {
            String s1;

            if (modelPerson.TryIfExist(userId))
            {
                if (data == "Elf" || data == "Orc" || data == "Person" || data == "Gnome")
                {
                    s1 = "Gods do not want you to change the race!";
                    SendOneMessage(userId, s1, view.keyboardHome);
                }
                else
                if (data == "attack" || data == "def")
                {
                    int attackOrDef = 0;
                    if (data == "def")
                    {
                        attackOrDef = 1;
                    }
                    if (modelPerson.LvlUp(userId, attackOrDef))
                    {
                        s1 = view.upStatesOK;
                    }
                    else
                    {
                        s1 = view.upStatesFalse;
                    }
                    SendOneMessage(userId, s1, view.keyboardHome);
                }
                else
                if ((data == "Alliance" || data == "Republic") && modelPerson.GetPerson(userId).fraction == null)
                {
                    int allianceOrRepublic = 0;
                    if (data == "Republic")
                    {
                        allianceOrRepublic = 1;
                    }
                    if (modelPerson.SetFraction(userId, allianceOrRepublic))
                    {
                        s1 = view.setFractionSuccses;
                    }
                    else
                    {
                        s1 = view.setFractionFail;
                    }
                    SendOneMessage(userId, s1, view.keyboardHome);
                }
                else
                if (new Regex(@"^Accept ").IsMatch(data))
                {
                    Guild guild = modelGuild.GuildJoinOut(userId, Convert.ToInt64(data.Split(' ')[1]));
                    if (guild != null)
                    {
                        SendOneMessage(userId, viewGuild.GetGuild(guild), viewGuild.keyboardGuild);
                        Person person = modelPerson.GetObjectByPersonNick(guild.master);
                        SendOneMessage(person.id, viewGuild.inviteAccepted, viewGuild.keyboardGuild);
                    }
                }
            }

            else
            if (data == "Elf" || data == "Orc" || data == "Person" || data == "Gnome")
            {
                if (message.Chat.Username == "" || message.Chat.Username == null)
                {
                    SendOneMessage(userId, view.createNewUserEmptyUsername, view.keyboardHome);
                }
                else
                {
                    Person person = modelPerson.CreateNewUser(userId, message.Chat.Username, data);
                    s1 = "You hav choosen " + data;
                    String s2 = view.States(person, modelPerson.atackAdditional(person.id), modelPerson.defAdditional(person.id));
                    SendTwoMessages(userId, s1, s2, view.keyboardHome);
                }
            }
        }