логотип








Обзор
Как использовать
Получить прокси
Продукты
Прокси
  • Socks5 Прокси
  • Резидентные прокси
  • Неограниченный прокси-план
  • Серверные прокси
  • Статические резидентные прокси
  • Вращающийся ISP-прокси
Меню
Мой счет
кошелек ABC NEW
Корпоративный обмен CDK
Реферальный план 10% комиссия
Документация и помощь
  • Документация
  • Гид пользователя
  • Видеоурок







Цены
cheap socks5 proxy Начинается с
     $0.045/ip
$0.045/IP
$0.045/IP

Прокси

VIP
Получить прокси
Авторизация пользователя и пароля
Извлечение API
Прокси-менеджер
Управление учетной записью аутентификации
Конфигурация белого списка IP-адресов
Пример

{{userInfo.flow_balance}}G

---

План жилого прокси (Трафик)
Перезарядка

{{userInfo.static_no_count}} IPs

---

Доступные IP-адреса

Статический жилой план
Перезарядка

{{farmsDay(userInfo.pack_last_time)}}

---

Доступное время

Безлимитный план (трафик)
Перезарядка

{{userInfo.exclusive_balance}} IPs

---

Доступные IP-адреса

Серверные прокси
Перезарядка

{{userInfo.flow_isp}}G

---

Вращающийся ISP-прокси
Перезарядка
Прокси-генератор

Выбор пула IP-прокси

{{ item.label }}
Выберите точный прокси или сохраните случайный прокси. позиция.

Область

элемент.значение элемент.значение {{ item.label }}
Вот ваш окончательный IP:PORT
Советы: Если выбрано значение по умолчанию, оно будет соответствовать серверу в регион, где находится IP.

Прокси-адрес

Выберите IP

Другие методы поиска

Закреплено: Сохраняйте один и тот же IP-адрес до 120 минут с помощью липкий сеанс.
Ротация: выберите чередующийся сеанс, чтобы каждый раз получать новый IP-адрес. запрос.

IP-режим

Продолжительность IP (1-120 минуты)

 

Автоматическое переключение при сбое IP
Поддерживает ручное управление вкл/выкл. При включении отображается ссылка переключения IP текущей учетной записи аутентификации.
Каждый запрос может напрямую переключать экспортный IP в пределах диапазона действия IP.
Запрос один раз, переключение один раз.
Параметры сеанса можно вручную изменять в соответствии с потребностями пользователя.

Переключение IP

Состояние

Город

Вы можете создавать и распределять трафик по субаккаунтам, самостоятельно или напрямую использовать свою основную учетную запись.

Дополнительные пользователи

или

Создание пользователей

Имя пользователя

Пароль

Тестовая команда

Копировать ссылку

Создать список прокси

ФОРМАТ ПРОКСИ

КОЛИЧЕСТВО

ПАРАМЕТРЫ ИНТЕРФЕЙСА
зона
обязательный

Идентификатор пула прокси

область
Необязательно

Регион, не заполняйте глобальное смешанное распределение по умолчанию.

ул.
Необязательно

Штат, содержится в некоторых странах, по умолчанию — случайное, если оставить пустым

город
Необязательно

Город, по умолчанию — случайный, если оставить пустым.

сессия
Необязательно

Конфигурация, когда требуется фиксированный IP-адрес, определяется пользователем

Время сеанса
Необязательно

Используется вместе с сеансом для настройки времени устаревания IP, до до 120 минут

ПРИМЕР

зона-Идентификатор пула прокси
[счет]-зона-abc:[пароль]
Пример
#локон -х ***.abcproxy.com:4951 -У "[счет]-зона-abc:[пароль]" ipinfo.io


область, край-назначенный регион
[счет]-зона-abc-регион-США:[пароль]
регион-США Америка
Пример
#локон -х ***.abcproxy.com:4951 -ты "[счет]-зона-abc-регион-США:[пароль]" ipinfo.io

ул-назначенное государство
[счет]-зона-abc-регион-США-Калифорния:[пароль]
Сент-Калифорния Калифорния
Пример
#локон -х ***.abcproxy.com::4951 -ты "[счет]-зона-abc-регион-США-Калифорния:[пароль]" ipinfo.io

город-назначенный город
[счет]-зона-abc-регион-США-Калифорния-город-Нью-Йорк:[пароль]
город-Нью-ЙоркНью-Йорк
Пример
#локон -х ***.abcproxy.com:4951 -ты "[счет]-зона-abc-регион-США-Калифорния-город-Нью-Йорк:[пароль]" ipinfo.io

сессия-Исправлен экспортный ip
sed, чтобы указать, что вы хотите зафиксировать выходной IP-адрес на период время, без указания значения по умолчанию 5 минут
[счет]-зона-abc-регион-США-Калифорния-город-Нью-Йорк-сеанс-b5b36885:[пароль]
сессия
Пример
#локон -х ***.abcproxy.com:4951-ты "[счет]-зона-abc-регион-США-Калифорния-город-Нью-Йорк-сеанс-b5b36885:[пароль]" ipinfo.io

SessTime- Укажите выходной IP с максимальной длительностью 120 минут.
Используется с сеансом для указания фиксированного IP-адреса выхода. Время жизни.
[счет]-зона-abc-регион-США-Калифорния-Сити-Нью-Йорк-сессия-b5b36885-СессТайм-120:[пароль]
СессТайм-120 120 мин
Пример
#локон -х ***.abcproxy.com:4951-ты "[счет]-зона-abc-регион-США-Калифорния-Сити-Нью-Йорк-сессия-b5b36885-СессТайм-120:[пароль]" ipinfo.io

Назад

Список прокси

Пакетное удаление
не выбирать выбирать Имя
Дата создания, время
Область
Тип сеанса
Авторизация по логину+проходить
Число
Действия
не выбирать выбирать {{info.name}}
Редактировать
Сохранять
{{formatDateVue(info.create_time)}}
{{info.region}}{{info.state !="" ? "-"+info.state : "" }}{{info.city !="" ? "-"+info.city : "" }}
{{info.ip_mode == "rotating" ? info.ip_mode : info.ip_mode +"-"+ info.ip_duration }}
{{info.sub_username}}:{{info.password}}
{{info.quantity}}
Экспорт
Удалить

{{userInfo.flow_balance}}G

---

План жилого прокси (Трафик)
Перезарядка

{{userInfo.static_no_count}} IPs

---

Доступные IP-адреса

Статический жилой план
Перезарядка

{{farmsDay(userInfo.pack_last_time)}}

---

Доступное время

Безлимитный план (трафик)
Перезарядка

{{userInfo.exclusive_balance}} IPs

---

Доступные IP-адреса

Серверные прокси
Перезарядка
Прокси-генератор

модель

Количество экстракции

Выберите регион

Страна Страна

{{info.label}}

Посмотреть больше >

Выберите регион

Выберите регион

Закрепление: сохранение одного и того же IP-адреса в закрепленном сеансе в течение 5 минут.
Ротация: выберите сеанс ротации, чтобы получать новый IP-адрес для каждого запроса.

IP-режим

Другие настройки

ПРОТОКОЛ

ФОРМАТ

РАЗДЕЛИТЕЛЬ


Выберите регион

Популярный

Страна Страна

{{info.label}}

Другие

{{info.label}}({{info.value}})
Подтверждать

ТестКоманда

ПАРАМЕТР API DSUCLARATION
num

СЧИТАТЬ

regions

Страна

protocol

Протокол

return-type

Формат: TXT JSON.

lh

Разделители ( 1:\ р \ №2:/ 3-й номер:\р 4:\n5:\t6:Пользовательские разделители )

st

Пользовательские разделители

ПРИМЕР

{
    "код" : 0,
    "успех": истинный,
    "сообщение": "0",
    "запрос_айпи": "запросить адрес",
    "данные": [
    {"айпи": "47.244.192.12","порт": 15698}
   ]
}

АННОТАЦИЯ РЕЗУЛЬТАТОВ
код

0 указывает на успех, а I указывает на неудачу

IP

ИП

успех

True указывает на успех, а false указывает на неудачу.

порт

порт

Управление учетной записью аутентификации

Имя учетной записи Пароль Лимит использования трафика Потребление трафика Добавить время Положение дел Примечание Работать
    закрывать

    Советы

    После удаления учетной записи пароль учетной записи становится недействительным, подтвердить удаление?

    Отмена
    Подтверждать
    закрывать

    Учетная запись аутентификации

    * Имя учетной записи
    * Пароль
    Лимит трафика г
    Примечание
    Status

    Disable Enable

    Enable Disabled

    Отмена
    Подтверждать

    Настройка белого списка IP-адресов

    Текущий IP ***.***.***.***
    + Добавить белый список
    ИП Добавить время Примечание состояние Работать

      API-интерфейс белого списка

      Цель API-ссылка
      Добавить белый список
      Удалить белый список
      Посмотреть белый список
      закрывать

      Советы

      После удаления IP IP становится недействительным, подтвердить удаление?

      Отмена
      Подтверждать
      закрывать

      Добавить белый список

      * Айпи адрес
      ( Если вы используете общедоступный узел, удалите белый список после использования. )
      Примечание
      Отмена
      Подтверждать
      close

      Кончик

      IP-адрес определен как общедоступный и в настоящее время привязан к [ ]! Вы уверены, что хотите продолжить связывание?

      Отмена
      Подтверждать

      Столкнулись с проблемами? Связаться с нами

      Пример

      
      
      
                #include "stdafx.h"
                #include "curl/curl.h"
                #pragma comment(lib, "libcurl.lib")
                static size_t write_buff_data(char *buffer, size_t size, size_t nitems, void *outstream)
                {
                  memcpy(outstream, buffer, nitems*size);
                  return nitems*size;
                }
                
                int GetUrlHTTP(char *url, char *buff)
                {
                  CURL *curl;
                  CURLcode res;
                  curl = curl_easy_init();
                  if (curl)
                  {
                    curl_easy_setopt(curl, CURLOPT_PROXY,"http://host:port");
                    curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, "users:password");
                    curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void*)buff);
                    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_buff_data);
                    curl_easy_setopt(curl, CURLOPT_URL, url);
                    curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, 10L);
                    curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, 50L);
                    curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, 2000000L);
                
                    res = curl_easy_perform(curl);
                    curl_easy_cleanup(curl);
                    if (res == CURLE_OK){
                      return res;
                    }else {
                      printf("error:%d\n", res);
                      MessageBox(NULL, TEXT("Get Ip Error"), TEXT("Help"), MB_ICONINFORMATION | MB_YESNO);
                    }
                  }
                  return res;
                }
                
                int GetUrlSocks5(char *url, char *buff)
                {
                  CURL *curl;
                  CURLcode res;
                  curl = curl_easy_init();
                  if (curl)
                  {
                    curl_easy_setopt(curl, CURLOPT_PROXY, "socks5://host:port");
                    curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, "users:password");
                    curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void*)buff);
                    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_buff_data);
                    curl_easy_setopt(curl, CURLOPT_URL, url);
                    curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, 10L);
                    curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, 50L);
                    curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, 2000000L);
                    res = curl_easy_perform(curl);
                    curl_easy_cleanup(curl);
                    if (res == CURLE_OK) {
                      return res;
                    }
                    else {
                      printf("error:%d\n", res);
                      MessageBox(NULL, TEXT("Get Ip Error"), TEXT("Help"), MB_ICONINFORMATION | MB_YESNO);
                    }
                  }
                  return res;
                }
                
                int GetUrl(char *url, char *buff)
                {
                  CURL *curl;
                  CURLcode res;
                  curl = curl_easy_init();
                  if (curl)
                  {
                    curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void*)buff);
                    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_buff_data);
                    curl_easy_setopt(curl, CURLOPT_URL, url);
                    curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, 10L);
                    curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, 50L);
                    curl_easy_setopt(curl, CURLOPT_MAX_RECV_SPEED_LARGE, 2000000L);
                    res = curl_easy_perform(curl);
                    curl_easy_cleanup(curl);
                    if (res == CURLE_OK)
                    {
                      return res;
                    }
                    else {
                      printf("error:%d\n", res);
                      MessageBox(NULL, TEXT("Get Ip Error"), TEXT("Help"), MB_ICONINFORMATION | MB_YESNO);
                    }
                  }
                  return res;
                }
                
                int main()
                {
                  char *buff=(char*)malloc(1024*1024);
                  memset(buff, 0, 1024 * 1024);
                  //Test 1
                  GetUrl("http://ipinfo.io", buff);
                  printf("No Proxy:%s\n", buff);
                  //Test 2
                  memset(buff, 0, 1024 * 1024);
                  GetUrlHTTP("http://ipinfo.io", buff);
                  printf("Proxy By Http:%s\n", buff);
                  //Test 3
                  memset(buff, 0,1024 * 1024);
                  GetUrlSocks5("http://ipinfo.io", buff);
                  printf("Proxy by socks5:%s\n", buff);
                
                  Sleep(1000 * 1000);
                  free(buff);
                    return 0;
                }
                
      
      
      package main
      
      
      
      import (
            
          "context"
            
          "fmt"
            
          "golang.org/x/net/proxy"
            
          "io/ioutil"
            
          "net"
            
          "net/http"
            
          "net/url"
            
          "strings"
            
          "time"
            
      )
            
            
            
      var testApi = "https://api.myip.la/en?json"
            
            
            
      func main() {
            
          getMyIp()
            
            
            
          //Accounts
            
          var proxyIP = "ip:port"
            
          go httpProxy(proxyIP, "", "")
            
          go Socks5Proxy(proxyIP, "", "")
            
          time.Sleep(time.Minute)
            
      }
            
            
            
      func getMyIp() {
            
          rsp, err := http.Get("https://api.myip.la/en?json")
            
          if err != nil {
            
              fmt.Println("Failed to get native IP", err.Error())
            
              return
            
          }
            
          defer rsp.Body.Close()
            
          body, err := ioutil.ReadAll(rsp.Body)
            
          if err != nil {
            
              fmt.Println(err.Error())
            
              return
            
          }
            
          fmt.Println(time.Now().Format("2006-01-02 15:04:05 07"), "local ip:", string(body))
            
            
            
      }
            
            
            
      //http proxy
            
      func httpProxy(proxyUrl, user, pass string) {
            
          defer func() {
            
              if err := recover(); err != nil {
            
        fmt.Println(time.Now().Format("2006-01-02 15:04:05 07"), "http", "Return information:", err)
            
              }
            
          }()
            
          urli := url.URL{}
            
            
            
          if !strings.Contains(proxyUrl, "http") {
            
              proxyUrl = fmt.Sprintf("http://%s", proxyUrl)
            
          }
            
            
            
          urlProxy, _ := urli.Parse(proxyUrl)
            
          if user != "" && pass != "" {
            
              urlProxy.User = url.UserPassword(user, pass)
            
          }
            
            
            
          client := &http.Client{
            
              Transport: &http.Transport{
            
        Proxy: http.ProxyURL(urlProxy),
            
              },
            
          }
            
          rqt, err := http.NewRequest("GET", testApi, nil)
            
          if err != nil {
            
              panic(err)
            
              return
            
          }
            
          response, err := client.Do(rqt)
            
          if err != nil {
            
              panic(err)
            
              return
            
          }
            
            
            
          defer response.Body.Close()
            
          body, _ := ioutil.ReadAll(response.Body)
            
          fmt.Println(time.Now().Format("2006-01-02 15:04:05 07"), proxyUrl, "【http success】", "Return information:", response.Status, string(body))
            
            
            
          return
            
      }
            
            
            
      //Socks5 proxy
            
      func Socks5Proxy(proxyUrl, user, pass string) {
            
            
            
          defer func() {
            
              if err := recover(); err != nil {
            
        fmt.Println(time.Now().Format("2006-01-02 15:04:05 07"), proxyUrl, " Return information:", err)
            
              }
            
          }()
            
            
            
          var userAuth proxy.Auth
            
          if user != "" && pass != "" {
            
              userAuth.User = user
            
              userAuth.Password = pass
            
          }
            
          dialer, err := proxy.SOCKS5("tcp", proxyUrl, &userAuth, proxy.Direct)
            
          if err != nil {
            
              panic(err)
            
          }
            
          httpClient := &http.Client{
            
              Transport: &http.Transport{
            
        DialContext: func(ctx context.Context, network, addr string) (conn net.Conn, err error) {
            
            return dialer.Dial(network, addr)
            
        },
            
              },
            
              Timeout: time.Second * 10,
            
          }
            
            
            
          //Request Network
            
          if resp, err := httpClient.Get(testApi); err != nil {
            
              panic(err)
            
          } else {
            
              defer resp.Body.Close()
            
              body, _ := ioutil.ReadAll(resp.Body)
            
              fmt.Println(time.Now().Format("2006-01-02 15:04:05 07"), proxyUrl, "【socks5 success】", " Return information:", string(body))
            
          }
            
      }
      
      
      #!/usr/bin/env node
      
      require('request-promise')({
      
          url: 'https://ipinfo.io',
      
          proxy: 'http://ip:port',
          
          })
      
      .then(function(data){ console.log(data); },
      
          function(err){ console.error(err); });
            
      
      
      <?php
      
      // Target page to visit
            
      $targetUrl = "www.google.com";
            
      // proxy server
            
      $proxyServer = "http://{{ip}:{{domain}}";
            
            
            
      // Tunnel Identity Information
            
      $ch = curl_init();
            
      curl_setopt($ch, CURLOPT_URL, $targetUrl);
            
      curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, false);
            
      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            
            
            
      // Setting up a proxy server
            
      curl_setopt($ch, CURLOPT_PROXYTYPE, 0); //http
            
      // curl_setopt($ch, CURLOPT_PROXYTYPE, 5); //sock5
            
      curl_setopt($ch, CURLOPT_PROXY, $proxyServer);
            
            
            
      // Set Tunnel Verification Information
            
      curl_setopt($ch, CURLOPT_PROXYAUTH, CURLAUTH_BASIC);
            
      curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;)");
            
      curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
            
      curl_setopt($ch, CURLOPT_TIMEOUT, 5);
            
      curl_setopt($ch, CURLOPT_HEADER, true);
            
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            
      $result = curl_exec($ch);
            
      $err = curl_error($ch);
            
            
            
      curl_close($ch);
            
            
            
      var_dump($err);
            
      var_dump($result);
      
      
      package demo;
      
      
      
          import okhttp3.OkHttpClient;
      
          import okhttp3.Request;
      
      
      
          import java.io.IOException;
      
          import java.net.InetSocketAddress;
      
          import java.net.Proxy;
      
      
      
          /**
      
          * compile 'com.squareup.okhttp3:okhttp:3.10.0'
      
          */
      
          class ApiProxyJava {
      
              public static void main(String[] args) throws IOException {
      
        testHttpWithOkHttp();
      
        testSocks5WithOkHttp();
      
              }
      
      
      
              public static void testHttpWithOkHttp() throws IOException {
      
        String url = "http://api.myip.la/en?json";
      
        Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("ip", 2000));
      
        OkHttpClient client = new OkHttpClient().newBuilder().proxy(proxy).build();
      
      
      
        Request request = new Request.Builder().url(url).build();
      
        okhttp3.Response response = client.newCall(request).execute();
      
        String responseString = response.body().string();
      
        System.out.println(responseString);
      
              }
      
      
      
              public static void testSocks5WithOkHttp() throws IOException {
      
        String url = "http://api.myip.la/en?json";
      
        Proxy proxy = new Proxy(Proxy.Type.SOCKS, new InetSocketAddress("ip", 8080));
      
        OkHttpClient client = new OkHttpClient().newBuilder().proxy(proxy).build();
      
      
      
        Request request = new Request.Builder().url(url).build();
      
        okhttp3.Response response = client.newCall(request).execute();
      
        String responseString = response.body().string();
      
        System.out.println(responseString);
      
              }
      
          }
      
            
      
      
      # coding=utf-8
      
      # !/usr/bin/env python
            
      import json
            
      import threading
            
      import time
            
      import requests as rq
            
            
            
      headers = {
            
          "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0",
            
          "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
            
          "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",
            
          "Accept-Encoding": "gzip, deflate, br"
            
      }
            
      testUrl = 'https://api.myip.la/en?json'
            
            
            
            
            
      # The core business
            
      def testPost(host, port):
            
          proxies = {
            
              'http': 'http://{}:{}'.format(host, port),
            
              'https': 'http://{}:{}'.format(host, port),
            
          }
            
          res = ""
            
            
            
          while True:
            
              try:
            
        res = rq.get(testUrl, proxies=proxies, timeout=5)
            
        # print(res.status_code)
            
        print(res.status_code, "***", res.text)
            
        break
            
              except Exception as e:
            
        print(e)
            
        break
            
            
            
          return
            
            
            
            
            
      class ThreadFactory(threading.Thread):
            
          def __init__(self, host, port):
            
              threading.Thread.__init__(self)
            
              self.host = host
            
              self.port = port
            
            
            
          def run(self):
            
              testPost(self.host, self.port)
            
            
            
            
            
      # Extract the link to the proxy  Return value of json type
            
      tiqu = 'Extract the link'
            
            
            
      while 1 == 1:
            
          # Extract 10 at a time and put them into the thread
            
          resp = rq.get(url=tiqu, timeout=5)
            
          try:
            
              if resp.status_code == 200:
            
        dataBean = json.loads(resp.text)
            
              else:
            
        print("failure")
            
        time.sleep(1)
            
        continue
            
          except ValueError:
            
              print("failure")
            
              time.sleep(1)
            
              continue
            
          else:
            
              # Parsing json arrays
            
              print("code=", dataBean["code"])
            
              code = dataBean["code"]
            
              if code == 0:
            
        threads = []
            
        for proxy in dataBean["data"]:
            
            threads.append(ThreadFactory(proxy["ip"], proxy["port"]))
            
        for t in threads:  # Open the thread
            
            t.start()
            
            time.sleep(0.01)
            
        for t in threads:  # Blocking threads
            
            t.join()
            
          # break
            
          time.sleep(1)
            
      
      ABCПрокси

      Оплата

      Места продления:    НАС*5 , Великобритания*10     Повторно выбрать
      Выберите время продления:
        Скидка
        (0% off) $0
        Общий: $0

        ЕСТЬ КОД КУПОНА?

        Применять

        Выберите способ оплаты

        ABC S5 Proxy ервер, которому доверяют тысячи компаний с 2018 года. Идеально подходит для безопасного доступа к локализованному контенту и профессиональных решений для веб-сканирования.

        contact

        Связаться с нами

        Полное имя

        Необходимый

        Название компании

        Требуется название компании

        Адрес электронной почты компании

        Ошибка формата электронной почты

        Номер телефона.

        ABCProxy +1

        Требуется номер телефона

        ABCProxy будет обрабатывать ваши данные, чтобы управлять вашим запросом и информировать вас о наших услугах. Для получения дополнительной информации посетите наш Политика конфиденциальности.