Редактор Slrr не видит исполняемый файл

Обновлено: 03.07.2024

Я хочу изменить метод файла .class. Я установил JD Eclipse Decompiler и открыл файл .class. Я добавил несколько кодов и сохранил файл .class. Но файл .class не меняется.

Я не умею пользоваться декомпилятором. И если возможно, как изменить файл .class без использования декомпилятора.

Я использую Ubuntu.

Вот мой декомпилированный код:

Поскольку класс idgenerator не поддерживает BigDecimal. Я использую Hibernate и PostgreSQL и получаю эту ошибку: этот генератор идентификаторов генерирует длинные, целые, короткие или строки

Использовать декомпилятор в 100 раз проще, чем альтернативы. Если идея использования декомпилятора покажется вам слишком сложной, я бы попробовал другой подход, не связанный с изменением класса.

10 ответов 10

Чтобы изменить класс Java, выполните следующие действия:

  1. Декомпилируйте файл .class, как вы сделали, и сохраните его как .java.
  2. Создайте проект в Eclipse с этим java-файлом, исходным JAR-файлом как библиотекой и всеми его зависимостями.
  3. Измените .java и скомпилируйте
  4. Получите измененный файл .class и снова поместите его в исходный JAR-файл.

Я не могу сохранить файл .java. На самом деле, я не могу сохранить в любом случае. Я сохранил файл .class, но когда я закрываю и снова открываю, мои изменения исчезают.

Не лучше ли загрузить исходный код файла, который вы хотите изменить (поскольку он является частью Hibernate), изменить его и перекомпилировать? Вы можете использовать мой метод для перекомпиляции или просто попробовать перекомпилировать весь Hibernate (хотя это может быть сложнее).

Тогда у вас есть это. Просто сохраните его в файл Java, добавьте изменения в форум и делайте то, что я предложил.

Вы забыли еще об одном варианте. Разобрать, модифицировать и собрать заново. Он работает с любым файлом класса, но требует от вас понимания байт-кода, в чем я очень сомневаюсь, что OP делает.

Используйте редактор байт-кода, например:

Будьте осторожны, потому что вам нужно очень хорошо знать байт-код Java.

Вы также можете изменить класс во время выполнения с помощью объединения байт-кода (например, AspectJ).

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

Иногда изменить байт-код Java проще, чем правильно установить зависимости. Особенно, если вам просто нужно внести некоторые незначительные изменения. В моем случае JBE выдавал ошибки, но Recaf работал отлично.

Я добавил несколько кодов и сохранил файл .class.

То, что вы видите в декомпиляторе JD EClipse, представляет собой декомпилированное представление байтового кода в файле .class. Даже если вы измените текст, это не повлияет на байт-код.

@BreedHansen, почему бы не сгенерировать String вместо BigDecimal? Итак, ответ на ваш вопрос: это почти невозможно. Или вам нужно извлечь исходный код для eclipse и попытаться сгенерировать другой файл класса с вашими изменениями.

Recaf — это графический интерфейс декомпилятора, который позволяет редактировать и перекомпилировать файлы. Вот соответствующая часть руководства:

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

А на случай, если декомпилированный код не перекомпилируется, есть основная функция редактирования, ассемблер: coley.software/Recaf-documentation/use-edit-via-bytecode.html

когда вы декомпилируете и изменяете код, вы должны перейти в корневую папку вашего проекта eclipse и проверить свой класс в папке bin, которая находится на том же уровне, что и src. затем откройте оригинальную банку с помощью zip-инструмента (7zip подходит для этого) и поместите измененный класс в тот же пакет внутри банки.

Используйте библиотеку Java для управления байт-кодом Java (файл .class) приложения.

-> Spring , Hibernate , EJB, использующие это для реализации прокси

-> мы можем манипулировать байт-кодом, чтобы выполнить некоторый анализ программы

-> мы можем использовать Javassist для реализации прозрачного кеша для возвращаемых значений метода, перехватывая все вызовы метода и делегируя полномочия суперреализации только при первом вызове.

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

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

Извлек файл класса из jar

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

Вы можете просмотреть все файлы в банке с помощью графического интерфейса JD.

Вы можете изменить код при его декомпиляции, но его необходимо перекомпилировать в файл класса, декомпилятор выводит код Java, который необходимо перекомпилировать с тем же путем к классам, что и исходный файл jar/класса

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

Я могу получить доступ к файлу .java файла .class только в Eclipse. Итак, я не понял, как "файл класса в старую банку"?

Иногда нам нужно скомпилировать один единственный файл из тысячи файлов, чтобы решить проблему. В таком случае можно создать ту же структуру папок, что и путь к классу, декомпилировать файл в java или скопировать файл java из исходного кода. Внесите необходимые изменения, скомпилируйте один конкретный файл в класс со всеми зависимостями/классами и, наконец, замените файл класса. Наконец, перезапустите контейнер. После того, как война взорвется, файл не будет заменен.

Насколько мне удалось выяснить, простого способа сделать это не существует. Самый простой способ — фактически не преобразовывать файл класса в исполняемый файл, а обернуть исполняемый модуль запуска вокруг файла класса. То есть создайте исполняемый файл (возможно, исполняемый файл сценария для ОС), который просто вызывает класс Java через командную строку.

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

Вам нужно удалить Street Legal Racing: Redline 1, чтобы решить некоторые проблемы? Вы ищете эффективное решение, чтобы полностью удалить его и полностью удалить все его файлы с вашего ПК? Не беспокойтесь! На этой странице приведены подробные инструкции о том, как полностью удалить Street Legal Racing: Redline 1.

Возможные проблемы при удалении Street Legal Racing: Redline 1

* Street Legal Racing: Redline 1 не указана в списке программ и компонентов.
* У вас недостаточно прав для удаления Street Legal Racing: Redline 1.
* Не удалось запустить файл, необходимый для завершения удаления.
* Произошла ошибка. Не все файлы были успешно удалены.
* Другой процесс, использующий этот файл, останавливает удаление Street Legal Racing: Redline 1.
* Файлы и папки Street Legal Racing: Redline 1 можно найти на жестком диске после удаления.

Street Legal Racing: Redline 1 нельзя удалить из-за множества других проблем. Неполное удаление Street Legal Racing: Redline 1 также может вызвать множество проблем. Поэтому очень важно полностью удалить Street Legal Racing: Redline 1 и все его файлы.

Как удалить Street Legal Racing: Redline 1 Completley?

Рекомендуемый метод: быстрый способ удалить Street Legal Racing: Redline 1

Способ 1. Удалите Street Legal Racing: Redline 1 с помощью программ и компонентов.

Способ 2. Удалите Street Legal Racing: Redline 1 с помощью файла uninstaller.exe.

Способ 3. Удаление Street Legal Racing: Redline 1 с помощью восстановления системы.

Способ 4. Удалите Street Legal Racing: Redline 1 с антивирусом.

Способ 5. Переустановите Street Legal Racing: Redline 1, чтобы удалить его.

Способ 6. Используйте команду удаления, отображаемую в реестре.

Способ 7. Удалите Street Legal Racing: Redline 1 с помощью стороннего деинсталлятора.

Способ 1. Удалите Street Legal Racing: Redline 1 с помощью программ и компонентов.

Когда в вашей системе устанавливается новая часть программы, эта программа добавляется в список в разделе «Программы и компоненты». Если вы хотите удалить программу, вы можете перейти в «Программы и компоненты», чтобы удалить ее. Поэтому, если вы хотите удалить Street Legal Racing: Redline 1, первое решение — удалить его через «Программы и компоненты».

Шаги:

а. Откройте Программы и компоненты.

Windows Vista и Windows 7

Нажмите "Пуск", введите "Удалить программу" в поле Поиск программ и файлов и нажмите на результат.

поиск удалить программу windows7

Windows 8, Windows 8.1 и Windows 10

Откройте меню WinX, удерживая вместе клавиши Windows и X, а затем нажмите «Программы и компоненты».

Меню Win X Windows 10

б. Найдите в списке Street Legal Racing: Redline 1, нажмите на него, а затем нажмите «Удалить», чтобы начать удаление.

uninstall

Способ 2. Удалите Street Legal Racing: Redline 1 с помощью файла uninstaller.exe.

Большинство компьютерных программ имеют исполняемый файл с именем uninst000.exe или uninstall.exe или что-то в этом роде. Вы можете найти эти файлы в папке установки Street Legal Racing: Redline 1.

Шаги:

а. Перейдите в папку установки Street Legal Racing: Redline 1.

б. Найдите uninstall.exe или unins000.exe.

unins000

в. Дважды щелкните программу удаления и следуйте указаниям мастера, чтобы удалить Street Legal Racing: Redline 1.

Способ 3. Удаление Street Legal Racing: Redline 1 с помощью восстановления системы.

Восстановление системы — это утилита, поставляемая с операционными системами Windows и помогающая пользователям компьютеров восстановить предыдущее состояние системы и удалить программы, мешающие работе компьютера. Если вы создали точку восстановления системы до установки программы, то вы можете использовать Восстановление системы, чтобы восстановить вашу систему и полностью удалить нежелательные программы, такие как Street Legal Racing: Redline 1. Вы должны сделать резервную копию ваших личных файлов и данных, прежде чем выполнять системную перезагрузку. Восстановить.

Шаги:

а. Закройте все открытые файлы и программы.

б. На рабочем столе щелкните правой кнопкой мыши «Компьютер» и выберите «Свойства». Появится системное окно.

в. В левой части окна «Система» нажмите «Защита системы». Появится окно «Свойства системы».

Защита системы

д. Нажмите «Восстановление системы», и появится окно «Восстановление системы».

 свойства системы восстановление системы

д. Выберите «Выбрать другую точку восстановления» и нажмите «Далее».

восстановить системные файлы и настройки

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

 выберите точку восстановления

ж. Нажмите «Готово», когда появится окно «Подтвердите точку восстановления».

 подтвердите точку восстановления

ч. Нажмите Да, чтобы подтвердить еще раз.

Подтверждение завершения восстановления Windows 7

Способ 4. Удалите Street Legal Racing: Redline 1 с антивирусом.

В настоящее время компьютерные вредоносные программы выглядят как обычные компьютерные приложения, но их гораздо сложнее удалить с компьютера. Такие вредоносные программы попадают на компьютер с помощью троянских и шпионских программ. Другие компьютерные вредоносные программы, такие как рекламные программы или потенциально нежелательные программы, также очень трудно удалить. Обычно они устанавливаются в вашей системе в комплекте с бесплатным программным обеспечением, таким как видеозапись, игры или конвертеры PDF. Они могут легко обойти обнаружение антивирусных программ в вашей системе. Если вы не можете удалить Street Legal Racing: Redline 1, как и другие программы, то стоит проверить, вредоносная это программа или нет. Нажмите и загрузите этот инструмент обнаружения вредоносных программ для бесплатного сканирования.

Способ 5. Переустановите Street Legal Racing: Redline 1 для удаления.

Если файл, необходимый для удаления Street Legal Racing: Redline 1, поврежден или отсутствует, удалить программу будет невозможно. В таких случаях может помочь переустановка Street Legal Racing: Redline 1. Запустите установщик либо на исходном диске, либо в загруженном файле, чтобы переустановить программу еще раз. Иногда установщик может позволить вам восстановить или удалить программу.

Способ 6. Используйте команду удаления, отображаемую в реестре.

Когда программа установлена ​​на компьютере, Windows сохранит ее настройки и информацию в реестре, включая команду удаления для удаления программы. Вы можете попробовать этот метод для удаления Street Legal Racing: Redline 1. Внимательно отредактируйте реестр, потому что любая ошибка может привести к сбою вашей системы.

Шаги:

а. Удерживайте клавиши Windows и R, чтобы открыть команду «Выполнить», введите regedit в поле и нажмите «ОК».

windows7 regedit

б. Перейдите в следующий раздел реестра и найдите один из Street Legal Racing: Redline 1:

в.Дважды щелкните значение UninstallString и скопируйте его данные значения.

uninstallstring

д. Удерживайте клавиши Windows и R, чтобы открыть команду «Выполнить», вставьте данные значения в поле и нажмите «ОК».

д. Следуйте указаниям мастера, чтобы удалить Street Legal Racing: Redline 1.

Способ 7. Удалите Street Legal Racing: Redline 1 с помощью стороннего деинсталлятора.

Для удаления Street Legal Racing: Redline 1 вручную требуются компьютерные ноу-хау и терпение. И никто не может обещать, что удаление вручную полностью удалит Street Legal Racing: Redline 1 и удалит все его файлы. А неполное удаление приведет к появлению множества бесполезных и недействительных элементов в реестре и плохо повлияет на производительность вашего компьютера. Слишком много бесполезных файлов также занимают свободное место на жестком диске и замедляют скорость работы ПК. Поэтому рекомендуется удалить Street Legal Racing: Redline 1 с помощью доверенного стороннего деинсталлятора, который может сканировать вашу систему, идентифицировать все файлы Street Legal Racing: Redline 1 и полностью удалить их. Загрузите этот мощный сторонний деинсталлятор ниже.

До сих пор несколько человек спрашивали меня, как я редактирую все конфигурации автомобиля, как я создаю файлы двигателя и коробки передач и как настраивать подвеску. Поэтому этот урок будет разделен на три части, в которых я собираюсь показать вам, как я делаю это волшебство. Я предоставлю макеты файлов, которые вы можете использовать, я также предоставлю необходимые программы и редактор, а также листы Excel. Но есть некоторые вещи, которые вы должны получить самостоятельно: Прежде всего: базовое понимание механики.

Как работает двигатель, как работает коробка передач, как работает подвеска? Как двигатель вырабатывает мощность и крутящий момент, если он оснащен наддувом и турбокомпрессором? Как при наддуве нормально? Что будет, если смягчить подвеску на задней оси? Что именно делает стабилизатор поперечной устойчивости?

Все это нужно для создания хорошей рабочей конфигурации автомобиля. Я не хочу здесь говорить, что я магистр механики, я все еще учусь всему этому более или менее на лету.

Для целей этого урока я собираюсь отредактировать файл конфигурации гражданского Transporter. Файлы: (проверено с помощью MS Essentials) Содержимое: Physicseditor.exe - Toms Engine Shop - расчет двигателя - лист Excel для преобразования схемы двигателя в код.

Версии для Office 2003 и Office 2007. Изображения из этого руководства. Это руководство в формате .pdf — удалено до тех пор, пока не будет доступна полная версия. Эта ветка полна полезных идей и советов: Страница BIWiki: Вам понадобится Блокнот с SQF-плагином, который можно найти на armaholic. Часть I Движок Прежде чем приступить к созданию файлов движка, мы провели небольшое исследование в Интернете. Что вам нужно, так это диаграмма крутящего момента и выходной мощности. Настоящий «брат» транспортера Arma — Iveco Daily 4x4. Немного погуглив, я смог найти схему двигателя для топовой модели, которая представляет собой 3,0-литровый дизельный двигатель с двойным турбонаддувом мощностью 174 л.с. и крутящим моментом 400 Нм.

Инструмент

Нажмите "Изменить", а затем "Создать новые данные двигателя". Просмотрите свои заметки, которые вы только что сделали, и введите значения в открывшееся поле. Не обращайте внимания на то, что в этой программе максимальное число оборотов в минуту, которое вы можете ввести, равно 6000.

Мы отредактируем это вручную позже. В ответ на запрос «Шаги RPM» просто введите 1000. Нам не нужны шаги меньшего размера.

Позже вы поймете, почему. Если вы ввели все значения, нажмите OK. Теперь программа создала общий файл движка, и он может выглядеть так. Не обращайте внимания на отрицательное сжатие, так как это значение не нужно для Arma. Если это значение имеет высокое отрицательное число, просто перетащите его немного выше (ближе к 0). Редактирование этого графика не повлияет на нужные нам данные.

Теперь снова откройте схему двигателя и внимательно изучите кривые. Теперь вам нужно понять основы двигателя: поскольку этот двигатель является дизельным с турбонаддувом, максимальный крутящий момент создается при очень низких оборотах.

Чтобы отредактировать файл двигателя, перетащите желтую кривую крутящего момента, пока она не станет такой же, как реальная. Не обращайте внимания на красную кривую мощности. Вы не можете редактировать это из-за соотношения крутящий момент-об/мин-мощность. (Подробнее об этом читайте: - Эти знания вам также понадобятся позже) Теперь снова перейдите на вкладку «Редактировать» и нажмите «Редактировать параметры двигателя/шины». Откроется большое окно, в котором 99 % этих цифр не имеют значения.

Важна только вторая строка, где указано «Диапазон ограничения оборотов». Введите в первое поле свой максимальный RPM, затем во второе введите 0, затем 1.

Сохраните этот файл под именем nameofyourvehicle.ini и откройте его в Блокноте или любом другом текстовом редакторе. Кроме того, откройте лист Excel «enginecalculation.xlsx», который я предоставил.

Пожалуйста, не обращайте внимания на "Имперские ценности", которые там написаны. Это неправильно и уже исправлено. О чем лист Excel? Он берет значения вашего только что созданного файла движка и переставляет числа для конфигурации. Если вы посмотрите на это, это должно быть довольно ясно. Введите максимальные обороты, крутящий момент и мощность.

Таблица автоматически рассчитает maxOmega, пиковый крутящий момент и мощность двигателя. В то время как пиковый крутящий момент (в Нм) и мощность двигателя (в кВт) должны быть ясны, maxOmega немного сложнее понять. Омега - это угловая скорость, а maxOmega, следовательно, максимальная скорость, которую может развить коленчатый вал двигателя. Это значение определяет максимальное число оборотов в минуту. Когда я впервые начал редактировать конфиги, я увидел параметр «redRpm» и подумал, что это значение определяет, насколько сильно может вращаться двигатель.

Но это ложный друг, потому что maxOmega "на самом деле" определяет это. (Спасибо da12thmonkey за то, что объяснил мне все это). Проверьте страницу вики, указанную выше, для получения дополнительной информации. Ладно, вернемся к листу. С левой стороны есть столбец с названием «Шаги RPM». Этот столбец довольно важен, потому что он делит всю вашу кривую RPM на 8 шагов, тогда как первый шаг всегда равен 0 RPM. Вы можете спросить себя сейчас: «Почему 8 шагов?!» Ну, я не могу вам этого объяснить, потому что это было определено Богемией.

Вернитесь к файлу nameofyourvehicle.ini. Важны самые первые строки, а именно те, которые начинаются с «RPMTorque». Эти линии определяют кривые крутящего момента и мощности. Но теперь нам нужно обрезать эти строки, чтобы осталось только 8.

Надеюсь, теперь вы понимаете, куда мы идем. Отредактировано RedPhoenix 27 сентября 2013 г. 'switchTime: время переключения указывает, сколько времени требуется (в секундах) для завершения переключения передач.

Обороты интерполируются до оптимального значения для новой передачи при текущей скорости во время переключения передач. Время должно быть довольно небольшим, около 0,3 с, чтобы сохранить импульс автомобиля. Задержка — это минимальное время (в секундах), которое должно пройти между каждым переключением передач, инициируемым автоматической коробкой. Это значение должно быть больше, чем switchTime. Слишком маленькое значение этого времени приводит к некоторым проблемам с переключением передач — машина сильно тормозит».

Измените значение, проверьте его, если вы недовольны, измените его снова, проверьте еще раз. Иногда это может быть нервным, чтобы сделать это правильно, но оно того стоит. Следующая часть о подвеске. Будьте готовы к большому количеству проб и ошибок, но к очень крутым результатам. Отредактировано RedPhoenix 27 сентября 2013 г.

Да, в кВт. Вы можете легко использовать половинные или четвертные значения. Таким образом, вы можете использовать в генераторе двигателя 1/4 вашей общей мощности, которая тогда составит 1143 л.с., и если вы позже будете работать с листом, умножьте на 4, чтобы получить общее количество л.с., которое вам нужно. Edit1: я мог бы покопаться в Java, чтобы написать программу, используемую для правильного отображения и вычисления всех этих значений. Это был бы более или менее генератор и редактор конфигов с простым для понимания графическим интерфейсом.

Отредактировано RedPhoenix 4 октября 2013 г.

Мод инструмента Slrr Engine

Slrr Engine Tool Mod 3

24 яростных спортивных автомобиля от Ford, Pontiac, Lexus и Mazda!. ВЕЛИКОЛЕПНЫЙ ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС! Красивые изображения и информация о производительности каждого автомобиля, оптимизированные для дисплея Retina и iPhone 5!. НОВЫЕ АВТОМОБИЛИ НОВЫЕ ПРОИЗВОДИТЕЛИ! Регулярные обновления с новыми автомобилями и новыми производителями!. СКАЧАНО БОЛЕЕ 1 МИЛЛИОНА КОПИЙ! Присоединяйтесь к более чем миллиону пользователей, которые уже скачали Sports Car Engines 2: Muscle vs Import, и приготовьтесь к тому, что вас поразит!

НАСТРОЙТЕ ДВИГАТЕЛИ! Обновитесь до ПОЛНОЙ версии с более чем 140 ревущими и грохочущими Muscle и импортными автомобилями от 18 различных производителей, включая: - AMERICAN MOTORS (AMC): AMX - Javelin AMX, Rambler, Matador - Rebel - BUICK: GSX - Regal Grand National - Skylark - Дикая кошка - Ласебре - Ривьера - Парк-авеню - Роудмастер - Регал - Электра 225 - ШЕВРОЛЕ: Корвет ZR1 - Корвет.

Мод движка Slrr для Minecraft

Классическое и современное искусство и архитектура. Размер: 4,5 МБ, Цена: 3,99 доллара США, Лицензия: условно-бесплатная, Автор: Open Door Networks, Inc.

Street Legal Racing: Redline сбой на рабочем столе, случайный сбой StreetLegal_Redline.exe не отвечает - StreetLegal_Redline.exe перестал работать Как исправить руководство

Street Legal Racing: Redline вылетает на рабочий стол, когда вы хотите играть в игру? Вы получаете сообщение об ошибке StreetLegal_Redline.exe не отвечает или StreetLegal_Redline.exe перестал работать? или просто черный экран при запуске видеоигры Street Legal Racing: Redline? Тогда следуйте нашему руководству.

Как решить проблему сбоя Street Legal Racing: Redline (исправление сбоя)

<р>1. Первое, что нужно сделать, это почистить окна с помощью этой программы (бесплатно)

<р>2. Загрузите и установите все версии vcredists отсюда

<р>3. Установите последнюю версию отсюда

<р>4.И, наконец, после того, как проблема не будет устранена, загрузите и установите новый графический драйвер (см. раздел «Учебники» выше)

Street Legal Racing: Redline

Street Legal Racing: Redline все еще вылетает после выполнения всех этих действий сверху?

Тогда несколько советов: (потому что правильные способы исправить это уже сделали правильно?)

<р>1. Попробуйте обновить звуковой драйвер (см. руководство в разделе «Учебники» в меню сайта)

<р>2. Удалите Clean Street Legal Racing: Redline, а затем переустановите его

StreetLegal_Redline.exe не отвечает

StreetLegal_Redline.exe перестал работать

Street Legal Racing: Redline обнаружила неисправимую ошибку

Street Legal Racing: Redline Windows ищет решение проблемы.

Street Legal Racing: Redline FATAL ERROR: Unhandled Access Violation Reading

Street Legal Racing: Redline Мы обнаружили, что ваша установка Steam повреждена

Уличные легальные гонки: ошибка выполнения Redline!

Street Legal Racing: Redline Необработанное исключение поймано

В приложении Street Legal Racing: Redline возникла проблема. Приложение должно быть закрыто. Приносим извинения за неудобства.

Читайте также: