ADB AppControl


Руководство


Руководство пользователя

Обновлено 07.07.2024

Вам потребуется Персональный Компьютер (далее ПК) под управлением ОС Windows 7/8/8.1/10/11 с установленным .NET Framework 4.6.2 или новее (уже есть в большинстве современных Windows) и любое устройство под управлением ОС Android от 7.0 и выше. Поддержка более старых версий android возможна, но не гарантируется.

Может потребоваться:
.NET Framework 4.8 для Windows 7 SP1, 8.1 и 10
.NET Framework 4.6.2 для Windows 8 и 7 без SP1
Visual C++ и это обновление для Windows 7/8
Все файлы можно скачать здесь

Ошибка при запуске. Метод не найден: "!!()[] System.Array.Empty()". Требуется Framework.
Установите .NET Framework 4.8 для Windows 7 SP1, 8.1 и 10 или .NET Framework 4.6.2 для Windows 8 и 7 без SP1. Если на Windows 7 SP1 не устанавливается может помочь вот установка обновления KB3033929 (для x86 здесь).

Запуск программы невозможен, так как на компьютере отсутствует api-ms-win-crt-string-l1-1-0.dll
Установите Visual C++ и обновление для него (выберите версию для вашей ОС).

adb.exe - Ошибка приложения (0xc000007b) при запуске
Установить VC++ и обновление из предыдущего ответа.

Программа зависает во время подключения. Ошибка "Устройство долго не отвечало и было отключено"
Возможно, ваше устройство находится в спящем режиме или режиме энергосбережения. Попробуйте разблокировать экран и подключиться снова.

Не получается выдать разрешение на отладку. Не появлется запрос разрешения.
Попробуйте сделать отзыв прав на отладку на устройстве и снова подключить.

При подключении устройства программа не реагирует. Всегда статус ОТКЛЮЧЕН.
См. раздел Драйвера.

Не работает управление экраном (scrcpy)
Проверьте, включены ли все необходимые опции в Настройках для разработчиков на устройстве. На Xiaomi необходимо включить опцию Отладка по USB (настройки безопасности).

Не устанавливается ACBridge. [Error]:Cannot to install ACBridge.
См. Установка ACBridge.

Программа устанавливает сервисное приложение на мое устройство... Это безопасно?
Да, полностью безопасно. Приложение ACBridge НЕ имеет никаких разрешений кроме доступа к памяти. Даже доступа в интернет. Это означает, что это приложение не может представлять угрозу вашему устройству.

Менеджер Разрешений. Не получается выдать/забрать разрешения. Почему?
Вы можете выдать только те разрешения, которые допустимы политикой безопасности android. Вы можете забрать только те разрешений, которые выдали вручную.

Размер всех приложений равен 0.
Размеры приложений отображаются не всегда и не на каждом устройстве. Проверить это можно консольной командой adb shell dumpsys diskstats. В нормальном выводе должны присутствовать имена пакетов и много цифр (размеров). Если этого нет, значит команда у вас не работает и размеров не будет. Но вы можете использовать опцию Точные Размеры (в Расширенной Версии) для устройств с Android 8+, в этом случае размеры приложений будут показаны.

Android TV. При подключении по сети ошибка 10061.
Возможно это поможет: в настройках для разработчиков включить отладку по usb. Перезагрузить ТВ. Снова включить опцию отладка по usb (она сбрасывается). 

Если ADB AppControl не видит ваше устройство, то возможно на вашем компьютере отсутствует нужный драйвер.

Драйвер - это набор инструкций для операционной системы, которые позволяют ей взаимодействовать с устройствами. Если в системе не установлен нужный драйвер, то она не сможет понять какое устройство вы к ней подключили и как с ним работать.

Проблемы с драйверами часто возникают у пользователей ОС Windows 7 и 8 и проявляется в том, что программа не видит устройство. ОС Windows 10 и более новые, способны устанавливать нужные драйвера автоматически, сразу после подключения устройства.

Возможные решения:

► Используйте рабочий, проверенный (желательно родной) usb кабель. Подключайтесь непосредственно к usb портам вашего компьютера, не используйте usb-хабы и удлинители.

► Еще раз убедитесь, что на устройстве Android включена отладка!

► Попробуйте подключить телефон по usb в разных режимах - Только Зарядка, Передача файлов, MIDI и тд. (обычно выбрать можно в "шторке"). На Samsung (и не только) при подключении дайте разрешение на доступ к данным, если попросит.

► Главный признак отсутствия драйвера - это неизвестное устройство в диспетчере устройств Windows (свойства Мой Компьютер), которое появляется после подключения смартфона по usb. Если такого нет, то и драйвер на него установить не получится. В таком случае постарайтесь найти способ, чтобы ваша система увидела ваше устройство (например из предыдущего пункта).

В большинстве случаев, достаточно только запустить установщик и драйвер будет установлен. Если это не сработает, то можно попробовать установить драйвер вручную по одной из инструкций:
► Видео Как установить USB драйвер для Android за 1 минуту
► Инструкция по установке драйверов на 4pda, с картинками.
► Еще одна инструкция по установке драйверов вручную на примере смартфонов Xiaomi.

⬇️ Драйвер для SamsungСсылка на офф.сайт.

⬇️ Драйвер с установщиком. Подходит для устройств на процессорах Medaitek и не только (подходит для Xiaomi).

⬇️ Установщик с XDA. Подходит для устройств на процессорах Snapdragon и не только (подходит для Xiaomi). Установить драйвер, потом подключить смартфон. Если не сработает, можно попробовать установить драйвер вручную, через диспетчер задач.

⬇️ Установщик драйвера, который подходит почти всем. Запускаете его на ПК и после этого подключаете устройство usb кабелем.

⬇️ Еще один установщик, который может сработать.

⬇️ Драйвер для устройств с процессором MTK (Mediatek). Подходит для Realme, Oppo, Vivo и др. на MTK.

⬇️ Мой установщик вместе с драйвером. (устарел)

Скачайте архив с программой и распакуйте в любое удобное место на диске вашего ПК, либо воспользуйтесь официальным установщиком.
Например в D:\ADB_AppControl. Избегайте слишком длинных путей к папкам, а также убедитесь, что они не содержат кириллицу.
⚠️Важно! Не рекомендуется размещать программу в системных папках, таких как C:\Program Files\

Если у вас НЕ Windows 10 или новее вам может потребоваться установить USB драйвер, без которого программа не увидит ваше устройство. Вся необходимая информация по решению проблем с драйвером (см. Драйвера).

Включите отладку на вашем устройстве
Перейдите на вашем android-устройстве (далее просто Устройство) в Настройки – Об устройстве и кликните 7 раз на пункт Сборка (Номер Сборки), пока не увидите сообщение, что вы стали разработчиком. Теперь в настройках появится пункт меню Для Разработчиков (обычно в общем списке настроек, либо в меню Об Устройстве). Включите в нем Отладку по USB.

Дополнительно
Если в Настройках для разработчиков есть следующие опции - включите их:
Отладка по USB (Настройки безопасности), Разрешить только при зарядке, Спрашивать при подключении, Отладка по сети, Установка по ADB или другие подобные.
На устройствах Oppo, Vivo, OnePlus - включить опцию "отключить контроль разрешений".

Подключение устройства
Вы можете подключить ваше устройство usb-кабелем или по беспроводному подключению Wi-Fi.

USB-Подключение:
Подключите ваше устройство посредством usb-кабеля к ПК (Телевизоры по usb подключать не нужно!).
Статус изменится на ОЖИДАНИЕ разрешения на отладку. В появившемся, на экране вашего устройства, окне предоставьте разрешение на отладку, а также включите опцию Всегда разрешать (рекомендуется). Программа автоматически подключится к устройству. 
Рекомендуется использовать родной кабель из комплекта поставки вашего устройства.
Если у вас Windows 7 и программа не видит ваше устройство, см. раздел Драйвера.

Беспроводное подключение:
Важно! Компьютер и устройство должны быть подключены к одной локально сети (Wi-Fi), а VPN должен быть отключен.
Для устройств на Android 11+, поддерживающих Отладку по Wi-Fi перейдите в раздел Сопряжение(pairing) данного руководства.
Выполните USB-Подключение, затем нажмите кнопку Включить отладку по сети, которая расположена в верхнем правом углу окна программы и следуйте инструкциям на экране. Отладка по сети работает только до перезагрузки устройства и после процедуру придется повторить.

Подключение по IP-адресу: (требует включенной отладки по сети!)
Для устройств на Android 11+ см. раздел Сопряжение.
Отключите usb-кабель от устройства. Убедитесь, что устройство и ПК находятся в одной сети Wi-Fi. Введите IP-адрес своего устройства и нажмите кнопку подключиться. Вы также можете выбрать IP к которым вы ранее подключались из списка. IP-адрес определяется автоматически при нажатии кнопки Включить отладку по сети. Вы также можете узнать его в настройках устройства (Пример IP-адреса: 192.168.0.1):
Для смартфонов: Настройки – Система – О телефоне – Общая информация – IP адрес.
Для Android TV: Об Устройстве – Статус – IP Адрес.

Установка сервисного приложения ACBridge
При первом подключении устройства, программа предложит вам установить сервисное приложение, которое позволяет получить полные имена приложений и их иконки. Убедитесь, что устройство не находится в спящем режиме (разблокировано). После установки, данные будут обновляться автоматически, при каждом подключении устройства.

Сопряжение (pairing) - позволяет подключаться к вашему устройству Android по беспроводной сети используя беспроводную отладку. В первый раз это может показаться сложным, но вы быстро поймете насколько это может быть удобно.

Только Android 11+

Основные понятия
IP адрес - это адрес вашего устройства Android в локальной (Wi-Fi) сети, например 192.168.1.101.
Порт - это номер, который идет после IP адреса. Например в адресе 192.168.1.101:35511 порт это 35511.

Важно! Порт для подключения меняется при каждом включении беспроводной отладки.

Сопряжение
Выполняется один раз.

Шаг 1
На устройстве Android перейдите в Настройки для разработчиков - Беспроводная отладка (Wi-Fi) - Подключиться с помощью кода.




Шаг 2
В интерфейсе ADB AppControl нажмите кнопку сопряжения. Введите адрес, порт сопряжения и код как показано на картинке. Выполните сопряжение.



Шаг 3
Окно сопряжения на вашему устройстве должно закрыться самостоятельно, а имя вашего компьютера должно появиться в списке сопряженных устройств.



На этом этапе может произойти автоматическое подключение.

Через некоторое время, ранее сопряженные устройства могут пропасть из списка. В этом случае придется выполнить сопряжение снова.



Подключение
Выполняется при каждом подключении устройства.

Шаг 1
На устройстве Android перейдите в Настройки для разработчиков - Беспроводная отладка (Wi-Fi) - Включить.
Запомните IP-адрес устройства и номер порта для подключения (В примере на картинке 192.168.0.181 это IP-адрес, а 43905 это Порт).
Сопряжение (подключение с помощью кода) больше выполнять не нужно!




Шаг 2
В ADB AppControl введите IP-адрес устройства и номер порта для подключения. Нажмите кнопку подключиться. Обратите внимание, что IP адрес устройства обычно постоянный, но порт для подключения будет разный при каждом подключении.



⚠️Важно! ACBridge работает только на устройствах с Android версии 6 и новее.

Программа ADB AppControl позволяет отображать иконки и названия приложений "как на устройстве". Чтобы эта функция работала, вам потребуется установить приложение ACBridge. Это приложение разработано Cyber.Cat и поставляется в комплекте с ADB AppControl.

Автоматическая установка
На большинстве устройств программа может установить ACBrige автоматически, после подключения устройства. На устройствах Xiaomi необходимо включить опцию Установка приложений через ADB и Отладка по USB (Настройки безопасности) в настройках для Разработчиков. Рекомендуется всегда включать эти, либо подобные опции.

Ручная установка
1) Подключите ваше Android-устройство к ПК при помощи usb-кабеля.
2) Скопируйте на устройство файл com.cybercat.acbridge.apk. Найти его можно в папке куда вы установили ADB AppControl (папка adb), либо загрузить с этого сайта.
3) Используя файловый менеджер вашего Android-устройства установите загруженный apk-файл.
4) Не запускайте приложение! Перейдите в Настройки - Приложения - ACBridge и дайте разрешение на доступ к памяти.
5) Снова подключите ваше устройство к ADB AppControl.

После подключения к устройству, программа покажет вам список установленных приложений. Вы можете переключаться между списками, выбирая нужный фильтрами ●○.

● Включенные – показывает приложения, установленные на устройстве, которые не отключены, или не удалены.

● Системные - показывает только приложения установленные как системные. Отключение некоторых системных приложений может привести к неработоспособности устройства и необходимости сброса на заводские настройки!

● Сторонние – предустановленные или установленные пользователем приложения. Отключение и удаление таких приложений полностью безопасно и не отразится на работе устройства.

● Отключенные – в этом списке находятся все отключенные приложения на устройстве. Они не отображаются больше ни в одном списке. Их нельзя запустить, они не работают в фоне, но все их данные (фото, видео, настройки и тд.) сохраняются. Если такое приложение включить, оно снова будет работоспособно также, как и до отключения. На некоторых устройствах (Samsung), приложения помещенные в "Глубокий Сон" также будут находится в этом списке.

● Удаленные - здесь показываются ранее удаленные системные приложения, которые можно восстановить (требуется Android 8+). Отмечайте нужные приложения (они будут выделены другим цветом). После этого нажмите на списке правой кнопкой мыши и выберите в меню (или на панели слева) одно из действий:

Отключить – выключает (замораживает) отмеченные приложения без потери данных и настроек. Вы всегда можете найти их в списке Отключенные и снова включить.

Включить – включает отключенные приложения.

Сохранить – сохраняет apk файлы (и сплиты apks) отмеченных приложений в папку \downloads (данные приложений не сохраняются!).

Удалить – удаляет выбранные приложения вместе с их данными. Если вы хотите оставить на устройстве данные и кэш приложений, выберите опцию Сохранить данные (применяется ко всем удаляемым приложениям!). Если опция была выбрана, то после повторной установки приложения оно восстановит все свои настройки. Важно: при "удалении" системных приложений, они фактически удаляются только из списка установленных в системе и перестают функционировать (как при отключении), но физически остаются на устройстве. Их полное удаление без рут-доступа невозможно!

Восстановить - позволяет восстановить ранее удаленное системные приложение. Требуется Android 8 или выше (может работать не на всех устройствах!).

Поиск
Используйте Поиск чтобы быстрее найти необходимые приложения. Поиск проводится только по выбранному списку (Все, Системные и тд). Начните вводить часть названия искомого приложения и все совпадения отобразятся в списке.

Установка приложений
Нажмите кнопку Установить чтобы перейти в раздел установки приложений. Нажмите кнопку Быстрая Установка, чтобы выбрать нужный apk-файл на диске и установить его. Вы также можете поместить ваши файлы в папку \Install (или перетащить в окно программы), чтобы они отображались в списке. В этом случае вы сможете установить сразу несколько приложений за раз.

Меню правой кнопки мыши
Используйте контекстное меню (правый клик по приложению) для управления и доступа к дополнительным возможностям (Менеджер Разрешений, Очистка данных и другие). 

ACBridge
Требует для работы andoid 6 или выше. Совместимость с более старыми версиями может быть ограничена.
Это сервисное приложения для android, предназначенное для обеспечения обмена данными между устройством и ADB AppControl на ПК. Его необходимо установить, чтобы получить возможность отображения иконок приложений и их имен, а не названий их пакетов вида com.android.app. Автообновление данных происходит после подключения устройства и может занимать некоторое время, в зависимости от способа подключения и производительности. Рекомендуется при подключении убедиться, что устройство не находится в спящем режиме, включить экран и разблокировать его. Вы также всегда можете обновить данные вручную, нажав кнопку Обновить данные приложений.
Важно! Eсли ваше устройство подключено по сети, находится в спящем режиме или режиме сохранения энергии (экран заблокирован), это может заметно сказаться на времени обновления данных приложений. Для достижение оптимальной производительности используйте подключение через usb-кабель. ACBridge после установки не отображается в меню приложений лаунчера и не имеет пользовательского интерфейса. Удалить его можно через диспетчер приложений.

Отправить файлы на устройство
В Расширенной Версии можно отправить сразу несколько файлов!
После нажатия кнопки вы сможете выбрать файлы которые хотите загрузить на устройство. Файлы будут загружены в директорию Downloads вашего устройства.

Авто-Разрешения
Есть много приложений, которым требуются особые разрешения, выдать которые можно только через ADB. С помощью этой опции вы сможете выдавать такие разрешения автоматически. Нажмите кнопку, выберите из списка нужное приложение (должно быть уже установлено) и нажмите кнопку Выдать Разрешения. Список поддерживаемых приложений

Менеджер Разрешений
Нажмите правой кнопкой мыши на нужное приложение и выберите в контекстном меню Разрешения. Менеджер Приложений позволит вам выдавать и отзывать разрешения. ВАЖНО: Не все разрешения могут быть выданы, а отозваны могут быть только разрешения выданные вручную пользователем.

Очистка данных приложения
Кликните правой кнопкой мыши по приложению и выберите в контекстном меню Очистить данные. Будут удалены все данные, кэш и настройки выбранного приложения. Очистить только кэш нельзя.

Работа с пресетами
Пресет (Preset) – это текстовый файл содержащий список приложений. чтобы создать пресет, отметьте в списке нужные приложения и нажмите кнопку Сохранить пресет. В появившемся окне введите название для пресета и добавьте свой комментарий (например, «Пресет бесполезных приложений by Vasya») и нажмите кнопку сохранить. Ваш пресет появится в папке presets.
Вы также можете Загрузить пресет – выберите существующий файл пресета и все приложения, записанные в нем, автоматически станут отмеченными в списке. Сообщение после этого покажет сколько приложений в списке устройства / из скольких приложений из пресета было отмечено. Оптимально применять пресет на списке Все. также вы можете применить несколько пресетов последовательно.

Консоль
На вкладке Консоль вы можете вводить любые adb команды. Используйте ctrl + колесо мыши, чтобы увеличить/уменьшить масштаб окна консоли. Вы можете использовать меню Быстрых Команд - чтобы добавить команду в избранное, напишите ее в консоли и нажмите +, чтобы добавить в список. Быстрые команды хранятся в файле adb\fastcmd.cfg.

Скопировать лог консоли - копирует содержимое консоли в буфер обмена. Используйте, чтобы вставить в сообщение на форуме.
Очистить консоль - очищает экран консоли.
Logcat - наведите мышку, чтобы открыть меню логирования. Отметьте нужные ключи галочками, чтобы шаблон logcat появился в командной строке. Для быстрого запуска дважды нажмите кнопку logcat. чтобы остановить логирование, нажмите Stop logcat - лог будет сохранен в файле, а устройство отключено от сети. Используйте команду logcat без перенаправления в файл (>), чтобы открыть его в отдельном окне в реальном времени.
Нажмите на ☼, чтобы изменить контрастность консоли.
Нажмите на > чтобы скрыть боковую панель и расширить консоль
SHELL - в программе реализована поддержка команды shell в отдельном окне - нажмите на кнопку или напишите в консоли shell.

Управление устройством через Scrcpy.
Стороннее приложение Scrcpy позволяет управлять вашим устройством удаленно. Нажмите кнопку Управлять экраном и следуйте инструкциям программы. Во время установки приложение Scrcpy будет распаковано в папку \scrcpy. Вы можете самостоятельно обновить приложение в этой папке, заменив его файлы. На устройствах Xiaomi в настройках для разработчиков нужно включить опцию Отладка по usb (настройки безопасности). Важно: scrcpy может не работать с некоторыми устройствами и с ландшафтной ориентацией экрана. Свои предложения и замечания вы можете передать разработчику.

Изменение разрешения экрана
Снижение разрешения экрана может повысить производительность и автономность вашего устройства.

Скрыть значки в статус-баре
Программа позволяет скрывать некоторые значки в статус-баре.

Перезагрузка устройства
Нажмите на кнопку и выберите нужный вам режим перезагрузки в выпадающем списке. System - обычная перезагрузка, Power off - выключить устройство 

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

Устройства поддерживаются:
Xiaomi, Samsung, Huawei, Sony, Oneplus, Oppo, Vivo, Realme, Asus, Google, Lenovo и многие другие (более 30 брендов). Полный список поддерживаемых устройств.

Зачем нужно отключать приложения?
Все знают таких "монстров" как Facebook, но на ваших устройствах есть еще много других приложений которые работают в фоне, плохо оптимизированы и куда-то отправляют ваши личные данные. Отключив нежелательные приложения, вы сможете добиться лучшего результата автономности вашего устройства, освободить оперативную память и защитить свои персональные данные.

Как это работает?
Мастер работает на основе статистики отключения приложений и использует особые алгоритмы, чтобы предоставить вам несколько ступеней очистки. Вам нужно выбрать желаемый уровень чтобы получить список приложений, которые рекомендуется отключить на вашем устройстве. После этого вы сами сможете выбрать, какие приложения вам нужно отключить/удалить из предложенных. Базы приложений будут регулярно обновляться, а алгоритмы совершенствоваться, чтобы добиться максимальной эффективности Мастера. 

Настройки интерфейса
Меню настроек Расширенной Версии позволяет вам настроить внешний вид программы "под себя". В настоящий момент доступны настройка прозрачности, размера шрифта и размера иконок. В дальнейшем, на основе отзывов пользователей, будут добавляться новые, востребованные настройки. Настройки применятся после нажатия кнопки Сохранить Настройки.

Менеджер процессов
Покажет вам список запущенных процессов и процент занимаемой ими оперативной памяти. Некоторые из них могут оказывать негативное влияние на производительность устройства и его автономность. У вас будет возможность остановить эти приложение из контекстного меню.

Тёмная тема
Раскрашивает интерфейс в темные цвета, которые порадуют ваши глаза в вечернее время.

Точные размеры приложений (требуется Android 8 или выше)
После включения этой опции размеры приложений будут загружаться при помощи приложения ACBridge, каждый раз, когда происходит обновление данных. Необходимо выдать приложению ACBridge разрешение PACKAGE_USAGE_STATS (можно сделать через ADB AppControl).

Показывать иконки приложений
Отключив эту опцию вы скроете иконки в списке приложений. Поскольку иконки больше не будут загружать с устройства, скорость обновления данных увеличится.

Автообновление данных
Выключите эту опцию если НЕ хотите, чтобы программа автоматически получала данные приложений через ACBridge при подключении устройства. Это удобно для пользователей, которые много работают с разными устройствами, или для тех, у кого проблемы при подключении. Во всех остальных случаях рекомендовано оставить эту опцию включенной.

Сохранение кэша иконок
Это особый режим работы программы с данными приложений, кардинально отличающийся от работы обычной версии. Если эта опция включена, то при первом подключении устройства значки всех его установленных приложений загружаются на ПК и сохраняются в кэш. При каждом следующем подключении этого или других устройств программа будет загружать только те иконки, которые отсутствуют в кэше. Это позволяет заметно увеличить скорость работы программы во время подключения к устройству, но может привести к тому, что в программе будут показаны иконки с разных устройств, отличающиеся стилем и формой. Если сохранение кэша отключено, программа работает в штатном режиме, загружая иконки всех приложений при каждом подключении - это занимает больше времени, особенно по сети, но внешний вид иконок всегда соответствует подключенному устройству. Эта опция отключена по-умолчанию и ее рекомендуется включать, только если вы испытываете проблемы со скоростью подключения устройств и обновления данных приложений.

История IP адресов
Программа будет запоминать IP-адреса и имена подключенных устройств, и вы сможете быстро подключиться к ним, выбрав нужный в выпадающем списке, без необходимости ручного набора (нажмите на иконку часов возле IP адреса). Это очень удобно, если у вас больше одного android-устройства. Историю всегда можно удалить нажав кнопку Очистить Историю.

Использовать системный adb (%PATH%)
Программа будет использовать adb установленный в системе. Не включайте эту опцию, если не знаете зачем.

Останавливать adb при выходе
Если эта опция выключена, программа не будет останавливать adb сервер при закрытии. Это полезно, когда adb используется другими приложениями, например Android Studio и при закрытии программы происходит обрыв соединения. Можно отключить только если активна опция Использовать системный adb.

Тихий режим (без подтверждений)
Опытные пользователи могут отключить окна предупреждений и подтверждений перед операциями с приложениями.

Сортировка
Нажмите на заголовок столбца в списке, чтобы отсортировать приложения по имени, имени пакета или размеру (если доступен). Нажмите М, чтобы показать отмеченные приложения.

Другие возможности
Вы сможете отправлять более одного файлы при использовании функции Отправить Файл. также вам будет доступна возможность добавления apk в список для установки перетаскиванием файла на окно программы. И, разумеется, вы больше не увидите напоминания о донате.