public <T extends BaseRequest<T, R>, R extends BaseResponse> R execute(BaseRequest<T, R> request) {
        return api.send(request);
    }
@Test
    public void getChat() throws MalformedURLException, URISyntaxException {
        ChatFullInfo chat = bot.execute(new GetChat(groupId)).chat();
        ChatTest.checkFullInfoChat(chat, true);
        assertEquals(ChatFullInfo.Type.supergroup, chat.type());
        assertTrue(chat.title().contains("Test Bot Group"));
        assertTrue(chat.description().contains("New desc"));
        assertEquals(Integer.valueOf(10), chat.slowModeDelay());
        assertNotNull(new URL(chat.inviteLink()).toURI());
        if (chat.pinnedMessage() != null) MessageTest.checkMessage(chat.pinnedMessage());
        assertNull(chat.stickerSetName());
        assertFalse(chat.canSetStickerSet());
        assertEquals(channelId, chat.linkedChatId());
        assertFalse(chat.joinByRequest());
        assertFalse(chat.hasProtectedContent());
        assertNull(chat.messageAutoDeleteTime());
        assertFalse(chat.isForum());
        assertFalse(chat.hasRestrictedVoiceAndVideoMessages());
        assertFalse(chat.hasHiddenMembers());
        assertFalse(chat.hasAggressiveAntiSpamEnabled());
        assertNull(chat.getActiveUsernames());
        assertNull(chat.getEmojiStatusCustomEmojiId());
        assertNull(chat.emojiStatusCustomEmojiId());
        assertNull(chat.emojiStatusExpirationDate());

        chat = bot.execute(new GetChat(chatId)).chat();
        assertNotNull(chat.firstName());
        assertNull(chat.lastName());
        assertNull(chat.bio());
        assertTrue(chat.hasPrivateForwards());

        chat = bot.execute(new GetChat(localGroup)).chat();
        ChatLocation location = chat.location();
        assertNotNull(location);
        assertEquals(60.94062f, location.location().latitude(), 0f);
        assertEquals(76.58071f, location.location().longitude(), 0f);
        assertTrue(location.address().endsWith("Russia"));
        assertTrue(chat.joinToSendMessages());
    }