У меня вопрос: как в CooCox посмотреть откуда программа попала в default handler, стек как таковой там не показывается, т.е. в окне debug отображается только где процессор находится на данный момент, а предыдущие адреса неотображаются.
_Pasha
Jan 15 2014, 20:34
Подскажите, как мне запустить из сабжа компиляцию проекта на удаленной станции, чтобы make на ней же. Пока пользуюсь другими терминалами.
Вкратце, завожу ssh, делал проект с локальной копией - не понравилось

синхронизация там всякая - хочу чтобы на кнопку save - сохранялось по сетке. RaspberryPI

если кому интересно
Eclipse + OpenOCD + ST-LINK V2.
Почему-то содержимое PC становится нечетным после первого шага выполнения программы.
В Atollic, которому подсунут тот же elf, PC остается четный.
Программа выполняется как положено, подозрение, что отображение неправильное.
Поиском не нашел объяснения этой странности.
И еще вопрос, который сформулировал Сергей Борщ когда-то
"Попутный вопрос - можно ли его заставить в этом окне показывать команды по порядку адресов - мне он часто показывает команды с пропусками или в причудливо перемешанном порядке."
Пропуски наблюдаю регулярно. Благодаря *.lss слепым не остаюсь, но неудобно чуток :-) Есть решение?
Сергей Борщ
Mar 7 2014, 09:47
Насколько помнится, младший бит в счетчике команд указывает на режим THUMB, т.е. должен быть в единице. Видимо Atollic просто маскирует его чтобы не смущать.
По пропускам: надо "отжать" иконку Show source. Видимо он не может однозначно оперделить принадлежность некоторых команд к строкам исходника.
amusin
Mar 12 2014, 00:43
Цитата(Сергей Борщ @ Mar 7 2014, 15:47)

Насколько помнится, младший бит в счетчике команд указывает на режим THUMB, т.е. должен быть в единице. Видимо Atollic просто маскирует его чтобы не смущать.
По пропускам: надо "отжать" иконку Show source. Видимо он не может однозначно оперделить принадлежность некоторых команд к строкам исходника.
Сергей, спасибо за разъяснения!
dimka76
Mar 17 2014, 08:56
Решил обновить Eclipse.
Скачал Eclipse Kepler. Установил в него ARM GCC plugin. Создал тестовый проект на основе makefile.
Eclipse определил где надо искать файли include, входящии в состав компилятора и отобразил эти пути в Project Manager.
Значит кроме всех прочих там были следующие пути
C:\Program Files (x86)\CodeSourcery\Sourcery_CodeBench_Lite_for_ARM_EABI\lib\gcc\arm-none-eabi\4.7.2\include\
C:\Program Files (x86)\CodeSourcery\Sourcery_CodeBench_Lite_for_ARM_EABI\arm-none-eabi\include\
В обоих каталогах есть файл stdint.h, но они отличаются по содержимому.
Так вот этот Kepler анализирует фацл stdint не из того каталога и в результате ругается на все объявления пекременных как uint32_t, uint16_t и т.д.
При этом компиляция проходит успешно. Т.е. ошибки выдает не компилятор, а сама IDE.
Как это можно побороть ?
P.S. До этого пользовался Eclipse Helios и все было нормально.
k000858
Mar 25 2014, 04:29
можно в эклипсе сделать так, что б при компиляции если есть предупреждения/ошибки автоматом переключалась вкладка Problems ?
Сергей Борщ
Mar 25 2014, 04:35
Цитата(k000858 @ Mar 25 2014, 06:29)

можно в эклипсе сделать так, что б при компиляции если есть предупреждения/ошибки автоматом переключалась вкладка Problems ?
Не знаю. Я тыкаю в сообщения прямо на вкладке console - навигация работает. На вкладке console они гораздо более информативны.
Привет Всем!
Перенес Eclipse Galileo+yagarto-bu-2.20.1_gcc-4.5.0-c-c++_nl-1.18.0_gdb-7.1_eabi_20100501+Zylin 4.18.1) + openocd-r520-20080322.exe на новый диск, получил проблему.
При запуске отладки по брекпоинту выскакивает не на текст программы, а на отдельное пустое окно с сообщением
No source available for "main() ".
При переходе на текст программы в ней появляется куча ошибок от отладчика (в основном на тип данных).
Трансляция без ошибок. Текс менялся, но Startup.S и настройка прерываний не менялись.
Нажмите для просмотра прикрепленного файлаСначала обнаружил, что во вкладке Executables в main.elf неправильно определились некоторые пути - C:\msys\1.0\home\yagarto\newlib-build\arm-none-eabi\newlib\ и т.п.
После того, как скормил пути на не найденные файлы, в том числе stdint.h и почему то, memset.c , проблема осталась. При этом, путь к директории с stdint.h в виндовс прописан в path.
memset.c взял из исходников библиотеки newlib той же версии.
В плату проект загружается нормально.
Ставил по новой Eclipse Galileo и LUNA, проблема аналогична.
Что может быть причиной?
Кто нибудь использует какой либо плагин для сокрытия участков кода обрамленного какими то признаками?
Нашел Coffee Bytes Java Folding. Версия 1.0.5.a устанавливается, но не работает, а версия 1.0.6 не устанавливается (через копирование папок и ключ Eclipse -clean
Версия Eclipse Indigo,
Coffee Bytes Java Folding брал
здесь
Проблему в сообщении #710 решил установкой более новой версии.
Выбрал
emb4funВсе настроилось без проблем, в том числе и отладка.
Теперь вопросы.
1.Можно ли в подобной связке отслеживать время выполнения команд процессора?
Может дополнение какое то есть?
pasaamaster
Feb 10 2015, 00:17
Здравствуйте.
Подскажите, пожалуйста, почему работающий проект в Линукс на Eclipse Luna 64 бит + GCC ARM Plugin + gcc-arm-none-eabi-4_9-2014q4-20141203-linux.tar.bz2
после того, как я изменяю структуру проекта (переношу файлы, создаю директории с файлами и т.д.) перестает компилироваться.
Среда перестает видеть некоторые хедеры и константы (пути к которым я прописал в нактройках проэкта в настройках компиляторов) и иногда не находит сам компилятор, хотя он точно на своем месте.
Переиндексацию делал, конкретно прописывал пути к хедерам, которые не видит (чаще всего это файл stm32l0xx_def.h м типы в нем), в мейкфайле вроде есть пути к директориям с ненайденными файлами.
Может у плагина есть ограничения на структуру проекта? Или Еклипс плохо справляется с отслеживанием изменений, я с ним раньше не работал, в Иаром, Кейлом, АврСтудией и прочими таких проблем не наблюдал - перетусовывал все, попровисывал пути - все работало.
Можно это как-то настроить без переписывания makefile вручную? Или лучше вернуть все взад и просто подобавлять свои файлы туда, где лежали остальные, пока не разобрался с мейкфайлами.
Спасибо.
nanorobot
Feb 10 2015, 06:19
Вероятнее всего все перемещения исходных файлов, нужно соответствующим образом отображать в Makefile, ну или в соответствующих *.mk файлах. Вообще лучше всего делать пошагово: перенесли файл/директорию - компильнули- добились отсутствия ошибок. Понемногу придет понимание идеологии.
mdmitry
Feb 10 2015, 17:51
Цитата(pasaamaster @ Feb 10 2015, 04:17)

...
Наступите себе на горло на два дня и разберитесь с makefile, тем более что работаете под linux. При грамотном написании файла и продуманной системе каталогов проекта переносимость будет высокая. Можете собирать проект из консоли. Как работать с готовым makefile проектом в Eclipce на форуме полно информации (discovery).
pasaamaster
Feb 10 2015, 18:49
Да. Я уже начинаю понимать, что таки придется разобраться с мейкфайлом. Пока перелил все в IAR, все заработало сразу, но платным софтом пользоваться мне нельзя. буду разбираться. Спасибо.
Вот еще сурприз приподнес еклипс с GCC напару - не захотел понимать строку: #define led_on(led) HAL_GPIO_WritePin(led##.port, led##.pin, GPIO_PIN_SET)
писал "pasting "led1" and "." does not give a valid preprocessing token" Пришлось вызывать из функции. ИАР съел за милую душу. Вроде бы обычный препроцессор.
кто нибудь борол кракозябзы в Build output console в Eclipse ? что сие означает я знаю и причину знаю, а вот как заставить консоль выводить в другой кодовой странице во время билда ? гугл смотрел
Здравствуйте.
Пытаюсь воспользоваться библиотекой шифрования libTomCrypt на Eclipse, но не получается. В заголовочном файле подключаются еще файлы, которых нет ни в проекте, не в библиотеке. При этом в ней есть куча непонятных файлов с расширениями сторонних программ. Подскажите возможно ли ее использовать на эклипсе.
Помогите с Eclipse+SVN (GIT).
Вот есть проект для ARM на IAR. Создаю структуру папок:
soft
---mcu
------prj
--------IAR
-----------workspace
-----------project
------src
---------some_c_files
------inc
---------some_h_files
И все это в репозиторий. В workspace хранится список проектов (почти всегда один, хотя бывает и 2, если программа из 2 прошивок - загрузчик например есть и обновляемая прошивка)
Теперь переходим на eclipce. Он в workspace хранит кучу всякой гадости - тут тебе и настройки программы (ладно, хрен с ним, закоммитим), и куча папок плагинов. Поправил один исходник - svn тут же ругается на гору missing и modified.
Как предполагается использовать его с svn? Держать проект и воркспейс вне репы? А где? Я привык, что в репе есть все, готовое к работе - через полгода вернусь к проекту - checkout и работаем.
А тут я что, достану исходники, создам воркспейс, настрою его, создам проект, сделаю импорт из файловой системы? Так?
Где я не прав? Направьте на путь истинный
Сергей Борщ
Feb 3 2016, 11:03
workspace он хранит в папке ".metadata". Ее в репозиторий не кладем, ставим на нее svn:ignore. Проект хранится в файлах .project и .cproject, эти файлы скропостижно не меняются. После вытягивании из репозитория на новое место создаем в Eclipse новый workspace, в нем делаем File->import->existing projects into workspace, натравливаем на корневую папку. Среда готова к работе.
Цитата(Сергей Борщ @ Feb 3 2016, 17:03)

создаем в Eclipse новый workspace, в нем делаем File->import->existing projects into workspace
понял.
А чего делать с настройками среды?
Он, как я понял, даже цветовую схему хранит в воркспейсе.
Сергей Борщ
Feb 3 2016, 12:22
Цитата(drozel @ Feb 3 2016, 13:54)

А чего делать с настройками среды?
Он, как я понял, даже цветовую схему хранит в воркспейсе.
File->Export->preferences. В новом workspace File->Import->Preferences. Импортируется далеко не все, кое-что приходится восстанавливать руками. Лучшего способа я не нашел.
Цитата(Сергей Борщ @ Feb 3 2016, 18:22)

Импортируется далеко не все, кое-что приходится восстанавливать руками. Лучшего способа я не нашел.
Вот и мне так показалось
Теперь убедился, что мне не показалось, и лучшего способа, похоже, и вправду нет(
Жаль, редактор крутейший, а с настройками сущий ад
drozel, как вариант - держать один воркспейс под одну архитектуру. Скажем, все проекты под конкретный МК. Либы ведь у проектов будут общие, вы же повторно используете свой код?

И менять воркспейсы как перчатки не придётся. Неиспользуемые проекты в воркспейсе закрываете - и они в общем-то и не мешают!
Для workspace Eclipse размер директории .metadata ~1.5Gb как-то можно уменьшить? или очистить? В .metadata/.plugins лежит туча плагинов...
AHTOXA
Feb 17 2016, 10:48
Цитата(AHTOXA @ Feb 17 2016, 13:48)

не совсем понятно, что вы хотели сказать своей ссылкой. Вот это в .metadata/.plugins занимает 1.5Gb:
Код
org.apache.ivyde.eclipse
org.eclipse.cdt.core
org.eclipse.cdt.make.core
org.eclipse.cdt.make.ui
org.eclipse.cdt.managedbuilder.core
org.eclipse.cdt.ui
org.eclipse.core.resources
org.eclipse.core.runtime
org.eclipse.debug.core
org.eclipse.debug.ui
org.eclipse.e4.workbench
org.eclipse.emf.common.ui
org.eclipse.jdt.core
org.eclipse.jdt.junit.core
org.eclipse.jdt.launching
org.eclipse.jdt.ui
org.eclipse.ltk.core.refactoring
org.eclipse.ltk.ui.refactoring
org.eclipse.m2e.core
org.eclipse.m2e.logback.configuration
org.eclipse.mylyn.bugzilla.core
org.eclipse.mylyn.context.core
org.eclipse.mylyn.tasks.ui
org.eclipse.pde.api.tools
org.eclipse.pde.api.tools.ui
org.eclipse.pde.core
org.eclipse.pde.ui
org.eclipse.ptp.services.core
org.eclipse.rse.core
org.eclipse.rse.ui
org.eclipse.search
org.eclipse.tcf
org.eclipse.tcf.debug
org.eclipse.tcf.te.tcf.locator
org.eclipse.tcf.te.ui
org.eclipse.team.cvs.core
org.eclipse.ui
org.eclipse.ui.editors
org.eclipse.ui.ide
org.eclipse.ui.intro
org.eclipse.ui.views.log
org.eclipse.ui.workbench
org.eclipse.ui.workbench.texteditor
org.eclipse.wst.common.modulecore
org.eclipse.wst.jsdt.core
org.eclipse.wst.jsdt.ui
org.eclipse.wst.server.core
org.eclipse.wst.sse.core
Что нужно сделать, чтобы при работе в перспективе cdt эти непонятные плагины не создавались и workspace занимал приемлемый обьем?
AHTOXA
Feb 18 2016, 09:24
Там описано, как уменьшить объём данных воркспейса.
Три варианта:
1. (Не особо действует): Запустить eclipse с параметром -clean.
2. (Аккуратный): сделать экспорт настроек в файл, затем импорт насроек в новый воркспейс.
3. (Быстрый): скопировать в новый воркспейс только директорию .metadata/.plugins/org.eclipse.core.runtime/.settings.
Но в любом случае, по мере работы размер будет расти.
MrYuran
Mar 9 2016, 08:44
Пытаюсь пдключить ST-LinkV2 к Ас6 (STM32 Eclipse)
Че-то ниедит..
CODE
Open On-Chip Debugger 0.9.0-dev-00418-g9afb8b4-dirty (2015-09-28-12:09)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.htmlInfo : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
adapter speed: 1000 kHz
adapter_nsrst_delay: 100
srst_only separate srst_nogate srst_open_drain connect_assert_srst
srst_only separate srst_nogate srst_open_drain connect_assert_srst
Info : Unable to match requested speed 1000 kHz, using 950 kHz
Info : Unable to match requested speed 1000 kHz, using 950 kHz
Info : clock speed 950 kHz
Info : STLINK v2 JTAG v23 API v2 SWIM v4 VID 0x0483 PID 0x3748
Info : using stlink api v2
Info : Target voltage: 3.204189
Info : stm32f1x.cpu: hardware has 6 breakpoints, 4 watchpoints
Info : accepting 'gdb' connection on tcp/3333
Error: timed out while waiting for target halted
TARGET: stm32f1x.cpu - Not halted
in procedure 'reset'
in procedure 'ocd_bouncer'
Info : device id = 0x10016420
Info : flash size = 128kbytes
Error: timed out while waiting for target halted
TARGET: stm32f1x.cpu - Not halted
in procedure 'reset'
in procedure 'ocd_bouncer'
Error: timed out while waiting for target halted
TARGET: stm32f1x.cpu - Not halted
in procedure 'reset'
in procedure 'ocd_bouncer'
Error: Target not halted
Error: failed erasing sectors 0 to 2
Error: flash_erase returned -304
Что эти буковки означают и что можно сделать?
В CooCox работает сходу пустой проект, но там порт 2009 почему-то, а здесь 3333.
Если интересно, вот конфигурационный скрипт
Цитата
# This is an 9010 board with a single STM32F100VBTx chip.
# Generated by System Workbench for STM32
source [find interface/stlink-v2.cfg]
set WORKAREASIZE 0x2000
transport select "hla_swd"
source [find target/stm32f1x_stlink.cfg]
# use hardware reset, connect under reset
reset_config srst_only srst_nogate
AleksBak
Mar 9 2016, 09:01
Цитата(MrYuran @ Mar 9 2016, 12:44)

Пытаюсь пдключить ST-LinkV2 к Ас6 (STM32 Eclipse)
Че-то ниедит..
.
С портом все нормально и уже работает на нем - см. "буковки" (логи). Вы в CubeMX создали проект? Если да, то имя проекта скажите и сообщу, что делать.
MrYuran
Mar 9 2016, 09:19
Цитата(AleksBak @ Mar 9 2016, 12:01)

С портом все нормально и уже работает на нем - см. "буковки" (логи). Вы в CubeMX создали проект? Если да, то имя проекта скажите и сообщу, что делать.
Я как-то к Stdperith_lib привык, такой и проект создал.
AleksBak
Mar 9 2016, 09:58
Цитата(MrYuran @ Mar 9 2016, 13:19)

Я как-то к Stdperith_lib привык, такой и проект создал.
Понятно. Значит Вы скорее всего из template нового проекта Ac6 создали. Ладно, что гадать уже тут. Ищите *.cfg файл в своем проекте (в CubeMX он наз. <имя_проекта>.cfg) и дублируете его с др. именем и меняете там в последней строчке тип сброса на такой:
reset_config none . Вместо строчки с ресетом пишите это. Потом надо "скормить" этот файл OpenOCD. В свойствах "Debug Configarions". Если Вам непривычно такие действа совершать и привыкли к Кокосу, то тогда зачем использовать этот софт? Используйте и дальше этот кокос.
MrYuran
Mar 9 2016, 10:29
Цитата(AleksBak @ Mar 9 2016, 12:58)

Если Вам непривычно такие действа совершать и привыкли к Кокосу, то тогда зачем использовать этот софт? Используйте и дальше этот кокос.
Мне непривычно отладку использовать, а родной эклипс радует гораздо больше, чем кастрированный
Сделал, теперь вот:
Цитата
Info : Unable to match requested speed 1000 kHz, using 950 kHz
Info : Unable to match requested speed 1000 kHz, using 950 kHz
Info : clock speed 950 kHz
Error: read version failed
in procedure 'init'
in procedure 'ocd_bouncer'
то есть стало хуже.
AleksBak
Mar 9 2016, 10:41
Цитата(MrYuran @ Mar 9 2016, 14:29)

...
Сделал, теперь вот:
то есть стало хуже.
А предыдущую отладку удалили? Terminate and Remove (правой кнопкой на строке с ней в окне "Debug") Еще добавлю - а отладчик в "исходном" состоянии (не красный светодиод светится)? Его лучше тоже переподключить заново.
MrYuran
Mar 9 2016, 11:09
Точно, передернул = заработало.
СПАСИБО!
Efim25
Mar 23 2016, 01:25
Здравствуйте!
использую openstm32 Ас6 (STM32 Eclipse)
среда хорошая, но есть одно но, не могу заставить работать с ST-LINK (пока заливаю прошивки через ком или st-link utiliti)
ошибку дает такую
Error in final launch sequence
Failed to execute MI command:
load "C:\\C++\\CUBE MX32\\Progekt1\\LedTime\\SW4STM32\\LedTime\\Debug\\LedTime.elf"
Error message from debugger back end:
Error erasing flash with vFlashErase packet
Error erasing flash with vFlashErase packet
кто разбирается помогите
AleksBak
Mar 23 2016, 03:13
Попробуйте сделать то же самое, что я тут 2 недели назад писал. Нужно найти файл *.cfg и далее как в том посту написано.
Efim25
Mar 23 2016, 11:11
AleksBak очень благодарю, пошло
Может ли кто-нибудь человеческим языком пояснить, что такое oOmph и другие "инструменты", которые присутствуют в Eclipse? Настройки компилятора, редактора, отладки - все мне очевидно и понятно, но вот oOmph, Mylyn, RPM - что это и с чем его едят?
AHTOXA
Aug 25 2016, 07:02
Тоже однажды задался вопросом, что за Mylin, и накой он мне мешает работать.
Про Mylin есть даже на википедии:
тынц. Или вот
статья на хабре. Как видите, кто-то даже находит что-то полезное в этом.
Мне он мешал, поэтому я поискал описание, как его выпилить. И нашёл:
тынц. Пробовал, получилось. Сейчас не выпиливаю, просто отключаю.
Про остальные названия не в курсе. Наверное, тоже какие-то артефакты от джава-стиля разработки.
help me....
в НЕОН ктонибудь умет настроить отладку таргета?
в марсе был режим Legacy GDB Hardware Debugging Launcher, в неоне нет такого... через задницу удалось заставить шить и отлаживать но после заливки кода не сбрасывает таргет, работаю через BlackMagic
есть идея в скрипт инициализации GDB дописать написать загрузку кода сброса и старт с него - но это костыль..
Сергей Борщ
Sep 6 2016, 12:14
Пользуюсь GDB(DSF) launcher - все заливает, отлаживает из коробки (OpenOCD, Cortex). В отличие от Legacy после завершения отладки не остается "висящих" сессий в окне Debug.
Цитата(Сергей Борщ @ Sep 6 2016, 15:14)

Пользуюсь GDB(DSF) launcher - все заливает, отлаживает из коробки (OpenOCD, Cortex). В отличие от Legacy после завершения отладки не остается "висящих" сессий в окне Debug.
OpenOCD работает как TCP/IP сервер , BlackMagic напрямую через интерфейс /dev/tty
хочется BlackMagic
Добрый день.
Необходимо добавить в проект библиотеку, но не пойму как.
eclipse mars2.0
arm-none-eabi 5.3 2016q1
stm32w108
При попытке добавить библиотеку через: C/C++ General -> Paths and Symbols -> Libraries
вылетает ошибка
С:/arm_tools/arm/5.3 2016q1/bin/../lib/gcc/arm-none-eabi/5.3.1/../../../../arm-none-eabi/bin/ld.exe: cannot find -lС:\workspace\talk_test\Libraries\SimpleMAC\Binary\simplemac-library.a
collect2.exe: error: ld returned 1 exit status
Пробовал в ручную прописать
В C/C++ build -> Settings -> Tool Settings -> Cross ARM C++ Linker -> Command
-l С:\workspace\talk_test\Libraries\SimpleMAC\Binary\simplemac-library.a
менял слэш на противоположный (советовали на форуме Stm), но результат нулевой.
Может кто нибудь подсказать в чем проблема?
переименовать либу в libsimplemac.a
воткнуть ключики линкеру
-LС:\workspace\talk_test\Libraries\SimpleMAC\Binary -lsimplemac
Цитата(klen @ Sep 9 2016, 19:38)

переименовать либу в libsimplemac.a
воткнуть ключики линкеру
-LС:\workspace\talk_test\Libraries\SimpleMAC\Binary -lsimplemac
Большое спасибо, мучился пару дней.
Товарищи, установил Eclipse Neon.1a Release (4.6.1). Что-то не понял, куда делось очень удобное окошко, всплывающее при наведении над переменными в редакторе makefile? Для сишного кода авто-всплывающие подсказки работают. Перерыл все настройки, ничего не нашёл... Косяк эклипсы?
LAS9891
Feb 21 2017, 13:17
Не получается подключить к проекту свои файлы с расширениями .h. Добавил в папку с проектом папки src и inc, в src переместил свои файлы с расширением .c, в папку inc свои файлы с расширением .h. Далее жму ПКМ на папке с проктом-> Properties->C/C++ General-> Paths and Symbols-> вкладка Includes-> жму кнопку Add...-> в окне Add directory path жму кнопку File system...-> ищу свою папку inc-> жму ОК два раза.
Потом во вкладке Source Location проделываю тоже самое с папкой src. Жму Apply и OK.
Пишу в двух своих файлах (в main.c и mysource.c например) с расширением .c одинаковую строчку
Код
#include "myheader.h"
Сохраняю файлы, делаю ребилд проекта. В файле mysource.c Eclipce ругается на строчку
Код
#include "myheader.h"
, говорит:
myheader.h: No such file or directory. В чем проблема?
mdmitry
Feb 21 2017, 23:19
Цитата(LAS9891 @ Feb 21 2017, 17:17)

... В чем проблема?
Ругается скорее не Eclipse, а компилятор. Проверьте строку вызова компилятора, есть ли в ней правильные пути к заголовочным файлам.
LAS9891
Feb 22 2017, 07:47
Header подключился только когда в Си-файле полностью прописал адрес h-файла в строке #include "C:\altera\13.0sp1\Projects\...\myheader.h".
Любые манипуляции с настройками Paths and Symbols не помогли. Как правильно добавлять свои h-файлы в свойствах Paths and Symbols?
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.