/// <summary></summary>
 /// <param name="mids">список идентификаторов сообщений, разделенных запятой</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase MarkAsRead(IdList mids)
 {
     return markAsRead(mids);
 }
 /// <summary>Возвращает информацию об аудиозаписях.</summary>
 /// <param name="audios">перечисленные через запятую идентификаторы – идущие через знак подчеркивания id пользователей, которым принадлежат аудиозаписи, и id самих аудиозаписей</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase GetById(IdList audios)
 {
     return getById(audios);
 }
 /// <summary>Возвращает информацию об аудиозаписях.</summary>
 /// <param name="audios">перечисленные через запятую идентификаторы – идущие через знак подчеркивания id пользователей, которым принадлежат аудиозаписи, и id самих аудиозаписей</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase getById(IdList audios)
 {
     manager.AddValueByName("@audios", audios);
     return new VKResponseBase(GetResponse("getById"), IsXMLResponse);
 }
 /// <summary>Возвращает список заметок, созданных пользователем.</summary>
 /// <param name="uid">id пользователя, заметки которого нужно вернуть</param>
 /// <param name="nids">перечисленные через запятую id заметок, входящие в выборку по uid</param>
 /// <param name="sort">сортировка результатов (0 - по дате создания в порядке убывания, 1 - по дате создания в порядке возрастания)</param>
 /// <param name="count">количество сообщений, которое необходимо получить (но не более 100)</param>
 /// <param name="offset">смещение, необходимое для выборки определенного подмножества заметок</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase get(System.Int64? uid, IdList nids, SortOrder? sort, System.Int32? count, System.Int32? offset)
 {
     manager.AddValueByName("@uid", uid);
     manager.AddValueByName("@nids", nids);
     manager.AddValueByName("@sort", sort);
     manager.AddValueByName("@count", count);
     manager.AddValueByName("@offset", offset);
     return new VKResponseBase(GetResponse("get"), IsXMLResponse);
 }
 /// <summary>Возвращает информацию о том добавлен ли текущий пользователь в друзья у указанных пользователей.</summary>
 /// <param name="uids">Список идентификаторов пользователей, раделённых запятыми, статус дружбы с которыми необходимо получить</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase areFriends(IdList uids)
 {
     manager.AddValueByName("@uids", uids);
     return new VKResponseBase(GetResponse("areFriends"), IsXMLResponse);
 }
 /// <summary>Возвращает данные, необходимые для показа списка новостей для текущего пользователя.</summary>
 /// <param name="source_ids">перечисленные через запятую иcточники новостей, новости от которых необходимо получить</param>
 /// <param name="filters">перечисленные через запятую названия списков новостей, которые необходимо получить</param>
 /// <param name="start_time">время, в формате unixtime, начиная с которого следует получить новости для текущего пользователя</param>
 /// <param name="end_time">время, в формате unixtime, до которого следует получить новости для текущего пользователя</param>
 /// <param name="offset">указывает, начиная с какого элемента в данном промежутке времени необходимо получить новости</param>
 /// <param name="from">значение, полученное в поле new_from при последней загруке новостей</param>
 /// <param name="count">указывает, какое максимальное число новостей следует возвращать, но не более 100</param>
 /// <param name="max_photos">Максимальное количество фотографий, информацию о которых необходимо вернуть</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase Get(IdList source_ids = null, NewsFilter? filters = null, DateTime? start_time = null, DateTime? end_time = null, System.Int32? offset = null, string from = null, System.Int32? count = null, System.Int32? max_photos = null)
 {
     return get(source_ids, filters, start_time, end_time, offset, from, count, max_photos);
 }
 /// <summary>Возвращает информацию о заданной группе или о нескольких группах.</summary>
 /// <param name="gids">ID групп, перечисленные через запятую, информацию о которых необходимо получить</param>
 /// <param name="fields">Список полей из информации о группах, которые необходимо получить</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase getById(IdList gids, GroupFields? fields)
 {
     manager.AddValueByName("@gids", gids);
     manager.AddValueByName("@fields", fields);
     return new VKResponseBase(GetResponse("getById"), IsXMLResponse);
 }
 /// <summary>Возвращает значение переменной, название которой передано в параметре</summary>
 /// <param name="key">Строковое название переменной длиной не более 100 символов</param>
 /// <param name="keys">Список ключей, разделённых запятыми</param>
 /// <param name="global">Указывается 1, если необходимо получить глобальную переменную, а не переменную пользователя</param>
 /// <param name="uid">id пользователя, переменная которого считывается, в случае если данные запрашиваются серверным методом</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase get(string key, IdList keys, System.Boolean? global, System.Int64? uid)
 {
     manager.AddValueByName("@key", key);
     manager.AddValueByName("@keys", keys);
     manager.AddValueByName("@global", global);
     manager.AddValueByName("@uid", uid);
     return new VKResponseBase(GetResponse("get"), IsXMLResponse);
 }
 /// <summary>Возвращает значение переменной, название которой передано в параметре</summary>
 /// <param name="keys">Список ключей, разделённых запятыми</param>
 /// <param name="global">Указывается 1, если необходимо получить глобальную переменную, а не переменную пользователя</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase Get(IdList keys, System.Boolean? global = null)
 {
     return get(null, keys, global, null);
 }
 /// <summary>Удаляет сообщение.</summary>
 /// <param name="mids">Список идентификаторов сообщений, разделённых через запятую</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase Delete(IdList mids)
 {
     return delete(mids);
 }
 /// <summary>Возвращает сообщения по их ID.</summary>
 /// <param name="mids">ID сообщений, которые необходимо вернуть, разделенные запятыми (не более 100)</param>
 /// <param name="preview_length">Количество слов, по которому нужно обрезать сообщение</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase GetById(IdList mids, System.Int32? preview_length = null)
 {
     return getById(null, mids, preview_length);
 }
 /// <summary></summary>
 /// <param name="mids">список идентификаторов сообщений, разделенных запятой</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase markAsRead(IdList mids)
 {
     manager.AddValueByName("@mids", mids);
     return new VKResponseBase(GetResponse("markAsRead"), IsXMLResponse);
 }
 /// <summary>Возвращает сообщения по их ID.</summary>
 /// <param name="mid">ID сообщения, если необходимо получить одно сообщение</param>
 /// <param name="mids">ID сообщений, которые необходимо вернуть, разделенные запятыми (не более 100)</param>
 /// <param name="preview_length">Количество слов, по которому нужно обрезать сообщение</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase getById(System.Int64? mid, IdList mids, System.Int32? preview_length)
 {
     manager.AddValueByName("@mid", mid);
     manager.AddValueByName("@mids", mids);
     manager.AddValueByName("@preview_length", preview_length);
     return new VKResponseBase(GetResponse("getById"), IsXMLResponse);
 }
 /// <summary>Удаляет сообщение.</summary>
 /// <param name="mids">Список идентификаторов сообщений, разделённых через запятую</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase delete(IdList mids)
 {
     manager.AddValueByName("@mids", mids);
     return new VKResponseBase(GetResponse("delete"), IsXMLResponse);
 }
 /// <summary>Разрешает показывать новости от заданных пользователей и групп в ленте новостей текущего пользователя.</summary>
 /// <param name="uids">перечисленные через запятую идентификаторы друзей пользователя, новости от которых необходимо вернуть в ленту новостей текущего пользователя</param>
 /// <param name="gids">перечисленные через запятую идентификаторы групп пользователя, новости от которых необходимо вернуть в ленту новостей текущего пользователя</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase DeleteBan(IdList uids, IdList gids = null)
 {
     return deleteBan(uids, gids);
 }
 /// <summary>Возвращает значение переменной, название которой передано в параметре</summary>
 /// <param name="keys">Список ключей, разделённых запятыми</param>
 /// <param name="uid">id пользователя, переменная которого считывается, в случае если данные запрашиваются серверным методом</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase Get(IdList keys, System.Int64? uid)
 {
     return get(null, keys, null, uid);
 }
 /// <summary>Разрешает показывать новости от заданных пользователей и групп в ленте новостей текущего пользователя.</summary>
 /// <param name="gids">перечисленные через запятую идентификаторы групп пользователя, новости от которых необходимо вернуть в ленту новостей текущего пользователя</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase DeleteBan(IdList gids)
 {
     return deleteBan(null, gids);
 }
 /// <summary>Возвращает информацию о видеозаписях.</summary>
 /// <param name="videos">перечисленные через запятую идентификаторы – идущие через знак подчеркивания id пользователей, которым принадлежат видеозаписи, и id самих видеозаписей</param>
 /// <param name="width">требуемая ширина изображений видеозаписей в пикселах</param>
 /// <param name="count">количество возвращаемых видеозаписей (максимум 200)</param>
 /// <param name="offset">смещение относительно первой найденной видеозаписи для выборки определенного подмножества</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase Get(IdList videos, System.Int32? width = null, System.Int32? count = null, System.Int32? offset = null)
 {
     return get(videos, null, null, null, width, count, offset);
 }
 /// <summary>Возвращает список записей со стен пользователей по их идентификаторам.</summary>
 /// <param name="posts">перечисленные через запятую идентификаторы, которые представляют собой идущие через знак подчеркивания id владельцев стен и id самих записей на стене</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase GetById(IdList posts)
 {
     return getById(posts);
 }
 /// <summary>Возвращает информацию о видеозаписях.</summary>
 /// <param name="videos">перечисленные через запятую идентификаторы – идущие через знак подчеркивания id пользователей, которым принадлежат видеозаписи, и id самих видеозаписей</param>
 /// <param name="uid">id пользователя, видеозаписи которого нужно вернуть</param>
 /// <param name="gid">id группы, видеозаписи которой нужно вернуть</param>
 /// <param name="aid">id альбома видеозаписи из которого нужно вернуть</param>
 /// <param name="width">требуемая ширина изображений видеозаписей в пикселах</param>
 /// <param name="count">количество возвращаемых видеозаписей (максимум 200)</param>
 /// <param name="offset">смещение относительно первой найденной видеозаписи для выборки определенного подмножества</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase get(IdList videos, System.Int64? uid, System.Int64? gid, System.Int64? aid, System.Int32? width, System.Int32? count, System.Int32? offset)
 {
     manager.AddValueByName("@videos", videos);
     manager.AddValueByName("@uid", uid);
     manager.AddValueByName("@gid", gid);
     manager.AddValueByName("@aid", aid);
     manager.AddValueByName("@width", width);
     manager.AddValueByName("@count", count);
     manager.AddValueByName("@offset", offset);
     return new VKResponseBase(GetResponse("get"), IsXMLResponse);
 }
 /// <summary>Возвращает информацию о заданной группе или о нескольких группах.</summary>
 /// <param name="gids">ID групп, перечисленные через запятую, информацию о которых необходимо получить</param>
 /// <param name="fields">Список полей из информации о группах, которые необходимо получить</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase GetById(IdList gids, GroupFields? fields = null)
 {
     return getById(gids, fields);
 }
 /// <summary>Разрешает показывать новости от заданных пользователей и групп в ленте новостей текущего пользователя.</summary>
 /// <param name="uids">перечисленные через запятую идентификаторы друзей пользователя, новости от которых необходимо вернуть в ленту новостей текущего пользователя</param>
 /// <param name="gids">перечисленные через запятую идентификаторы групп пользователя, новости от которых необходимо вернуть в ленту новостей текущего пользователя</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase deleteBan(IdList uids, IdList gids)
 {
     manager.AddValueByName("@uids", uids);
     manager.AddValueByName("@gids", gids);
     return new VKResponseBase(GetResponse("deleteBan"), IsXMLResponse);
 }
 /// <summary>Возвращает список заметок, созданных пользователем.</summary>
 /// <param name="uid">id пользователя, заметки которого нужно вернуть</param>
 /// <param name="nids">перечисленные через запятую id заметок, входящие в выборку по uid</param>
 /// <param name="sort">сортировка результатов (0 - по дате создания в порядке убывания, 1 - по дате создания в порядке возрастания)</param>
 /// <param name="count">количество сообщений, которое необходимо получить (но не более 100)</param>
 /// <param name="offset">смещение, необходимое для выборки определенного подмножества заметок</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase Get(System.Int64? uid, IdList nids = null, SortOrder? sort = null, System.Int32? count = null, System.Int32? offset = null)
 {
     return get(uid, nids, sort, count, offset);
 }
 /// <summary>Возвращает данные, необходимые для показа списка новостей для текущего пользователя.</summary>
 /// <param name="source_ids">перечисленные через запятую иcточники новостей, новости от которых необходимо получить</param>
 /// <param name="filters">перечисленные через запятую названия списков новостей, которые необходимо получить</param>
 /// <param name="start_time">время, в формате unixtime, начиная с которого следует получить новости для текущего пользователя</param>
 /// <param name="end_time">время, в формате unixtime, до которого следует получить новости для текущего пользователя</param>
 /// <param name="offset">указывает, начиная с какого элемента в данном промежутке времени необходимо получить новости</param>
 /// <param name="from">значение, полученное в поле new_from при последней загруке новостей</param>
 /// <param name="count">указывает, какое максимальное число новостей следует возвращать, но не более 100</param>
 /// <param name="max_photos">Максимальное количество фотографий, информацию о которых необходимо вернуть</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase get(IdList source_ids, NewsFilter? filters, DateTime? start_time, DateTime? end_time, System.Int32? offset, string from, System.Int32? count, System.Int32? max_photos)
 {
     manager.AddValueByName("@source_ids", source_ids);
     manager.AddValueByName("@filters", filters);
     manager.AddValueByName("@start_time", start_time);
     manager.AddValueByName("@end_time", end_time);
     manager.AddValueByName("@offset", offset);
     manager.AddValueByName("@from", from);
     manager.AddValueByName("@count", count);
     manager.AddValueByName("@max_photos", max_photos);
     return new VKResponseBase(GetResponse("get"), IsXMLResponse);
 }
 /// <summary>Редактирует существующий список друзей текущего пользователя.</summary>
 /// <param name="lid">идентификатор существующего списка друзей</param>
 /// <param name="name">название списка друзей</param>
 /// <param name="uids">перечисленные через запятую идентификаторы друзей пользователя, которым необходимо поставить метку</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase editList(System.Int64? lid, string name, IdList uids)
 {
     manager.AddValueByName("@lid", lid);
     manager.AddValueByName("@name", name);
     manager.AddValueByName("@uids", uids);
     return new VKResponseBase(GetResponse("editList"), IsXMLResponse);
 }
 /// <summary>Запрещает показывать новости от заданных пользователей и групп в ленте новостей текущего пользователя.</summary>
 /// <param name="uids">перечисленные через запятую идентификаторы друзей пользователя, новости от которых необходимо скрыть из ленты новостей текущего пользователя</param>
 /// <param name="gids">перечисленные через запятую идентификаторы групп пользователя, новости от которых необходимо скрыть из ленты новостей текущего пользователя</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase AddBan(IdList uids, IdList gids = null)
 {
     return addBan(uids, gids);
 }
 /// <summary>Возвращает список аудиозаписей пользователя или группы.</summary>
 /// <param name="uid">id пользователя, которому принадлежат аудиозаписи (по умолчанию — текущий пользователь) </param>
 /// <param name="gid">id группы, которой принадлежат аудиозаписи</param>
 /// <param name="album_id">id альбома, аудиозаписи которого необходимо вернуть (по умолчанию возвращаются аудиозаписи из всех альбомов)</param>
 /// <param name="aids">перечисленные через запятую id аудиозаписей, входящие в выборку по uid или gid</param>
 /// <param name="need_user">если этот параметр равен 1, сервер возвратит базовую информацию о владельце аудиозаписей в структуре user (id, photo, name, name_gen)</param>
 /// <param name="count">количество возвращаемых аудиозаписей</param>
 /// <param name="offset">смещение относительно первой найденной аудиозаписи для выборки определенного подмножества</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 private VKResponseBase get(System.Int64? uid, System.Int64? gid, System.Int64? album_id, IdList aids, System.Boolean? need_user, System.Int32? count, System.Int32? offset)
 {
     manager.AddValueByName("@uid", uid);
     manager.AddValueByName("@gid", gid);
     manager.AddValueByName("@album_id", album_id);
     manager.AddValueByName("@aids", aids);
     manager.AddValueByName("@need_user", need_user);
     manager.AddValueByName("@count", count);
     manager.AddValueByName("@offset", offset);
     return new VKResponseBase(GetResponse("get"), IsXMLResponse);
 }
 /// <summary>Запрещает показывать новости от заданных пользователей и групп в ленте новостей текущего пользователя.</summary>
 /// <param name="gids">перечисленные через запятую идентификаторы групп пользователя, новости от которых необходимо скрыть из ленты новостей текущего пользователя</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase AddBan(IdList gids)
 {
     return addBan(null, gids);
 }
 /// <summary>Возвращает список аудиозаписей пользователя или группы.</summary>
 /// <param name="album_id">id альбома, аудиозаписи которого необходимо вернуть (по умолчанию возвращаются аудиозаписи из всех альбомов)</param>
 /// <param name="aids">перечисленные через запятую id аудиозаписей, входящие в выборку по uid или gid</param>
 /// <param name="need_user">если этот параметр равен 1, сервер возвратит базовую информацию о владельце аудиозаписей в структуре user (id, photo, name, name_gen)</param>
 /// <param name="count">количество возвращаемых аудиозаписей</param>
 /// <param name="offset">смещение относительно первой найденной аудиозаписи для выборки определенного подмножества</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase Get(long album_id, IdList aids = null, System.Boolean? need_user = null, System.Int32? count = null, System.Int32? offset = null)
 {
     return get(null, null, album_id, aids, need_user, count, offset);
 }
 /// <summary>Помечает сообщения, как непрочитанные.</summary>
 /// <param name="mids">список идентификаторов сообщений, разделенных запятой</param>
 /// <returns>Ответ сервера в XML или JSON формате.</returns>
 public VKResponseBase MarkAsNew(IdList mids)
 {
     return markAsNew(mids);
 }