All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.languagetool.rules.ru.grammar.xml Maven / Gradle / Ivy

There is a newer version: 6.5
Show newest version
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="../../../../../../../../../languagetool-core/src/main/resources/org/languagetool/rules/print.xsl"
title="Pretty print" ?>
<?xml-stylesheet type="text/css" href="../../../../../../../../../languagetool-core/src/main/resources/org/languagetool/rules/rules.css"
title="Easy editing stylesheet" ?>
<!--
Russian grammar and typo rules for LanguageTool.
See resource/ru/russian_tags.txt for the meaning of the POS tags.

Copyright © 2008-2022 Yakov Reztsov
http://www.languagetool.org

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA        
-->
<!--suppress CheckTagEmptyBody -->
<!DOCTYPE rules [
<!ENTITY weekdays "понедельник|вторник|среда|среду|четверг|пятница|пятницу|суббота|субботу|воскресенье|пн|вт|ср|чт|пт|сб|вс|вск">
<!ENTITY months "январь|февраль|март|апрель|май|июнь|июль|август|сентябрь|октябрь|ноябрь|декабрь|января|февраля|марта|апреля|мая|июня|июля|августа|сентября|октября|ноября|декабря">
<!ENTITY abbrevMonths "янв|фев|мар|апр|ин|ил|авг|сен|окт|ноя|дек">
<!ENTITY color "черн.*|чёрн.*|бел.*|красн.*|син.*|желт.*|жёлт.*|зелен.*|зелён.*"> <!-- цвет -->
<!ENTITY nation "русск.*|прусск.*|австрийск.*|английск.*|немецк.*|французск.*|испанск.*|португальск.*|голландск.*|датск.*|китайск.*|японск.*|арабск.*|индийск.*|армянск.*|грузинск.*|польск.*|чешск.*|венгерск.*|греческ.*|лишн.*|византийск.*"> <!-- язык, человек,стиль -->
<!ENTITY time "будущ.*|прошл.*|прошедш.*|послед.*|наст.*|следующ.*|текущ.*"> <!-- время,раз -->
<!ENTITY human "учён.*|учен.*|ленив.*|умн.*|глуп.*|храбр.*|трусл.*|смел.*|быстр.*|медленн.*|здоров.*|больн.*|слаб.*|нищ.*|мертв.*|мёртв.*|полицейск.*|взросл.*|достойн.*|правоверн.*|несовершеннолетн.*|небольш.*|счастлив.*|главн.*|свят.*|бедн.*|стар.*|молод.*|разн.*|сыт.*|голодн.*|знаменит.*|одержим.*|чист.*|рабоч.*|подконтрольн.*|противоположн.*|праздн.*|тороплив.*|недовольн.*|голый|голая|голые|голому|голой|голым|горбат.*|отвратительн.*|посторонн.*|извест.*|странн.*|пеш.*|бережён.*|бережен.*"> <!-- человек,люди,людей -->
<!ENTITY dual "урока|брата|сына|cапога|курса|помощника|фактора|языка|парня|закона|сестры|жены|угла|дня|вопроса|звезды|телефона|любовника|зуба|переводчика|господина|типа|участка|фильма|яблока|вида|прогноза|вектора|села|представителя|вдоха|человека|корабля|спутника|пчелы|шара|билета|ответа|брака|канала|лицея|соседа|ресторана|скворечника|часа|вкуса|кабеля|вулкана|хребта|гиганта|варианта|пресса|обеда|рода|стула|взноса|слезы|приступа|отца|экзамена|стекла|игрока|писаки|военных|этапа|причины|коллеги|вагин|героя|друга|вождя|паек|телеканала|коридора|терминала|Венеры|маршрута|храма|юл|олушей|бедра|дубов|художника|полка|лозунга|законопроекта|органа|блока|заказника|банка|изолятора|департамента|говора|района|порта|символа|брокера|парка|стола|магазина"> <!-- два,двое,пара -->
<!ENTITY prep_v "институте|кино|Крым|Крыму|мастерской|спортзале|театре|техникуме|университете|цехе|цирке|школе|экспедицию"> <!-- words that require 'в' instead of 'на' as a preposition -->
<!ENTITY prep_na "балет|заводе|Кавказ|концерт|фабрике|факультете"> <!-- words that require 'на' instead of 'в' as a preposition  на почте, в почте #3026   -->
<!ENTITY profession "аналитик|аудитор|агроном|аукционист|бармен|бухгалтер|врач|ветеринар|графист|директор|дипломат|диспетчер|дизайнер|доктор|доцент|документовед|журналист|жокей|инженер|инструктор|ихтиолог|кадровик|кинолог|кассир|кандидат|корректор|критик|лаборант|лингвист|лифтёр|лифтер|музыкант|машинист|механик|менеджер|оператор|пекарь|переводчик|писатель|почтальон|преподаватель|профессор|программист|промоутер|психолог|практик|редактор|садовник|сторож|сметчик|спасатель|татуировщик|теоретик|тренер|физик|химик|художник|экспедитор|экономист|электроник"> <!-- TODO add words Masc/Fem -->
<!ENTITY start_vvodnoe "по-видимому|по-моему|по-твоему|впрочем|итак|следовательно|во-первых|во-вторых|в-третьих|в-четвертых|в-пятых|к|видишь|понимаешь|конечно|несомненно|вероятно|может|кажется|однако|одним|несмотря|наверное|прежде"> <!-- First words for exceptions in other rules!!! Only for exceptions!!!-->
<!ENTITY missing_yo "слез|жилье|белье|битье|щеткой|стерней|сырье|ружье|фоторужье|копье|чутье|офицерье|рытье|цевье|острие|вранье|дутье|нытье|звезды">
<!ENTITY double_num "два|две|три|четыре|2|3|4">
<!ENTITY pnct "[.?,!:;»)(«—–'’‘„“”…-]|&quot;">   <!--  &#34;  =  ["] = &quot; -->  
<!ENTITY pril_end "ый|ого|ому|ым|ом|ая|ой|ую|ое|ые|ых|ыми">
<!ENTITY ne_pril_short_inoe "готов|готова|готово|готовы|должен|должна|должны|должно|намерен|намерена|намерено|намерены|обязан|обязана|обязано|обязаны|рад|рада|рады|радо|склонен|склонна|склонно|склонны|расположен|расположена|расположено|расположены">
<!ENTITY ne_pril_short_double "богата|богат|богато|богаты|бедна|беден|бедны|бедно|красива|красив|красиво|красивы|известен|известна|известно|известны|велика|велик|велико|велики|нужен|нужна|нужно|нужны|прав|права|право|правы|согласен|согласна|согласно|согласны|способен|способна|способно|способны">
<!ENTITY verb "должен|должна|должно|должны|обязана|обязано|обязаны|обязан|необходимо"> <!-- TODO:check in dict -->
<!ENTITY rost "количество|количественный|качество|качественный|показатель|показательный|экономика|экономический|преступность|преступный|смертность|безработица|безрабоный|численность|рождаемость|выработка|прибыль|стоимость|долг|госдолг|доход|расход|протяжённость|продолжительность|ассигнование|урожайность|популярность|напряжённость|ВВП|коралл|темп|продукт|возможность|замедление|результат|десятилетие|сравнение|объём|автомобилизация|вид|сбыт|цена|противоречие|мера|урожай|инвестиция|производство|сила|потребность|точка|процесс|тело|концентрация|время|стимулятор|регулятор|благосостояние|причина|предпосылка|сезон|политика|период|тенденция|ожидание|национализм|зарплата|микроорганизм|бактерия|потенциал|система|поощрение|производительность|самосознание|сознательность|импорт|экспорт|добыча|запас|спрос|путь">
<!ENTITY zagl "ГЛАВА|КНИГА|МЕДИА|ВАЖНО|ВНИМАНИЕ|ПРИМЕЧАНИЕ">
<!ENTITY defis_libo "какая|какие|какое|какой|какому|кому|кто|такому|такая|такое|такой|вообще|всего|где|зачем|когда|куда|откуда|отчего|почему|сколько|тогда|так|туда|чего|что">
]>
<!-- «» -->
<rules lang="ru" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../languagetool-core/src/main/resources/org/languagetool/rules/rules.xsd">

    <unification feature="number">
        <equivalence type="Sin">
            <token postag=".*:Sin(:.*)*|((ADJ|Ord|PT:(Past|Real):.*|PT_Short:Real|VB:Past):.*:(Masc|Fem|Neut)(:.*)*)|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"></token>
        </equivalence>
        <equivalence type="PL">
            <token postag=".*:PL(:.*)*|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"></token>
        </equivalence>
    </unification>
     
    <unification feature="case">
        <equivalence type="Nom">
            <token postag=".*:Nom(:.*)*|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"></token>
        </equivalence>
        <equivalence type="R">
            <token postag=".*:R(:.*)*|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"></token>
        </equivalence>
        <equivalence type="D">
            <token postag=".*:D(:.*)*|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"></token>
        </equivalence>
        <equivalence type="V">
            <token postag=".*:V(:.*)*|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"></token>
        </equivalence>
        <equivalence type="T">
            <token postag=".*:T(:.*)*|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"></token>
        </equivalence>
        <equivalence type="P">
            <token postag=".*:P(:.*)*|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"></token>
        </equivalence>
    </unification> 
       
    <unification feature="gender">
        <equivalence type="Masc">
            <token postag=".*:Masc(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="Fem">
            <token postag=".*:Fem(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="Neut">
            <token postag=".*:Neut(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="Plural">
            <token postag=".*:PL(:.*)*|NN:.*:(Masc|Fem|Neut)" postag_regexp="yes"/>
        </equivalence>
    </unification>
    
    <unification feature="animacy">
        <equivalence type="Anim">
            <token postag=".*:(Anim|Inanimanim|Name|Patr|Fam)(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="Inanim">
            <token postag=".*:(Inanim|Inanimanim)(:.*)*" postag_regexp="yes"/>
        </equivalence>
    </unification>
    
    <unification feature="person">
        <equivalence type="P1">
            <token postag=".*:P1" postag_regexp="yes"></token>
        </equivalence>
        <equivalence type="P2">
            <token postag=".*:P2" postag_regexp="yes"></token>
        </equivalence>
        <equivalence type="P3">
            <token postag=".*:P3" postag_regexp="yes"></token>
        </equivalence>
    </unification>

    <unification feature="tense">
        <equivalence type="INF">
            <token postag=".*:INF(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="IMP">
            <token postag=".*:IMP(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="Fut">
            <token postag=".*:Fut(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="Past">
            <token postag=".*:Past(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="Real">
            <token postag=".*:Real(:.*)*" postag_regexp="yes"/>
        </equivalence>
    </unification>
    
    <unification feature="transitivity">
        <equivalence type="TRANS">
            <token postag=".*:TRANS(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="INTR">
            <token postag=".*:INTR(:.*)*" postag_regexp="yes"/>
        </equivalence>
    </unification>
    
    <unification feature="aspect">
        <equivalence type="PFV">
            <token postag=".*:(PFV|2PFV)(:.*)*" postag_regexp="yes"/>
        </equivalence>
        <equivalence type="IMPFV">
            <token postag=".*:(IMPFV|2PFV)(:.*)*" postag_regexp="yes"/>
        </equivalence>
    </unification>
       
    <category id="LOGIC" name="Логические ошибки">
          <rulegroup id="INVALID_DATE" name="Неверная дата, например: «31 февраля 2014»">
            <rule>
                <pattern>
                    <!-- "31 июня 2014 г." -->
                    <marker>
                        <token>31</token>
			<token regexp="yes">апрель|апр|апреля|июнь|июня|сен|сентября|сентябрь|ноябрь|ноября|ноя</token>                      
                    </marker>
                </pattern>
                <message>В <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match> только 30 дней.</message>
                <example correction="">Это случилось <marker>31 ноября</marker> 2014 г.</example>
                <example correction="">Это случилось <marker>31 апреля</marker> 2014 г.</example>
                <example>Это случилось <marker>30 ноября</marker> 2014 г.</example>
            </rule>
            <rule>
                <pattern>
                    <!-- "30 февраля 2014 г." -->
                    <marker>
                        <token regexp="yes">3[01]</token>
		        <token regexp="yes">февраля|фев|февраль</token>
                    </marker>
                </pattern>
                <message>В феврале бывает только 28 дней, или 29 дней в високосном году.</message>
                <example correction="">Это случилось <marker>30 февраля</marker> 2014 г.</example>
                <example>Это случилось <marker>28 февраля</marker> 2014 г.</example>
            </rule>
        </rulegroup>
	 <rule id="YEAR_20001" name="«Май 20001 (Май 2001)»">
            <pattern>
                <token regexp="yes">&months;|год</token>
                <token regexp="yes">200\d\d</token>
            </pattern>
            <message>Действительно \2? или <suggestion><match no="1"/> <match no="2" regexp_match="200" regexp_replace="20"/></suggestion>?</message>
            <short>Опечатка?</short>
            <example correction="май 2014">Моя поездка на море запланирована на <marker>май 20014</marker> г.</example>
        </rule>

	<rulegroup id="DATE_WEEKDAY1" name="День недели не соответствует дате">   
                    <!-- "понедельник, 7 октября 2014" -->
            <rule>
                <pattern>
                    <token regexp="yes">&weekdays;</token>
                    <token min="0" max="1">,</token>
                    <token regexp="yes">\d\d?</token>
                    <token regexp="yes">&months;|&abbrevMonths;</token>
                    <token regexp="yes">\d\d\d\d</token>
                </pattern>
                <filter class="org.languagetool.rules.ru.DateCheckFilter" args="year:\5 month:\4 day:\3 weekDay:\1"/>
                <message>Днём недели \3 \4 \5 года является {realDay}.</message>
                <example correction="">Конференция состоится в <marker>понедельник, 7 октября 2014</marker> г.</example>
                <example correction="">Конференция состоится в <marker>понедельник 7 октября 2014</marker> г.</example>
                <example correction="">Конференция состоится в <marker>пятницу 7 октября 2014</marker> г.</example>
                <example correction="">Конференция состоится в <marker>понедельник, 7 окт 2014</marker> г.</example>
                <example>Конференция состоится во <marker>вторник, 7 октября 2014</marker> г.</example>
                <example>Конференция состоится во <marker>вторник, 7 окт 2014</marker> г.</example>
            </rule>
            <rule>
                  <pattern>
                      <token regexp="yes">&weekdays;</token>
                      <token min="0" max="1">,</token>
                      <token regexp="yes">0?[1-9]|[12][0-9]|3[01]</token>            
                      <token>.</token>
                      <token regexp="yes">0?[1-9]|1[0-2]</token>
                      <token>.</token>
                      <token regexp="yes">\d\d\d\d</token>
                  </pattern>
                <filter class="org.languagetool.rules.ru.DateCheckFilter" args="year:\7 month:\5 day:\3 weekDay:\1"/>
                <message>Днём недели \3.\5.\7 является не \1, а {realDay}.</message>
                <example correction="">Конференция состоится в <marker>понедельник, 7.10.2014</marker> г.</example>
                <example correction="">Конференция состоится в <marker>понедельник 7.10.2014</marker> г.</example>
                <example>Конференция состоится во <marker>вторник, 7.10.2014</marker> г.</example>
            </rule>
        </rulegroup>
        <rulegroup id="INVALID_TENSE_DATE" name="Дата находится в будущем, а глагол – в прошлом" >
          <rule>
                <pattern>
                    <token postag="VB:Past:.*:.*:.*" postag_regexp="yes" skip="-1">
                        <exception postag="VB:Past:.*:.*:.*" postag_regexp="yes" negate_pos="yes"></exception>
                        <exception scope="next">до</exception>
                    </token>
                    <marker>
                        <token regexp="yes">\d\d?</token>
                        <token regexp="yes">января|февраля|марта|апреля|мая|июня|июля|августа|сентября|октября|ноября|декабря</token>
                        <token regexp="yes">\d\d\d\d</token>
                    </marker>
                </pattern>
                <filter args="year:\4 month:\3 day:\2" class="org.languagetool.rules.ru.FutureDateFilter"/>
            <message>Данная дата находится в будущем, но глагол стоит в прошедшем времени.</message>
            <short>Дата – в будущем</short>
            <example correction="">Мы посетили клиента <marker>17 июня 2039</marker> г.</example>           
     <!--   <example correction="">Мы посетили клиента <marker>17 июня 2039г</marker>.</example> -->
            <example>Мы посетили клиента 17 июня 1939 г.</example>
          </rule>
          <rule>
                <pattern>
                    <token postag="VB:Past:.*:.*:.*" postag_regexp="yes" skip="-1">
                        <exception postag="VB:Past:.*:.*:.*" postag_regexp="yes" negate_pos="yes"></exception>
                        <exception scope="next">до</exception>
                    </token>
                    <marker>
                        <token regexp="yes">\d\d?</token>
                        <token>.</token>
                        <token regexp="yes">[0-1]?[0-9]</token>
                        <token>.</token>
                        <token regexp="yes">\d\d\d\d</token>
                    </marker>
                </pattern>
                <filter args="year:\6 month:\4 day:\2" class="org.languagetool.rules.ru.FutureDateFilter"/>
            <message>Данная дата находится в будущем, но глагол стоит в прошедшем времени.</message>
            <short>Дата – в будущем</short>
            <example correction="">Мы посетили клиента <marker>17.06.2039</marker>.</example>
            <example>Мы посетили клиента 17.06.1939.</example>
          </rule>
        </rulegroup>
        <rule id="zadat_test" name="Опечатка: «задать тест»">
            <pattern>
		<token>задать</token>
                <token>тест</token>
            </pattern>
            <message>Опечатка: <suggestion>предложить тест</suggestion></message>
            <short>Опечатка</short>
            <example correction="предложить тест"><marker>задать тест</marker></example>
        </rule>
        <rule id="razvevatsja_razvivatsja" name="Опечатка: «развеваться» или «развиваться»">
            <pattern>
		<token skip="2" regexp="yes" inflected="yes">развеваться|развестись</token>
                <token regexp="yes">болезнь|недуг|заболевание|опухоль</token>
            </pattern>
            <message>Опечатка: <suggestion><match no="1"  regexp_match="разве(.*)" regexp_replace="разви$1" include_skipped="all" /> <match no="2"/></suggestion></message>
            <short>Опечатка</short>
            <example>развевался флаг</example>
            <example correction="развивалась болезнь"><marker>развевалась болезнь</marker></example>
        </rule>
        <rule id="perehodny_peshehod" name="Опечатка: «пешеходный переход»">
            <pattern>
		<token>переходный</token>
                <token>пешеход</token>
            </pattern>
            <message>Опечатка: <suggestion>пешеходный переход</suggestion></message>
            <short>Опечатка</short>
            <example correction="пешеходный переход"><marker>переходный пешеход</marker></example>
        </rule>
        <rule id="plohoj_den" name="Опечатка: «плохой день»">
            <pattern>
		<token>плахой</token>
                <token>день</token>
            </pattern>
            <message>Опечатка: <suggestion>плохой день</suggestion></message>
            <short>Опечатка</short>
            <example correction="плохой день"><marker>плахой день</marker></example>
        </rule>
        <rulegroup id="ne_proronila_ni" name="Опечатка: «не проронила и слово»">
         <!-- TODO: add postag for verb - переходный глагол-->   
          <rule>
              <pattern>
		<token>не</token>
                <token regexp="yes">проронил|проронила</token>
                <token regexp="yes">и|ни</token>
                <token postag_regexp="yes" postag="NN:.*:.*:Sin:V"><exception postag_regexp="yes" postag="NN:.*:.*:Sin:R"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Опечатка: <suggestion><match no="1" /> <match no="2" /> ни <match no="4" postag="NN:(.*):(.*):Sin:V" postag_regexp="yes" postag_replace="NN:$1:$2:Sin:R"></match></suggestion></message>
            <short>Опечатка</short>
            <example correction="не проронила ни слова">За весь вечер она <marker>не проронила и слово</marker>.</example>
          </rule>
        </rulegroup>
        <rule id="zakonchit_shkolu" name="Опечатка: «закончить или окончить»">
            <pattern>
		<token inflected="yes">закончить</token>
                <token regexp="yes">школу|институт|университет|вуз|курсы|техникум|пту|училище|академию</token>
            </pattern>
            <message>Опечатка: <suggestion><match no="1"  regexp_match="закон(.*)"  regexp_replace="окон$1" /> <match no="2" /></suggestion></message>
            <short>Опечатка</short>
            <example correction="окончил университет">В этом году он <marker>закончил университет</marker>.</example>
        </rule>
        <rulegroup id="dlitelnij_dlinnij" name="Опечатка: «длительный» или «длинный»">
           <rule>
            <pattern>
		<token inflected="yes">длительный</token>
                <token regexp="yes" inflected="yes">разговор|фраза|зима</token>
            </pattern>
            <message>Опечатка: <suggestion><match no="1"  regexp_match="длительн(.*)"  regexp_replace="длинн$1" /> <match no="2" /></suggestion></message>
            <short>Опечатка</short>
            <example correction="длинный разговор"><marker>длительный разговор</marker></example>
           </rule>
           <rule>
            <pattern>
		<token inflected="yes">длинный</token>
                <token inflected="yes">полёт</token>
            </pattern>
            <message>Опечатка: <suggestion><match no="1"  regexp_match="длинн(.*)"  regexp_replace="длительн$1" /> <match no="2" /></suggestion></message>
            <short>Опечатка</short>
            <example correction="длительный полёт"><marker>длинный полёт</marker></example>
          </rule>
        </rulegroup>
        
        <rulegroup id="Vazhno_chto_etogo" name="Опечатка: «что этого» или «что это»">
          <rule>
            <pattern>
                <marker>
                    <token>что</token>
                    <token>этого</token>
                </marker>
                <token postag="VB:.*" postag_regexp="yes"></token>
                <token inflected="yes" regexp="yes">показать|показывать</token>
            </pattern>
            <message>Опечатка: <suggestion>\1 это</suggestion>?</message>
            <short>Опечатка?</short>
            <example correction="что это">Важно, <marker>что этого</marker> удалось показать для случая изотропных материалов.</example>
            <example>Важно, что это удалось показать для случая изотропных материалов.</example>
          </rule>
          <rule>
            <pattern>
                <marker>
                    <token>что</token>
                    <token>это</token>
                </marker>
                <token postag="VB:.*" postag_regexp="yes"></token>
                <token inflected="yes" regexp="yes">добиться|добиваться</token>
            </pattern>
            <message>Опечатка: <suggestion>\1 этого</suggestion>?</message>
            <short>Опечатка?</short>
            <example correction="что этого">Важно, <marker>что это</marker> удалось добиться для случая изотропных материалов.</example>
            <example>Важно, что этого удалось добиться для случая изотропных материалов.</example>
          </rule>
        </rulegroup>
        <rule id="sovestnij_sovmestnij" name="Опечатка: «совестный» или «совместный»">
            <pattern>
		<token inflected="yes">совестный</token>
                <token inflected="yes" regexp="yes">бизнес|предприятие</token>
            </pattern>
            <message>Опечатка: <suggestion><match no="1" regexp_match="(совестн)([а-я]{1,3})" regexp_replace="совместн$2"></match> <match no="2"></match></suggestion></message>
            <short>Опечатка</short>
            <example correction="совместное предприятие"><marker>совестное предприятие</marker></example>
        </rule>
        <rule id="odin_za_odnim" name="Опечатка: «один за одним» или «один за другим»">
            <pattern>
		<token>один</token>
                <token>за</token>
                <token>одним</token>
            </pattern>
            <message>Опечатка: <suggestion>\1 \2 другим</suggestion></message>
            <short>Опечатка</short>
            <example correction="один за другим"><marker>один за одним</marker></example>
        </rule>
        <rule id="Slovosoch_interesnaja_kniga" name="Опечатка: «интересная» или «интересую»">
            <pattern>
		<token postag="VB:.*" postag_regexp="yes"></token>
                <token>интересую</token>
                <token postag="NN:.*:Sin:V" postag_regexp="yes"></token>
            </pattern>
            <message>Опечатка: <suggestion>\1 интересную \3</suggestion></message>
            <short>Опечатка</short>
            <example correction="купил интересную книгу"><marker>купил интересую книгу</marker></example>
            <example>прочесть интересную книгу</example>
        </rule>
        <rule id="V_sortimente" name="Опечатка: «в сортименте» или «в ассортименте»">
            <pattern>
		<token skip="1">в</token>
                <token>сортименте</token>
                <token>.</token>
            </pattern>
            <message>Опечатка: <suggestion><match no="1" include_skipped="all" ></match> ассортименте.</suggestion></message>
            <short>Опечатка</short>
            <example correction="в ассортименте.">Товары <marker>в сортименте.</marker></example>
             <example correction="в широком ассортименте.">Товары <marker>в широком сортименте.</marker></example>
            <example>Товары в ассортименте.</example>
        </rule>    
        <rulegroup id="Slovosoch_v_proshlom" name="Опечатка: «в прошлом» или «в пошлом»">
          <rule>
            <pattern>
		<marker>
                <token>в</token>
                <token>пошлом</token>
                </marker>
                <or>
                  <token postag="VB:.*" postag_regexp="yes"></token>
                  <token regexp="yes">времени|году|месяце|сезоне|отпуске|доме</token>
                </or>
            </pattern>
            <message>Опечатка: <suggestion>\1 прошлом</suggestion></message>
            <short>Опечатка</short>
            <example correction="в прошлом">Хотя <marker>в пошлом</marker> были предложены решения, мы только сегодня имеем результат.</example>
            <example>Хотя в прошлом были предложены решения, мы только сегодня имеем результат.</example>
          </rule>
          <rule>
            <pattern>
		<marker>
                <token regexp="yes">на|в</token>
                <token>пошлой</token>
                </marker>
                <token regexp="yes" inflected="yes">неделя|серия</token>
            </pattern>
            <message>Опечатка: <suggestion>\1 прошлой</suggestion></message>
            <short>Опечатка</short>
            <example correction="На прошлой"><marker>На пошлой</marker> неделе были предложены верные решения.</example>
            <example>На прошлой неделе были предложены верные решения.</example>
          </rule>
          <rule>
            <pattern>
		<marker>
                <token regexp="yes">на|в</token>
                <token>пошлые</token>
                </marker>
                <token inflected="yes">каникулы</token>
            </pattern>
            <message>Опечатка: <suggestion>\1 прошлые</suggestion></message>
            <short>Опечатка</short>
            <example correction="На прошлые"><marker>На пошлые</marker> каникулы мы ездили в горы.</example>
          </rule>                
        </rulegroup>
	<rulegroup id="na_poverku" name="Логические ошибки: «на поверку» или «на проверку»">
            <rule> 
                <pattern>
                    <token>на</token>
                    <token>проверку</token>
                    <token>оказалось</token>
                </pattern>
                 
                <message>Имелось в виду <suggestion>\1 поверку \3</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="На поверку оказалось"><marker>На проверку оказалось</marker>, что была допущена ошибка.</example>
                <example>На поверку оказалось, что была допущена ошибка.</example>
                <example>Сдайте тетради на проверку!</example>
            </rule>          
        </rulegroup>
        <rulegroup id="v_ruchnuju" name="Логические ошибки: «в ручную» или «вручную»">
            <rule> 
                <pattern>
                    <token postag="VB.*" postag_regexp="yes"></token>
                    <token>в</token>
                    <token>ручную</token>
                    <token>.</token>
                </pattern>                 
                <message>Имелось в виду: <suggestion>\1 \2\3\4</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="открыть вручную.">И двери <marker>открыть в ручную.</marker></example>
                <example>В ручную кладь можно сдать сумку.</example>
                <example>И двери открыть вручную.</example>
            </rule>                       
            <rule>
                <pattern>
                    <token>вручную<exception postag="VB:.*|PT.*" postag_regexp="yes" scope="previous"></exception></token>
                    <token postag="N(N|NN|NF):.*:.*:V|PNN:.*" postag_regexp="yes"><exception postag="VB:.*|PT.*" postag_regexp="yes" scope="next"></exception></token>
                </pattern>
                <message>Имелось в виду: <suggestion>в ручную <match no="2"/></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="В ручную кладь"><marker>Вручную кладь</marker> можно сдать сумку.</example>
                <example>В ручную кладь можно сдать сумку.</example>
                <example>Я бы вручную их обновил.</example>
                <example>И двери открыть вручную.</example>
            </rule>
        </rulegroup>
        <rulegroup id="INFORMATIVNIJ_INFORMACIONNIJ" name="Логические ошибки: «информативный» или «информационный»">
            <rule>
                <pattern>
                    <token inflected="yes">информативный</token>
                    <token inflected="yes" regexp="yes">служба|отдел</token>
                </pattern>              
                <message>Имелось в виду <suggestion><match no="1"  regexp_match="информативн(.*)"  regexp_replace="информационн$1" /> <match no="2" /></suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="информационный отдел">По всем вопросам обращайтесь в <marker>информативный отдел</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup id="VODJANOJ_VODNIJ" name="Логические ошибки: «водяной» или «водный»">
            <rule>
                <pattern>
                    <token inflected="yes">водяной</token>
                    <token inflected="yes" regexp="yes">спорт|поло|транспорт|туризм|процедура|лыжа</token>
                </pattern>              
                <message>Имелось в виду <suggestion suppress_misspelled="yes"><match no="1"  postag="ADJ:(.*):(.*)" postag_regexp="yes" postag_replace="ADJ:$1:$2" setpos="yes">водный</match> <match no="2" /></suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="водным спортом">Спортсмены занимались <marker>водяным спортом</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                    <token inflected="yes">водный</token>
                    <token inflected="yes" regexp="yes">жук|букашка|часы|мельница|дело|лилия|цветок|турбина|электростанция|отопление|насос</token>
                </pattern>              
                <message>Имелось в виду «водяной»?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B2%D0%BE%D0%B4%D1%8F%D0%BD%D0%BE%D0%B9</url>
                <short>«Водяной»?</short>
                <example correction=""><marker>Водная мельница</marker> была первой машиной, которая нашла широкое применение в производстве.</example>
            </rule>                   
        </rulegroup>
        
	<rulegroup id="obschie_toscki_soprikosnovenija" name="Логические ошибки: «общие точки соприкосновения»">
            <rule> 
                <pattern>
                    <token inflected="yes">общий</token>
                    <token inflected="yes">точка</token>
                    <token>соприкосновения</token>
                </pattern>               
                <message>Избыточность: <suggestion>\2 \3</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="точки соприкосновения">Они нашли <marker>общие точки соприкосновения</marker>.</example>
                <example>Они нашли  точки соприкосновения.</example>
            </rule>          
        </rulegroup>
        
        
        <rulegroup id="uroven_uvelichilsja" name="Логические ошибки: «уровень повысился или увеличился»">
            <!--  <token min="0" max="3"></token> - реализовано другим способом skip="3"-->          
            <rule> 
                <pattern>
                    <token skip="3">уровень</token>
                    <token>увеличился</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1" include_skipped="all" /> повысился</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="Уровень воды повысился"><marker>Уровень воды увеличился</marker>.</example>
                <example correction="Уровень воды в реке повысился"><marker>Уровень воды в реке увеличился</marker>.</example>
                <example>Уровень воды в озере повысился.</example>
            </rule>
             <rule> 
                <pattern>
                    <token>уровень</token>
                    <token></token>
                    <token>уменьшился</token>
                </pattern>             
                <message>Имелось в виду: <suggestion>\1 \2 понизился</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="Уровень воды понизился"><marker>Уровень воды уменьшился</marker>.</example>
                <example>Уровень воды в озере понизился.</example>
            </rule>                    
        </rulegroup>
       
        <rulegroup id="gerojsky_geroichesky" name="Логические ошибки: «геройский» или «героический»">
            <rule> 
                <pattern>
                   <token inflected="yes">геройский</token>
                   <token inflected="yes" regexp="yes">рассказ|сказ|эпос|сказания|поступок</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1"  regexp_match="[Гг]еройск(.*)"  regexp_replace="героическ$1" /> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="Героический эпос"><marker>Геройский эпос</marker> народов мира.</example>
                <example>Героический эпос народов мира.</example>
            </rule> 
        </rulegroup>
        <rulegroup id="giloj_gilichnij" name="Логические ошибки: «жилой» или «жилищный»">
            <rule> 
                <pattern>
                   <token>жилищный</token>
                   <token regexp="yes">дом|строение|помещение</token>
                </pattern>
                <message>Имелось в виду: <suggestion>жилой <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="жилой дом"><marker>жилищный дом</marker></example>
                <example>жилое помещение</example>
            </rule>
            <rule> 
                <pattern>
                   <token inflected="yes">жилой</token>
                   <token inflected="yes" regexp="yes">кодекс|комиссия|отдел|кооперация|законодательство</token>
                </pattern>
                <message suppress_misspelled="yes">Имелось в виду: <suggestion><match no="1"  postag="ADJ:(.*):(.*)" postag_regexp="yes" postag_replace="ADJ:$1:$2" setpos="yes">жилищный</match> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="жилищное законодательство">Изменения были внесены в <marker>жилое законодательство</marker>.</example>
                <example>жилищный кодекс</example>
            </rule>  
        </rulegroup>
        <rulegroup id="dvigatel_dvizhetel" name="Устойчивые словосочетания со словами: «двигатель» или «движитель»">
            <rule> 
                <pattern>
                   <token inflected="yes">движитель</token>
                   <token regexp="yes" inflected="yes">перестройка|прогресс|развитие</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1"  regexp_match="[Дд]вижит(.*)"  regexp_replace="двигат$1" /> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="двигатели перестройки">Кооперация и аренда — <marker>движители перестройки</marker>.</example>
                <example>Кооперация и аренда — двигатели перестройки.</example>
            </rule>
        </rulegroup>      
        <rulegroup id="companija_campanija" name="Логические ошибки: «компания» или «кампания»">
            <rule> 
                <pattern>
                   <token inflected="yes">производственный</token>
                   <token inflected="yes">кампания</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1" /> <match no="2" regexp_match="(кампан)(.*)" regexp_replace="компан$2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="Производственная компания"><marker>Производственная кампания</marker>.</example>
                <example>Производственная компания была основана в 1990 году.</example>
            </rule> 
            <rule> 
                <pattern>
                   <token inflected="yes">начаться</token>
                   <token inflected="yes">компания</token>
                   <token>по</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1" /> <match no="2" regexp_match="(компан)(.*)" regexp_replace="кампан$2" /> <match no="3" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="Началась кампания по"><marker>Началась компания по</marker> сбору урожая.</example>
                <example>Кампания по сбору урожая.</example>
            </rule>
        </rulegroup>
        <rulegroup id="economichesky_ekonomichniy" name="Логические ошибки: «экономический» или «экономичный»">      
            <rule> 
                <pattern>
                   <token inflected="yes" >экономический</token>
                   <token regexp="yes" inflected="yes">автомобиль|дизайн-проект|двигатель</token>
                </pattern>
                <message suppress_misspelled="yes">Имелось в виду: <suggestion><match no="1" postag="ADJ:(.*):(.*)" postag_regexp="yes" postag_replace="ADJ:$1:$2" setpos="yes">экономичный</match> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="экономичного автомобиль|экономичный автомобиль"><marker>экономический автомобиль</marker></example>
                <example>Этот экономичный автомобиль расходует только 5 литров топлива на 100 километров.</example>
            </rule>
            <rule> 
                <pattern>
                   <token inflected="yes">экономичный</token>
                   <token regexp="yes" inflected="yes">форум|саммит|сотрудничество|факультет</token>
                </pattern>
                <message suppress_misspelled="yes">Имелось в виду: <suggestion><match no="1" postag="ADJ:(.*):(.*)" postag_regexp="yes" postag_replace="ADJ:$1:$2" setpos="yes">экономический</match> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="экономическом саммите">На <marker>экономичном саммите</marker> обсуждались злободневные темы.</example>
                <example>На экономическом саммите обсуждались злободневные темы.</example>
            </rule>                
        </rulegroup>
        <rulegroup id="urovnjat_uravnjat" name="Логические ошибки: «уровнять» или «уравнять»">
                
            <rule> 
                <pattern>
                   <token inflected="yes">уравнять</token>
                   <token regexp="yes">грядку|дорогу|землю</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1" regexp_match="(.*)(вня)(.*)" regexp_replace="уро$2$3" /> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="уровнять дорогу"><marker>уравнять дорогу</marker></example>
                <example>уровнять дорогу</example>
            </rule>
              <rule> 
                <pattern>
                   <token inflected="yes" >уровнять</token>
                   <token>в</token>
                   <token regexp="yes" >весе|правах</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1" regexp_match="(.*)(вня)(.*)" regexp_replace="ура$2$3" /> <match no="2" /> <match no="3" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="уравнять в правах"><marker>уровнять в правах</marker></example>
                <example>уравнять в правах</example>
            </rule>                     
        </rulegroup>
        <rulegroup id="bolotnij_bolotistiy" name="Логические ошибки: «болотный» или «болотистый»">         
            <rule> 
                <pattern>
                   <token inflected="yes">болотный</token>
                   <token regexp="yes" inflected="yes">лес|луг|долина|территория|поле|пойма|чек|лиман|опушка</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1" regexp_match="болотн(.*)" regexp_replace="болотист$1" /> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="болотистая территория">Здесь располагается <marker>болотная территория</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                   <token inflected="yes">болотистый</token>
                   <token regexp="yes" inflected="yes">газ|лихорадка|лунь|козёл|козел|олень|дуб</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1" regexp_match="болотист(.*)" regexp_replace="болотн$1" /> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="болотный газ">Из воды выходил <marker>болотистый газ</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup id="budniy_budnichnij" name="Логические ошибки: «будний» или «будничный»">         
            <rule> 
                <pattern>
                   <token inflected="yes">будний</token>
                   <token inflected="yes" regexp="yes">костюм|одежда</token>
                </pattern>
                <message>Имелось в виду: «будничный»?</message>
                <short>«Будничный»?</short>
                <example type="incorrect"><marker>будний костюм</marker></example>
                <example type="incorrect"><marker>будняя одежда</marker></example>
            </rule>
            <rule> 
                <pattern>
                   <token inflected="yes">будничный</token>
                   <token inflected="yes" >день</token>
                </pattern>
                <message>Имелось в виду: «будний»?</message>
                <short>«Будний»?</short>
                <example type="incorrect"><marker>будничный день</marker></example>
            </rule>
        </rulegroup>
        <rulegroup id="voinstvujuschij_voinstvennij" name="Логические ошибки: «воинственный» или «воинствующий»">         
            <rule> 
                <pattern>
                   <token inflected="yes">воинствующий</token>
                   <token inflected="yes" regexp="yes">план|способ|настроение</token>
                </pattern>
                <message>Имелось в виду: «воинственный»?</message>
                <short>«Воинственный»?</short>
                <example type="incorrect"><marker>воинствующий план</marker></example>
                <example type="incorrect"><marker>воинствующее настроение</marker></example>
            </rule>
            <rule> 
                <pattern>
                   <token inflected="yes">воинственный</token>
                   <token inflected="yes" regexp="yes" >атеизм|атеист|философ|материализм|идеализм|национализм|гуманист</token>
                </pattern>
                <message>Имелось в виду: «воинствующий»?</message>
                <short>«Воинствующий»?</short>
                <example type="incorrect"><marker>воинственный идеализм</marker></example>
            </rule>
        </rulegroup>
        <rulegroup id="vlasti_priderjashie" name="Логические ошибки: «власти предержащие»">
            <rule> 
                <pattern>
                    <token>власть</token>
                    <token>предержащие</token>
                </pattern>              
                <message>Имелось в виду <suggestion>власти \2</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="власти предержащие">Это <marker>власть предержащие</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup id="tcifra_zanijena" name="Логические ошибки: «цифра занижена»">
            <rule> 
                <pattern>
                    <token skip="4">цифра</token>
                    <token>занижена</token>
                </pattern>            
                <message>Вместо выражения: «цифра занижена» необходимо употреблять: «количество (значение, ...) занижено».</message>
                <short>Логическая ошибка</short>
                <example correction="">Эта <marker>цифра в отчёте занижена</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup id="imeet_mesto" name="Логические ошибки: «имеет место»">
            <rule> 
                <pattern>
                    <token inflected="yes">иметь</token>
                    <token>место</token>
                    <token>быть</token>
                </pattern>              
                <message>Имелось в виду <suggestion>\1 \2</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="имеет место">Эта ситуация <marker>имеет место быть</marker>.</example>
            </rule>
         </rulegroup>
         <rulegroup id="sdelat_ukol" name="Логические ошибки: «сделать укол»">
            <rule> 
                <pattern>
                    <token>поставить</token>
                    <token>укол</token>
                </pattern>              
                <message>Имелось в виду <suggestion>сделать \2</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="сделать укол"><marker>поставить укол</marker></example>
            </rule>
          </rulegroup>
         <rulegroup id="prinat_tabеletku" name="Логические ошибки: «принять таблетку»">
            <rule> 
                <pattern>
                    <token>выпить</token>
                    <token>таблетку</token>
                </pattern>              
                <message>Имелось в виду <suggestion>принять \2</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="принять таблетку"><marker>выпить таблетку</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="solnij_instrument" name="Логические ошибки: «сольный инструмент»">
            <rule> 
                <pattern>
                    <token>сольный</token>
                    <token>инструмент</token>
                </pattern>              
                <message>Имелось в виду <suggestion>солирующий \2</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="солирующий инструмент"><marker>сольный инструмент</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="podvesti_rezultaty" name="Логические ошибки: «подвести результаты»">
            <rule> 
                <pattern>
                    <token inflected="yes">подвести</token>
                    <token>результаты</token>
                </pattern>              
                <message>Имелось в виду <suggestion>\1 итоги</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="подвели итоги">Они <marker>подвели результаты</marker> работы организации.</example>
            </rule>
          </rulegroup>
          <rulegroup id="podvesti_rezume" name="Логические ошибки: «подвести резюме»">
            <rule> 
                <pattern>
                    <token regexp="yes" inflected="yes">подводить|подвести</token>
                    <token>резюме</token>
                </pattern>              
                <message>Имелось в виду <suggestion><match no="1" regexp_match="подве(.*)" regexp_replace="выве$1"/> <match no="2"/></suggestion>?</message>
                <url>http://pishu-pravilno.livejournal.com/1821678.html</url>
                <short>Логическая ошибка</short>
                <example correction="вывели резюме">Они <marker>подвели резюме</marker>.</example>
            </rule>
          </rulegroup>
          <rulegroup id="kavalkada_mashin" name="Логические ошибки: «кавалькада машин»">
            <rule> 
                <pattern>
                    <token inflected="yes">кавалькада</token>
                    <token regexp="yes">машин|ездоков|велосипедов|мотоциклов|людей|всадников|наездников</token>
                </pattern>              
                <message>Слово «кавалькада» обозначает «группу всадников» и не требует после себя пояснительного слова: <suggestion>\1</suggestion> или <suggestion><match no="1" regexp_match="кавалькад(.*)" regexp_replace="групп$1"/> <match no="2"/></suggestion> ?</message>
                <short>Логическая ошибка</short>
                <example correction="кавалькада|группа всадников">Нам встретилась <marker>кавалькада всадников</marker>.</example>
            </rule>
          </rulegroup>            
          <rulegroup id="skrepja_serdce" name="Логические ошибки: «скрепя сердце»">
            <rule> 
                <pattern>
                    <token>скрипя</token>
                    <token>сердцем</token>
                </pattern>              
                <message>Имелось в виду: <suggestion>скрепя сердце</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="скрепя сердце"><marker>скрипя сердцем</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="bivshij_biloj" name="Логические ошибки: «бывший» или «былой»">
            <rule>
                <pattern>
                    <token inflected="yes" postag="ADJ:Posit:Masc:(Nom|R|D|T|P)" postag_regexp="yes">былой</token>
                    <token inflected="yes">муж</token>
                </pattern>
                <message>Должно быть: <suggestion><match no="1" postag="ADJ:Posit:Masc:(Nom|R|D|T|P)" postag_regexp="yes" postag_replace="ADJ:Posit:Masc:$1">бывший</match> <match no="2"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="бывшего мужа"><marker>былого мужа</marker></example>
            </rule>
            <rule> 
                <pattern>
                    <token inflected="yes" postag="ADJ:Posit:Fem:(.*)" postag_regexp="yes">былой</token>
                    <token inflected="yes">жена</token>
                </pattern>              
                <message>Должно быть: <suggestion><match no="1" postag="ADJ:Posit:Fem:(.*)" postag_regexp="yes" postag_replace="ADJ:Posit:Fem:$1">бывший</match> <match no="2"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="бывшая жена"><marker>былая жена</marker></example>
            </rule>
            <rule> 
                <pattern>
                    <token inflected="yes" postag="ADJ:Posit:PL:(Nom|R|D|T|P)" postag_regexp="yes">бывший</token> <!-- бывшие -->
                    <token inflected="yes">заслуга</token> <!-- заслуги -->
                </pattern>              
                <message>Должно быть: <suggestion><match no="1" postag="ADJ:Posit:PL:(Nom|R|D|T|P)" postag_regexp="yes" postag_replace="ADJ:Posit:PL:$1">былой</match> <match no="2"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="былые заслуги"><marker>бывшие заслуги</marker></example> <!--  TODO   check correction !!! (V case)  -->
            </rule>
          </rulegroup> 
          <rulegroup id="okazat_zabotu" name="Логические ошибки: «оказать заботу»">
            <rule>
                <pattern>
                    <token inflected="yes" postag="VB:(.*)" postag_regexp="yes">оказать</token>
                    <token>заботу</token>
                </pattern>              
                <message>Должно быть: <suggestion><match no="1" postag="VB:(INF|Fut|Past):(.*)" postag_regexp="yes" postag_replace="VB:$1:$2">проявить</match> <match no="2"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="проявить заботу"><marker>оказать заботу</marker></example>
                <example correction="проявил заботу"><marker>оказал заботу</marker></example>
                <example correction="проявила заботу"><marker>оказала заботу</marker></example>
                <example correction="проявим заботу"><marker>окажем заботу</marker></example>
                <example correction="проявлю заботу"><marker>окажу заботу</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="povisit_svoi_krugozor" name="Логические ошибки: «повысить свой кругозор»">
            <rule>
                <pattern>
                    <token inflected="yes">повысить</token>
                    <token>свой</token>
                    <token>кругозор</token>
                </pattern>              
                <message>Должно быть: <suggestion><match no="1" regexp_match="[Пп]овыс(.*)" regexp_replace="расшир$1"></match> <match no="2"></match> <match no="3"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="расширить свой кругозор"><marker>повысить свой кругозор</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="predprinjat_meri" name="Логические ошибки: «предпринять меры»">
            <rule>
                <pattern>
                    <token inflected="yes">предпринять</token>
                    <token>меры</token>
                </pattern>              
                <message>Должно быть: <suggestion><match no="1" regexp_match="[Пп]редприн(.*)" regexp_replace="прин$1"></match> <match no="2"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="принять меры"><marker>предпринять меры</marker></example>
                <example correction="принял меры"><marker>предпринял меры</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="predstavlennie_neudobstva" name="Логические ошибки: «представленные неудобства»">
            <rule>
                <pattern>
                    <token regexp="yes">предоставленные|представленные</token>
                    <token>неудобства</token>
                </pattern>              
                <message>Должно быть: <suggestion>доставленные <match no="2"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="доставленные неудобства">Мы приносим свои искренние извинения за <marker>представленные неудобства</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token regexp="yes">предоставленные|представленные</token>
                    <token></token>
                    <token>неудобства</token>
                </pattern>              
                <message>Должно быть: <suggestion>доставленные <match no="2"></match> <match no="3"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="доставленные вам неудобства">Мы приносим свои искренние извинения за <marker>представленные вам неудобства</marker>.</example>
            </rule>
          </rulegroup>
          <rulegroup id="vziskivat_uscherb" name="Логические ошибки: «взыскивать ущерб»">
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes">взыскивать|взыскать</token>
                    <token>ущерб</token>
                </pattern>              
                <message>Должно быть: <suggestion><match no="1"></match> деньги за причинённый <match no="2"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="взыскал деньги за причинённый ущерб"><marker>взыскал ущерб</marker></example>
            </rule>
          </rulegroup>
            <rulegroup id="sorvat_ovacii" name="Логические ошибки: «сорвать овации»">
            <rule>
                <pattern>
                    <token inflected="yes">сорвать</token>
                    <token>овации</token>
                </pattern>              
                <message>Должно быть: <suggestion><match no="1"></match> аплодисменты</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="сорвал аплодисменты">Артист <marker>сорвал овации</marker>.</example>
            </rule>
          </rulegroup>
          <rulegroup id="bolshinstvo_vremeni" name="Логические ошибки: «большинство времени»">
            <rule> 
                <pattern>
                    <token>большинство</token>
                    <token>времени</token>
                </pattern>              
                <message>Должно быть: <suggestion>большая часть <match no="2"></match></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="большая часть времени"><marker>большинство времени</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="na_ladan_dishit" name="Логические ошибки: «на ладан дышит»">
            <rule> 
                <pattern>
                    <token>наладом</token>
                    <token inflected="yes">дышать</token> <!-- дышит -->
                </pattern>              
                <message>Имелось в виду <suggestion>на ладан \2</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="на ладан дышит"><marker>наладом дышит</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="sud_da_delo" name="Логические ошибки: «суд да дело»">
            <rule> 
                <pattern>
                    <token>суть</token>
                    <token>да</token>
                    <token>дело</token>
                </pattern>              
                <message>Имелось в виду <suggestion>суд \2 \3</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="суд да дело"><marker>суть да дело</marker></example>
            </rule>
          </rulegroup>
          <rulegroup id="belogo_kalenija" name="Логические ошибки: «довести до белого каления»">
              <rule> 
                  <pattern>
                      <token inflected="yes">довести</token>
                      <token>до</token>
                      <marker>
                          <token>белого</token>
                          <token>колена</token>
                      </marker>
                  </pattern>              
                <message>Имелось в виду <suggestion>\3 каления</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="белого каления">Довести до <marker>белого колена</marker></example>
            </rule>
          </rulegroup>

        <rulegroup id="nе_igraet_nikakogo_znachenija" name="Логические ошибки: «не играет никакой роли» или «не играет никакого значения»">
            <rule> 
                <pattern>
                    <token>не</token>
                    <token inflected="yes">играть</token> <!-- играет -->
                    <token>никакого</token>
                    <token>значения</token>
                </pattern>                
                <message>Имелось в виду <suggestion>\1 \2 никакой роли</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="не играет никакой роли">Это <marker>не играет никакого значения</marker>.</example>
                <example>Это не играет никакой роли.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>не</token>
                    <token inflected="yes">иметь</token> <!-- имеет -->
                    <token>никакой</token>
                    <token>роли</token>
                </pattern>
                 
                <message>Имелось в виду <suggestion>\1 \2 никакого значения</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="не имеет никакого значения">Это <marker>не имеет никакой роли</marker>.</example>
                <example>Это не имеет никакого значения.</example>
            </rule>                    
        </rulegroup>

	<rulegroup id="KV" name="Обозначение физических величин: «кВ»">
            <rule> 
                <pattern>
                    <token inflected="yes">напряжение</token>
                    <token></token>
                    <token>кВт</token>
                </pattern>
                <message>Имелось в виду <suggestion>\1 \2 кВ</suggestion>?</message>
                <url>https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%BD%D0%B0%D0%BF%D1%80%D1%8F%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Логическая ошибка</short>
                <example correction="напряжение 220 кВ">Эта линия расчитана на <marker>напряжение 220 кВт</marker>.</example>
            </rule>
       </rulegroup>
       <rulegroup id="KWT" name="Обозначение физических величин: «кВт»">
            <rule> 
                <pattern>
                    <token inflected="yes">мощность</token>
                    <token></token>
                    <token>кВ</token>
                </pattern>
                <message>Имелось в виду <suggestion>\1 \2 кВт</suggestion>?</message>
                <url>https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F_%D0%BC%D0%BE%D1%89%D0%BD%D0%BE%D1%81%D1%82%D1%8C</url>
                <short>Логическая ошибка</short>
                <example correction="мощность 1000 кВт">Эта линия расчитана на <marker>мощность 1000 кВ</marker>.</example>
            </rule>
       </rulegroup>

	<rulegroup id="KWT.H" name="Обозначение физических величин: «кВт⋅ч»">
            <rule> 
                <pattern>
                    <token>кВт</token>
                    <token>/</token>
                    <token>ч</token>
                </pattern>
                <message>Имелось в виду <suggestion>кВт⋅ч</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9A%D0%B8%D0%BB%D0%BE%D0%B2%D0%B0%D1%82%D1%82-%D1%87%D0%B0%D1%81</url>
                <short>Логическая ошибка</short>
                <example correction="кВт⋅ч">Потребление электроэнергии составляет 100 <marker>кВт/ч</marker>.</example>
                <example>Потребление электроэнергии составило 100 кВт*ч.</example>
                <example>Потребление электроэнергии составляет 100 кВт⋅ч.</example>
            </rule>
              <rule> 
                <pattern>
                    <token>kW</token>
                    <token>/</token>
                    <token>h</token>
                </pattern>
                <message>Имелось в виду <suggestion>kW·h</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9A%D0%B8%D0%BB%D0%BE%D0%B2%D0%B0%D1%82%D1%82-%D1%87%D0%B0%D1%81</url>
                <short>Логическая ошибка</short>
                <example correction="kW·h">Потребление электроэнергии составляет 100 <marker>kW/h</marker>.</example>
                <example>Потребление электроэнергии составило 100 kWh.</example>
                <example>Потребление электроэнергии составило 100 kW·h.</example>
            </rule>           
        </rulegroup>
        <rulegroup id="А.H" name="Обозначение физических величин: «А⋅ч»">
            <rule> 
                <pattern>
                    <token>А</token>
                    <token>/</token>  
                    <token>ч</token>          
                </pattern>
                <message>Имелось в виду <suggestion>А⋅ч</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%90%D0%BC%D0%BF%D0%B5%D1%80-%D1%87%D0%B0%D1%81</url>
                <short>Логическая ошибка</short>
                <example correction="А⋅ч">Ёмкость аккумулятора составляет 60 <marker>А/ч</marker>.</example>
                <example>Ёмкость аккумулятора составляет 60 А*ч.</example>
                <example>Ёмкость аккумулятора составляет 60 А⋅ч.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>A</token>
                    <token>/</token>  
                    <token>h</token>          
                </pattern>
                <message>Имелось в виду <suggestion>A⋅h</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%90%D0%BC%D0%BF%D0%B5%D1%80-%D1%87%D0%B0%D1%81</url>
                <short>Логическая ошибка</short>
                <example correction="A⋅h">Ёмкость аккумулятора составляет 60 <marker>A/h</marker>.</example>
                <example>Ёмкость аккумулятора составляет 60 A*h.</example>
                <example>Ёмкость аккумулятора составляет 60 A⋅h.</example>
            </rule>
             <rule> 
                <pattern>
                    <token>мА</token>
                    <token>/</token>  
                    <token>ч</token>          
                </pattern>
                <message>Имелось в виду <suggestion>мА⋅ч</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%90%D0%BC%D0%BF%D0%B5%D1%80-%D1%87%D0%B0%D1%81</url>
                <short>Логическая ошибка</short>
                <example correction="мА⋅ч">Ёмкость аккумулятора составляет 900 <marker>мА/ч</marker>.</example>
                <example>Ёмкость аккумулятора составляет 900 мА*ч.</example>
                <example>Ёмкость аккумулятора составляет 900 мА⋅ч.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>mA</token>
                    <token>/</token>  
                    <token>h</token>          
                </pattern>
                <message>Имелось в виду <suggestion>mA⋅h</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%90%D0%BC%D0%BF%D0%B5%D1%80-%D1%87%D0%B0%D1%81</url>
                <short>Логическая ошибка</short>
                <example correction="mA⋅h">Ёмкость аккумулятора составляет 500 <marker>mA/h</marker>.</example>
                <example>Ёмкость аккумулятора составляет 500 mA*h.</example>
                <example>Ёмкость аккумулятора составляет 500 mA⋅h.</example>
            </rule>            
        </rulegroup>
        <rulegroup id="V.А" name="Обозначение физических величин: «В⋅А»">
            <rule> 
                <pattern>
                    <token>В</token>
                    <token>/</token>  
                    <token>А</token>          
                </pattern>
                <message>Имелось в виду <suggestion>В⋅А</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%BE%D0%BB%D1%8C%D1%82-%D0%B0%D0%BC%D0%BF%D0%B5%D1%80</url>
                <short>Логическая ошибка</short>
                <example correction="В⋅А">Мощность ИБП составляет 500 <marker>В/А</marker>.</example>
                <example>Мощность ИБП составляет 500 В*А.</example>
                <example>Мощность ИБП составляет 500 В⋅А.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>V</token>
                    <token>/</token>  
                    <token>A</token>          
                </pattern>
                <message>Имелось в виду <suggestion>V⋅A</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%BE%D0%BB%D1%8C%D1%82-%D0%B0%D0%BC%D0%BF%D0%B5%D1%80</url>
                <short>Логическая ошибка</short>
                <example correction="V⋅A">Мощность ИБП составляет 500 <marker>V/A</marker>.</example>
                <example>Мощность ИБП составляет 500 V*A.</example>
                <example>Мощность ИБП составляет 500 V⋅A.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>ВА</token> 
                </pattern>
                <message>Имелось в виду <suggestion>В⋅А</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%BE%D0%BB%D1%8C%D1%82-%D0%B0%D0%BC%D0%BF%D0%B5%D1%80</url>
                <short>Логическая ошибка</short>
                <example correction="В⋅А">Мощность ИБП составляет 500 <marker>ВА</marker>.</example>
                <example>Мощность ИБП составляет 500 В*А.</example>
                <example>Мощность ИБП составляет 500 В⋅А.</example>
            </rule>
        </rulegroup>
        <rulegroup id="BOLSHAJA_POLOVINA" name="Словосочетание: «большая или меньшая половина»">
            <rule>
                <pattern>
                    <token regexp="yes" >большая|меньшая</token>
                    <token>половина</token>
                </pattern>
                <message>Имелось в виду <suggestion>\1 часть</suggestion>?</message>
          
                <short>Логическая ошибка</short>
                <example correction="большая часть"><marker>большая половина</marker></example>
                <example>меньшая часть</example>
            </rule>
        </rulegroup>
        <rulegroup id="ISKLUCHIT_ISKLUCHENIE" name="Тавтология: «исключить исключение»">
            <rule> 
                <pattern>
                    <token inflected="yes" skip="-1">исключить</token>
                    <token inflected="yes">исключение</token>
                </pattern>
                <message>Языковая избыточность: <suggestion><match no="1" regexp_match="исключи(.*)" regexp_replace="убра$1" include_skipped="all"></match> <match no="2"/></suggestion>?</message>         
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>     
                <short>Языковая избыточность</short>
                <example correction="убрать исключение"><marker>исключить исключение</marker></example>
                <example correction="убрать то исключение"><marker>исключить то исключение</marker></example>
            </rule>
        </rulegroup>
        <rulegroup id="POTREBOVAT_TREBOVANIE" name="Тавтология: «потребовать требование»">
            <rule> 
                <pattern>
                    <token inflected="yes" skip="-1">потребовать</token>
                    <token inflected="yes" >требование</token>
                </pattern>
                <message>Языковая избыточность: <suggestion><match no="1" regexp_match="потребова(.*)" regexp_replace="заяви$1" include_skipped="all"></match> <match no="2"/></suggestion>?</message>         
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>     
                <short>Языковая избыточность</short>
                <example correction="заявить требование"><marker>потребовать требование</marker></example>
                <example correction="заявить денежное требование"><marker>потребовать денежное требование</marker></example>
            </rule>
        </rulegroup>
        <rulegroup id="POJELAT_JELANIE" name="Тавтология: «пожелать желание»">
            <rule> 
                <pattern>
                    <token inflected="yes" skip="-1">пожелать</token>
                    <token inflected="yes" >желание</token>
                </pattern>
                <message>Языковая избыточность: <suggestion><match no="1" regexp_match="пожела(.*)" regexp_replace="загада$1" include_skipped="all"></match> <match no="2"/></suggestion>?</message>         
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>     
                <short>Языковая избыточность</short>
                <example correction="загадать желание"><marker>пожелать желание</marker></example>
                <example correction="загадать заветное желание"><marker>пожелать заветное желание</marker></example>
            </rule>
        </rulegroup>
        <rulegroup id="ZAKAZAT_ZAKAZ" name="Тавтология: «заказать заказ»">
            <rule> 
                <pattern>
                    <token inflected="yes" skip="-1" >заказать</token>
                    <token inflected="yes">заказ</token>
                </pattern>
                <message>Языковая избыточность: <suggestion><match no="1" regexp_match="заказа(.*)" regexp_replace="сдела$1" include_skipped="all"></match> <match no="2"/></suggestion>?</message>         
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>     
                <short>Языковая избыточность</short>
                <example correction="сделать заказ"><marker>заказать заказ</marker></example>
                <example correction="сделать важный заказ"><marker>заказать важный заказ</marker></example>
            </rule>
        </rulegroup>
        <rulegroup id="PODARIT_PODAROK" name="Тавтология: «подарить подарок»">        
              <rule> 
                <pattern>
                    <token inflected="yes" skip="-1">подарить</token>
                    <token inflected="yes">подарок</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion><match no="1" regexp_match="подари(.*)" regexp_replace="вручи$1" include_skipped="all"></match> <match no="2"/></suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="вручил подарок">Он <marker>подарил подарок</marker>.</example>
                <example correction="вручил долгожданный подарок">Он <marker>подарил долгожданный подарок</marker>.</example>
            </rule>
            </rulegroup>   
           <rulegroup id="SPUSKATSJA_VNIZ" name="Тавтология: «спускаться вниз»">
            <rule> 
                <pattern>
                    <token regexp="yes" inflected="yes" >спускаться|подниматься</token>
                    <token regexp="yes" >вниз|вверх</token>
                </pattern>
                <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>         
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>     
                <short>Языковая избыточность</short>
                <example correction="спускался">Он <marker>спускался вниз</marker> по лестнице.</example>
                <example>Он спускался по лестнице.</example>
            </rule>
        </rulegroup>    
        <rulegroup id="PROGNOZ_NA_BUDUSHEE" name="Тавтология: «прогноз на будущее»">
            <rule> 
                <pattern>
                    <token inflected="yes" >прогноз</token>
                    <token>на</token>
                    <token>будущее</token>                  
                </pattern>
                <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="прогноз">Метеоагенство составило <marker>прогноз на будущее</marker>.</example>
                <example>Метеоагенство составило прогноз.</example>
            </rule>
        </rulegroup>
        <rulegroup id="GLAVNAJA_SUT" name="Тавтология: «главная суть»">
            <rule> 
                <pattern>
                    <token inflected="yes" >главный</token>
                    <token>суть</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="Суть"><marker>Главная суть</marker> рассказа</example>
            </rule>
        </rulegroup>
        <rulegroup id="SVOBODNAJA_VAKANSIJA" name="Тавтология: «свободная вакансия»">
            <rule> 
                <pattern>
                    <token inflected="yes" >свободный</token>
                    <token inflected="yes" >вакансия</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="вакансия">На сайте размещена <marker>свободная вакансия</marker>.</example>
            </rule>
        </rulegroup>        
        <rulegroup id="DUMU_DUMAT" name="Тавтология: «думу думать»">
            <rule> 
                <pattern>
                    <token>думу</token>
                    <token inflected="yes">думать</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="думали">Они <marker>думу думали</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>работу</token>
                    <token inflected="yes">работать</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="работали">Они <marker>работу работали</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>шутки</token>
                    <token inflected="yes">шутить</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="шутили">Они <marker>шутки шутили</marker>.</example>
            </rule>
        </rulegroup>    


        <rulegroup id="KRUG_KRUGLIJ" name="Тавтология: «круг круглый»">
            <rule> 
                <pattern>
                    <token>круг</token>
                    <token>круглый</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\1</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="круг"><marker>круг круглый</marker></example>
            </rule>
            <rule> 
                <pattern>
                    <token>масло</token>
                    <token>масляное</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\1</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="масло"><marker>масло масляное</marker></example>
            </rule>
        </rulegroup> 


        <rulegroup id="TOLPA_LUDEJ" name="Тавтология: «толпа людей»">
            <rule> 
                <pattern>
                    <token inflected="yes" >толпа</token>
                    <token>людей</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\1</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="толпа"><marker>толпа людей</marker></example>
            </rule>
        </rulegroup>    
        <rulegroup id="LICHNO_JA" name="Тавтология: «лично я»">
            <rule> 
                <pattern>
                    <token>лично</token>
                    <token>я</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="я"><marker>лично я</marker></example>
            </rule>
        </rulegroup>    
        <rulegroup id="RIBNAJA_UHA" name="Тавтология: «рыбная уха»">
            <rule> 
                <pattern>
                    <token inflected="yes" >рыбный</token>
                    <token inflected="yes" >уха</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>          
                <example correction="уха"><marker>рыбная уха</marker></example>
            </rule>
        </rulegroup>                       
        <rulegroup id="VPERVIJE_ZNAKOMITSJA" name="Тавтология: «впервые знакомиться»">
            <rule> 
                <pattern>
                    <token inflected="yes" >впервые</token>
                    <token inflected="yes" >знакомиться</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="знакомиться"><marker>впервые знакомиться</marker></example>
            </rule>
        </rulegroup>                   
        <rulegroup id="NEMNOGO_PRIOTKRIT" name="Тавтология: «немного приоткрыть»">
            <rule> 
                <pattern>
                    <token>немного</token>
                    <token inflected="yes" >приоткрыть</token>                  
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="приоткрыть"><marker>немного приоткрыть</marker></example>
            </rule>
        </rulegroup>                                         
        <rulegroup id="VOZVRASHATSJA_OBRATNO" name="Тавтология: «возвращаться обратно»">
            <rule> 
                <pattern>
                    <token inflected="yes" >возвращаться</token>                  
                    <token>обратно</token>
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\1</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="возвращаться"><marker>возвращаться обратно</marker></example>
            </rule>
        </rulegroup>  
        <rulegroup id="CHREZVICHAJNO_GROMADNIJ" name="Тавтология: «чрезвычайно громадный»">
            <rule> 
                <pattern>
                    <token>чрезвычайно</token>                  
                    <token inflected="yes">громадный</token>
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="громадный"><marker>чрезвычайно громадный</marker></example>
            </rule>
        </rulegroup>  
         <rulegroup id="OCHEN_KROHOTNIJ" name="Тавтология: «очень крохотный»">
            <rule> 
                <pattern>
                    <token>очень</token>                  
                    <token inflected="yes">крохотный</token>
                </pattern>
                <message>Языковая избыточность (плеоназм): <suggestion>\2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
                <short>Тавтология</short>
                <example correction="крохотный"><marker>очень крохотный</marker></example>
            </rule>
        </rulegroup>  

        <rulegroup id="BLIZKIJ_BLIZHNIJ" name="Употребление слов: «близкий» и «ближний»">
            <rule> 
                <pattern>
                    <token>близкий</token>
                    <token>свет</token>
                </pattern>
                <message>Имелось в виду: <suggestion>ближний \2</suggestion>?</message>
                <url>http://ru.wiktionary.org/wiki/%D0%B1%D0%BB%D0%B8%D0%B6%D0%BD%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="ближний свет">Водитель включил <marker>близкий свет</marker> фар.</example>
                <example>Водитель включил ближний свет фар.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>ближний</token>
                    <token regexp = "yes" >человек|друг|товарищ</token>
                </pattern>
                <message>Имелось в виду: <suggestion>близкий \2</suggestion>?</message>
                <url>http://ru.wiktionary.org/wiki/%D0%B1%D0%BB%D0%B8%D0%B7%D0%BA%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="близкий друг">Он - <marker>ближний друг</marker>.</example>
                <example>Он - близкий друг.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>дальние</token>
                    <token regexp="yes">выводы|перспективы</token>
                </pattern>
                <message>Имелось в виду: <suggestion>далёкие \2</suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B4%D0%B0%D0%BB%D1%91%D0%BA%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="далёкие выводы">Этим инструментом можно из опытов естествознания извлекать <marker>дальние выводы</marker> и оценивать их достоверность.</example>
                <example>Этим инструментом можно из опытов естествознания извлекать далекие выводы и оценивать их достоверность.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>дальнее</token>
                    <token regexp="yes">прошлое|будущее</token>
                </pattern>
                <message>Имелось в виду: <suggestion>далёкое \2</suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B4%D0%B0%D0%BB%D1%91%D0%BA%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="Далёкое будущее"><marker>Дальнее будущее</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>дальний</token>
                    <token regexp="yes">день|час</token>
                </pattern>
                <message>Имелось в виду: <suggestion>далёкий \2</suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B4%D0%B0%D0%BB%D1%91%D0%BA%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="Далёкий час"><marker>Дальний час</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>дальняя</token>
                    <token>дата</token>
                </pattern>
                <message>Имелось в виду: <suggestion>далёкая \2</suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B4%D0%B0%D0%BB%D1%91%D0%BA%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="Далёкая дата"><marker>Дальняя дата</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                    <token regexp="yes">далекая|далёкая</token>
                    <token regexp="yes">родственница|сестра|родня</token>
                </pattern>
                <message>Имелось в виду: <suggestion>дальняя \2</suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B4%D0%B0%D0%BB%D1%8C%D0%BD%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="Дальняя родственница"><marker>Далёкая родственница</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                    <token regexp="yes">далекий|далёкий</token>
                    <token regexp="yes">родственник|брат</token>
                </pattern>
                <message>Имелось в виду: <suggestion>дальний \2</suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B4%D0%B0%D0%BB%D1%8C%D0%BD%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="Дальний родственник"><marker>Далёкий родственник</marker>.</example>
            </rule>
            <rule> 
                <pattern>
                    <token regexp="yes">далекие|далёкие</token>
                    <token regexp="yes">родственники|братья|сёстры|сестры</token>
                </pattern>
                <message>Имелось в виду: <suggestion>дальние \2</suggestion>?</message>
                <url>https://ru.wiktionary.org/wiki/%D0%B4%D0%B0%D0%BB%D1%8C%D0%BD%D0%B8%D0%B9</url>
                <short>Логическая ошибка</short>
                <example correction="Дальние родственники"><marker>Далёкие родственники</marker>.</example>
            </rule>
        </rulegroup>
        
                  
        <rulegroup id="Stolko_mnogo" name="Словосочетание: «столько много»">
            <rule> 
                <pattern>
                    <token>столько</token>
                    <token>много</token>
                </pattern>
                <message>Имелось в виду: <suggestion>так \2</suggestion>?</message>

                <short>Логическая ошибка</short>
                <example correction="Так много"><marker>Столько много</marker> товара!</example>
                <example>Так много товара!</example>
            </rule>
             <rule> 
                <pattern>
                    <token>сколько</token>
                    <token>много</token>
                </pattern>
                <message>Имелось в виду: <suggestion>как \2</suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="Как много"><marker>Сколько много</marker> товара?</example>
                <example>Как много товара?</example>
            </rule>
        </rulegroup>
                   
        <rulegroup id="Logical_reshit_zatanuvshujusa_problemu" name="Логические ошибки: «он решит эту затянувшуюся проблему»">
            <rule> 
                <pattern>
                    <token>решит</token>
                    <token>эту</token>
                    <token>затянувшуюся</token>
                    <token>проблему</token>
                </pattern>
                <message>Логическая ошибка: <suggestion>ускорит затянувшееся решение проблемы</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
                <short>Логическая ошибка</short>
                <example correction="ускорит затянувшееся решение проблемы">Он <marker>решит эту затянувшуюся проблему</marker>.</example>
                <example>Он ускорит затянувшееся решение проблемы.</example>
            </rule>
            <rule> 
                <pattern>
                    <token>решит</token>
                    <token>затянувшуюся</token>
                    <token>проблему</token>
                </pattern>
                <message>Логическая ошибка: <suggestion>ускорит затянувшееся решение проблемы</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
                <short>Логическая ошибка</short>
                <example correction="ускорит затянувшееся решение проблемы">Она <marker>решит затянувшуюся проблему</marker>.</example>
                <example>Она ускорит затянувшееся решение проблемы.</example>
            </rule>
        </rulegroup>
        <rulegroup id="Logical_podorojali_ceny" name="Логические ошибки: «подорожали цены»">
          <rule>  
            <pattern>
                <token>подорожали</token>
                <token>цены</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>цены выросли</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
            <short>Логическая ошибка</short>
            <example correction="цены выросли">На рынке <marker>подорожали цены</marker></example>
            <example>На рынке цены выросли</example>
          </rule>
          <rule>  
            <pattern>
                <token>дорогие</token>
                <token>цены</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>высокие цены</suggestion>?</message>
            <short>Логическая ошибка</short>
            <example correction="высокие цены">На рынке сегодня были <marker>дорогие цены</marker>.</example>
          </rule>
          <rule>  
            <pattern>
                <token regexp="yes">деш[её]вые</token>
                <token>цены</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>низкие цены</suggestion>?</message>
            <short>Логическая ошибка</short>
            <example correction="низкие цены">На рынке сегодня были <marker>дешёвые цены</marker>.</example>
          </rule>
          <rule>
            <pattern>
                <token>дешёвая</token>
                <token>стоимость</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>низкая стоимость</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
            <short>Логическая ошибка</short>
            <example correction="низкая стоимость"><marker>дешёвая стоимость</marker></example>
            <example>низкая стоимость</example>
          </rule>
           <rule>
            <pattern>
                <token>дорогая</token>
                <token>стоимость</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>высокая стоимость</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
            <short>Логическая ошибка</short>
            <example correction="высокая стоимость"><marker>дорогая стоимость</marker></example>
            <example>высокая стоимость</example>
          </rule>
        </rulegroup>
        
        <rule id="Logical_svoja_avtobiographija" name="Логические ошибки: «своя автобиография»">
            <pattern>
                <token inflected="yes">свой</token>
                <token inflected="yes">автобиография</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="автобиографию">Автор написал <marker>свою автобиографию</marker>.</example>
            <example>Автор написал автобиографию.</example>
        </rule>
        <rule id="Logical_vidajuschijsja_as" name="Логические ошибки: «выдающийся ас»">
            <pattern>
                <token regexp="yes" inflected="yes">выдающийся|лучший</token>
                <token inflected="yes">ас</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="ас">Этот лётчик - <marker>выдающийся ас</marker>.</example>
            <example>Этот лётчик - ас.</example>
        </rule>
        
        <rule id="Logical_sobiratsya_vmeste" name="Логические ошибки: «собираться вместе»">
            <pattern>
                <token inflected="yes">собираться</token>
                <token>вместе</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="собираемся">Мы здесь <marker>собираемся вместе</marker>.</example>
            <example>Мы собираемся здесь.</example>
        </rule>
          <rule id="Logical_sochetatsja_vmeste" name="Логические ошибки: «сочетаться вместе»">
            <pattern>
                <token inflected="yes">сочетаться</token>
                <token>вместе</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="сочетаются">Эти три букета хорошо <marker>сочетаются вместе</marker>.</example>
            <example>Эти три букета хорошо сочетаются.</example>
        </rule>
         <rule id="Logical_segodnyashnij_den" name="Логические ошибки: «сегодняшний день»" tags="picky">
            <pattern>
                <token>сегодняшний</token>
                <token>день</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>сегодня</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="сегодня">Ситуация на <marker>сегодняшний день</marker>.</example>
            <example>Ситуация на сегодня.</example>
        </rule>
        
        <rule id="Logical_sosedstvovat_drug_s_drugom" name="Логические ошибки: «соседствовать друг с другом»">
            <pattern>
                <token inflected="yes">соседствовать</token>
                <token>друг</token>
                <token>с</token>
                <token>другом</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="соседствовали">Они <marker>соседствовали друг с другом</marker> на фотографии.</example>
            <example>Они соседствовали на фотографии.</example>
        </rule>
        
              
        <rule id="Tavtology_mestnij_aborigen" name="Тавтология: «местный абориген»">
            <pattern>
                <token inflected="yes">местный</token>
                <token inflected="yes">абориген</token>
            </pattern>
            <message>Языковая избыточность: <suggestion><match no="2" /></suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>         
            <example correction="аборигены">Нас окружили <marker>местные аборигены</marker>.</example>
            <example>Нас окружили аборигены.</example>           
        </rule>   
        
          <rule id="Tavtology_nebolshaja_gorstka" name="Тавтология: «небольшая горстка»">
            <pattern>
                <token inflected="yes">небольшой</token>
                <token inflected="yes">горстка</token>
            </pattern>
            <message><suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="горстка"><marker>небольшая горстка</marker></example>
            <example>горстка</example>
        </rule>                            
  
          <rule id="Tavtology_marshrut_sledovanija" name="Тавтология: «маршрут следования»">
            <pattern>
                <token inflected="yes">маршрут</token>
                <token>следования</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="маршрут"><marker>маршрут следования</marker></example>
            <example>маршрут</example>
        </rule>
        
         <rule id="Tavtology_adres_mestojitelstva" name="Тавтология: «адрес местожительства»">
            <pattern>
                <token inflected="yes">адрес</token>
                <token inflected="yes" >местожительство</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="местожительства"><marker>адрес местожительства</marker></example>
            <example>местожительство</example>
        </rule>
         <rulegroup id="Tavtology_zaranee_predupredit" name="Тавтология: «заранее предупредить»">
           <rule> 
             <pattern>
                <token inflected="yes">заранее</token>
                <token inflected="yes">предупредить</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="предупредить"><marker>заранее предупредить</marker></example>
            <example>предупредить</example>
           </rule>
           <rule> 
             <pattern>
                 <token inflected="yes">предупредить</token>
                 <token inflected="yes">заранее</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="предупредить"><marker>предупредить заранее</marker></example>
           </rule>
        </rulegroup>
        <rulegroup id="Tavtology_zaranee_predchuvstvovat" name="Тавтология: «заранее предчувствовать»">
           <rule>           
            <pattern>
                <token inflected="yes">заранее</token>
                <token inflected="yes">предчувствовать</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="предчувствовать"><marker>заранее предчувствовать</marker></example>
           </rule>
           <rule>           
            <pattern>
                <token inflected="yes">предчувствовать</token>
                <token inflected="yes">заранее</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="предчувствовать"><marker>предчувствовать заранее</marker></example>
           </rule>
        </rulegroup>
        <rule id="Tavtology_prejskurant_cen" name="Тавтология: «прейскурант цен»">
            <pattern>
                <token inflected="yes">прейскурант</token>
                <token inflected="yes">цена</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="прейскурант"><marker>прейскурант цен</marker></example>
            <example>прейскурант</example>
        </rule>
        <rule id="Tavtology_upal_vniz" name="Тавтология: «упал вниз»">
            <pattern>
                <token inflected="yes">упасть</token>
                <token inflected="yes">вниз</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="упал"><marker>упал вниз</marker></example>
            <example correction="упасть"><marker>упасть вниз</marker></example>
        </rule>
        <rule id="Tavtology_tyomnij_mrak" name="Тавтология: «тёмный мрак»">
            <pattern>
                <token inflected="yes" regexp="yes">тёмный|темный</token>
                <token inflected="yes">мрак</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="мрак"><marker>тёмный мрак</marker></example>
        </rule>
        <rule id="Tavtology_bespolezno_propadajut" name="Тавтология: «бесполезно пропадают»">
            <pattern>
                <token inflected="yes">бесполезно</token>
                <token inflected="yes">пропадать</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="пропадают"><marker>бесполезно пропадают</marker></example>
        </rule>
        <rule id="Tavtology_vernutsja_obratno" name="Тавтология: «вернуться обратно»">
            <pattern>
                <token inflected="yes">вернуться</token>
                <token>обратно</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="вернуться"><marker>вернуться обратно</marker></example>
        </rule>
        <rule id="Tavtology_neskolko_pobistree" name="Тавтология: «несколько побыстрее»">
            <pattern>
                <token>несколько</token>
                <token>побыстрее</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="побыстрее"><marker>несколько побыстрее</marker></example>
        </rule>
        <rule id="Tavtology_v_xx_mesjatse" name="Тавтология: «в апреле месяце»">
            <pattern>
                <token>в</token>
                <token regexp="yes">январе|феврале|марте|апреле|мае|июне|июле|августе|сентябре|октябре|ноябре|декабре</token>
                <token>месяце</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1 \2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="в феврале"><marker>в феврале месяце</marker></example>
        </rule>
         <rule id="Tavtology_kollega_po_professii" name="Тавтология: «коллега по профессии»">
            <pattern>
                <token inflected="yes">коллега</token>
                <token>по</token>
                <token>профессии</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="коллега"><marker>коллега по профессии</marker></example>
        </rule>
        <rule id="Tavtology_plani_na_budushee" name="Тавтология: «планы на будущее»">
            <pattern>
                <token inflected="yes">план</token>
                <token>на</token>
                <token>будущее</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="планы"><marker>планы на будущее</marker></example>
        </rule>
        <rule id="Tavtology_demobilizovatsja_iz_armii" name="Тавтология: «демобилизоваться из армии»">
            <pattern>
                <token inflected="yes">демобилизоваться</token>
                <token>из</token>
                <token>армии</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="демобилизоваться"><marker>демобилизоваться из армии</marker></example>
        </rule>
        <rule id="Tavtology_prostaivat_bez_dela" name="Тавтология: «простаивать без дела»">
            <pattern>
                <token inflected="yes">простаивать</token>
                <token>без</token>
                <token>дела</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="простаивать"><marker>простаивать без дела</marker></example>
        </rule>        
        <rule id="Tavtology_vremenno_priostanovlen" name="Тавтология: «временно приостановить»">
            <pattern>
                <token inflected="yes">временно</token>
                <token inflected="yes">приостановить</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="приостановлены"><marker>временно приостановлены</marker></example>
            <example>приостановлены</example>
        </rule>     
         <rule id="Tavtology_mahina" name="Тавтология: «огромная махина»">
            <pattern>
                <token inflected="yes" regexp="yes">большой|огромный|гигантский</token>
                <token inflected="yes">махина</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="махина"><marker>огромная махина</marker></example>
            <example>махина</example>
        </rule>                            
           
        <rule id="Tavtology_kivnul_golovoj" name="Тавтология: «кивнуть головой»">
            <pattern>
                <token inflected="yes">кивнуть</token>
                <token inflected="yes">голова</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="кивнул"><marker>кивнул головой</marker></example>
            <example>кивнул</example>
        </rule>                            
         <rule id="Tavtology_polnostju_zavershil" name="Тавтология: «полностью завершил»">
            <pattern>
                <token regexp="yes"  inflected="yes">полностью|окончательно</token>
                <token inflected="yes">завершить</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="завершил"><marker>полностью завершил</marker></example>
            <example>завершил</example>
        </rule>
        <rule id="Tavtology_glavnij_lejtmotiv" name="Тавтология: «главный лейтмотив»">
            <pattern>
                <token inflected="yes">главный</token>
                <token inflected="yes">лейтмотив</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="лейтмотив"><marker>главный лейтмотив</marker></example>
            <example>этот лейтмотив</example>
        </rule>
        <rule id="Tavtology_landshaft_mestnosti" name="Тавтология: «ландшафт местности»">
            <pattern>
                <token inflected="yes">ландшафт</token>
                <token inflected="yes">местность</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="ландшафт"><marker>ландшафт местности</marker></example>
            <example>ландшафт</example>
        </rule>                                                                                                                                                                                                                                                                                                                                                          
        <rule id="Tavtology_samij_edinstvennij" name="Тавтология: «самый единственный»">
            <pattern>
                <token regexp="yes"  inflected="yes">несколько|два|самый</token>
                <token inflected="yes">единственный</token>
            </pattern>
            <message>Языковая избыточность: <suggestion>\2</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="единственный"><marker>самый единственный</marker></example>
            <example>единственный</example>
        </rule>                                           
                                                                                                                                      
                                                                              
        <rule id="Logical_biographia_gizni" name="Логические ошибки: «биография жизни»">
            <pattern>
                <token inflected="yes">биография</token>
                <token inflected="yes">жизнь</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>\1</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%A2%D0%B0%D0%B2%D1%82%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%28%D1%80%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BA%D0%B0%29</url>
            <short>Тавтология</short>
            <example correction="Биографии"><marker>Биографии жизни</marker> различных людей.</example>
            <example>Биографии различных людей.</example>
        </rule>
                                                                                
        <rule id="Logical_prignul_s_parashuta" name="Логические ошибки: «прыгать с парашюта»">
            <pattern>
                <token inflected="yes">прыгнуть</token>
                <token>с</token>
                <token>парашюта</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>\1 \2 парашютом</suggestion>?</message>
               <short>Логическая ошибка</short>
            <example correction="прыгнул с парашютом">Он <marker>прыгнул с парашюта</marker>.</example>
            <example>Она прыгнула с парашютом.</example>
        </rule>  
                                    
        <rule id="translate_carreer_diplomat" name="Ошибки перевода «карьерный дипломат»">
            <pattern>
                <token inflected="yes" >карьерный</token>
                <token inflected="yes" >дипломат</token>
            </pattern>
            <message>Ошибка перевода: <suggestion><match no="1" regexp_match="([Кк]арьерн)(.*)" regexp_replace="профессиональн$2" /> <match no="2" /></suggestion>?</message>
            <short>Ошибка перевода</short>
            <example correction="Профессиональный дипломат"><marker>Карьерный дипломат</marker> – это человек, получивший специальное дипломатическое образование.</example>
            <example>Профессиональный дипломат – это человек, получивший специальное дипломатическое образование.</example>
        </rule>   
        <rulegroup id="Logical_komandirovochnij" name="Логические ошибки: «командировочный» или «командированный»">
         <rule>         
            <pattern>
                <token inflected="yes">командировать</token>
                <token inflected="yes">удостоверение</token>
            </pattern>
            <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(командированн)(.*)" regexp_replace="командировочн$2" /> <match no="2" /></suggestion>?</message>
               <short>Логическая ошибка</short>
            <example correction="командировочное удостоверение"><marker>командированное удостоверение</marker></example>
            <example correction="командировочного удостоверения"><marker>командированного удостоверения</marker></example>            
            <example>командировочное удостоверение</example>
        </rule>
          <rule>         
            <pattern>
                <token inflected="yes">командировочный</token>
                <token inflected="yes">сотрудник</token>
            </pattern>
            <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(командировочн)(.*)" regexp_replace="командированн$2" /> <match no="2" /></suggestion>?</message>
               <short>Логическая ошибка</short>
            <example correction="командированный сотрудник"><marker>командировочный сотрудник</marker></example>
            <example>командированный сотрудник</example>
        </rule>
        <rule>         
            <pattern>
                <token>командировачный</token>  
                <token inflected="yes">сотрудник</token>
            </pattern>
            <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(командировачн)(.*)" regexp_replace="командированн$2" /> <match no="2" /></suggestion>?</message>
               <short>Логическая ошибка</short>
            <example correction="командированный сотрудник"><marker>командировачный сотрудник</marker></example>
            <example>командированный сотрудник</example>
        </rule>                   
        </rulegroup>                                          
        <rule id="Logical_kurica_nasijivaet_jajca" name="Логические ошибки: «курица насиживает яйца»">
            <pattern>
                <token inflected="yes">курица</token>
                <token inflected="yes">высиживать</token>
                <token inflected="yes">яйцо</token>
            </pattern>
            <message>Логическая ошибка: <suggestion><match no="1" /> <match no="2" regexp_match="(высиж)(.*)" regexp_replace="насиж$2" /> <match no="3" /></suggestion>.</message>
            
            <short>Логическая ошибка</short>
            <example correction="курица насиживает яйца"><marker>курица высиживает яйца</marker></example>
            <example correction="курица насиживала яйца"><marker>курица высиживала яйца</marker></example>
            <example>курица насиживает яйца</example>
        </rule>        
        <rule id="Logical_samij_gigantskij" name="Логические ошибки: «самый гигантский»">
            <pattern>
                <token>самый</token>
                <token>гигантский</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>\1 большой</suggestion>.</message>
            
            <short>Логическая ошибка</short>
            <example correction="самый большой"><marker>самый гигантский</marker></example>
            <example>самый большой</example>
        </rule>          
                                         
        <rule id="Logical_govorite_vopros" name="Логические ошибки: «говорите вопрос»">
            <pattern>
                <token inflected="yes">говорить</token>
                <token inflected="yes">вопрос</token>
            </pattern>
            <message>Логическая ошибка. Вопрос можно только задать, поставить или поднять.</message>
            
            <short>Логическая ошибка</short>
            <example correction=""><marker>Говорите вопрос</marker>!</example>
            <example>Задавайте вопрос.</example>
            <example>Задайте вопрос.</example>
            <example>Поставьте вопрос.</example>
            <example>Поднимите вопрос.</example>
        </rule> 

        
        <rule id="Logical_podnjal_tost" name="Логические ошибки: «поднял тост»">
            <pattern>
                <token>поднял</token>
                <token>тост</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>произнёс тост</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
            <short>Логическая ошибка</short>
            <example correction="произнёс тост">Он <marker>поднял тост</marker> за встречу.</example>
            <example>Он произнёс тост за встречу.</example>
        </rule>
        <rule id="Logical_uluchshenie_otmechennih_nedostatkov" name="Логические ошибки: «улучшение отмеченных недостатков»">
            <pattern>
                <token>улучшение</token>
                <token>отмеченных</token>
                <token>недостатков</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>устранение отмеченных недостатков</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
            <short>Логическая ошибка</short>
            <example correction="устранение отмеченных недостатков">Сессия приняла решение, направленное на <marker>улучшение отмеченных недостатков</marker>.</example>
            <example>Сессия приняла решение, направленное на устранение отмеченных недостатков.</example>
        </rule>
        <rule id="Logical_zalozheno_xx_derevjev" name="Логические ошибки: «заложено 30 деревьев»">
            <pattern>
                <token>заложено</token>
                <token></token>
                <token inflected="yes">дерево</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>посажено \2 \3</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
            <short>Логическая ошибка</short>
            <example correction="посажено 30 деревьев">В сквере <marker>заложено 30 деревьев</marker>.</example>
            <example>В сквере посажено 30 деревьев.</example>
        </rule>
        <rule id="V_etoj_svyazy" name="Логические ошибки: «в этой связи»">
            <pattern>
                <token>в</token>
                <token>этой</token>
                <token>связи</token>
            </pattern>
            <message>Логическая ошибка: <suggestion>в связи с этим</suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0</url>
            <short>Логическая ошибка</short>
            <example correction="в связи с этим"><marker>в этой связи</marker></example>
            <example>в связи с этим</example>
        </rule>
        
        <rulegroup id="Logical_skritij_skritnij" name="Логические ошибки: «скрытый» или «скрытный»">
           <!-- скрытый/скрытный   -->
            <rule>      
                <pattern>
                    <token inflected="yes">скрытный</token>
                    <token inflected="yes" regexp="yes">проводка|признак</token>
                </pattern>
                <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(скрытн)(.*)" regexp_replace="скрыт$2" /> <match no="2"  /></suggestion>?</message>
                
                <short>Логическая ошибка</short>
                <example correction="скрытая проводка">В комнате выполнена <marker>скрытная проводка</marker>.</example>
               
            </rule>
            <rule id="ZASEDANIJE_ZAJEDANIJE" name="Логические ошибки: «заседание» или «заедание»">
                <pattern>
                    <token inflected="yes">заедание</token>
                    <token inflected="no">суда</token>
                </pattern>
                <message>Имелось в виду: <suggestion><match no="1" regexp_match="([зЗ])аедани(.*)" regexp_replace="$1аседани$2" /> <match no="2" /></suggestion>?</message>
                <short>Логическая ошибка</short>
                <example correction="Заседание суда"><marker>Заедание суда</marker> перенесено на завтра.</example>
            </rule>
            <rule>      
                <pattern>
                    <token postag_regexp="yes" postag="PNN|NN:Anim:.*" skip="-1"></token>
                    <marker>     
                        <token inflected="yes">скрытый</token>
                        <token inflected="yes" regexp="yes">характер|человек</token>
                    </marker>
                </pattern>
                <message>Логическая ошибка: <suggestion><match no="2" regexp_match="(скрыт)(.*)" regexp_replace="скрытн$2" /> <match no="3"  /></suggestion>?</message>
                
                <short>Логическая ошибка</short>
                <example correction="скрытный характер">У этого человека очень <marker>скрытый характер</marker>.</example>
                <example>Повреждения носят <marker>скрытый характер</marker>.</example>
            </rule>
        </rulegroup>  
        
        <rulegroup id="Logical_odel_nadel" name="Логические ошибки: «одеть» или «надеть»">
            <rule>      
                <pattern>
                    <token inflected="yes" skip="1">одеть</token>
                    <token inflected="yes" regexp="yes">рубашка|одежда|платье|юбка|пальто|куртка|брюки|майка|носок|обувь|туфли|сапоги|ботинки|сарафан<exception scope="previous" postag="PREP" /></token>
                </pattern>
                <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(од)(.*)" regexp_replace="над$2"  include_skipped="all" /> <match no="2" /></suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%BE%D0%BD%D0%B8%D0%BC%D0%B8%D1%8F</url>
                <short>Логическая ошибка</short>
                <example correction="надел рубашку">Он <marker>одел рубашку</marker>.</example>
                <example correction="надето красивое пальто">На девушке было <marker>одето красивое пальто</marker>.</example>
                <example>Кутюрье одел модель в красивое платье.</example>
                <example>Он надел рубашку.</example>
            </rule>  
            <rule>      
                <pattern>
                    <token inflected="yes">переодеть</token>
                    <token inflected="yes" regexp="yes">рубашка|одежда|платье|юбка|пальто|куртка|брюки|майка|носок|обувь|туфли|сапоги|ботинки|сарафан</token>
                </pattern>
                <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(переоде)(.*)" regexp_replace="поменя$2" /> <match no="2"  /></suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%BE%D0%BD%D0%B8%D0%BC%D0%B8%D1%8F</url>
                <short>Логическая ошибка</short>
                <example correction="поменяла платье">Она <marker>переодела платье</marker>.</example>
                <example>Она поменяла платье.</example>
            </rule>
            <rule>      
                <pattern>
                    <token>раздел</token>
                    <token inflected="yes" regexp="yes">рубашка|одежда|платье|юбка|пальто|куртка|брюки|майка|носок|обувь|туфли|сапоги|ботинки|сарафан</token>
                </pattern>
                <message>Логическая ошибка: <suggestion>снял \2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%BE%D0%BD%D0%B8%D0%BC%D0%B8%D1%8F</url>
                <short>Логическая ошибка</short>
                <example correction="снял рубашку">Он <marker>раздел рубашку</marker>.</example>
                <example>Он снял рубашку.</example>
            </rule>   
             <rule>      
                <pattern>
                    <token>обул</token>
                    <token inflected="yes" regexp="yes">обувь|сапог|босоножки|туфли|ботинок</token>
                </pattern>
                <message>Логическая ошибка: <suggestion>надел \2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%BE%D0%BD%D0%B8%D0%BC%D0%B8%D1%8F</url>
                <short>Логическая ошибка</short>
                <example correction="надел сапоги">Он <marker>обул сапоги</marker>.</example>
                <example>Он надел сапоги.</example>
            </rule>  
            <rule>      
                <pattern>
                    <token>разул</token>
                    <token inflected="yes" regexp="yes">обувь|сапог|босоножки|туфли|ботинок</token>
                </pattern>
                <message>Логическая ошибка: <suggestion>снял \2</suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%BE%D0%BD%D0%B8%D0%BC%D0%B8%D1%8F</url>
                <short>Логическая ошибка</short>
                <example correction="снял сапоги">Он <marker>разул сапоги</marker>.</example>
                <example>Он снял сапоги.</example>
            </rule>  
            <rule>      
                <pattern>
                    <token inflected="yes" >надел</token>
                    <token postag="NN:(Name|Fam|Patr):.*" postag_regexp="yes"><exception regexp="yes">майк[уи]</exception></token>
                </pattern>
                <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(над)(.*)" regexp_replace="од$2" /> <match no="2"  /></suggestion>?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%BE%D0%BD%D0%B8%D0%BC%D0%B8%D1%8F</url>
                <short>Логическая ошибка</short>
                <example correction="одел Ивана">Он <marker>надел Ивана</marker>.</example>
                <example>Он надел майку.</example>
                <example>Он одел Ивана.</example>
            </rule>                   
        </rulegroup>
        
        
         <rulegroup id="Logical_prazdnoe_prazdnichnoe" name="Ошибки в употреблении: «праздничное» или «праздное»">
          
            <rule>      
                <pattern>
                    <token inflected="yes">праздничный</token>
                    <token inflected="yes">жизнь</token>
                </pattern>
                <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(празднич)(.*)" regexp_replace="празд$2" /> <match no="2"  /></suggestion>?</message>
                
                <short>Логическая ошибка</short>
                <example correction="праздную жизнь">Человек ведет  <marker>праздничную жизнь</marker>.</example>
                <example>Человек ведет праздную жизнь.</example>
            </rule>  
              <rule>      
                <pattern>
                    <token inflected="yes">праздный</token>
                    <token inflected="yes">настроение</token>
                </pattern>
                <message>Логическая ошибка: <suggestion><match no="1" regexp_match="(празд)(.*)" regexp_replace="празднич$2" /> <match no="2"  /></suggestion>?</message>
                
                <short>Логическая ошибка</short>
                <example correction="праздничное настроение">У меня сегодня <marker>праздное настроение</marker>.</example>
                <example>У меня сегодня праздничное настроение.</example>
            </rule>                     
        </rulegroup>
        
        <rule id="Linguistics_hrabry" name="Лингвистические ошибки: «храбрая (или смелая) мысль, решение, идея»">
            <pattern>
                <token inflected="yes" >храбрый</token>
                <token regexp="yes">мысль|решение|идея</token>
            </pattern>
            <message>Лингвистическая ошибка: <suggestion><match no="1" regexp_match="(храбр)(.*)" regexp_replace="смел$2" /> <match no="2"  /></suggestion>?</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0</url>
            <short>Лингвистическая ошибка</short>
            <example correction="смелая идея">Это <marker>храбрая идея</marker>.</example>
            <example>Это смелая идея.</example>
        </rule>
        <rulegroup default="on" id="Genitsya" name="Ошибки в употреблении: «жениться» или «выйти замуж»">
            <rule>
                <pattern case_sensitive="no">
                    <token>он</token>
                    <token>вышел</token>
                    <token>замуж</token>
                </pattern>
                <message>«Выйти замуж» употребляется только со словами женского рода: <suggestion>\1 женился</suggestion></message>
                <url>http://ru.wiktionary.org/wiki/%D0%B2%D1%8B%D0%B9%D1%82%D0%B8_%D0%B7%D0%B0%D0%BC%D1%83%D0%B6</url>
                <short>Требуется женский род</short>
                <example>
                    <marker>Она вышла замуж</marker>.</example>
                <example correction="Он женился">
                    <marker>Он вышел замуж</marker>.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token postag="NN:.*:Masc:Sin:.*" postag_regexp="yes"></token>  
                    <token>вышел</token>
                    <token>замуж</token>
                </pattern>
                <message>«Выйти замуж» употребляется только со словами женского рода: <suggestion>\1 женился</suggestion></message>
                <url>http://ru.wiktionary.org/wiki/%D0%B2%D1%8B%D0%B9%D1%82%D0%B8_%D0%B7%D0%B0%D0%BC%D1%83%D0%B6</url>
                <short>Требуется женский род</short>
                <example><marker>Дочка вышла замуж</marker>.</example>
                <example correction="Сын женился"><marker>Сын вышел замуж</marker>.</example>
            </rule>
            
            <rule>
                <pattern case_sensitive="no">
                    <token>она</token>
                    <token>женилась</token>
                </pattern>
                <message>«Жениться» употребляется только со словами мужского рода: <suggestion>\1 вышла замуж</suggestion></message>
                <url>http://ru.wiktionary.org/wiki/%D0%B6%D0%B5%D0%BD%D0%B8%D1%82%D1%8C%D1%81%D1%8F</url>               
                <short>Требуется мужской род</short>
                <example><marker>Он женился</marker>.</example>
                <example correction="Она вышла замуж"><marker>Она женилась</marker>.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token postag="NN:.*:Fem:Sin:.*" postag_regexp="yes"></token>  
                    <token>женилась</token>    
                </pattern>
                <message>«Жениться» употребляется только со словами мужского рода: <suggestion>\1 вышла замуж</suggestion></message>
                <url>http://ru.wiktionary.org/wiki/%D0%B6%D0%B5%D0%BD%D0%B8%D1%82%D1%8C%D1%81%D1%8F</url>
                <short>Требуется мужской род</short>
                <example><marker>Сын женился</marker>.</example>
                <example correction="Дочка вышла замуж"><marker>Дочка женилась</marker>.</example>
            </rule>
        </rulegroup>
        
        <rulegroup id="ROST" name="«Рост»" default="on">
            <rule>
                <pattern>
                    <token postag="NN:Inanim:.*" postag_regexp="yes" skip="2">
                        <exception negate_pos="yes" postag="NN:Inanim:.*" postag_regexp="yes" />
                        <exception inflected="yes" regexp="yes" >&rost;</exception>
                        <exception scope="next" inflected="yes" regexp="yes" >&rost;</exception>
                        <exception scope="next" regexp="yes" >&pnct;</exception>
                        <exception scope="previous" postag="PREP"  /> 
                        <exception scope="next" postag_regexp="yes" postag="PREP|CONJ"  />
                    </token>
                    <token>роста<exception inflected="yes" regexp="yes" scope="next" >&rost;</exception>
                        <exception postag="NN:Inanim:.*" postag_regexp="yes" scope="next" ></exception>
                        <exception scope="previous" regexp="yes" >&pnct;</exception>
                        <exception scope="previous" postag="PREP"  />
                    </token>
                </pattern>
                <message>Рост бывает у одушевлённых слов (человек большого роста), некого числа характеристик (рост показателей, рост качества, количества), в некоторых устойчивых выражениях (рост экономики, преступности, безработицы).</message>
                <short>Замените другим словом</short>
                <example correction=""><marker>Дом большого роста</marker>.</example>
                <example>Дом большой высоты.</example>
                <example>В СССР имеются неограниченные возможности роста народного богатства и повышения материального и культурного уровня жизни трудящихся.</example>              
                <example>В последнее время импорт в России находится в стагнации, при этом наблюдается рост экономики.</example>
                <example>Эти расходы были практически целиком профинансированы за счёт роста госдолга с 6,6 до 8,7 млрд руб.</example> 
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes" skip="2">рост<exception inflected="yes" regexp="yes" scope="next">&rost;</exception>
                        <exception inflected="yes" regexp="yes" scope="previous">&rost;</exception>
                        <exception scope="next" regexp="yes" >&pnct;</exception>
                        <exception scope="next" postag="NN:(Name|Fam|Patr):.*" postag_regexp="yes" />
                        <exception postag="NN:Anim:.*" postag_regexp="yes" scope="next" ></exception>
                        <exception scope="previous" postag="PREP"  />
                        <exception scope="next" postag="PREP" />
                        <exception scope="next" postag="CONJ" />
                        <exception>Ростов</exception>
                    </token>
                    <token postag="NN:Inanim:.*" postag_regexp="yes" ><exception postag="NN:(Name|Fam|Patr):.*" postag_regexp="yes" /></token>
                </pattern>
                <message>Рост бывает у одушевлённых слов (человек большого роста), некого числа характеристик (рост показателей, рост качества, количества) и в некоторых устойчивых выражениях (рост экономики, преступности, безработицы).</message>
                <short>Ошибка!</short>
                <example correction="">Сопутствующий <marker>рост доступных учебных материалов</marker> по языку.</example>
                <example>Сопутствующий рост количества доступных учебных материалов по языку.</example>
                <example>По останкам установлено, что рост Ивана Грозного был около 179—180 сантиметров.</example>
                <example>Города Ростов и Таганрог, слобода Батайск.</example>
                                <example>Вы видите невысокого роста женщину средних лет.</example>
                <example>По отзывам современников, он был сухощав, имел высокий рост и хорошее телосложение.</example>
            </rule>
            <rule>
                <antipattern>
                    <token postag="NN:Inanim:.*:Nom" postag_regexp="yes" skip="1"><exception inflected="yes" regexp="yes" >&rost;</exception></token>
                    <token inflected="yes" skip="1">расти<exception inflected="yes" regexp="yes" scope="next">&rost;</exception></token>
                    <token>от</token>
                </antipattern>
                <pattern>
                    <token postag="SENT_START" skip="-1" ><exception inflected="yes" regexp="yes" scope="next">&rost;</exception></token>
                    <marker>
                        <token inflected="yes" skip="1" postag="VB:.*" postag_regexp="yes" >расти<exception inflected="yes" regexp="yes" scope="next">количество|качество|показатель|экономика|преступность|безработица</exception></token>
                        <token>от</token>
                    </marker>
                </pattern>
                <message>Рост бывает у одушевлённых слов (человек большого роста), некого числа характеристик (рост показателей, рост качества, количества) и в некоторых устойчивых выражениях (рост экономики, преступности, безработицы).</message>
                <short>Ошибка!</short>
                <example correction="">Цвет характеризует величину вектора Пойнтинга (он <marker>растёт от</marker> синего к красному).</example>
                <example>Цвет характеризует величину вектора Пойнтинга (он меняется от синего к красному)</example>
                <example>Количество дорожно-транспортных происшествий растёт год от года.</example>
                <example>В результате трудоёмкость (а значит, и стоимость) разработки растёт от объёма реализованной функциональности по вогнутому закону
                    (в языках с полиморфной семантикой системы типов этот рост характеризуется выпуклой кривой за счёт существенно более высокого показателя повторного использования кода).</example>
            </rule>                                        
        </rulegroup>                                                
    </category>
    
    <category id="PUNCTUATION" name="Пунктуация">     
        <rulegroup id="PUNCT_DPT" name="Запятые при деепричастии и деепричастном обороте">
            <rule>
                <pattern>
                    <token postag="PNN:.*|NN:.*:.*:.*:Nom" postag_regexp="yes"></token>
                    <token postag="DPT:.*" postag_regexp="yes"><exception  postag="DPT:.*" postag_regexp="yes" negate_pos="yes"/></token>
                    <token postag="VB:.*" postag_regexp="yes"></token>
                </pattern>
                <message>Деепричастие и деепричастный оборот выделяются запятыми: <suggestion>\1, \2, \3</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/rules/151-zap-19-32</url>
                <short>Запятые при деепричастном обороте</short>
                <example correction="Он, улыбаясь, шёл"><marker>Он улыбаясь шёл</marker> вперёд.</example>
                <example>Он, улыбаясь, шёл вперёд.</example>
                <example>Он молча уставился на НЛО.</example>
            </rule>
            <rule>
                <pattern>
                    <token postag="VB:.*" postag_regexp="yes"></token>
                    <token>,</token>
                    <token postag="DPT:.*" postag_regexp="yes"></token>
                    <token>.</token>
                </pattern>
                <message>Запятая не нужна, одиночное деепричастие в конце предложения выступает в роли наречия: <suggestion>\1 \3\4</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/rules/151-zap-19-32</url>
                <short>Запятая не нужна</short>
                <example correction="шёл улыбаясь.">Он <marker>шёл, улыбаясь.</marker></example>
            </rule>
        </rulegroup>
        <!-- issue #1119  -->
        <rule id="Multiple_missing_commas_VB" name="Пропущенные запятые между глаголами"  default="temp_off" >
            <antipattern>
               <token postag="VB:.*" postag_regexp="yes" skip="-1">
                    <exception regexp="yes" scope="next">и|или|а|но|&pnct;|да|/|либо|что|прежде|когда|как|что|-|пока</exception>
                    <exception postag="VB:.*" postag_regexp="yes" negate_pos="yes"></exception>                    
                </token>
                <token postag="VB:.*" postag_regexp="yes"><match no="0"/>
                    <exception postag="VB:.*" postag_regexp="yes" negate_pos="yes"></exception>
                </token> 
            </antipattern>
            
            <pattern>     <!-- TO DO: experimental rule, need improve! --> <!-- default="temp_off" tags="picky" -->
                <unify negate="no">
                        <feature id="tense"/>
                        <feature id="aspect"/>
                        <feature id="transitivity"/>
                <token postag="VB:.*" postag_regexp="yes" skip="-1">
                    <exception regexp="yes" scope="next">и|или|а|но|&pnct;|да|/|либо|что|прежде|когда|как|что|--|пока|[+]</exception>
                    <exception postag="VB:.*" postag_regexp="yes" negate_pos="yes"></exception>
                    <exception inflected="yes" regexp="yes">быть|идти|мешать|делать|сделать|пойти|просить|попросить|пытаться|помогать|побудить|заставить|иметься|мочь|сходить|смотреть|хотеть|брать|давать|думать|знать|надеяться</exception>
                    <exception regexp="yes">&verb;</exception>
                    <exception postag="VB:INF:.*" postag_regexp="yes" ></exception>
                </token>
                <token postag="VB:.*" postag_regexp="yes">
                    <exception postag="VB:.*" postag_regexp="yes" negate_pos="yes"></exception>
                    <exception inflected="yes" regexp="yes">быть|идти|мешать|делать|сделать|пойти|просить|попросить|пытаться|помогать|побудить|заставить|иметься|мочь|сходить|смотреть|хотеть|брать|давать|думать|знать|надеяться</exception>
                    <exception regexp="yes">&verb;</exception>
                    <exception scope="previous" regexp="yes" >ни|черт|чёрт|пальцем</exception>
                </token>
                </unify>
            </pattern>
            <message>Пропущена запятая или иной знак между глаголами, или глагол стоит в неправильной форме.</message>
            <short>Пропущена запятая</short>
            <example>Я ни курю ни пью.</example>
            <example>Дал другу в долг -- потерял друга.</example>
            <example>Он приводит черт знает к чему.</example>
            <example>Думай не думай - ничего не изменишь.</example>
            <example correction="">Свиньи все <marker>подохли остался</marker> один баран.</example>
            <example>Свиньи все подохли, остался один баран.</example>
        </rule>
        
        <!--   -->
        <rulegroup id="COMMA_PARTICIPLE" name="Запятые при причастии и причастном обороте" >
            <!-- TO DO: experimental rule, need improve! --> <!-- default="temp_off" -->
            <rule> 
                <pattern>
                    <unify negate="no">
                        <feature id="gender"/>
                        <feature id="number"/> 
                        <marker>
                        <token postag="NN:.*:V" postag_regexp="yes">
                            <exception postag="NN:.*:V" postag_regexp="yes" negate_pos="yes"></exception>
                        </token>
                        <token postag="PT:.*:V" postag_regexp="yes" >
                            <exception postag="PT:.*:V" postag_regexp="yes" negate_pos="yes"></exception>
                            <exception scope="next" postag="NN:.*:V" postag_regexp="yes"></exception>
                        </token>
                        </marker>
                    </unify>
                    <token><exception postag="NN:.*:V" postag_regexp="yes"></exception></token>
                </pattern>
                <message>Пропущена запятая перед причастием или причастным оборотом: <suggestion>\1, \2</suggestion></message>
                <url>https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B8%D1%87%D0%B0%D1%81%D1%82%D0%B8%D0%B5_(%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0)#%D0%9F%D1%80%D0%B8%D1%87%D0%B0%D1%81%D1%82%D0%BD%D1%8B%D0%B9_%D0%BE%D0%B1%D0%BE%D1%80%D0%BE%D1%82</url>
                <short>Пропущена запятая</short>
                <example correction="собаку, хромавшую">Он увидел <marker>собаку хромавшую</marker> на задние лапы.</example>
                <example>Он отправил в Москву заверенную телеграмму.</example>
                <example>Он изображается в виде мужчины, держащего за шею выпрямленную змею.</example>
                <example>Он увидел собаку, хромавшую на задние лапы.</example>
            </rule>
        </rulegroup>
        
        <rulegroup id="PUNCT_VB_INF_OBOROT" name="Запятые при обстоятельственном обороте">
            <rule>
            <!-- Оборот с неопределенной формой глагола со всеми относящимися к ней словами,
            присоединёнными союзами чтобы (чтоб), для того чтобы (чтоб), с тем чтобы (чтоб) и т. п. выделяется запятыми. -->    
               <antipattern> 
                    <token regexp="yes">для|с|вместо</token>
                    <token regexp="yes">того|тем</token>
                    <token regexp="yes">чтобы|чтоб</token>
                    <token postag_regexp="yes" postag="VB:INF:.*"></token>
                </antipattern>
                <antipattern>
                    <token>не</token> 
                    <token regexp="yes">для|с|вместо</token>
                    <token regexp="yes">того|тем</token>
                    <token regexp="yes">чтобы|чтоб</token>
                    <token postag_regexp="yes" postag="VB:INF:.*"></token>
                </antipattern>
                <antipattern>
                    <token regexp="yes">только|а|но|и</token>
                    <token regexp="yes">чтобы|чтоб</token>
                    <token postag_regexp="yes" postag="VB:INF:.*"></token>
                </antipattern>
                <pattern>
                    <token><exception regexp="yes">&pnct;</exception><exception postag="SENT_START"></exception></token>
                    <token regexp="yes">чтобы|чтоб</token>
                    <token postag_regexp="yes" postag="VB:INF:.*"></token>
                </pattern>
                <message>Оборот с неопределенной формой глагола со всеми относящимися к ней словами, присоединёнными союзами «чтобы/чтоб»: <suggestion>\1, \2 \3</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/rules/151-zap-19-32</url>
                <short>Запятые при обстоятельственном обороте</short>
                <example correction="крыльцо, чтобы освежиться">Я вышел на <marker>крыльцо чтобы освежиться</marker>.</example>
                <example>Я вышел на крыльцо, чтобы освежиться.</example>
                <example>Я здесь, в том числе и чтобы помочь вам.</example>
                <example>Я вышел на крыльцо не для того чтобы освежиться. (Некорректный пример)</example> <!-- Incorrect example, but another rule must detect it  -->
                <example>Я вышел на крыльцо не для того, чтобы освежиться.</example>
                <example>Врагам понадобилось почти 10 месяцев, только чтобы захватить город.</example>
            </rule>
            <rule>
                <pattern>
                    <token><exception regexp="yes">&pnct;</exception><exception postag="SENT_START"></exception></token>
                    <token>только</token>
                    <token regexp="yes">чтобы|чтоб</token>
                    <token postag_regexp="yes" postag="VB:INF:.*"></token>
                </pattern>
                <message>Оборот с неопределенной формой глагола со всеми относящимися к ней словами, присоединёнными союзами «чтобы/чтоб»: <suggestion>\1, \2 \3 \4</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/rules/151-zap-19-32</url>
                <short>Запятые при обстоятельственном обороте</short>
                <example correction="крыльцо, только чтобы освежиться">Я вышел на <marker>крыльцо только чтобы освежиться</marker>.</example>
                <example>Я вышел на крыльцо, только чтобы освежиться.</example>
                <example>Я вышел на крыльцо не для того чтобы освежиться. (Некорректный пример)</example> <!-- Incorrect example, but another rule must detect it  -->
                <example>Я вышел на крыльцо не для того, чтобы освежиться.</example>
                <example>Врагам понадобилось почти 10 месяцев, только чтобы захватить город.</example>
            </rule>
            <rule>
                <pattern>
                    <token><exception regexp="yes">&pnct;|не</exception><exception postag="SENT_START"></exception></token>
                    <token regexp="yes">для|с|вместо</token>
                    <token regexp="yes">того|тем</token>
                    <token regexp="yes">чтобы|чтоб</token>
                    <token postag_regexp="yes" postag="VB:INF:.*"></token>
                </pattern>
                <message>Оборот с неопределенной формой глагола со всеми относящимися к ней словами, присоединёнными союзами «для того чтобы, с тем чтоб»: <suggestion>\1, \2 \3 \4 \5</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/rules/151-zap-19-32</url>
                <short>Запятые при обстоятельственном обороте</short>
                <example correction="крыльцо, для того чтобы освежиться">Я вышел на <marker>крыльцо для того чтобы освежиться</marker>.</example>
                <example>Я вышел на крыльцо не для того чтобы освежиться. (Некорректный пример)</example> <!-- Incorrect example, but another rule must detect it  -->
                <example>Я вышел на крыльцо не для того, чтобы освежиться.</example>
                <example>Я вышел на крыльцо, для того чтобы освежиться.</example>
            </rule>         
        </rulegroup>
        <rulegroup id="dlya_togo_chtoby" name="Пунктуация в предложении с союзом «для того чтобы»">
            <!-- issue #1097 не|лишь -->
            <rule>
                <pattern>
                    <token postag_regexp="yes" postag="ADV|PARTICLE"><exception>только</exception><exception scope="previous" postag="SENT_START"></exception></token>
                    <token>для</token>
                    <token>того</token>
                    <token>чтобы</token>
                </pattern>
                <message>Требуется запятая: <suggestion>\1 \2 \3, \4</suggestion></message>
                <url>https://russkiiyazyk.ru/punktuatsiya/dlia-togo-chtoby-zapyataya.html</url>
                <short>Пропущена запятая</short>
                <example correction="не для того, чтобы">Он зашел к нам вовсе <marker>не для того чтобы</marker> сообщить эту новость.</example>
                <example>Ведь для того чтобы пламя непрерывно горело, необходим приток свежего кислорода.</example>
                <example>Он зашел к нам вовсе не для того, чтобы сообщить эту новость.</example>
            </rule>
           
        </rulegroup>
        <!-- may be duplicate, see: COMPLEX_SOUZ_PUNCT -->
        <rule id="dlya_togo_chtoby_2" name="Пунктуация в предложении с союзом «для того чтобы» (2)" >
                <pattern>
                    <token postag="SENT_START"></token>
                    <marker>
                    <token>для</token>
                    <token>того</token>
                    <token>,</token>
                    <token>чтобы</token>
                    </marker>
                </pattern>
                <message>Лишняя запятая: <suggestion>\2 \3 \5</suggestion></message>
                <url>https://russkiiyazyk.ru/punktuatsiya/dlia-togo-chtoby-zapyataya.html</url>
                <short>Лишняя запятая</short>
                <example correction="Для того чтобы"><marker>Для того, чтобы</marker>  капуста оставалась хрустящей, не стоит слишком сильно перетирать её с солью.</example>
                <example>Для того чтобы капуста оставалась хрустящей, не стоит слишком сильно перетирать её с солью.</example>
                <example>Он зашел к нам вовсе не для того, чтобы сообщить эту новость.</example>
        </rule> 
        <rule id="Not_Comma_eto" name="Избыточная запятая перед «это»"  >
            <pattern> <!-- Лишняя запятая #1098   default="temp_off" tags="picky" -->
                <token postag="SENT_START"></token>
                <marker>
                    <token skip="-1">В<exception scope="next" postag="VB:.*" postag_regexp="yes"></exception>
                        <exception scope="next" regexp="yes">частности|конце|целом|общем|деталях</exception>
                    </token> <!-- Исключения для вводных выражений, TODO -->
                    <token>,</token>
                    <token>это</token>
                    <token postag="VB:.*" postag_regexp="yes"></token>
                </marker>
            </pattern>
            <message>Избыточная запятая: <suggestion><match no="2" include_skipped="all" /> <match no="4"/> <match no="5"/></suggestion></message>
            <short>Избыточная запятая</short>
            <example correction="В случае рассмотрения резонансных структур это приводит"><marker>В случае рассмотрения резонансных структур, это приводит</marker> к существенным ошибкам в вычислении поля на границе раздела между слоями.</example>
            <example>В случае рассмотрения резонансных структур это приводит к существенным ошибкам в вычислении поля на границе раздела между слоями.</example>
        </rule>
        <rulegroup default="on" id="Verb_comma_Verb" name="Глаголы как однородные члены предложения">
             <rule>    
                <pattern case_sensitive="yes">
                    <unify negate="no">
                        <feature id="gender"/>
                        <feature id="tense"/>
                        <marker> 
                        <token postag="VB:Past:.*" postag_regexp="yes"  skip="2" >
                            <exception negate_pos="yes" postag="VB:Past:.*" postag_regexp="yes" />
                            <exception regexp="yes">Бил|МОК</exception>
                            <exception scope="next" regexp="yes">;|:|[\p{Punct}]|-|[,]|–|—|не|и|или|либо|«|--|если|чего|как|быть</exception>
                            <exception scope="next"  postag="INTERJECTION"></exception>
                        </token>
                        <token postag="VB:Past:.*" postag_regexp="yes">
                            <exception negate_pos="yes" postag="VB:Past:.*" postag_regexp="yes" />
                            <exception regexp="yes">Бил|МОК</exception>
                            <exception scope="previous" regexp="yes">;|:|[\p{Punct}]|-|[,]|–|—|«|не|и|или|либо|если|как</exception>
                            <exception scope="previous" postag_regexp="yes" postag="PREP|INTERJECTION"></exception>
                        </token>
                        </marker>
                    </unify>
                    <token><exception>быть</exception></token>
                </pattern>      
                <message>Глаголы – однородные члены предложения: <suggestion><match no="1" include_skipped="all" />, <match no="2" /></suggestion> или <suggestion><match no="1" include_skipped="all" /> и <match no="2" /></suggestion>.</message>
                <url>https://ru.wikipedia.org/wiki/%D0%9E%D0%B4%D0%BD%D0%BE%D1%80%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%87%D0%BB%D0%B5%D0%BD%D1%8B_%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F</url>
                <short>Однородные члены предложения</short>
                <example>Он смеялся и радовался жизни.</example>
                <example>Задело стало быть за живое.</example>
                <example>Он приводит черт знает к чему.</example>
                <example>Он шёл по улице, говорил по телефону.</example>
                <example>Он идёт по улице, говорит по телефону.</example>
                <example correction="смеялся, радовался|смеялся и радовался">Он <marker>смеялся радовался</marker> жизни.</example>
                <example correction="смеялась, радовалась|смеялась и радовалась">Она <marker>смеялась радовалась</marker> жизни.</example>
                <example correction="смеялись, радовались|смеялись и радовались">Они <marker>смеялись радовались</marker> жизни.</example>
                <example correction="взошло, освещало|взошло и освещало">Солнце <marker>взошло освещало</marker> местность.</example>
                <example correction="шёл по улице, говорил|шёл по улице и говорил">Он <marker>шёл по улице говорил</marker> по телефону.</example>
            </rule>
            <rule>
            <!-- TODO: add exception with extended postag (пойти|давать|идти|брать|воровать|быть|делать|сделать)  -->       
                <pattern case_sensitive="yes">
                    <unify negate="no">
                        <feature id="person"/>
                        <feature id="number"/>
                        <feature id="tense"/>
                        <marker>        
                        <token postag="VB:(Real|IMP|Fut):.*:.*" postag_regexp="yes"  skip="2" >
                            <exception negate_pos="yes" postag="VB:(Real|IMP|Fut):.*:.*" postag_regexp="yes" />
                            <exception regexp="yes">Бил|МОК</exception>
                            <exception regexp="yes" inflected="yes">пойти|давать|идти|брать|воровать|быть|делать|сделать</exception>
                            <exception scope="next" regexp="yes">;|:|[\p{Punct}]|-|[,]|–|—|не|и|или|либо|«|--|чего|если|что|как</exception>
                            <exception scope="next" postag_regexp="yes" postag="INTERJECTION|VB:INF:.*"></exception>
                        </token>
                        <token postag="VB:(Real|IMP|Fut):.*:.*" postag_regexp="yes">
                            <exception negate_pos="yes" postag="VB:(Real|IMP|Fut):.*:.*" postag_regexp="yes" />
                            <exception regexp="yes">Бил|МОК</exception>
                            <exception scope="previous" regexp="yes">;|:|[\p{Punct}]|-|[,]|–|—|«|не|и|или|либо|если|что|как|черт|чёрт</exception>
                            <exception scope="previous" postag_regexp="yes" postag="PREP|INTERJECTION|VB:INF:.*"></exception>
                        </token>
                        </marker>
                    </unify>            
                </pattern>      
                <message>Глаголы – однородные члены предложения: <suggestion><match no="1" include_skipped="all" />, <match no="2" /></suggestion> или <suggestion><match no="1" include_skipped="all" /> и <match no="2" /></suggestion>.</message>
                <url>https://ru.wikipedia.org/wiki/%D0%9E%D0%B4%D0%BD%D0%BE%D1%80%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%87%D0%BB%D0%B5%D0%BD%D1%8B_%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F</url>
                <short>Однородные члены предложения</short>
                <example>Ты можешь выбрать чего хочешь.</example>
                <example>Пока живу — надеюсь.</example>
                <example>Ты можешь сожалеть сколько хочешь.</example>
                <example>Покрась и побели забор.</example>
                <example>Задело стало быть за живое.</example>
                <example>Он приводит черт знает к чему.</example>
                <example>Я, может, скоро сдамся и вместо этого пойду вздремну.</example>
                <example>Я сделаю всё что могу.</example>
                <example>Надеюсь однажды я перестану торчать здесь.</example>
                <example>Он подробно описывает что происходит в данный момент.</example>
                <example>Выживаю как могу.</example>
                <example>Иди помоги мыть посуду.</example>
                <example correction="смеётся, радуется|смеётся и радуется">Он <marker>смеётся радуется</marker> жизни.</example>
            </rule>                                                                                                      
        </rulegroup>                 
    	<rule  id="takim_obrazom_chto" name="Запятая после «таким образом»">
    	    <pattern case_sensitive="no">
            	<token>таким</token>
    	        <token>образом</token>
    	        <token regexp="yes">что|чтобы|как</token>
    	    </pattern>
    	    <message>Пропущена запятая: <suggestion>\1 \2, \3</suggestion>.</message>
    	    <short>Пропущена запятая</short>
    	    <example correction="таким образом, что">Это сделано <marker>таким образом что</marker> и не найти.</example>
    	    <example>Таким образом, что слово есть, что его нет - без разницы.</example>
    	</rule>
        <rule id="takim_obrazom" name="Запятая после «таким образом» (2)"  tags="picky" >  <!--default="temp_off"  TODO: need improve! -->
            <antipattern>
                <token skip="4" postag="NN:.*:.*:.*:Nom" postag_regexp="yes"></token>
                <token>таким</token>
                <token>образом</token>
            </antipattern>
            <antipattern>
                <token skip="1" postag="VB:.*:.*:.*" postag_regexp="yes"></token>
                <token>таким</token>
                <token>образом</token>
            </antipattern>
            <pattern>
                <token>таким<exception postag="VB:.*|DPT:.*|PT:.*|PT_Short:.*|PREP|PRDC|NN:.*" postag_regexp="yes" scope="previous"></exception>
                    <exception regexp="yes" scope="previous">[,.-;:—-]</exception>
                    <exception scope="previous" postag_regexp="yes" postag="SENT_START" />
                    <exception scope="previous" regexp="yes">что|чтобы|как|только</exception>
                </token>
                <token>образом</token>
                <token postag="VB:.*|DPT:.*|PT:.*|PT_Short:.*|PREP" postag_regexp="yes" negate_pos="yes">
                    <exception regexp="yes">[?,!;:.«(]</exception><exception scope="next" regexp="yes">что|чтобы|как</exception>
                </token>
            </pattern>
            <message>Возможно пропущена запятая, если словосочетание «таким образом» выступает в качестве вводного.</message>
            <url>https://github.com/languagetool-org/languagetool/issues/1121</url>
            <short>Пропущена запятая</short>
            <example correction="">И <marker>таким образом мы</marker></example>
            <example>И,таким образом, мы</example>
            <example>Продавец "экономит" таким образом 4000 рублей.</example>
            <example>И сообщают им таким образом всю необходимую информацию.</example>
            <example>Можно сказать это и таким образом?</example>
        </rule>
        <rule default="on" id="comma_and_to_jest" name="Запятая перед «то есть»">
    	    <pattern case_sensitive="no">
            	<token regexp="yes" negate="yes">[,;)»]|тогда|[\p{Punct}]|-|—|–<exception postag="SENT_START" /></token>
    	        <token>то</token>
    	        <token>есть</token>
    	    </pattern>
    	    <message>Пропущена запятая: <suggestion>\1, \2 \3</suggestion>.</message>
    	    <short>Пропущена запятая</short>
    	    <example correction="сабель, то есть">К Тамбову подступали две с половиной тысячи <marker>сабель то есть</marker> всего три полка.</example>
    	</rule>
        <rulegroup default="on" id="Prep_i" name="Пропущена запятая перед «и», «как» в сложном предложении">
            <rule>
            <!--             VB:.*   NN:.*   и      VB:.*   NN:.*     -->
                <antipattern>
                    <token postag="PNN:.*|NN:.*:.*:Nom" postag_regexp="yes" skip="-1"></token>
                    <token postag="VB:.*" postag_regexp="yes" skip="-1"></token>
                    <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception scope="previous" postag="NN:.*:.*:Nom" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception><exception scope="previous" regexp="yes">я|он|она|мы|вы|ты|</exception></token>           
                    <token postag="NN:.*:.*:Nom" postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                    <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception></token>
                    <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception></token>           
                    <token postag="NN:.*:.*:Nom" postag_regexp="yes"  skip="-1"  ><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </antipattern>
                    <antipattern>
                    <token postag="PNN:.*|NN:.*:.*:Nom" postag_regexp="yes" skip="-1"></token>
                    <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception scope="previous" postag="NN:.*:.*:Nom" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception><exception scope="previous" regexp="yes">я|он|она|мы|вы|ты|</exception></token>           
                    <token postag="NN:.*:.*:Nom" postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                    <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception></token>
                    <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception></token>           
                    <token postag="NN:.*:.*:Nom" postag_regexp="yes"  skip="-1"  ><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </antipattern>
                <pattern>
                    <marker>
                        <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception scope="previous" postag="NN:.*:.*:Nom" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception><exception scope="previous" regexp="yes">я|он|она|мы|вы|ты|нам|вам|который|которая|которые|которое</exception></token>           
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                        <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception><exception  scope="previous">так</exception></token>
                                            
                    <unify>
                        <feature id="number"/>
                        <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception></token>           
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes" skip="-1" ><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,—–;-]</exception></token>
                    </unify>
                    </marker>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion><match no="1"/> <match no="2" include_skipped="all"/>, <match no="3" include_skipped="all"/> <match no="4"/> <match no="5" include_skipped="none"/></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D0%BE%D1%87%D0%B8%D0%BD%D1%91%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Пропущена запятая в сложном предложении</short>   
                <example>Пролетели года, и настало время.</example>
                <example>На пристани стоит человек и продаёт билеты.</example>
                <example>Вызовите команду ng add, которая установит зависимости и обновит приложение с помощью скрипта установки.</example>
                <example>Могу ли я уточнить время и место нашей встречи?</example>
                <example>Они сделали предложение и бросили вызов нам.</example>
                <example>Нам пришлось уменьшить шаг сканирования и увеличить размер в настройках.</example>
                <example>Исполнитель оставляет за собой право досрочно завершить работы по настоящему Договору и сдать результат работ.</example>
                <example>Мой отец и мой брат.</example>
                <example correction="Пролетели года, и настало время"><marker>Пролетели года и настало время</marker>.</example>
            </rule>
            <rule>
            <!--             VB:.*   NN:.*   и       NN:.*  VB:.*     -->
                <antipattern>
                    <token postag="PNN:.*|NN:.*:.*:Nom" postag_regexp="yes" skip="-1"></token>
                    <token postag="VB:.*" postag_regexp="yes" skip="-1"></token>
                    <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception scope="previous" postag="NN:.*:.*:Nom" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception><exception scope="previous" regexp="yes">я|он|она|мы|вы|ты|</exception></token>           
                    <token postag="NN:.*:.*:Nom" postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                    <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception></token>
                    <token postag="NN:.*:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception></token>           
                    <token postag="VB:.*" postag_regexp="yes"  skip="-1" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </antipattern>
                <antipattern>
                    <token postag="PNN:.*|NN:.*:.*:Nom" postag_regexp="yes" skip="-1"></token>

                    <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception scope="previous" postag="NN:.*:.*:Nom" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception><exception scope="previous" regexp="yes">я|он|она|мы|вы|ты|</exception></token>           
                    <token postag="NN:.*:.*:Nom" postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                    <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception></token>
                    <token postag="NN:.*:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception></token>           
                    <token postag="VB:.*" postag_regexp="yes"  skip="-1" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </antipattern>
                <pattern>
                    <marker>
                        <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception scope="previous" postag="NN:.*:.*:Nom" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception><exception scope="previous" regexp="yes">я|он|она|мы|вы|ты|нам|вам</exception></token>           
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                        <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception><exception  scope="previous">так</exception></token>
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception></token>           
                        <token postag="VB:.*" postag_regexp="yes"  skip="-1" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>   
                    </marker>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion><match no="1"/> <match no="2" include_skipped="all"/>, <match no="3" include_skipped="all"/> <match no="4"/> <match no="5" include_skipped="none"/></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D0%BE%D1%87%D0%B8%D0%BD%D1%91%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Пропущена запятая в сложном предложении</short>
                <example>Пролетели года, и время настало.</example>
                <example>На пристани стоит человек и продаёт билеты.</example>
                <example>Могу ли я уточнить время и место нашей встречи?</example>
                <example>Они сделали предложение и вызов бросили нам.</example>
                <example>Нам пришлось уменьшить шаг сканирования и увеличить размер в настройках.</example>
                <example>Мой отец и брат мой.</example>
                <example correction="Пролетели года, и время настало"><marker>Пролетели года и время настало</marker>.</example>
            </rule>                
            <rule>
            <!--           NN:.*   VB:.*    и      NN:.*   VB:.*     -->    
                <antipattern>
                    <token postag="VB:.*" postag_regexp="yes" skip="-1"></token>
                    <token postag="PNN:.*|NN:.*:.*:Nom" postag_regexp="yes" skip="-1"></token>
                    <token postag="NN:.*:.*:Nom|PNN:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*|PNN:.*" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception></token>           
                    <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception  regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                    <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception></token>
                    <token postag="NN:.*:.*:Nom|PNN:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*|PNN:.*" postag_regexp="yes"></exception></token>           
                    <token postag="VB:.*" postag_regexp="yes"  skip="-1" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </antipattern>
                <pattern>
                    <marker>
                        <token postag="NN:.*:.*:Nom|PNN:.*:Nom:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*|PNN:.*:Nom:.*" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception></token>           
                        <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception  regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                        <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception><exception  scope="previous">так</exception></token>
                        <token postag="NN:.*:.*:Nom|PNN:.*:Nom:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*|PNN:.*:Nom:.*" postag_regexp="yes"></exception><exception  regexp="yes" scope="next">[,;–—:(«-]</exception></token>           
                        <token postag="VB:.*" postag_regexp="yes"  skip="-1" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    </marker>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion><match no="1"/> <match no="2" include_skipped="all"/>, <match no="3" include_skipped="all"/> <match no="4"/> <match no="5" include_skipped="none"/></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D0%BE%D1%87%D0%B8%D0%BD%D1%91%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Пропущена запятая в сложном предложении</short>
                <example>Года пролетели, и время настало.</example>
                <example>Иван думал о будущем, пока сын жил настоящим.</example>
                <example>На пристани стоит человек и продаёт билеты.</example>
                <example>Как мышка бегает, так и кошка прыгает.</example>
                <example>Принцип старшинства распространяется также на жён и дочерей чиновников («все замужние жены поступают в рангах по чинам мужей их»).</example>        
                <example>Он говорит: "Когда она позовёт меня?"</example>
                <example>Его тропы создавали русла рек и ручьёв, и, в конце концов, вода залила всю землю.</example>
                <example correction="Года пролетели, и время настало"><marker>Года пролетели и время настало</marker>.</example>
                <example correction="Парень понял, как мальчик сделал"><marker>Парень понял как мальчик сделал</marker> эту модель.</example>
                <example correction="Отец думал много, пока сын существовал"><marker>Отец думал много пока сын существовал</marker> настоящим.</example>
                <example correction="Мама мыла раму, пока дочка готовила"><marker>Мама мыла раму пока дочка готовила</marker> обед.</example>
                <example correction="Мама мыла раму, и дочка готовила"><marker>Мама мыла раму и дочка готовила</marker> обед.</example>
                <example correction="Иван понял, как Алексей сделал"><marker>Иван понял как Алексей сделал</marker> эту модель.</example>
                <example correction="Он понял, как Алексей сделал"><marker>Он понял как Алексей сделал</marker> эту модель.</example>
<!--            <example correction="Все пошли, и Дина пошла"><marker>Все пошли и Дина пошла</marker>.</example>  -->
            </rule>
          </rulegroup>
          
          <rulegroup default="off" id="Prep_i_2" name="Пропущена запятая перед «и», «как» в сложном предложении (2)">
            <!--           NN:.*   VB:.*  и    VB:.*   NN:.*  (много ложных срабатываний, если есть обобщающее слово)  default="temp_off" -->    
            <rule>   
               <antipattern>
                    <token postag="VB:.*" postag_regexp="yes" skip="-1"></token>
                    <token postag="PNN:.*|NN:.*:.*:Nom" postag_regexp="yes" skip="-1"></token>
                     <marker>
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]</exception></token>           
                        <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception  regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                        <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception></token>
                        <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception></token>           
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes"  skip="-1"  ><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    </marker>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </antipattern>
                <antipattern>
                    <token postag="ADJ:.*" postag_regexp="yes" ></token>
                    <marker>
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes" /><exception scope="previous" regexp="yes">[\p{Punct}]|[:]</exception></token>           
                        <token postag="VB:.*" postag_regexp="yes" ></token>
                        <token skip="-1" postag="NN:.*:.*:V" postag_regexp="yes"><exception  regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                        <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception>
                            <exception  scope="previous">так</exception>
                        </token>
                        <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception></token>           
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes"  skip="-1"  ><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    </marker>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </antipattern>
                
                <pattern>
                    <marker>
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">[\p{Punct}]|[:]</exception></token>           
                        <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception  regexp="yes" scope="next">[.,;(«–—:…-]</exception></token>
                        <token regexp="yes" skip="-1">и|как|когда|пока|если<exception regexp="yes" scope="next">[,—–;(«…-]</exception><exception  scope="previous">так</exception></token>
                        <token postag="VB:.*" postag_regexp="yes" ><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception></token>           
                        <token postag="NN:.*:.*:Nom" postag_regexp="yes"  skip="-1"  ><exception negate_pos="yes" postag="NN:.*:.*:.*" postag_regexp="yes"></exception><exception regexp="yes" scope="next">[,;-]</exception></token>
                    </marker>
                    <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion><match no="1"/> <match no="2" include_skipped="all"/>, <match no="3" include_skipped="all"/> <match no="4"/> <match no="5" include_skipped="none"/></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D0%BE%D1%87%D0%B8%D0%BD%D1%91%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Пропущена запятая в сложном предложении</short>
                <example>Года пролетели, и настало время.</example>
                <example>Ведомая Британией промышленная революция изменила страну и обеспечила рост Британской Империи.</example>
                <example>Его тропы создавали русла рек и ручьёв, и, в конце концов, залила вода всю землю.</example>
                <example correction="Года пролетели, и настало время"><marker>Года пролетели и настало время</marker>.</example>
                <example correction="Парень понял, как сделал мальчик"><marker>Парень понял как сделал мальчик</marker> эту модель.</example>
                <example correction="Мама мыла раму, и готовила дочка"><marker>Мама мыла раму и готовила дочка</marker> обед.</example>
            </rule>
        </rulegroup>
        <rule  id="PNN_Kak_Noun" name="Знаки препинания в предложении «местоимение или существительное + как + существительное-сказуемое»">  
            <pattern>          <!-- see KAK_PRAVILO -->   
                <marker>
                    <or>
                        <token regexp="yes" >я|мы|вы|ты|он|она|они|оно</token>
                        <token postag_regexp="yes" postag="NN:.*:Nom"><exception negate_pos="yes" postag="NN:.*:Nom" postag_regexp="yes"></exception></token>
                    </or>
                    <token >,</token>
                    <token>как</token>   
                    <token postag_regexp="yes" postag="NN:.*:Nom" skip="-1"><exception scope="next" postag="VB:.*" postag_regexp="yes" /><exception regexp="yes" >обычно|всегда|правило|исключение|нарочно|сейчас</exception></token>
                </marker>
                 <token regexp="yes">[.!?:]</token>
            </pattern>
            <message>Лишняя запятая: <suggestion>\1 \3 \4</suggestion> или <suggestion>\1 – \3 \4</suggestion></message>
            <short>Лишняя запятая</short>
            <example>Она как богиня!</example>
            <example>Эта рекомендация известна как правило одного экрана.</example>
            <example>Они, как правило, были связаны с небом и солнцем.</example>
            <example correction="Она как богиня|Она – как богиня"><marker>Она, как богиня</marker>!</example>
        </rule>  
        <rule  id="Kak_Tak_i" name="Знаки препинания в сложном предложении «Как ... , так и ...»">  
            <pattern>             
                <marker>
                    <token skip="-1">как<exception scope="next">но</exception></token>           
                    <token >так<exception regexp="yes" scope="previous">&pnct;|то|вот|но</exception></token>
                    <token regexp="yes" skip="-1">и|как|когда<exception regexp="yes" scope="next">[,—–;-]</exception></token>
                </marker>
                <token regexp="yes">[\p{Punct}]<exception>:</exception></token>
            </pattern>
            <message>Пропущена запятая в сложном предложении: <suggestion><match no="1" include_skipped="all"/>, <match no="2" /> <match no="3" /></suggestion></message>
            <short>Пропущена запятая</short>
            <example>Как мышка бегает, так и кошка прыгает.</example>
            <example>Как мышка бегает, то так и кошка прыгает.</example>
            <example>Он написал запрос, как было указано на сайте, но на текущий момент так и не получил ответа.</example>
            <example>Те варяги назывались русью, как другие называются шведы, а иные норманны и англы, а ещё иные готландцы, — вот так и эти.</example>
            <example correction="Как мышка бегает, так и"><marker>Как мышка бегает так и</marker> кошка прыгает.</example>
        </rule>             
        <rulegroup  id="Kogda_to1" name="Знаки препинания в сложном предложении «Когда ... , то ему ...»">
            <rule>  <!-- Когда человек хочет что-то получить, то ему надо чем-то пожертвовать. -->
                <pattern>
                    <token postag="SENT_START"></token>
                    <token skip="-1">Когда</token>
                      <marker>
                        <token skip="1">то<exception scope="previous" >,</exception><exception scope="previous" regexp="yes">–|-</exception></token>
                        <token regexp="yes">ему|ей|им</token>
                      </marker>          
                </pattern>
                <message>Нужна запятая или тире: <suggestion>, \3 \4</suggestion> или <suggestion> – \3 \4</suggestion> </message>
                <short>Нужна запятая или тире</short>
                <example correction=", то ему| – то ему">Когда человек хочет что-то получить<marker> то ему</marker> надо чем-то пожертвовать.</example>
            </rule>
            <rule>  <!-- Когда человек хочет что-то получить, ему надо чем-то пожертвовать. -->
                <pattern>
                    <token postag="SENT_START"></token>
                    <token skip="-1">Когда</token>
                    <marker>
                        <token skip="-1" regexp="yes">ему|ей|им<exception scope="previous" >,</exception><exception scope="next"  regexp="yes">&pnct;</exception><exception scope="previous" regexp="yes">–|-</exception><exception scope="previous"  postag="VB:INF:.*" negate_pos="yes"  postag_regexp="yes"></exception></token>
                    </marker>
                    <token postag="VB:.*" postag_regexp="yes" ></token>        
                </pattern>
                <message>Нужна запятая или тире: <suggestion>, \3</suggestion> или <suggestion> – \3</suggestion> </message>
                <short>Нужна запятая или тире</short>
                <example>Когда вы находитесь на нашей земле, вы должны подчиняться им, даже если вы служите другим.</example>
                <example correction=", ему| – ему">Когда человек хочет что-то получить<marker> ему</marker> надо чем-то пожертвовать.</example>
            </rule>      
        </rulegroup>                       
        <rule default="on" id="Tire_and_Verbs" name="Пропущено тире между глаголами">
            <pattern>
                 <token postag="VB:Past:INTR:PFV:.*" postag_regexp="yes"><exception postag="VB:Past:INTR:PFV:.*" postag_regexp="yes" negate_pos="yes" /></token>
                 <token postag="VB:IMP:TRANS:IMPFV:Sin:P2" ><exception postag="VB:IMP:TRANS:IMPFV:Sin:P2"  negate_pos="yes"></exception></token>                
            </pattern>
            <message>Пропущено тире между глаголами: <suggestion>\1 – \2</suggestion></message>
            <short>Пропущено тире</short>
            <example>Если ты позвонил – говори.</example>
            <example>Осталось три дня.</example>
            <example correction="позвонил – говори">Если ты <marker>позвонил говори</marker>.</example>
        </rule>
        <rule id="ESLI_TO" name="Сложный союз «если... , то»">
            <antipattern>
                <token>Если</token>
                <token>то</token>
            </antipattern>
            <pattern>
                <token postag="SENT_START"></token>
                <token skip="-1">Если</token>
                <marker>                     
                    <token skip="1">то<exception scope="previous" postag="CONJ" ></exception><exception scope="next" >,</exception><exception scope="previous" regexp="yes">&defis_libo;|–|-|—|,|на</exception><exception scope="previous">бы</exception></token>
                </marker>
                <token />          
            </pattern>
            <message>Нужна запятая или тире: <suggestion>, \3</suggestion> или <suggestion> – \3</suggestion></message>
            <url>http://old-punctum.ru/punctum.php?sid=1191</url>
            <short>Нужна запятая или тире</short>
            <example>Если постучится кто то дверь не открывай, а зови на помощь. (Некорректный пример)</example> <!-- incorrect example, but it must detect with another rule -->
            <example>Если передумаешь - не тяни, а то я могу всё распродать</example>
            <example>Если уж на то пошло.</example>
	    <example>Если разговор слышал Матвей, то зачем ему сообщать об этом вам ― под каким бы то ни было соусом.</example>
            <example correction=", то| – то">Если ты позвонил<marker> то</marker> говори.</example>
        </rule>
        <rulegroup id="Nesmotrja_na_to_chto" name="Выражение «несмотря на то, что ...»" >
       <!-- До тех пор, пока, "лучше, чем", "хуже, чем", "несмотря на то, что" -->    
          <rule>
            <pattern>
                <token negate="yes" regexp="yes">&pnct;</token>
                <marker>
                    <token>несмотря</token>
                    <token>на</token>
                    <token>то</token>
                    <token>что</token>
                </marker>
            </pattern>           
            <message>Нужна запятая: <suggestion>\2 \3 \4, \5</suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_483</url>
            <short>Нужна запятая</short>
            <example>Мы принялись бегать по закрайку самого берега, и всё выходило отлично, несмотря на то что кое-где лед ломался и выступала вода.</example>
            <example correction="Несмотря на то, что"><marker>Несмотря на то что</marker> Ягозин был кровным детищем Петербурга.</example>
          </rule>
          <rule>
            <pattern>
                <token negate="yes" regexp="yes">&pnct;</token>
                <marker>
                    <token>до</token>
                    <token>тех</token>
                    <token>пор</token>
                    <token>пока</token>
                </marker>
            </pattern>           
            <message>Нужна запятая: <suggestion>\2 \3 \4, \5</suggestion></message>

            <short>Нужна запятая</short>
            <example>Я ворочался с боку на бок до тех пор, пока меня не осенила мысль.</example>
            <example correction="до тех пор, пока">Я ворочался с боку на бок <marker>до тех пор пока</marker> меня не осенила мысль.</example>
          </rule>
          <rule>
              <pattern>
                  <token regexp="yes">лучше|хуже</token>
                  <token>чем</token>
              </pattern>           
              <message>Нужна запятая: <suggestion>\1, \2</suggestion></message>
              <url>https://obrazovaka.ru/zapyataya/luchshe-chem.html</url>
              <short>Нужна запятая</short>
            <example correction="лучше, чем">Они <marker>лучше чем</marker> у тебя.</example>
          </rule>
        </rulegroup>
        <rulegroup id="Nesmotrja_na_to_chto2" name="Выражение «несмотря на то, что ..., ...»" default="on" > <!-- #1118 -->
          <rule>
            <pattern> 
                <token negate="yes" regexp="yes">&pnct;</token>
                <token>несмотря</token>
                <token>на</token>
                <token>то</token>
                <token>,</token>
                <token skip="-1">что<exception scope="next">,</exception></token>
                <marker>
                    <token postag="VB:.*" postag_regexp="yes" ><exception postag="VB:.*" postag_regexp="yes" negate_pos="yes"></exception><exception inflected="yes">быть</exception></token>
                    <token skip="-1"><exception scope="next">,</exception><exception scope="next">(</exception><exception>,</exception></token>
                    <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception scope="next">,</exception></token>
                    <token regexp="yes">[.!?]</token>
                </marker>
            </pattern>  <!-- TODO: need correct comma position or remove suggestion -->         
            <message>Нужна запятая до конца предложения: <suggestion><match no="7"  />, <match no="8" include_skipped="all" /> <match no="9" include_skipped="all" /><match no="10"  /></suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_483</url>
            <short>Нужна запятая</short>
            <example>Несмотря на то, что я поел, мне было голодно.</example>
            <example>Несмотря на то, что окружающие будут пытаться испортить вам настроение.</example>
            <example>Несмотря на то, что на момент написания диссертации поддерживался только самый простой вариант параллелизации (количество используемых вычислительных ядер определяет число независимых запусков оптимизатора, выполняемых одновременно) подобная совместимость с суперкомпьютерными кластерами оказалась удобной: на одном кластере можно запускать несколько разных задач оптимизации.</example>
            <example correction="поел, мне было голодно.">Несмотря на то, что я <marker>поел мне было голодно.</marker></example>
          </rule>
          <rule>   <!-- for    <example>Несмотря на то, что на момент написания диссертации поддерживался только самый простой вариант параллелизации (количество используемых вычислительных ядер определяет число независимых запусков оптимизатора, выполняемых одновременно) подобная совместимость с суперкомпьютерными кластерами оказалась удобной: на одном кластере можно запускать несколько разных задач оптимизации.</example> -->
            <pattern> 
                <token negate="yes" regexp="yes">&pnct;</token>
                <token>несмотря</token>
                <token>на</token>
                <token>то</token>
                <token>,</token>
                <token skip="-1">что<exception scope="next">,</exception></token>
                <marker>
                    <token postag="VB:.*" postag_regexp="yes" ><exception postag="VB:.*" postag_regexp="yes" negate_pos="yes"></exception><exception inflected="yes">быть</exception></token>
                    <token skip="-1"><exception>,</exception></token>
                    <token skip="-1">)<exception scope="next">,</exception><exception>,</exception></token>
                    <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception scope="next">,</exception>                    </token>
                    <token regexp="yes">[.!?]</token>
                </marker>
            </pattern>       
            <message>Нужна запятая до конца предложения.</message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_483</url>
            <short>Нужна запятая</short>
            <example>Несмотря на то, что я поел, мне было голодно.</example>
            <example>Несмотря на то, что окружающие будут пытаться испортить вам настроение.</example>      
            <example correction="">Несмотря на то, что я <marker>поел мне () было голодно.</marker></example>
          </rule>
        </rulegroup>                                         
        <rule default="on" id="ABREV_DOT" name="Точка после сокращений">
            <pattern case_sensitive="yes">
                <marker>
                    <token regexp="yes">тыс|зам|коп|руб|наб|нач|пер|шт|ед|экз|просп|пр|пос|кв|Тел|исп|Исп</token>
                </marker>
                <token negate="yes" regexp="yes">[./]</token>
            </pattern>
            <message>Точка должна стоять после сокращений: <suggestion>\1.</suggestion></message>
            <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%BA%D1%80%D0%B0%D1%89%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Точка после сокращений</short>
            <example>Стоимость работ составила 10 тыс. рублей.</example>
            <example correction="тыс.">Стоимость работ составила 10 <marker>тыс</marker> рублей.</example>
        </rule>
        <rulegroup id="Punct_eh_ti" name="Пунктуация «эх ты», «эй вы» ">
            <rule>
                <pattern>              
                    <token regexp="yes">эх|эй</token>
                    <token regexp="yes">ты|вы</token>
                    <token><exception regexp="yes">&pnct;</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1 \2, \3</suggestion></message>

                <short>Пропущена запятая</short>
                <example correction="Эх вы, коты"><marker>Эх вы коты</marker>!</example>
            </rule>
        </rulegroup>
        <rulegroup id="Privet_druzja" name="Пунктуация: «привет, друзья!»">
            <rule>
                <pattern>              
                    <token>привет</token>
                    <token>друзья</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2</suggestion></message>

                <short>Пропущена запятая</short>
                <example correction="Привет, друзья"><marker>Привет друзья</marker>!</example>
            </rule>
        </rulegroup>
        <rulegroup id="Kak_bi_to_ni_bilo" name="Устойчивое выражение: «как бы то ни было», ...">
            <rule>
                <pattern>              
                    <token>как</token>
                    <token>бы</token>
                    <token>то</token>
                    <token>не</token>
                    <token>было</token>
                </pattern>
                <message>Устойчивое выражение: <suggestion>\1 \2 \3 ни \5</suggestion></message>

                <short>Устойчивое выражение</short>
                <example correction="как бы то ни было"><marker>как бы то не было</marker></example>
            </rule>
            <rule>
                <pattern>              
                    <token>как</token>
                    <token>бы-то</token>
                    <token regexp="yes">н[еи]</token>
                    <token>было</token>
                </pattern>
                <message>Устойчивое выражение: <suggestion>\1 бы то ни \4</suggestion></message>
                <short>Устойчивое выражение</short>
                <example correction="как бы то ни было"><marker>как бы-то ни было</marker></example>
            </rule>
            <rule>
                <pattern>              
                    <token>как-бы</token>
                    <token>то</token>
                </pattern>
                <message>Устойчивое выражение: <suggestion>как бы \2</suggestion></message>
                <short>Устойчивое выражение</short>
                <example correction="как бы то"><marker>как-бы то</marker></example>
            </rule>            
        </rulegroup>
        
        <rulegroup id="POZHALUJSTA" name="«Пожалуйста» выделяется запятыми">
            <rule>
                <pattern>
                    <token negate="yes" regexp="yes">&pnct;|всегда|здравствуйте|здрасьте|подскажите|скажите<exception postag="SENT_START"></exception></token>
                    <token>пожалуйста</token>
                    <token regexp="yes">&pnct;</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2\3</suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Закройте дверь, <marker>пожалуйста.</marker></example>
                <example>Всегда <marker>пожалуйста!</marker></example>
                <example correction="дверь, пожалуйста.">Закройте <marker>дверь пожалуйста.</marker></example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <marker>
                        <token negate="yes" regexp="yes">&pnct;|всегда|здравствуйте|здрасьте|подскажите|скажите<exception postag="SENT_START"></exception></token>
                        <token>пожалуйста</token>
                    </marker>
                    <token negate="yes" regexp="yes">&pnct;</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2,</suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Виталий, <marker>пожалуйста</marker>, закройте дверь!</example>
                <example>Всегда <marker>пожалуйста.</marker></example>
                <example correction="Виталий, пожалуйста,"><marker>Виталий пожалуйста</marker> закройте дверь!</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <token min="0" max="1" regexp="yes">&pnct;</token>
                    <marker>
                        <token>Пожалуйста</token>
                        <token negate="yes" regexp="yes">&pnct;</token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example correction="Пожалуйста, закройте"><marker>Пожалуйста закройте</marker> дверь.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <token min="0" max="1" regexp="yes">&pnct;</token>
                    <marker>
                        <token>Привет</token>
                        <token negate="yes" regexp="yes">&pnct;<exception>и</exception><exception postag="PNN:.*:D|PREP|NN:.*:D" postag_regexp="yes"></exception></token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\3, \4</suggestion>.</message>
               
                <short>Пропущена запятая</short>
                <example correction="Привет, я"><marker>Привет я</marker> новенький.</example>
                <example>Привет и пока!</example>
                <example>Привет из Москвы!</example>
                <example>Привет всем!</example>
                <example>Привет зайцу.</example>
            </rule>
        </rulegroup>
        
        
        <rulegroup default="on" id="PO_MERE_TOGO_KAK" name="Запятые в оборотах: «по мере того как…», …">
<!--   («с того времени как…», «с той поры как…», «по мере того как…»)    -->
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>По</token>
                        <token>мере</token>
                        <token>того</token>
                        <token>,</token>
                        <token>как</token>
                    </marker>
                </pattern>
                <message>Возможно запятая не нужна: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://gramota.ru/class/coach/punct/45_183</url>
                <short>Возможно запятая не нужна</short>
                <example correction="По мере того как"><marker>По мере того, как</marker> цена товара снижается, а величина спроса растет при линейной функции спроса.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>С</token>
                        <token>того</token>
                        <token>времени</token>
                        <token>,</token>
                        <token>как</token>
                    </marker>
                </pattern>
                <message>Возможно запятая не нужна: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://gramota.ru/class/coach/punct/45_183</url>
                <short>Возможно запятая не нужна</short>
                <example correction="С того времени как"><marker>С того времени, как</marker> цена товара снижается, а величина спроса растет при линейной функции спроса.</example>
            </rule><rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>С</token>
                        <token>той</token>
                        <token>поры</token>
                        <token>,</token>
                        <token>как</token>
                    </marker>
                </pattern>
                <message>Возможно запятая не нужна: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://gramota.ru/class/coach/punct/45_183</url>
                <short>Возможно запятая не нужна</short>
                <example correction="С той поры как"><marker>С той поры, как</marker> цена товара снижается, а величина спроса растет при линейной функции спроса.</example>
            </rule>
            
        </rulegroup>
        
         <rulegroup default="on" id="TAKIM_KAK" name="Запятые при сравнительных оборотах: «таким как»">
 
            <rule>
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|к|а|но|да<exception postag="SENT_START"></exception></token>
                    <token>таким</token>
                    <token>как</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3</suggestion>.</message>
               
                <short>Пропущена запятая</short>
                <example correction="ремонт, таким как">Многим домам необходим капитальный <marker>ремонт таким как</marker> пятиэтажки.</example>
            </rule>
         </rulegroup>
          <rulegroup default="on" id="K_TAKIM_KAK" name="Запятые при сравнительных оборотах: «к таким как»">
 
            <rule>
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;<exception postag="SENT_START"></exception></token>
                    <token>к</token>
                    <token>таким</token>
                    <token>как</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3 \4</suggestion>.</message>
               
                <short>Пропущена запятая</short>
                <example correction="творчества, к таким как">Это относится ко многим видам <marker>творчества к таким как</marker> музыка, пение, танцы.</example>
            </rule>
         </rulegroup>
        <rulegroup default="on" id="KAK_PRAVILO" name="Вводное сочетание: «как обычно», «как всегда», ...">
            <!--Вводное сочетание как обычно, как всегда, как правило, как исключение, как сейчас, как нарочно
-->                        
            <rule>
                <pattern case_sensitive="no">
                    <marker>
                        <token negate="yes" regexp="yes">&pnct;|так|и|но|а|да<exception postag="SENT_START"></exception></token>
                        <token>как</token>
                        <token regexp="yes">обычно|всегда|правило|исключение|нарочно|сейчас</token>
                        <token skip= "1" negate="yes" regexp="yes">&pnct;<exception  postag_regexp="yes" postag="NN:.*"></exception><exception  scope="next" postag_regexp="yes" postag="NN:.*"></exception></token>
                    </marker>
                    <token></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example><marker>Мы, как правило, ходим</marker> ходим в походы летом.</example>
                <example correction="Мы, как правило, ходим"><marker>Мы как правило ходим</marker> в походы летом.</example>
                <example>Правило правого винта, известное также из курса физики как правило буравчика.</example>
                <example>Эта рекомендация известна как правило одного экрана.</example>
                <example>Так как сейчас он у меня указан некорректно.</example>
            </rule>
            
            
            <rule>
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|так|и|но|а|да<exception postag="SENT_START"></exception></token>
                    <token>как</token>
                    <token regexp="yes">обычно|всегда|правило|исключение|нарочно|сейчас</token>
                    <token regexp="yes">[:;,—–(-]</token>  <!-- , -->
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3\4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example correction="Мы, как правило,"><marker>Мы как правило,</marker> ходим в походы летом.</example>
            </rule>
            
            <rule>
                <antipattern>
                    <marker>
                        <token>как</token>
                        <token>сейчас</token>
                    </marker>
                    <token postag_regexp="yes" postag="VB:.*"></token>
                </antipattern>                
                <pattern case_sensitive="yes">
                    <token regexp="yes">[:;,—–(-]<exception postag="SENT_START"></exception><exception scope="previous">так</exception></token>  <!-- , -->
                    <marker>
                        <token>как</token>
                        <token regexp="yes">обычно|всегда|правило|исключение|нарочно|сейчас</token>
                    </marker>
                    <token negate="yes" regexp="yes">&pnct;<exception  postag_regexp="yes" postag="NN:.*"></exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3,</suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example correction="как правило,">Мы, <marker>как правило</marker> ходим в походы летом.</example>
                <example>Однако, как сейчас стало известно, в эту платформу войдет новейший мобильный чипсет AMD.</example>
                <example>Правило правого винта, известное также из курса физики как правило буравчика.</example>
            </rule>
            
            <rule>
                <pattern case_sensitive="yes">
                    <!--  removed как сейчас (#1127),  как обычно (#6439) -->
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>Как</token>
                        <token regexp="yes">всегда|правило|исключение|нарочно</token>
                        <token negate="yes" regexp="yes">&pnct;<exception postag="VB:.*" postag_regexp="yes"></exception></token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example><marker>Как правило,</marker> мы ходим в походы летом.</example>
                <example>Как правило может быть таким сложным?</example>
                <example>Как обычно Вы готовите переговоры?</example>
                <example correction="Как правило, мы"><marker>Как правило мы</marker> ходим в походы летом.</example>
            </rule>
        </rulegroup>
        <rulegroup id="KAK_I" name="После союза «как» следует «и»">
            <!--TODO: Detect 2 comma.-->
            <rule>
                <pattern case_sensitive="no">
                    <marker>
                        <token negate="yes" regexp="yes">&pnct;|так|же|равно|также|время<exception postag="SENT_START"></exception></token>
                        <token>как</token>
                        <token skip="-1">и<exception scope="next">так</exception></token>
                    </marker>
                    <token>.</token>
                </pattern>
                <message>Оборот &quot;как и&quot; выделяется запятыми: <suggestion>\1, \2 \3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D0%BE%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%BE</url>
                <short>Оборот &quot;как и&quot; выделяется запятыми</short>
                <example>Мы<marker>, как и</marker> наши товарищи, любим заниматься спортом.</example>
                <example>Они подготовили реферат <marker>как и</marker> на бумажном носителе, так и в электронном виде.</example>
                <example correction="Мы, как и"><marker>Мы как и</marker> наши товарищи любим заниматься спортом.</example>
            </rule>
            
        </rulegroup>
        <rulegroup default="on" id="A_NO_DA" name="Союзы: «а», «но»">
            <rule>
                <pattern case_sensitive="yes">
                    <marker>
                        <token regexp="yes">[А-ЯЁа-яё]*<exception regexp="yes">&pnct;|\|[+]|ну|/|Ну</exception><exception postag="SENT_START"></exception></token>
                        <token>а</token>
                    </marker>
                    <token><exception regexp="yes">&pnct;|\|[+]</exception><exception >=</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D0%BE%D1%87%D0%B8%D0%BD%D1%91%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Пропущена запятая</short>
                <example>И растёт ребёнок там не по дням, а по часам.</example>
                <example>Имеет кубическую гранецентрированную решётку типа NaCl, пространственная группа Fm3m, с периодом а = 0,4235 нм.</example>
                <example correction="дням, а">И растёт ребёнок там не по <marker>дням а</marker> по часам.</example>
            </rule>
         <!--  а + (что|точнее|то|следовательно|ну-ка|ну|например|наоборот|может|лучше|между|иначе|как|именно|значит|и|ещё|еще|всё-таки|все-таки|если|главное|впрочем|вернее|ведь|вдруг) -->
            <rule>
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;<exception postag="SENT_START"></exception></token>
                    <token>но</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D0%BE%D1%87%D0%B8%D0%BD%D1%91%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Пропущена запятая</short>
                <example>Она говорила мало, но толково.</example>
                <example correction="мало, но">Она говорила <marker>мало но</marker> толково.</example>
            </rule>
        </rulegroup>       
        <rulegroup default="on" id="CHTO_COMMA" name="Союз: «что»">
            <rule>
                <antipattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;<exception postag="SENT_START"></exception></token>
                    <token skip="-1">что</token>
                    <token>что</token>
                </antipattern>
                <antipattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;
                        <exception postag="SENT_START"></exception>
                    </token>
                    <token skip="-1">что<exception scope="next" regexp="yes" >&pnct;</exception>
                        <exception scope="next" regexp="yes">угодно|ли</exception>
                    </token>
                    <token postag="VB:Fut:.*:P3" postag_regexp="yes"></token>
                </antipattern>                     
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;<exception postag="SENT_START"></exception><exception postag_regexp="yes"  postag="CONJ|PARTICLE|PREP|ADV|VB:.*|PNN.*|UNKNOWN|ADJ:MPR:.*|ADJ:Sup:.*|DPT:.*"></exception></token>  <!-- ADJ:Short:.* -->
                    <token>что<exception scope="next" regexp="yes">&pnct;</exception><exception scope="next" regexp="yes">угодно|ли</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2</suggestion>.</message>
                
                <short>Пропущена запятая</short>
                <example>Известно, что на улице красивый вид.</example>
                <example>Слепой лошади что кивай, что подмигивай.</example>
                <example>Говорите что угодно.</example>
                <example>Не похоже, что погода сегодня улучшится.</example>
                <example>Ежели кто стоя на карауле что украдет, много или мало, оный имеет быть повешен.</example>
                <example correction="Известно, что"><marker>Известно что</marker> на улице красивый вид.</example>
                <example correction="известно, что">Хорошо <marker>известно что</marker> пауки не являются насекомыми.</example>
            </rule>
        </rulegroup>       
        <rulegroup id="i_and_i_and_i" name="Союзы: «и» + «и» + «и»" default="on">
            <rule>  <!--  add unification for noun - done. -->
                <pattern>
                    <token>и</token>
                    <token postag="PREP|ADJ:.*" postag_regexp="yes"></token>
                    
                    <unify negate="no">
                        <feature id="case"/>
                        
                        <token postag="NN:.*" postag_regexp="yes"></token> 
                        <unify-ignore>
                            <token>и</token>
                            <token postag="PREP|ADJ:.*" postag_regexp="yes"></token>
                        </unify-ignore>                
                        <token postag="NN:.*" postag_regexp="yes"></token> 
                        <unify-ignore>
                            <token>и</token>
                            <token postag="PREP|ADJ:.*" postag_regexp="yes"></token>
                        </unify-ignore>
                        <token postag="NN:.*" postag_regexp="yes"></token>
                    </unify>
                </pattern>
              <message>Пропущена запятая: <suggestion>\1 \2 \3, \4 \5 \6, \7 \8 \9</suggestion>.</message>
              <short>Пропущена запятая</short>
              <example>Было грустно и в воздухе, и на небе, и в вагоне.</example>
              <example correction="и в воздухе, и на небе, и в вагоне">Было грустно <marker>и в воздухе и на небе и в вагоне</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>и</token>
                    <unify negate="no">
                        <feature id="tense"/>
                        <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception scope="next">,</exception></token>
                        <unify-ignore>
                            <token>и</token>
                        </unify-ignore>
                        <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception scope="next">,</exception></token>
                        <unify-ignore>
                            <token>и</token>
                        </unify-ignore>
                        <token postag="VB:.*" postag_regexp="yes"></token>
                    </unify>
                </pattern>
              <message>Пропущена запятая: <suggestion><match no="1" /> <match no="2" include_skipped="all" />, <match no="3" /> <match no="4" include_skipped="all"/>, <match no="5" /> <match no="6"/></suggestion>.</message>
              <short>Пропущена запятая</short>
              <example>Он и бегал, и прыгал, и скакал в вагоне.</example>
              <example correction="и бегал, и прыгал, и скакал">Он <marker>и бегал и прыгал и скакал</marker>  в вагоне.</example>
            </rule>       
        </rulegroup>
        <rulegroup default="off" id="PUNKT_KOTORIJ1" name="Пунктуация перед союзами «который», ... (2)">
        <!-- TODO: Need improve -->    
            <rule>
                <antipattern>
                    <token postag_regexp="yes" postag="NN:.*"></token> 
                    <token regexp="yes" skip="-1">,|;</token>   
                    <token postag_regexp="yes" postag="NN:.*:.*:.*:Nom"></token>
                    <token postag="PREP"></token>
                    <token inflected="yes">который</token> 
                </antipattern> 
                <pattern>
                    <marker>
                     <unify negate="no">
                      <feature id="gender"/>
                      <feature id="number"/>
                        <token negate="yes" regexp="yes">&pnct;|[\p{Digit}]*|ну|большинство|меньшинство|часть|доля<exception postag="SENT_START"></exception><exception postag_regexp="yes" postag="CONJ|ADJ:.*|Num:.*|NumC:.*"></exception><exception>соответствии</exception></token>
                        <unify-ignore>
                            <token postag="PREP"><exception regexp="yes">из|над</exception></token>
                        </unify-ignore>
                        <token inflected="yes" skip="-1">который</token>
                     </unify> 
                    </marker>
                    <token postag="VB:.*|PT:.*" postag_regexp="yes"></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3</suggestion>.</message>
                <url>https://dic.academic.ru/dic.nsf/ogegova/90842</url>
                <short>Пропущена запятая</short>
                <example>Это тот город, в котором прошло детство.</example>
                <example>Канада сотрудничает с США на разных уровнях и для которых является важнейшим торговым партнером.</example>
                <example>Который час?</example>
                <example>Поиск турбазы, отдых в которой запомнится надолго.</example>
                <example>Парламент состоит из 577 депутатов, 555 из которых представляют метрополию.</example>
                <example>Трудовой договор — соглашение между работодателем и работником, в соответствии с которым работодатель обязуется предоставить работнику работу по обусловленной трудовой функции.</example>
                <example correction="город, в котором">Это тот <marker>город в котором</marker> прошло детство.</example>      
            </rule>
        </rulegroup>
        <rulegroup default="on" id="PUNKT_KOTORIJ" name="Пунктуация перед союзами «который», ...">     
            <rule>
             <antipattern>
                    <token postag_regexp="yes" postag="NN:.*"></token> 
                    <token regexp="yes" skip="-1">,|;|и</token>   
                    <token postag_regexp="yes" postag="NN:.*:.*:.*:Nom"></token>
                    <token inflected="yes">который</token>
                    <token min="0" max="1">не</token>
                    <token postag="VB:.*|PT:.*" postag_regexp="yes"></token> 
               </antipattern>
                <antipattern>
                    <token postag_regexp="yes" postag="NN:.*" skip="1"></token>   
                    <token postag_regexp="yes" postag="NN:.*"></token>
                    <token inflected="yes">который</token>
                    <token min="0" max="1">не</token>
                    <token postag="VB:.*|PT:.*" postag_regexp="yes"></token> 
               </antipattern>  
               <pattern case_sensitive="yes">
                   <or>
                     <token><exception postag="PREP|ADJ:.*" postag_regexp="yes"></exception><exception regexp="yes">соответствии|большинство|меньшинство|часть|доля</exception></token>
                     <token case_sensitive="no" regexp="yes">это|эта|эти|этот|тот</token>
                   </or>
                    <marker>
                    <unify negate="no">
                      <feature id="gender"/>
                      <feature id="number"/>
                        <token negate="yes" regexp="yes">&pnct;|[\p{Digit}]*|ну|Ну<exception postag="SENT_START"></exception><exception postag="PREP"></exception><exception postag_regexp="yes" postag="NN:.*:.*:.*:(D|T)|CONJ|ADJ:.*|Num:.*|NumC:.*"></exception></token>
                          <token inflected="yes">который<exception regexp="yes">которых|которого|которой</exception></token>
                    </unify>
                    </marker>
                    <token min="0" max="1">не</token>
                    <token postag="VB:.*|PT:.*" postag_regexp="yes"></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2, \3</suggestion>.</message>
                <url>https://dic.academic.ru/dic.nsf/ogegova/90842</url>
                <short>Пропущена запятая</short>
                <example>Это тот город, в котором прошло детство.</example>
                <example>Это те же ребята, которые играли в футбол.</example>
                <example>Ребёнок, родители которого играли в футбол, будет футболистом.</example>
                <example>Они совершили экскурсию в королевскую резиденцию — Букингемский дворец, часть помещений которого открыта для посетителей обычно один месяц в году.</example>
                <example>Который час?</example>
                <example>На территории распространения которого расположен город.</example>
                <example>Бухта Золотой Рог, на обоих берегах которой располагается Владивосток, является удобным местом.</example>
                <example correction="ребята, которые">Это те же <marker>ребята которые</marker> играли в хоккей.</example>
                <example correction="ребята, которые">Это те же <marker>ребята которые</marker> не играли в хоккей.</example>
                <example correction="программа, которая">Chess — это <marker>программа которая</marker> играла в шахматы.</example>
            </rule>

        </rulegroup>
        
        <rule id="Comma_before_kak" name="Оборот обстоятельства, присоединённый союзом «как»">
            <pattern>
                <token>,</token>
                <token>как</token>
                <token postag_regexp="yes"    postag="NN:.*:.*:.*:Nom"></token>
                <token regexp="yes">[.:;!?]</token>
            </pattern>
            <message>Запятая перед как не нужна: <suggestion> \2 \3\4</suggestion></message>
            <short>Запятая не нужна</short>
            <example correction=" как верёвка.">Извивалась<marker>, как верёвка.</marker></example>
            <example>Извивалась как верёвка.</example>
        </rule>
        
        <rule id="GDE_COMMA" name="Запятая перед союзом «где»">
            <pattern>
                <marker>
                    <token negate="yes">,<exception postag="SENT_START"/><exception postag="PARTICLE"/><exception regexp="yes">["«(-—–]</exception></token>
                    <token case_sensitive="yes" skip="1">где</token>
                </marker>
                <or>
                <token postag="NN:.*:.*:.*:Nom" postag_regexp="yes"></token>
                <token regexp="yes">это|эта|эти|этот|тот</token>
                </or>
            </pattern>
            <message>Пропущена запятая перед союзом: <suggestion>\1, \2</suggestion></message>
            <short>Пропущена запятая</short>
            <example correction="изображений, где">Одно из тех <marker>изображений где</marker> глаза специально нарисованы.</example>
            <example>Одно из тех изображений, где глаза специально нарисованы.</example>
            <example>Где это?</example>
            <example>А где мой чай?</example>
        </rule>
        <rulegroup id="da_and_da" name="Пунктуация при союзах: «да» + «да»">
            <rule>  <!--  да=и   -->
                <pattern>
                    <token>да</token>
                    <token skip="2" ><exception scope="next" regexp="yes">[,и]</exception></token>
                    <token>да<exception scope="previous" regexp="yes">[,и]</exception></token>
                    <token regexp="yes" negate="yes">,</token>
                </pattern>
              <message>Пропущена запятая: <suggestion><match no="1" include_skipped="all"/> <match no="2" include_skipped="all" />, <match no="3" include_skipped="all"/> <match no="4" include_skipped="all"/></suggestion>.</message>
              <short>Пропущена запятая</short>
              <example>Всё кругом белое да пушистое, да искристое.</example>
              <example correction="да пушистое, да искристое">Всё кругом белое <marker>да пушистое да искристое</marker>.</example>
              <example correction="да очень пушистое, да искристое">Всё кругом белое <marker>да очень пушистое да искристое</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup id="ni_and_ni_and_ni" name="Пунктуация: «ни» + «ни» + «ни»">
            <rule>
                <pattern>
                    <token>ни</token>
                    <token regexp="yes" negate="yes" min="1" max="2">,</token>
                    <token>ни<exception scope="previous" regexp="yes">&pnct;</exception></token>
                    <token regexp="yes" negate="yes" min="1" max="2">,</token>
                    <token>ни<exception scope="previous" regexp="yes">&pnct;</exception></token>
                    <token regexp="yes" negate="yes">,</token>
                </pattern>
              <message>Пропущена запятая: <suggestion><match no="1" include_skipped="all"/> <match no="2" include_skipped="all" />, <match no="3" include_skipped="all"/> <match no="4" include_skipped="all"/>, <match no="5" include_skipped="all"/> <match no="6" include_skipped="all"/></suggestion>.</message>
              <short>Пропущена запятая</short>
              <example>Не было ни бурных слов, ни пылких признаний, ни клятв.</example>
              <example>ни дать ни взять; ни пава ни ворона</example>
              <example correction="ни бурных слов, ни пылких признаний, ни клятв">Не было <marker>ни бурных слов ни пылких признаний ни клятв</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup id="libo_and_libo" name="Пунктуация при союзах: «либо» + «либо»">
            <rule>
                <pattern>
                    <token>либо</token>
                    <token  skip="1" ></token>
                    <token>либо<exception scope="previous" regexp="yes">&pnct;</exception></token>
                    <token regexp="yes" negate="yes" >,</token>
                </pattern>
              <message>Пропущена запятая: <suggestion><match no="1" include_skipped="all"/> <match no="2" include_skipped="all" />, <match no="3" include_skipped="all"/> <match no="4" include_skipped="all"/></suggestion>.</message>
              <short>Пропущена запятая</short>
              <example>Весь день идет либо снег, либо дождь со снегом.</example>
              <example correction="либо мокрый снег, либо дождь">Весь день идёт <marker>либо мокрый снег либо дождь</marker> со снегом.</example>
              <example correction="либо снег, либо дождь">Весь день идёт <marker>либо снег либо дождь</marker> со снегом.</example>
            </rule>
        </rulegroup>
        <rulegroup id="ili_and_ili" name="Пунктуация при союзах: «или» + «или»">
            <rule>
                <pattern>
                    <token>или</token>
                    <token regexp="yes" negate="yes" min="1" max="2">,<exception regexp="yes">&pnct;</exception></token>
                    <token>или<exception scope="previous" regexp="yes">&pnct;</exception></token>
                    <token regexp="yes" negate="yes">,</token>
                </pattern>
              <message>Пропущена запятая: <suggestion><match no="1" include_skipped="all"/> <match no="2" include_skipped="all" />, <match no="3" include_skipped="all"/> <match no="4" include_skipped="all"/></suggestion>.</message>
              <short>Пропущена запятая</short>
              <example>Это может быть оружие ближнего боя (меч или копьё) или оружие дальнего боя (дротик или лук).</example>
	      <example>Он готов был поверить, что приехал сюда не вовремя — или слишком поздно, или рано.</example>	      
              <example correction="или слишком поздно, или рано">Он готов был поверить, что приехал сюда не вовремя — <marker>или слишком поздно или рано</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup id="to_and_to" name="Пунктуация при союзах: «то» + «то»">
            <rule>
                <pattern>
                        <token>то</token>
                        <token skip="2"></token>
                        <token>то<exception scope="previous" regexp="yes">а|не|и|[,]</exception></token>
                        <token regexp="yes" negate="yes">,</token>
                </pattern>
              <message>Пропущена запятая: <suggestion><match no="1" include_skipped="all"/> <match no="2" include_skipped="all" />, <match no="3" include_skipped="all"/> <match no="4" include_skipped="all"/></suggestion>.</message>
              <short>Пропущена запятая</short>
              <example>Они лишь подсвечивали то стены, то сталагмит.</example>
              <example>И то и то правда.</example>
              <example>Дамочка не то босая, не то в каких-то прозрачных... туфлях.</example>
              <example>Дамочка не то босая не то в каких-то прозрачных... туфлях. (Некорректный пример)</example> <!--  incorrect example, but it must triggered with another rule -->
              <example correction="то стены зала, то сталагмит">Они лишь подсвечивали <marker>то стены зала то сталагмит</marker>.</example>
              <example correction="то стены пещерного зала, то наиболее">Лампы лишь подсвечивали <marker>то стены пещерного зала то наиболее</marker> красивый сталагмит.</example>
            </rule>
            <rule>
                <pattern>
                        <token>не</token>
                        <token>то</token>
                        <token regexp="yes" negate="yes" >,</token>
                        <token>не</token>
                        <token>то</token>
                        <token regexp="yes" negate="yes">,</token>
                </pattern>
              <message>Пропущена запятая: <suggestion><match no="1" /> <match no="2" include_skipped="all"/> <match no="3" include_skipped="all" />, <match no="4" /> <match no="5" include_skipped="all"/> <match no="6" include_skipped="all"/></suggestion>.</message>
              <short>Пропущена запятая</short>
              <example>Они лишь подсвечивали то стены, то сталагмит.</example>
              <example>Дамочка не то босая, не то в каких-то прозрачных... туфлях.</example>     
              <example correction="не то босая, не то в">Дамочка <marker>не то босая не то в</marker> каких-то прозрачных... туфлях.</example>
            </rule>        
        </rulegroup>
      
        <rulegroup default="on" id="CHAS_PIK" name="Правописание: «час пик»">
            <rule>
                <pattern case_sensitive="yes">
                    <token>час-пик</token>       
                </pattern>
                <message>Дефис не нужен: <suggestion>час пик</suggestion>.</message>
            
                <short>Дефис не нужен</short>
                <example>час пик</example>
                <example correction="час пик"><marker>час-пик</marker></example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="IS_POD" name="Правописание сложного предлога «из-под»">
            <rule> <!-- Предлог из-под всегда употребляется с родительным падежом -->
                <pattern case_sensitive="yes">
                  <marker>
                    <token>из</token>
                    <token>под</token>
                  </marker>
                    <token  postag_regexp="yes" postag="NN:.*:.*:.*:R|ADJ:.*:.*:R"></token>       
                </pattern>
                <message>Предлог пишется через дефис: <suggestion>\1-\2</suggestion>.</message>
                <url>http://kak-pishetsa.ru/kak-pravilno-pishetsya-iz-pod/</url>
                <short>Дефис</short>
                <example>Кот вылез из-под стола.</example>
                <example correction="из-под">Кот вылез <marker>из под</marker> стола.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="PO_NAD" name="Правописание сложного предлога «по-над»">
            <rule>
                <pattern case_sensitive="yes">
                  <marker>
                    <token>по</token>
                    <token>над</token>
                  </marker>
                    <token  postag_regexp="yes" postag="NN:.*:.*:.*:T|ADJ:.*:.*:T"></token>       
                </pattern>
                <message>Предлог пишется через дефис: <suggestion>\1-\2</suggestion>.</message>
                <short>Дефис</short>
                <example>Кот крался по-над стенкой.</example>
                <example correction="по-над">Кот крался <marker>по над</marker> стенкой.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="Po-bystromu" name="Правописание наречия «по-быстрому»">
            <rule> <!-- " -->
                <pattern case_sensitive="yes">
                  <marker>
                    <token>по</token>
                    <token regexp="yes">быстрому|новому</token>
                  </marker>
          <!--    <token><exception  postag_regexp="yes" postag="NN:.*:.*:.*:D|ADJ:.*:.*:D"></exception></token>     -->
                    <token>.</token>                
                </pattern>
                <message>Наречие пишется через дефис: <suggestion>\1-\2</suggestion>.</message>
             
                <short>Дефис</short>
                <example>Мы справились по-быстрому.</example>
                <example>Мы пошли по быстрому маршруту.</example>
                <example correction="по-быстрому">Мы справились <marker>по быстрому</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="VVODNOE_SLOVO" name="Вводные слова: «по-видимому», ...">
            <rule>
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|как|который|которого|которому|
                        котором|которая|которой|которую|которые|которых|
                    которыми|которое|которым<exception postag="SENT_START"></exception></token>
                    <token regexp="yes">по-видимому|по-моему|по-твоему|впрочем</token>
                    <token negate="yes">,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2, \3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Это показалось ему, по-видимому, странным.</example>
                <example>Пахло странно, а впрочем, скорее приятно.</example>
                <example correction="ему, по-видимому, странным">Это показалось <marker>ему по-видимому странным</marker>.</example>
            </rule>
            
            <rule>
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|как|который|которого|которому|
                        котором|которая|которой|которую|которые|которых|
                    которыми|которое|которым<exception postag="SENT_START"></exception></token>
                    <token regexp="yes">по-видимому|по-моему|по-твоему|впрочем</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2\3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example correction="ему, по-видимому,">Это показалось <marker>ему по-видимому,</marker> странным.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token>,<exception postag="SENT_START"></exception></token>
                    <marker>
                        <token regexp="yes">по-видимому|по-моему|по-твоему|впрочем</token>
                    </marker>
                    <token negate="yes" regexp="yes">&pnct;</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2,</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example correction="по-видимому,">Это показалось ему, <marker>по-видимому</marker> странным.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token regexp="yes">По-видимому|По-моему|По-твоему|Впрочем|Ох|Ах</token>
                        <token negate="yes" regexp="yes">&pnct;</token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2, \3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>По-видимому, это странное явление.</example>
                <example correction="По-видимому, это"><marker>По-видимому это</marker> странное явление.</example>
            </rule>
            <rule>
                <!-- Вводные слова: итак, следовательно, во-первых, наконец, между прочим, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;<exception postag="SENT_START"></exception><exception regexp="yes">[аА]</exception></token>
                    <token regexp="yes">итак|следовательно|во-первых|во-вторых|в-третьих|в-четвертых|в-пятых</token>
                    <token negate="yes" regexp="yes">,|далее|[»]</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2, \3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, во-первых, представляет огромную научную ценность.</example>
                <example>Вводное слово «во-вторых».</example>
                <example>Эта работа была выполнена полностью, <marker>а следовательно,</marker> должна быть рассмотрена в первую очередь.</example>
                <example correction="работа, во-первых, представляет">Эта <marker>работа во-первых представляет</marker> огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова: итак, следовательно, во-первых, наконец, между прочим, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|А|и|но<exception postag="SENT_START"></exception></token>
                    <token regexp="yes">итак|следовательно|во-первых|во-вторых|в-третьих|в-четвертых|в-пятых</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2\3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа была выполнена полностью, <marker>а следовательно,</marker> должна быть рассмотрена в первую очередь.</example>
                <example correction="работа, во-первых,">Эта <marker>работа во-первых,</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token>,<exception postag="SENT_START"></exception></token>
                    <marker>
                        <token regexp="yes">итак|следовательно|во-первых|во-вторых|в-третьих|в-четвертых|в-пятых</token>
                    </marker>
                    <token negate="yes" regexp="yes">&pnct;</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2,</suggestion>.</message>
                
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example correction="во-первых,">Эта работа, <marker>во-первых</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token regexp="yes">Итак|Следовательно|Во-первых|Во-вторых|В-третьих|В-четвертых|В-пятых|Например</token>   <!-- + например #3205 -->
                        <token negate="yes" regexp="yes">&pnct;</token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2, \3</suggestion>.</message>
                
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Во-первых, эта работа представляет огромную научную ценность.</example>
                <example correction="Во-первых, эта"><marker>Во-первых эта</marker> работа представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова:   видишь (ли), понимаешь (ли), ...-->
                <pattern>
                    <token negate="yes" regexp="yes">&pnct;|вот<exception postag="SENT_START"></exception></token>
                    <token regexp="yes">видишь|понимаешь</token>
                    <token>ли</token>
                    <token negate="yes">,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                
                <example>Эта работа, видишь ли, представляет огромную научную ценность.</example>
                <example correction="работа, видишь ли, представляет">Эта <marker>работа видишь ли представляет</marker> огромную научную ценность.</example>
            </rule>
            
            <rule>
                <!-- Вводные слова:   видишь (ли), понимаешь (ли), ...-->
                <pattern>
                    <token negate="yes" regexp="yes">&pnct;|вот<exception postag="SENT_START"></exception></token>
                    <token regexp="yes">видишь|понимаешь</token>
                    <token>ли</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3\4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example correction="работа, видишь ли,">Эта <marker>работа видишь ли,</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <pattern>
                    <token>,<exception postag="SENT_START"></exception></token>
                    <marker>
                        <token regexp="yes">видишь|понимаешь</token>
                        <token>ли</token>
                    </marker>
                    <token negate="yes" regexp="yes">&pnct;</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3,</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example correction="видишь ли,">Эта работа, <marker>видишь ли</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token regexp="yes">Видишь|Понимаешь</token>
                        <token>ли</token>
                        <token negate="yes" regexp="yes">[.,]</token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Видишь ли, эта работа представляет огромную научную ценность.</example>
                <example correction="Видишь ли, эта"><marker>Видишь ли эта</marker> работа представляет огромную научную ценность.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="KAK_VVODNOE" name="Слова, которые могут выступать в роли вводных: «к счастью», ..." tags="picky">
            <rule>
                <!--Вводные слова: к счастью, к несчастью, к радости, к ужасу, к сожалению, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но<exception postag="SENT_START"></exception></token>
                    <token>к</token>
                    <token regexp="yes">счастью|несчастью|радости|ужасу|сожалению</token>
                    <token negate="yes">,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Мы, к сожалению, не успели на поезд.</example>
                <example correction="Мы, к сожалению, не"><marker>Мы к сожалению не</marker> успели на поезд.</example>
            </rule>
            
            <rule>
                <!--Вводные слова: к счастью, к несчастью, к радости, к ужасу, к сожалению, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но<exception postag="SENT_START"></exception></token>
                    <token>к</token>
                    <token regexp="yes">счастью|несчастью|радости|ужасу|сожалению</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3\4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Мы, к сожалению, не успели на поезд.</example>
                <example correction="Мы, к сожалению,"><marker>Мы к сожалению,</marker> не успели на поезд.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token>,<exception postag="SENT_START"></exception></token>
                    <marker>
                        <token>к</token>
                        <token regexp="yes">счастью|несчастью|радости|ужасу|сожалению</token>
                    </marker>
                    <token negate="yes" regexp="yes">&pnct;</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3,</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Мы, <marker>к сожалению,</marker> не успели на поезд.</example>
                <example correction="к сожалению,">Мы, <marker>к сожалению</marker> не успели на поезд.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>К</token>
                        <token regexp="yes">счастью|несчастью|радости|ужасу|сожалению</token>
                        <token negate="yes" regexp="yes">&pnct;</token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>К сожалению, мы не успели на поезд.</example>
                <example correction="К сожалению, мы"><marker>К сожалению мы</marker> не успели на поезд.</example>
            </rule>
            
            <rule>
                <!-- Вводные слова: конечно, несомненно, вероятно, может быть, кажется, однако ...-->
                <antipattern>
                    <token><exception regexp="yes">&pnct;|наиболее|наименее|более|менее|очень|а|и|но|что|не</exception><exception postag="SENT_START" ></exception></token>
                    <token regexp="yes">конечно|несомненно|вероятно|кажется|наверно|наверное</token>   <!-- temp remove однако -->                                    
                    <token postag="ADV" skip="-1"><exception negate_pos="yes" postag="ADV" /><exception scope="next" postag_regexp="yes" postag="VB:.*" /><exception regexp="yes">же|ж|,</exception></token>
                    <token regexp="yes" >&pnct;</token>  
                </antipattern>
                <pattern case_sensitive="yes">
                    <token><exception regexp="yes">&pnct;|наиболее|наименее|более|менее|очень|а|и|но|что|не</exception><exception postag="SENT_START" ></exception></token>
                    <token regexp="yes">конечно|несомненно|вероятно|кажется|наверно|наверное</token>   <!-- temp remove однако -->                                    
                    <token postag_regexp="yes" postag="VB:.*|ADV"><exception negate_pos="yes" postag_regexp="yes" postag="VB:.*|ADV" /><exception regexp="yes">же|ж|,</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2, \3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, несомненно, представляет огромную научную ценность.</example>
                <example>Мне кажется, твой ответ правилен.</example>
                <example>Звук кажется выше на октаву.</example>
                <example>Кот кажется очень довольным.</example>
                <example>Я поеду в город, однако если будут пробки, то я заночую в мотеле.</example>
                <example correction="Она, наверно, по-прежнему"><marker>Она наверно по-прежнему</marker> пьёт утром кофе с печеньем.</example>
                <example correction="Жизнь, кажется, ещё"><marker>Жизнь кажется ещё</marker> не начиналась.</example>
                <example correction="работа, несомненно, представляет">Эта <marker>работа несомненно представляет</marker> огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова: конечно, несомненно, вероятно, может быть, кажется, однако, наверное, наверно   ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|наиболее|наименее|более|менее|очень|а|и|но|что|как<exception postag="SENT_START|PNN:.*" postag_regexp="yes"></exception></token>
                    <token regexp="yes">конечно|несомненно|вероятно|кажется|наверно|наверное</token>  <!-- temp remove однако (Вводное слово «однако» не может стоять в начале предложения, соединять однородные члены и части сложного предложения.)--> 
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2\3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, несомненно, представляет огромную научную ценность.</example>
                <example>Мне кажется, твой ответ правилен.</example>
                <example>Я поеду в город, однако если будут пробки, то я заночую в мотеле.</example>
                <example correction="работа, несомненно,">Эта <marker>работа несомненно,</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token>,<exception postag="SENT_START"></exception></token>
                    <marker>
                        <token regexp="yes">конечно|несомненно|вероятно|кажется|наверно|наверное</token>  <!-- temp remove однако --> 
                    </marker>
                    <token negate="yes" regexp="yes" skip="-1"><exception regexp= "yes" >если|же|ж</exception><exception scope="next" postag_regexp="yes" postag="VB:.*"></exception>&pnct;</token>
                    <token regexp="yes">[.,:;!?]</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2,</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, <marker>конечно,</marker> представляет огромную научную ценность.</example>
                <example>Я поеду в город, однако если будут пробки, то я заночую в мотеле.</example>
                <!--  todo: "однако если" не требует запятой
                  перед "если", если конструкция с "если" содержит "то"  -->
                <example>Они умолкли, однако не успокоились.</example>
                <example>Перестрелка затихла, однако ядра и бомбы продолжали летать сюда, как и отсюда.</example>          
                <example correction="конечно,">Эта работа, <marker>конечно</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <!--  Слово "однако" в начале предложения не является вводным всегда, поэтому исключено из списка -->
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token regexp="yes">Конечно|Несомненно|Вероятно|Кажется|Наверное|Наверно</token>
                        <token negate="yes" regexp="yes">&pnct;|же</token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2, \3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Несомненно, эта работа представляет огромную научную ценность.</example>
                <example correction="Несомненно, эта"><marker>Несомненно эта</marker> работа представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <!--  Может быть -->
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>Может</token>
                        <token>быть</token>
                        <token negate="yes" regexp="yes">&pnct;</token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3, \4</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?id=58_417&amp;layout=item</url>
                <short>Пропущена запятая</short>
                <example>Может быть, я выйду на прогулку.</example>
                <example correction="Может быть, я"><marker>Может быть я</marker> выйду на прогулку.</example>
            </rule>  
            <!--  "Прежде всего" не всегда будет вводным словосочетанием  http://new.gramota.ru/spravka/punctum?layout=item&id=58_627 -->
            <rule>
                <!-- Вводные слова:   одним словом, вообще, иначе говоря, так сказать, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но<exception postag="SENT_START"></exception></token>
                    <token>одним</token>
                    <token>словом</token>
                    <token negate="yes">,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3,</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, одним словом, представляет огромную научную ценность.</example>
                <example correction="работа, одним словом,">Эта <marker>работа одним словом представляет</marker> огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова:   одним словом, вообще, иначе говоря, так сказать, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но<exception postag="SENT_START"></exception></token>
                    <token>одним</token>
                    <token>словом</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3\4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, одним словом, представляет огромную научную ценность.</example>
                <example correction="работа, одним словом,">Эта <marker>работа одним словом,</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова:   по правде, ...-->
                <pattern case_sensitive="no">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но|сказать|совсем|говорить|говоря<exception postag="SENT_START"></exception><exception postag="VB:.*" postag_regexp="yes"></exception></token>
                    <token>по</token>
                    <token>правде</token>
                    <token negate="yes">,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3,</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, по правде, представляет огромную научную ценность.</example>
                <example correction="работа, по правде,">Эта <marker>работа по правде представляет</marker> огромную научную ценность.</example>
            </rule>
            <rule>
                     <!-- Вводные слова:   по правде, ...-->
                <pattern case_sensitive="no">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но|сказать|совсем|говорить|говоря<exception postag="SENT_START"></exception><exception postag="VB:.*" postag_regexp="yes"></exception></token>
                    <token>по</token>
                    <token>правде</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3\4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, по правде, представляет огромную научную ценность.</example>
                <example correction="работа, по правде,">Эта <marker>работа по правде,</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова:   одним словом, вообще, иначе говоря, так сказать, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но<exception postag="SENT_START"></exception></token>
                    <token>иначе</token>
                    <token>говоря</token>
                    <token negate="yes">,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3,</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, иначе говоря, представляет огромную научную ценность.</example>
                <example correction="работа, иначе говоря,">Эта <marker>работа иначе говоря представляет</marker> огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова:   одним словом, вообще, иначе говоря, так сказать, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но<exception postag="SENT_START"></exception></token>
                    <token>иначе</token>
                    <token>говоря</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3\4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, иначе говоря, представляет огромную научную ценность.</example>
                <example correction="работа, иначе говоря,">Эта <marker>работа иначе говоря,</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова:   одним словом, вообще, иначе говоря, так сказать, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но|мог|можно|могла|могли|могло<exception postag="SENT_START"></exception></token>
                    <token regexp="yes">так|смешно</token>
                    <token>сказать</token>
                    <token negate="yes" regexp="yes">[,.]</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, так сказать, представляет огромную научную ценность.</example>
                <example correction="работа, так сказать, представляет">Эта <marker>работа так сказать представляет</marker> огромную научную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова:   одним словом, вообще, иначе говоря, так сказать, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но|мог|можно|могла|могли|могло<exception postag="SENT_START"></exception></token>
                    <token regexp="yes">так|смешно</token>
                    <token>сказать</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3\4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, так сказать, представляет огромную научную ценность.</example>
                <example correction="работа, так сказать,">Эта <marker>работа так сказать,</marker> представляет огромную научную ценность.</example>
            </rule>
            
            
            
            <rule>
                <!-- Вводные слова:   не в обиду будет сказано, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но<exception postag="SENT_START"></exception></token>
                    <token>не</token>
                    <token>в</token>
                    <token>обиду</token>
                    <token>будет</token>                   
                    <token>сказано</token>
                    <token negate="yes">,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3 \4 \5 \6, \7</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Этот метод, не в обиду будет сказано, представляет сомнительную ценность.</example>
                <example correction="метод, не в обиду будет сказано, представляет">Этот <marker>метод не в обиду будет сказано представляет</marker> сомнительную ценность.</example>
            </rule>
            <rule>
                <!-- Вводные слова:   не в обиду будет сказано, ...-->
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но<exception postag="SENT_START"></exception></token>
                    <token>не</token>
                    <token>в</token>
                    <token>обиду</token>
                    <token>будет</token>                   
                    <token>сказано</token>
                    <token>,</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3 \4 \5 \6\7</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Этот метод, не в обиду будет сказано, представляет сомнительную ценность.</example>
                <example correction="метод, не в обиду будет сказано,">Этот <marker>метод не в обиду будет сказано,</marker> представляет сомнительную ценность.</example>
            </rule>
            
            
            <rule>
                <pattern case_sensitive="yes">
                    <token>,<exception postag="SENT_START"></exception></token>
                    <marker>
                        <token>одним</token>
                        <token>словом</token>
                    </marker>
                    <token negate="yes" regexp="yes">&pnct;</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3,</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Эта работа, <marker>одним словом,</marker> представляет огромную научную ценность.</example>
                <example correction="одним словом,">Эта работа, <marker>одним словом</marker> представляет огромную научную ценность.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>Одним</token>
                        <token>словом</token>
                        <token negate="yes" regexp="yes">&pnct;</token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Пропущена запятая</short>
                <example>Одним словом, эта работа представляет огромную научную ценность.</example>
                <example correction="Одним словом, эта"><marker>Одним словом эта</marker> работа представляет огромную научную ценность.</example>
            </rule>
            
             <rule>
                <!--  Слово "однако" в начале предложения всегда не является вводным -->
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>Однако</token>
                        <token>,</token>
                    </marker>
                    <token><exception regexp="yes">&start_vvodnoe;</exception></token>
                </pattern>
                <message>Слово <suggestion>\2</suggestion> в начале предложения никогда не может являться вводным. Может выделяться запятой или восклицательным знаком, если выступает в роли междометия.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Лишняя запятая</short>
                <example>Однако эта работа представляет огромную научную ценность.</example>
                <example correction="Однако"><marker>Однако,</marker> эта работа представляет огромную научную ценность.</example>
            </rule>
        </rulegroup>
        
        <rulegroup id="skoree_vsego" name="Словосочетания, которые могут выступать в роли вводных: «скорее всего»" default="on" tags="picky" >  <!--default="temp_off"  -->
            <rule>
                <!-- Вводные слова:   скорее всего -->
                <pattern case_sensitive="no">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но|сказать|совсем|говорить|говоря<exception postag="SENT_START"></exception><exception postag="VB:.*" postag_regexp="yes"></exception></token>
                    <token>скорее</token>
                    <token>всего</token>
                    <token><exception regexp="yes">&pnct;</exception></token>
                </pattern>
                <message>Словосочетание обычно является вводным, и только в этом контексте выделяется запятыми: <suggestion>\1, \2 \3,</suggestion>. Если употребляется в роли членов предложения (в значении «быстрее всего»), то запятая не нужна.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_672</url>
                <short>Пропущена запятая, проверьте</short>
                <example>Эта работа, скорее всего, представляет огромную научную ценность.</example>
                <example correction="работа, скорее всего,">Эта <marker>работа скорее всего представляет</marker> огромную научную ценность.</example>
            </rule>
            <rule>
                     <!-- Вводные слова:   скорее всего -->
                <pattern case_sensitive="no">
                    <token negate="yes" regexp="yes">&pnct;|а|и|но|сказать|совсем|говорить|говоря<exception postag="SENT_START"></exception><exception postag="VB:.*" postag_regexp="yes"></exception></token>
                    <token>скорее</token>
                    <token>всего</token>
                    <token>,</token>
                </pattern>
                <message>Словосочетание обычно является вводным, и только в этом контексте выделяется запятыми: <suggestion>\1, \2 \3\4</suggestion>. Если употребляется в роли членов предложения (в значении «быстрее всего»), то запятая не нужна.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_672</url>
                <short>Пропущена запятая, проверьте</short>
                <example>Эта работа, скорее всего, представляет огромную научную ценность.</example>
                <example correction="работа, скорее всего,">Эта <marker>работа скорее всего,</marker> представляет огромную научную ценность.</example>
            </rule>
        </rulegroup>
        
       <rulegroup default="on" id="NO_KAK_VVODNOE1" name="Слово «однако» в роли союза «но»"  tags="picky">  <!-- #1096, #1071 -->
            <rule>
                   <!--  Слово "однако" в роли союза "но" -->
                <pattern case_sensitive="no">
                    <token postag="VB:.*|PT_Short:.*" postag_regexp="yes" skip="-1">
                        <exception postag="VB:.*|PT_Short:.*" postag_regexp="yes" negate_pos="yes" ></exception>
                        <exception regexp="yes" inflected="yes">оказаться|установить|есть|следовать|признавать|признаваться|выяснять|выясняться|выясниться</exception> <!-- removed существовать -->
                    </token>
                    <token>,<exception scope="previous" regexp="yes">&start_vvodnoe;</exception></token>
                    <marker>
                        <token>однако</token>
                        <token spacebefore="no">,<exception scope="next" regexp="yes">а|что</exception></token>
                    </marker>
                    <token skip="-1"><exception regexp="yes">&start_vvodnoe;</exception></token>
                    <token postag="VB:.*|PT_Short:.*" postag_regexp="yes" skip="-1"><exception postag="VB:.*|PT_Short:.*" postag_regexp="yes" negate_pos="yes" ></exception></token>
                    <token regexp="yes">[,.;?!]<exception scope="next">а</exception></token>
                </pattern>
                <message>Вероятно, слово <suggestion>\3</suggestion> выступает в роли союза «но», не является вводным, и запятая после него не нужна.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Проверьте запятую</short>
                <example>Такое решение было получено, 
                    однако после реализации появилась его плохая численная устойчивость, поэтому оно не используется.</example>
                <example correction="однако">Такое решение было получено, <marker>однако,</marker> после реализации появилась его плохая численная устойчивость, поэтому оно не используется.</example>
            </rule>
        </rulegroup>
        <rule  id="Comma_mol" name="Запятая при междометии" >
                <pattern>   <!-- TODO -->           
                    <marker>
                        <token>
                            <exception postag="PREP"></exception>
                            <exception regexp="yes">&pnct;|что</exception>
                        </token>
                        <token>мол</token>
                         <token>
                            <exception regexp="yes">&pnct;</exception>
                        </token>
                    </marker>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2, \3</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_421</url>
                <short>Пропущена запятая</short>
                <example>Я, мол, намерен обедать.</example>
                <example>Он пошёл на мол ловить рыбу.</example>
                <example correction="Я, мол, намерен"><marker>Я мол намерен</marker> обедать.</example>
        </rule>
        
        <rulegroup default="on" id="Oborot_ne_kto_inoj_kak" name="Запятая в сравнительных оборотах">
            <!--   Запятая ставится перед как в сравнительных оборотах "не кто иной, как" и "не что иное, как"
            -->

            <rule>
                <pattern case_sensitive="no">
                    <token>не</token>
                    <token regexp="yes">[кч]то</token>
                    <token regexp="yes">ино[йе]</token>
                    <token>как</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1 \2 \3, \4</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BF%D1%8F%D1%82%D0%B0%D1%8F</url>
                <short>Пропущена запятая</short>
                <example>Был это не кто иной, как наш мастер.</example>
                <example correction="не кто иной, как">Был это <marker>не кто иной как</marker> наш мастер.</example>
            </rule>
        </rulegroup>
  
        <rulegroup default="off" id="PREDLOGI_KROME" name="Дополнения, вводимые предлогами: «кроме», ...">
            <!--Дополнения, вводимые предлогами: кроме, помимо, вместо, сверх, за исключением
            -->
            <!--TODO: Detect 2 comma.-->
            <rule>
                <pattern> <!--  remove case sensitive -->
                  <marker> 
                    <token negate="yes" regexp="yes">&pnct;|бы|возникши(.*)|но|однако|только|а|что<exception postag="SENT_START"></exception><exception postag_regexp="yes"  postag="VB:.*|NN:.*:Nom"></exception></token>
                    <token regexp="yes">кроме|помимо|вместо</token>
                  </marker>
                  <token><exception inflected="yes" regexp="yes" >аналогичный|типовой|похожий|нетиповой|непохожий|одинаковый|различный</exception></token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BF%D1%8F%D1%82%D0%B0%D1%8F</url>
                <short>Пропущена запятая</short>
                <example>Около костра, кроме Ивана, грелось ещё пять человек.</example>
                <example>Он ел вместо груш яблоки.</example>
                <example>Возможно, нужна буква из кириллицы вместо аналогичной по начертанию из латинского алфавита.</example>
                <example>Но вместо нужной конструкции привезли типовую.</example>
                <example>Однако вместо нужной конструкции привезли типовую.</example>
                <example>А вместо нужной конструкции привезли типовую.</example>
                <example>Оказалось, что вместо нужной конструкции привезли типовую.</example>
                <example>Инфинитив вместо личной формы.</example>
                <example>Только вместо нужной конструкции привезли типовую.</example>
                <example>Обстоятельства, возникшие помимо воли и желания сторон.</example>
                <example correction="костра, кроме">Около <marker>костра кроме</marker> Ивана грелось ещё пять человек.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token negate="yes" regexp="yes">&pnct;<exception postag="SENT_START"></exception></token>
                    <token>за</token>
                    <token>исключением</token>
                </pattern>
                <message>Пропущена запятая: <suggestion>\1, \2 \3</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BF%D1%8F%D1%82%D0%B0%D1%8F</url>
                <short>Пропущена запятая</short>
                <example>В поход, за исключением Ивана, пошло ещё пять человек.</example>
                <example correction="поход, за исключением">В <marker>поход за исключением</marker> Ивана пошло ещё пять человек.</example>
            </rule>
        </rulegroup>
        <rule default="on" id="V_tom_chisle" name="«В том числе»">
            <pattern case_sensitive="yes">
                <token negate="yes" regexp="yes">и|&pnct;<exception postag="SENT_START"></exception></token>
                <token>в</token>
                <token>том</token>
                <token>числе</token>
            </pattern>
            <message>Пропущена запятая: <suggestion>\1, \2 \3 \4</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BF%D1%8F%D1%82%D0%B0%D1%8F</url>
            <short>Пропущена запятая</short>
            <example>В тайге ещё сохранились редкие хищники, в том числе дальневосточный леопард.</example>
            <example correction="хищники, в том числе">В тайге ещё сохранились редкие <marker>хищники в том числе</marker> дальневосточный леопард.</example>
        </rule>
        
        <rule default="on" id="DEFIS_COMMA" name="Дефис и запятая">
            <pattern>
                <token regexp="yes">[-—–]</token>
                <token>,</token>
            </pattern>
            <message>Запятая должна стоять перед тире: <suggestion>\2 \1</suggestion></message>
            <url>http://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%84%D0%B8%D1%81</url>
            <short>Запятая перед тире</short>
            <example>Здорово живешь, соседка, - поздоровался Иван.</example>
            <example correction=", -">Здорово живешь, соседка<marker> -,</marker> поздоровался Иван.</example>
        </rule>
        <rule default="on" id="COMMA_DEFIS" name="Запятая и дефис">
            <pattern>
                <token spacebefore="no">,</token>   
                <token spacebefore="yes">-</token>
            </pattern>
            <message>После запятой должно стоять тире: <suggestion>\1 —</suggestion></message>
            <url>http://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%84%D0%B8%D1%81</url>
            <short>Тире?</short>
            <example>Здорово живешь, соседка, — поздоровался Иван.</example>
            <example correction=", —">Здорово живешь, соседка<marker>, -</marker> поздоровался Иван.</example>
        </rule>
        
        <rulegroup default="on" id="Hyphen_and_spaces" name="Пробелы перед и после дефиса">
            <rule>
                <pattern case_sensitive="yes">
                    <token regexp="yes">.*[а-яё]</token>
                    <token spacebefore="yes" regexp="yes">-[а-яё].*</token>
                </pattern>
                <message>Перед дефисом не должно быть пробела: <suggestion>\1\2</suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%84%D0%B8%D1%81</url>
                <short>Лишний пробел</short>
                <example>Кое-кто пошёл в магазин.</example>
                <example correction="Кое-кто"><marker>Кое -кто</marker> пошёл в магазин.</example>
            </rule>
            
            <rule>
                <pattern case_sensitive="yes">
                    <token regexp="yes">.*[а-яё]-</token>
                    <token spacebefore="yes" regexp="yes">[а-яё][а-яё].*<exception>или</exception></token>
                </pattern>
                <message>После дефиса не должно быть пробела: <suggestion>\1\2</suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%84%D0%B8%D1%81</url>
                <short>Лишний пробел</short>
                <example>Кое-кто пошёл в магазин.</example>
                <example>Это будет караться различными санкциями – от дисциплинарных до административно- или иных.</example>
                <example correction="Кое-кто"><marker>Кое- кто</marker> пошёл в магазин.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="Tire_and_spaces" name="Тире и пробелы">
            <rule>
                <pattern>
                    <token regexp="yes" >.*[а-яёa-z]|[.!,;?]</token>
                    <token spacebefore="no">—</token>
                    <token regexp="yes" >[а-яё].*</token>
                </pattern>
                <message>Перед и после тире должны быть пробелы: <suggestion>\1 \2 \3</suggestion></message>
                <url>https://ru.wikipedia.org/wiki/%D0%A2%D0%B8%D1%80%D0%B5</url>
                <short>Нужен пробел</short>
                <example>LanguageTool — это свободное программное обеспечение для проверки грамматики, пунктуации и стиля.</example>
                <example correction="LanguageTool — это"><marker>LanguageTool— это</marker> свободное программное обеспечение для проверки грамматики, пунктуации и стиля.</example>
            </rule>
            <rule>
                <pattern>
                    <token regexp="yes"  >.*[а-яёa-z]|[.!,;?]</token>
                    <token spacebefore="yes">—</token>
                    <token regexp="yes" spacebefore="no" >[а-яё].*</token>
                </pattern>
                <message>Перед и после тире должны быть пробелы: <suggestion>\1 \2 \3</suggestion></message>
                <url>https://ru.wikipedia.org/wiki/%D0%A2%D0%B8%D1%80%D0%B5</url>
                <short>Нужен пробел</short>
                <example>LanguageTool — это свободное программное обеспечение для проверки грамматики, пунктуации и стиля.</example>
                <example correction="LanguageTool — это"><marker>LanguageTool —это</marker> свободное программное обеспечение для проверки грамматики, пунктуации и стиля.</example>
            </rule>
        </rulegroup>
        <rule id="Tire_and_two" name="Пропущено тире">
            <pattern>
                <token postag="NN:.*:Nom" postag_regexp="yes"></token>
                <token>и</token>
                <token postag="NN:.*:Nom" postag_regexp="yes"></token>
                <token regexp="yes">две|два|двое</token>
            </pattern>
            <message>Пропущено тире: <suggestion>\1 \2 \3 — \4</suggestion></message>
            <short>Пропущено тире</short>
            <example correction="гений и злодейство — две">А <marker>гений и злодейство две</marker> вещи несовместные.</example>
            <example>А гений и злодейство - две вещи несовместные.</example>
            <example>А гений и злодейство — две вещи несовместные.</example>
        </rule>	    
        <rulegroup default="on" id="Punct_and_spaces" name="Пробелы перед знаками препинания">
            <rule>
                <pattern case_sensitive="yes">
                    <token regexp="yes">.*[а-яё]</token>
                    <token spacebefore="yes" regexp="yes">[;:]</token>
                </pattern>
                <message>Перед знаками препинания не должно быть пробела: <suggestion>\1\2</suggestion></message>
                <url>https://ru.wikipedia.org/wiki/%D0%97%D0%BD%D0%B0%D0%BA%D0%B8_%D0%BF%D1%80%D0%B5%D0%BF%D0%B8%D0%BD%D0%B0%D0%BD%D0%B8%D1%8F</url>
                <short>Лишний пробел</short>
                <example>Удивляло и восхищало в нём всё: его манера говорить, его отношение ко всем, всегдашняя приветливость…</example>
                <example correction="всё:">Удивляло и восхищало в нём <marker>всё :</marker> его манера говорить, его отношение ко всем, всегдашняя приветливость…</example>
            </rule>
        </rulegroup>      
        <rule id="Teper_tak_kak" name="Цельное выражение: «теперь так как»">
            <pattern>
                    <token>Теперь</token>
                    <token>,</token>
                    <token>так</token>
                    <token>как</token>
            </pattern>
            <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion></message>
            <short>Запятая не нужна</short>
            <example correction='Теперь так как'><marker>Теперь, так как</marker>.</example>
            <example>Теперь так как.</example>
        </rule>
                                           
        <rulegroup default="on" id="NO_KAK_POPALO" name="Словосочетания: «что угодно», «как попало»">
            <!--Что угодно, как попало  не выделяются запятыми.
            -->
            <rule>
                <pattern>
                    <token>,</token>
                    <token regexp="yes">что|как|кто|какой|где|куда|откуда</token>
                    <token regexp="yes">попало|угодно</token>
                </pattern>
                <message>Запятая не нужна: <suggestion> \2 \3</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Работа была сделана как попало.</example>
                <example correction=" как попало">Работа была сделана<marker>, как попало</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token postag_regexp="yes" postag="VB:.*"></token>
                    <token>,</token>
                    <token regexp="yes">что|как|кто|какой|где|куда|откуда</token>
                    <token>нужно<exception  scope="next" postag="VB:INF:.*"  postag_regexp="yes"/><exception  scope="next" postag="UNKNOWN"  postag_regexp="yes" negate_pos="yes"/></token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Они воспринимают это как сигнал к тому, что нужно начать говорить.</example>
                <example>Мэр сказал, что нужно ваше разрешение.</example>
                <example>Я не знаю, что нужно сделать.</example>
                <example correction="достать что нужно">Как мне <marker>достать, что нужно</marker>?</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="BUD_CHTO_BUDET" name="Словосочетания: «будь что будет», ...">
        <!--"Будь что будет" перед "что" запятая не нужна.
            -->
            <rule>
                <pattern>
                    <token regexp="yes">бери|делай|будь|ешь</token>
                    <token>,</token>
                    <token>что</token>
                    <token regexp="yes">будет|дают|хочешь|нравится</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="будь что будет">И <marker>будь, что будет</marker>!</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="CHTO_PRAVDA_TO_PRAVDA" name="Словосочетания: «что правда, то правда»">
            <!--"Будь что будет" перед "что" запятая не нужна.
            -->
            <rule>
                <pattern>
                    <token>что</token>
                    <token>правда</token>
                    <token>то</token>
                    <token>правда</token>
                </pattern>
                <message>Запятая нужна: <suggestion>\1 \2, \3 \4</suggestion>.</message>
                <short>Нужна запятая</short>
                <example correction="что правда, то правда"><marker>что правда то правда</marker></example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="NO_VVODNOE" name="Слова не являющиеся вводными">
            <!-- авось, буквально, будто, вдобавок, вдруг, ведь,
             вот, всё-таки, даже, исключительно,
            именно,  небось, приблизительно, примерно,
            притом, почти, поэтому, просто, решительно, словно, якобы не выделяются запятыми.
            -->
            <rule>
                <pattern>
                    <marker>
                        <token>,</token>
                        <token regexp="yes">авось|буквально|будто|вдобавок|вдруг|ведь|вот|всё-таки|даже|исключительно|именно|небось|наверняка|приблизительно|примерно|притом|почти|поэтому|просто|решительно|словно|якобы</token>
                        <token skip="-1"><exception scope="next" regexp="yes">как|что|чтобы|должно|может|возможно</exception>,</token>
                    </marker>
                    <token>.</token>
                </pattern>
                <message>Слово не является вводным. Запятые не нужны: <suggestion> \2</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>Вокалисты неритмично поют,и вдобавок не те ноты.</example>
                <example>Он практикуется со своим клинком, ведь, чтобы отбиваться от убийц, он должен держать себя в форме.</example>
                <example>Она похожа на крепкую, защищаемую позицию, поэтому, должно быть, открывающиеся вокруг пещеры стали неприятным сюрпризом.</example>
                <example correction=" вдобавок">Вокалисты неритмично поют,и<marker>, вдобавок,</marker>не те ноты.</example>
            </rule>
            <rule>
                <pattern>   <!-- TODO: add "в действительности"*, "в итоге"*, "в конечном итоге"*, "в любом случае"*, "в особенности"*, "в остальном"*, "в результате"*, "в связи с вышеизложенным"*, "ведь"**, "вместе с тем"*, "на всякий случай"*, "на данный момент"*, "наверняка"*, "несмотря ни на что"* -->
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>В</token>
                        <token regexp="yes">последнем|этом|том|противном|хорошем|худшем|плохом|любом</token>
                        <token>случае</token>
                        <token>,</token>                   
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>В противном случае о наличии сбоя можно будет судить только по итоговому результату работы программы.</example>
                <example>В том случае, если я опоздаю, тебе не надо меня ждать.</example>
                <example correction="В противном случае о"><marker>В противном случае,о</marker> наличии сбоя можно будет судить только по итоговому результату работы программы.</example>
            </rule>
            <rule>
                <pattern>
                   <token postag="SENT_START"></token>
                    <marker>
                        <token>В</token>
                        <token regexp="yes">результате|действительности|итоге|особенности|остальном</token>
                        <token>,</token>
                    
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \5</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>В результате приходится ограничить выбор.</example>
                <example correction="В результате приходится"><marker>В результате, приходится</marker> ограничить выбор</example>
            </rule>
            <rule>
                <pattern>
                   <token postag="SENT_START"></token>
                    <marker>
                        <token>В</token>
                        <token>конечном</token>
                        <token>итоге</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>В конечном итоге приходится ограничить выбор.</example>
                <example correction="В конечном итоге приходится"><marker>В конечном итоге, приходится</marker> ограничить выбор</example>
            </rule>
            <rule>
                <pattern>
                   <token postag="SENT_START"></token>
                    <marker>
                        <token>В</token>
                        <token>любом</token>
                        <token>случае</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>В любом случае приходится ограничить выбор.</example>
                <example correction="В любом случае приходится"><marker>В любом случае, приходится</marker> ограничить выбор</example>
            </rule>
            <rule>
                <pattern>
                   <token postag="SENT_START"></token>
                    <marker>
                        <token>В</token>
                        <token>связи</token>
                        <token>с</token>
                        <token>вышеизложенным</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \5 \7</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>В связи с вышеизложенным приходится ограничить выбор.</example>
                <example correction="В связи с вышеизложенным приходится"><marker>В связи с вышеизложенным, приходится</marker> ограничить выбор</example>
            </rule>
            <rule>
                <pattern>
                   <token postag="SENT_START"></token>
                    <marker>
                        <token>На</token>
                        <token regexp="yes">всякий|данный</token>
                        <token regexp="yes">случай|момент</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>На данный момент приходится ограничить выбор.</example>
                <example correction="На данный момент приходится"><marker>На данный момент, приходится</marker> ограничить выбор</example>
            </rule>         
            <rule>
                <pattern>
                   <token postag="SENT_START"></token>
                    <marker>
                        <token>Вместе</token>
                        <token>с</token>
                        <token>тем</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>В конечном итоге приходится ограничить выбор.</example>
                <example correction="Вместе с тем приходится"><marker>Вместе с тем, приходится</marker> ограничить выбор</example>
            </rule>
            <rule>
                <pattern>
                   <token postag="SENT_START"></token>
                    <marker>
                        <token>Несмотря</token>
                        <token>ни</token>
                        <token>на</token>
                        <token>что</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \5 \7</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>Несмотря ни на что приходится ограничить выбор.</example>
                <example correction="Несмотря ни на что приходится"><marker>Несмотря ни на что, приходится</marker> ограничить выбор</example>
            </rule>
            
             
        </rulegroup>
        
        <rulegroup default="on" id="COMPLEX_SOUZ_PUNCT_START_S" name="Сложный союз в начале предложения">
            <!-- Выражения в начале предложения не выделяются запятыми.
            * Для того чтобы
            * Вместо того чтобы            
            * С тех пор как
            * После того как
            * До того как
            * По мере того как
            * Тем более что
            * Перед тем как
            * Тем не менее
            * Причём
            * В то время как
            -->
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token regexp="yes">Для|Вместо</token>
                        <token>того</token>          
                        <token>чтобы</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>Для того чтобы желе застыло, нужно его около часа подержать в холодильнике.</example>
                <example correction="Для того чтобы желе"><marker>Для того чтобы, желе</marker> застыло, нужно его около часа подержать в холодильнике.</example>
            </rule>
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>С</token>
                        <token>тех</token>          
                        <token>пор</token>
                        <token>как</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \5 \7</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>С тех пор как желе застыло, нужно его около часа подержать в холодильнике.</example>
                <example correction="С тех пор как желе"><marker>С тех пор как, желе</marker> застыло, нужно его около часа подержать в холодильнике.</example>
            </rule>
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token regexp="yes">После|До</token>
                        <token>того</token>          
                        <token>как</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>После того как я вздремнул, взошла луна.</example>
                <example correction="После того как я"><marker>После того как, я</marker> вздремнул, взошла луна.</example>
            </rule>          
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>В</token>
                        <token>то</token>          
                        <token>время</token>
                        <token>как</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \5 \7</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>В то время как я вздремнул, взошла луна.</example>
                <example correction="В то время как я"><marker>В то время как, я</marker> вздремнул, взошла луна.</example>
            </rule>
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>По</token>
                        <token>мере</token>          
                        <token>того</token>
                        <token>как</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \5 \7</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>По мере того как он ее слушал, насмешливая улыбка показывалась на его губах.</example>
                <example correction="По мере того как он"><marker>По мере того как, он</marker> ее слушал, насмешливая улыбка показывалась на его губах.</example>
            </rule>
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>Перед</token>  
                        <token>тем</token>
                        <token>как</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>Перед тем как в стакан налить крутой кипяток, в него опускают ложку.</example>
                <example correction="Перед тем как в"><marker>Перед тем как, в</marker> стакан налить крутой кипяток, в него опускают ложку.</example>
            </rule>
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>Тем</token>  
                        <token>более</token>
                        <token>что</token>
                        <token>,</token>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>                        
                        <exception postag="PARENTHESIS"></exception>                    
                    </token>
                    </marker>
                </pattern>
                <message>Выражение не является вводным. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Запятые не нужны</short>
                <example>Тем более что мыши являются переносчиком серьезных заболеваний.</example>
                <example correction="Тем более что мыши"><marker>Тем более что, мыши</marker> являются переносчиком серьезных заболеваний.</example>
            </rule>
            <rule>  <!-- #6119 -->
                <pattern>
                    <marker>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>
                        <exception postag="PARENTHESIS"></exception>
                    </token>                    
                        <token>,</token>
                        <token regexp="yes">причем|причём</token>
                        <token>,</token>
                    </marker>
                    <token>
                        <exception regexp="yes">&start_vvodnoe;|как|если|когда|разумеется</exception>
                        <exception postag="PARENTHESIS"></exception>
                    </token>
                </pattern>
                <message>Слово не является вводным. Запятые с двух сторон не нужны. В роли союза нужна только одна запятая.</message>
                <suggestion>\1\2 \3</suggestion>
                <url>http://ru.wikipedia.org/wiki/%D0%92%D0%B2%D0%BE%D0%B4%D0%BD%D1%8B%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0</url>
                <short>Не выделяется запятыми</short>
                <example>Это хвойное дерево, причём долго не гниющее в воде.</example>
                <example correction="дерево, причём">Это хвойное <marker>дерево, причём,</marker> долго не гниющее в воде.</example>
            </rule>
          </rulegroup>
          <rule default="on" id="tem_ne_menee" name="Тем не менее">
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>Тем</token>
                        <token>не</token>
                        <token>менее</token>
                        <token>,</token>
                    </marker>                  
                        <token>
                            <exception regexp= "yes" >&start_vvodnoe;|как|если|когда|разумеется</exception>
                            <exception postag_regexp="yes" postag="PT:.*|DPT:.*|PARENTHESIS"></exception>
                        </token>
                </pattern>
                <message>Если предложение начинается словами «тем не менее», они выступают в качестве союза, и запятая после них не ставится: <suggestion>\2 \3 \4</suggestion>.</message>
                <!-- Выражение не является вводным и запятые не нужны. Определить, является ли в конкретном случае конструкция «тем не менее» вводным оборотом очень просто: проверить, может
                ли предложение обойтись без этой конструкции без радикальной потери или изменения смысла. Если может — это вводный оборот и запятую можно оставить. При сомнениях можно попробовать заменить на «кроме того», после которого всегда ставится запятая, либо на «но», после которого запятая не нужна.
                Если предложение начинается словами «тем не менее», они выступают в качестве союза, и запятая после них не ставится. -->
                <url>http://aprikablog.com/2013/10/tem-ne-menee/</url>
                <short>В начале предложения — союз, не обособляется</short>
                <example>Тем не менее я вздремнул.</example>
                <example>Тем не менее, несмотря на указанные сложности, ремонт оказался завершён.</example>
                <example>Тем не менее, приняв пакет, секретарь не проставил дату в журнале.</example>
                <example correction="Тем не менее"><marker>Тем не менее,</marker>я вздремнул.</example>
        </rule>
        <rulegroup default="on" id="COMPLEX_SOUZ_PUNCT" name="Запятые в сложных союзах">
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token regexp="yes">Для|Вместо</token>
                        <token>того</token>          
                        <token>,</token>
                        <token>чтобы</token>
                    </marker>
                </pattern>
                <message>Сложный союз в начале предложения. Запятые не нужны: <suggestion>\2 \3 \5</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_172</url>
                <short>Запятые не нужны</short>
                <example>Для того чтобы желе застыло, нужно его около часа подержать в холодильнике.</example>
                <example correction="Для того чтобы"><marker>Для того, чтобы</marker> желе застыло, нужно его около часа подержать в холодильнике.</example>
            </rule>
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>С</token>
                        <token>тех</token>          
                        <token>пор</token>
                        <token>,</token>
                        <token>как</token>
                    </marker>
                </pattern>
                <message>Сложный союз в начале предложения. Запятые не нужны: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_701</url>
                <short>Запятые не нужны</short>
                <example>С тех пор как желе застыло, нужно его около часа подержать в холодильнике.</example>
                <example correction="С тех пор как"><marker>С тех пор, как</marker> желе застыло, нужно его около часа подержать в холодильнике.</example>
            </rule>
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token regexp="yes">После|До</token>
                        <token>того</token>
                        <token>,</token>          
                        <token>как</token>
                    </marker>
                </pattern>
                <message>Сложный союз в начале предложения. Запятые не нужны: <suggestion>\2 \3 \5</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_593</url>
                <short>Запятые не нужны</short>
                <example>После того как я вздремнул, взошла луна.</example>
                <example correction="После того как"><marker>После того, как</marker> я вздремнул, взошла луна.</example>
                <example correction="До того как"><marker>До того, как</marker> я вздремнул, взошла луна.</example>
            </rule>   
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>В</token>
                        <token>то</token>          
                        <token>время</token>
                        <token>,</token>
                        <token>как</token>
                    </marker>
                </pattern>
                <message>Сложный союз в начале предложения. Запятые не нужны, но допустимы (устар.): <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_127</url>
                <short>Запятые не нужны, но допустимы</short>
                <example>В то время как я вздремнул, взошла луна.</example>
                <example correction="В то время как"><marker>В то время, как</marker> я вздремнул, взошла луна.</example>
            </rule>
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>По</token>
                        <token>мере</token>          
                        <token>того</token>
                        <token>,</token>
                        <token>как</token>
                    </marker>
                </pattern>
                <message>Сложный союз в начале предложения. Запятая обычно не ставится: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_562</url>
                <short>Запятая обычно не ставится</short>
                <example>По мере того как он ее слушал, насмешливая улыбка показывалась на его губах.</example>
                <example correction="По мере того как"><marker>По мере того, как</marker> он ее слушал, насмешливая улыбка показывалась на его губах.</example>
            </rule>
        </rulegroup>
        <rulegroup default="off" id="COMPLEX_SOUZ_PUNCT_2" name="Запятые в сложных союзах (2)">
            <rule>
                <pattern> 
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>Тем</token>  
                        <token>более</token>
                        <token>,</token>
                        <token>что</token>
                    </marker>
                </pattern>
                <message>Сложный союз в начале предложения. Запятая обычно не ставится: <suggestion>\2 \3 \5</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_730</url>
                <short>Запятая обычно не ставится</short>
                <example>Тем более что мыши являются переносчиком серьезных заболеваний.</example>
                <example correction="Тем более что"><marker>Тем более, что</marker> мыши являются переносчиком серьезных заболеваний.</example>
            </rule>
            <rule>  <!-- http://www.gramota.ru/spravka/punctum?layout=item&id=58_99 -->
                <pattern>
                    <token postag="SENT_START"></token> 
                    <marker>
                        <token>В</token>
                        <token>отличие</token>
                        <token>от</token>
                        <token postag="PNN:.*:R:P3|NN:.*:R" postag_regexp="yes"></token>
                        <token>,</token>
                    </marker>
                    <token negate="yes" regexp="yes">&start_vvodnoe;</token>
                </pattern>
                <message>Запятая не требуется, но возможна: <suggestion>\2 \3 \4 \5</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum/punctum-attach1</url>
                <short>Запятая не является необходимой</short>
                <example>В отличие от них эти методы могут работать.</example>
                <example correction="В отличие от них"><marker>В отличие от них,</marker> эти методы могут работать.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="A_VDRUG_NO_COMMA" name="После слова «вдруг» запятая не ставится">
            <rule>
                <pattern>
                    <token>а</token>
                    <token>вдруг</token>
                    <token>,<exception scope="next" regexp="yes">&start_vvodnoe;</exception></token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2</suggestion>.</message>

                <short>Запятая не нужна</short>
                <example>А вдруг это любовь.</example>
                <example correction="А вдруг"><marker>А вдруг,</marker> это любовь?</example>
            </rule>
        </rulegroup>  
        
        <rulegroup default="on" id="COMPLEX_SOUZ_NO_COMMA" name="Сложные союзы не разделяются: «тогда как», «словно как», ...">
            <!-- Сложные союзы не разделяются «тогда как», «словно как», ...  ->> запятая не ставится. $ 108 Розенталь -->
            <rule>
                <pattern>
                    <token regexp="yes">тогда|словно</token>
                    <token>,</token>
                    <token>как</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum/punctum-attach3</url>
                <short>Запятая не нужна</short>
                <example>Тогда как мыши являются переносчиком серьезных заболеваний.</example>
                <example correction="Тогда как"><marker>Тогда, как</marker> мыши являются переносчиком серьезных заболеваний.</example>
            </rule>
             <!-- #6119 -->      
            <rule>
                <pattern>
                    <marker>
                    <token regexp="yes">между|меж</token>
                    <token>тем</token>  
                    <token>,</token>
                    <token>как</token>
                    </marker>
                    <token><exception postag="VB:.*" postag_regexp="yes"></exception></token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum/punctum-attach3</url>
                <short>Запятая не нужна</short>
                <example>Между тем как мыши являются переносчиком серьезных заболеваний.</example>
                <example>А между тем, как сообщают журналисты, сегодня самый длинный день.</example>
                <example correction="Между тем как"><marker>Между тем, как</marker> мыши являются переносчиком серьезных заболеваний.</example>
            </rule>
               
            <rule>
                <pattern>
                    <token>даже</token>  
                    <token>,</token>
                    <token>если</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3</suggestion>.</message>
                <url>https://punktuaciya.academic.ru/196/%D0%B4%D0%B0%D0%B6%D0%B5_%D0%B5%D1%81%D0%BB%D0%B8</url>
                <short>Запятая не нужна</short>
                <example>Даже если мы с тобой не будем вместе.</example>
                <example correction="Даже если"><marker>Даже, если</marker> мы с тобой не будем вместе.</example>
            </rule>
            <rule>
                <pattern>
                    <token>лишь</token>  
                    <token>,</token>
                    <token>когда</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?id=58_395&amp;layout=item</url>
                <short>Запятая не нужна</short>
                <example>Сомневаться в существовании действительности мы можем, лишь когда не спим.</example>
                <example correction="лишь когда">Сомневаться в существовании действительности мы можем, <marker>лишь, когда</marker> не спим.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="COMPLEX_SOUZ_NO_COMMA2" name="Сложные союзы не разделяются запятой">
         <!-- Сложные союзы не разделяются «в то время как»,  ...  ->> запятая не ставится. $ 108 Розенталь -->
          <!-- TODO: требуется доработка-->
            <!-- Если придаточная часть сложноподчиненного предложения стоит перед главной,
            запятая между частями союза «в то время как» обычно не ставится (постановка запятой допустима,
            но такое пунктуационное оформление считается устаревшим). -->
            <rule>
                <pattern>
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>в</token>
                        <token>то</token>  
                        <token>время</token>
                        <token>,</token>
                        <token>как</token>
                    </marker>
                </pattern>
                <message>Запятая обычно не ставится, но допустима: <suggestion>\2 \3 \4 \6</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?id=58_127&amp;layout=item</url>
                <short>Запятая обычно не ставится</short>
                <example>В то время как мыши являются переносчиком серьезных заболеваний.</example>
                <example correction="В то время как"><marker>В то время, как</marker> мыши являются переносчиком серьезных заболеваний.</example>
            </rule>
            <!-- так что  (в значении следствия) не разделяется запятой, Не смешивать с сочетанием наречия «так» и союза «что» (в знач. «таким образом, что»).-->
            <!-- TODO: требуется доработка-->
            <rule>
                <pattern>
                    <token postag="SENT_START"></token>
                    <marker>
                        <token>так</token>  
                        <token>,</token>
                        <token>что</token>
                    </marker>
                </pattern>
                <message>Запятая не нужна: <suggestion>\2 \4</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_727</url>
                <short>Запятая не нужна</short>
                <example>Так что мыши являются переносчиком серьезных заболеваний.</example>
                <example correction="Так что"><marker>Так, что</marker> мыши являются переносчиком серьезных заболеваний.</example>
            </rule>
        </rulegroup>
        
        <rule id="Punct_skoree_chem" name="Запятая в союзах «скорее ..., чем», «нежели ..., чем»">
            <pattern>
                <marker>
                    <token>скорее</token>  
                    <token skip="-1"><exception>,</exception></token>
                    <token  regexp="yes">чем|нежели<exception scope="previous">,</exception><exception scope="previous">прежде</exception></token>
                </marker>
            </pattern>
            <message>Запятая нужна: <suggestion><match no="1"/> <match no="2" include_skipped="all"/>, <match no="3"/></suggestion>.</message>
            <short>Запятая</short>
            <example>В их семье мужчины скорее знали об хороших манерах, нежели владели ими.</example>
            <example>Ну, пройдёт скорее даже три года, прежде чем нам разрешат читать.</example>	    
            <example correction="скорее знали об изысканных манерах, нежели">В их семье мужчины <marker>скорее знали об изысканных манерах нежели</marker> владели ими.</example>
        </rule>
                
        <rulegroup  id="Punct_sobstvenno_govorja" name="Вводное выражение «собственно/честно говоря»">
            <rule>
                <pattern>
                    <marker>
                        <token regexp="yes">собственно|честно</token>
                        <token>говоря</token>
                        <token><exception regexp="yes">&pnct;</exception></token>  
                    </marker>
                </pattern>
                <message>Запятая нужна: <suggestion><match no="1"/> <match no="2" />, <match no="3"/></suggestion>.</message>
                <short>Запятая</short>
                <example>Да и это, собственно говоря, пустяки.</example>
                <example correction="собственно говоря, пустяки">Да и это, <marker>собственно говоря пустяки</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <marker>
                        <token><exception regexp="yes">&pnct;</exception><exception postag="SENT_START" /></token>
                        <token regexp="yes">собственно|честно</token>
                        <token>говоря</token>
  
                    </marker>
                </pattern>
                <message>Запятая нужна: <suggestion><match no="1"/>, <match no="2" /> <match no="3"/></suggestion>.</message>
                <short>Запятая</short>
                <example>Да и это, собственно говоря, пустяки.</example>
                <example correction="это, собственно говоря">Да и <marker>это собственно говоря</marker>, пустяки.</example>
            </rule>
        </rulegroup>
               <rulegroup  id="Punct_nado_polagat" name="Вводное выражение «надо полагать»">
            <rule>
                <pattern>
                    <marker>
                        <token>надо</token>
                        <token>полагать</token>
                        <token><exception regexp="yes">&pnct;</exception></token>  
                    </marker>
                </pattern>
                <message>Запятая нужна: <suggestion><match no="1"/> <match no="2" />, <match no="3"/></suggestion>.</message>
                <short>Запятая</short>
                <example>Да и это, надо полагать, пустяки.</example>
                <example correction="надо полагать, пустяки">Да и это, <marker>надо полагать пустяки</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <marker>
                        <token><exception regexp="yes">&pnct;</exception><exception postag="SENT_START" /></token>
                        <token>надо</token>
                        <token>полагать</token>
  
                    </marker>
                </pattern>
                <message>Запятая нужна: <suggestion><match no="1"/>, <match no="2" /> <match no="3"/></suggestion>.</message>
                <short>Запятая</short>
                <example>Да и это, надо полагать, пустяки.</example>
                <example correction="это, надо полагать">Да и <marker>это надо полагать</marker>, пустяки.</example>
            </rule>
        </rulegroup>
        
        <rulegroup  id="Punct_tochki_zrenija" name="Вводное выражение «с моей точки зрения»">
            <rule>
                <pattern>
                    <marker>
                        <token>с</token>
                        <token>моей</token>
                        <token>точки</token>
                        <token>зрения</token>
                        <token><exception regexp="yes">&pnct;</exception></token>  
                    </marker>
                </pattern>
                <message>Запятая нужна: <suggestion><match no="1"/> <match no="2"/> <match no="3"/> <match no="4" />, <match no="5"/></suggestion>.</message>
                <short>Запятая</short>
                <example>Да и это, с моей точки зрения, пустяки.</example>
                <example correction="с моей точки зрения, пустяки">Да и это, <marker>с моей точки зрения пустяки</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <marker>
                        <token><exception regexp="yes">&pnct;</exception><exception postag="SENT_START" /></token>
                        <token>с</token>
                        <token>моей</token>
                        <token>точки</token>
                        <token>зрения<exception scope="next">—</exception></token>
                    </marker>
                </pattern>
                <message>Запятая нужна: <suggestion><match no="1"/>, <match no="2" /> <match no="3"/> <match no="4"/> <match no="5"/></suggestion>.</message>
                <short>Запятая</short>
                <example>Да и это, с моей точки зрения, пустяки.</example>
                <example correction="это, с моей точки зрения">Да и <marker>это с моей точки зрения</marker>, пустяки.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="NO_NE_KAK" name="«Почти как», «не как», ...">
            <!--Перед сравнительным оборотом стоит "не" или слова: совсем, совершенно, почти, именно, + вроде, точь-в-точь  ->> запятая не ставится.
           -->
            <rule>
                <pattern>
                    <token regexp="yes">не|совсем|совершенно|почти|именно|вроде|точь-в-точь</token>
                    <token>,</token>
                    <token>как</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3</suggestion>.</message>
                <url>http://gramota.ru/class/coach/punct/45_183</url>
                <short>Запятая не нужна</short>
                <example>Работа была сделана совсем как попало.</example>
                <example correction="совсем как">Работа была сделана <marker>совсем, как</marker> попало.</example>
            </rule>
        </rulegroup>
        <rule default="on" id="NI_CHTO_NE" name="Словосочетания: «ничто не»">
            <pattern case_sensitive="no">
                <token>ни</token>
                <token>что</token>
                <token>не</token>
            </pattern>
            <message>Оборот: <suggestion>ни\2 \3</suggestion>.</message>
            <short>Ошибка</short>

            <example correction="Ничто не"><marker>Ни что не</marker> идеально.</example>
        </rule>
        <rulegroup default="on" id="NO_NE_TO_CHTO" name="Словосочетания: «не то что», «не так чтобы», «не иначе как»">
            <!-- Внутри сочетаний не то что, не то (так) чтобы, не иначе как запятая не ставится.
            -->
            <rule>
                <pattern>
                  <marker>
                    <token>не</token>
                    <token regexp="yes">то|иначе</token>
                    <token>,</token>
                    <token regexp="yes">что|как|чтобы</token>
                  </marker>
                  <token postag="ADV|PT_Short:.*|ADJ:Short:.*" postag_regexp="yes"></token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Работа была сделана не иначе как полностью.</example>
                <example>Это не то, что ты думаешь.</example>
                <example correction="не иначе как">Работа была сделана <marker>не иначе, как</marker> полностью.</example>
            </rule>
            <rule>
                <pattern>
                    <token>не</token>
                    <token>так</token>
                    <token>,</token>
                    <token>чтобы</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Как сделать так, чтобы выходные длились дольше.</example>
                <example>Работа была сделана не так чтобы полностью.</example>
                <example correction="не так чтобы">Работа была сделана <marker>не так, чтобы</marker> полностью.</example>
            </rule>
            <rule>
                <pattern>
                    <token negate="yes" regexp="yes">не|,</token>
                    <token>так</token>
                    <token>чтобы</token>
                </pattern>
                <message>Нужна запятая: <suggestion>\1 \2, \3</suggestion>.</message>
                <short>Нужна запятая</short>
                <example>Как сделать так, чтобы выходные длились дольше.</example>
                <example correction="сделать так, чтобы">Как <marker>сделать так чтобы</marker> выходные длились дольше.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="I_TO_I_SE" name="Цельные выражения: «ни рыба ни мясо», ...">
            <!-- Запятая не ставится в цельных выражениях:
            и то и се,  
            ни то ни се,  
            ни свет ни заря,
            ни дать ни взять,  
            и так и сяк,  
            и туда и сюда,  
            ни рыба ни мясо,  
            ни жив ни мертв.
            -->
            <rule>
                <pattern>
                    <token regexp="yes">и|ни</token>
                    <token>то</token>
                    <token>,</token>
                    <token regexp="yes">и|ни</token>
                    <token regexp="yes">се|сё|то</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>И то и сё.</example>
                <example correction="И то и сё"><marker>И то, и сё</marker>.</example>
                <example correction="И то и то"><marker>И то, и то</marker>.</example>
            </rule>
            
            <rule>
                <pattern>
                    <token>ни</token>
                    <token regexp="yes">свет|рыба|жив|дать|кафтан</token>
                    <token>,</token>
                    <token>ни</token>
                    <token regexp="yes">заря|мясо|мертв|мёртв|взять|ряса</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Он проснулся ни свет ни заря</example>
                <example correction="ни свет ни заря">Он проснулся <marker>ни свет, ни заря</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>и</token>
                    <token regexp="yes">так|туда</token>
                    <token>,</token>
                    <token>и</token>
                    <token regexp="yes">сяк|сюда|этак</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>И так и сяк.</example>
                <example>И так и этак.</example>
                <example correction="И так и сяк"><marker>И так, и сяк</marker>.</example>
                <example correction="И так и этак"><marker>И так, и этак</marker>.</example>
            </rule>
            
        </rulegroup>
        <rulegroup default="on" id="VSE_KAK_NA_PODBOR" name="Цельные выражения: «все как на подбор», ...">
            <!-- Запятая не ставится в цельных выражениях:
            все как на подбор,
	    бледный как полотно (как смерть), пристать как с ножом к горлу,
            блестеть как зеркало, седой как лунь, остановиться как вкопанный,
            вертеться как белка в колесе, кататься как сыр в масле, голодный как волк (как собака),
            идти как на казнь, лететь как стрела, красный как рак, знать как свои пять пальцев,
            сидеть как на иголках, гол как сокол, чувствовать себя как дома, 
            нужен как воздух, упасть как подкошенный, упрям как осел, развеяться как дым,
            ударить как обухом по голове, ходить как в воду опущенный и др.
            дрожит как осиновый лист 
            -->
            <rule>
                <pattern>
                    <token>все</token>
                    <token>,</token>
                    <token>как</token>
                    <token>на</token>
                    <token>подбор</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Все как на подбор, с ними дядька черномор.</example>
                <example correction="Все как на подбор"><marker>Все, как на подбор</marker>, с ними дядька черномор.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">дрожать</token>
                    <token>,</token>
                    <token>как</token>
                    <token>осиновый</token>
                    <token>лист</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Он дрожит как осиновый лист.</example>
                <example correction="дрожит как осиновый лист">Он <marker>дрожит, как осиновый лист</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">блестеть</token>
                    <token>,</token>
                    <token>как</token>
                    <token>зеркало</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Тарелка блестела как зеркало.</example>
                <example correction="блестела как зеркало">Тарелка <marker>блестела, как зеркало</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>седой</token>
                    <token>,</token>
                    <token>как</token>
                    <token>лунь</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="седой как лунь">Он <marker>седой, как лунь</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">остановиться</token>
                    <token>,</token>
                    <token>как</token>
                    <token>вкопанный</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="остановился как вкопанный">Трамвай <marker>остановился, как вкопанный</marker>.</example>
            </rule>          
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes">вертеться|кружиться|крутиться</token>
                    <token>,</token>
                    <token>как</token>
                    <token>белка</token>
                    <token>в</token>
                    <token>колесе</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5 \6</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="вертелась как белка в колесе">Она <marker>вертелась, как белка в колесе</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">кататься</token>
                    <token>,</token>
                    <token>как</token>
                    <token>сыр</token>
                    <token>в</token>
                    <token>масле</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5 \6</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="каталась как сыр в масле">Она <marker>каталась, как сыр в масле</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">голодный</token>
                    <token>,</token>
                    <token>как</token>
                    <token regexp="yes">волк|собака</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="голодный как волк">Она <marker>голодный, как волк</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">идти</token>
                    <token>,</token>
                    <token>как</token>
                    <token>на</token>
                    <token>казнь</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="идёт как на казнь">Он <marker>идёт, как на казнь</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">лететь</token>
                    <token>,</token>
                    <token>как</token>
                    <token>стрела</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="летела как стрела">Машина <marker>летела, как стрела</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">красный</token>
                    <token>,</token>
                    <token>как</token>
                    <token>рак</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="красный как рак">Банщик был <marker>красный, как рак</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">знать</token>
                    <token postag_regexp="yes" postag="NN:.*"></token>
                    <token>,</token>
                    <token>как</token>
                    <token>свои</token>
                    <token>пять</token>
                    <token>пальцев</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4 \5 \6 \7</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="знает математику как свои пять пальцев">Она <marker>знает математику, как свои пять пальцев</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">сидеть</token>
                    <token>,</token>
                    <token>как</token>
                    <token>на</token>
                    <token>иголках</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="сидела как на иголках">Она <marker>сидела, как на иголках</marker>.</example>
            </rule>       
            <rule>
                <pattern>
                    <token>гол</token>
                    <token>,</token>
                    <token>как</token>
                    <token>сокол</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="гол как сокол">Он был <marker>гол, как сокол</marker>.</example>
            </rule>
             <rule>
                <pattern>
                    <token inflected="yes">чувствовать</token>
                    <token>себя</token> 
                    <token>,</token>           
                    <token>как</token>
                    <token>дома</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="Чувствуйте себя как дома"><marker>Чувствуйте себя, как дома</marker>!</example>
            </rule>       
            <rule>
                <pattern>
                    <token>нужен</token>
                    <token>,</token>
                    <token>как</token>
                    <token>воздух</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Он нужен как воздух.</example>
                <example correction="нужен как воздух">Он <marker>нужен, как воздух</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">пристать</token>
                    <token>,</token>
                    <token>как</token>
                    <token>с</token>
                    <token>ножом</token>
                    <token>к</token>
                    <token>горлу</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5 \6 \7</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="пристала как с ножом к горлу">Она <marker>пристала, как с ножом к горлу</marker>.</example>
            </rule>
            
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes">бледный|побледнеть</token>
                    <token>,</token>
                    <token>как</token>
                    <token regexp="yes">полотно|смерть</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="побледнев как полотно">Вдруг он опустил дуло пистолета и, <marker>побледнев, как полотно</marker>, повернулся к своему секунданту.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">упасть</token>
                    <token>,</token>
                    <token>как</token>
                    <token>снег</token>
                    <token>на</token>
                    <token>голову</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5 \6</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="упала как снег на голову">Она <marker>упала, как снег на голову</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">лить</token>
                    <token>,</token>
                    <token>как</token>
                    <token>из</token>
                    <token>ведра</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="лил как из ведра">Дождь <marker>лил, как из ведра</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">развеяться</token>
                    <token>,</token>
                    <token>как</token>
                    <token>дым</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="развеялись как дым">Сомнения <marker>развеялись, как дым</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">упасть</token>
                    <token>,</token>
                    <token>как</token>
                    <token>подкошенный</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Он упал как подкошенный.</example>
                <example correction="упал как подкошенный">Он <marker>упал, как подкошенный</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">развеяться</token>
                    <token>,</token>
                    <token>как</token>
                    <token>дым</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Туман развеялся как дым.</example>
                <example correction="развеялся как дым">Туман <marker>развеялся, как дым</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">ударить</token>
                    <token>,</token>
                    <token>как</token>
                    <token>обухом</token>
                    <token>по</token>
                    <token>голове</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5 \6</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="ударил как обухом по голове"><marker>ударил, как обухом по голове</marker>.</example>
            </rule>
             <rule>
                <pattern>
                    <token inflected="yes">ходить</token>
                    <token>,</token>
                    <token>как</token>
                    <token>в</token>
                    <token>воду</token>
                    <token>опущенный</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5 \6</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example correction="ходил как в воду опущенный">Он <marker>ходил, как в воду опущенный</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">упрямый</token>
                    <token>,</token>
                    <token>как</token>
                    <token regexp="yes">осёл|осел</token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Он упрям как осёл.</example>
                <example correction="упрям как осёл">Он <marker>упрям, как осёл</marker>.</example>
            </rule>
        </rulegroup>
	<rule id="NEUJTO" name="Наречие «неужто»">
 		<pattern>
	  		<token>не</token>
  			<token>уж</token>
 			<token>то</token>
 		</pattern>
 		<message>Пишется слитно: <suggestion><match no="1"/><match no="2"/><match no="3"/></suggestion></message>
 		<short>Слитно</short>
 		<example correction="Неужто"><marker>Не уж то</marker> ты побрился.</example>
 		<example>Неужто ты побрился.</example>
	</rule>
        <rulegroup default="on" id="NEIZVESTNO_KTO" name="Цельные выражения: «неизвестно кто», ..." tags="picky"> <!-- TODO: need improve -->
            <!-- Запятая не ставится в цельных выражениях:
            неизвестно кто,
	    ... ,
            неизвестно чей 
            -->
            <rule>
                <pattern>
            <!--  TODO:
            -->
                <marker>
                        <token regexp="yes">неизвестно|непонятно<exception scope="previous" regexp="yes">мне|тебе|ему|ей|тому|кому|сему|было</exception></token>
                        <token>,</token>
                        <token regexp="yes">кто|что|какой|где|куда|откуда|чей<exception scope="next" postag="VB:.*"  postag_regexp="yes"  />
                            <exception scope="next" >и</exception>
                        </token>
                    </marker>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3</suggestion>.</message>
                <url>http://old-punctum.ru/punctum.php?sid=476</url>
                <short>Запятая не нужна</short>
                <example>Ещё неизвестно, кто победил, совсем неивестно.</example>
                <example>Неизвестно кто победил на соревнованиях, неизвестный спортсмен.</example>
                <example>До сих пор неизвестно, кто организовал нападение.</example>
                <example>Было непонятно, где всё это он раздобыл.</example>
                <example>Совершенно непонятно, кто и зачем создал это.</example>
                <example correction="неизвестно кто">На соревнованиях победил <marker>неизвестно, кто</marker>.</example>
            </rule>
            <!-- Запятая не ставится в цельных выражениях:
            всё равно кто,
	    ... ,
            все равно чей 
            -->
            <rule>
                <pattern>
                    <token regexp="yes">все|всё</token>
                    <token>равно</token>
                    <token>,</token>
                    <token regexp="yes">кто|что|какой|где|куда|откуда|чей<exception scope="next" postag="VB:.*"  postag_regexp="yes"  /></token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \2 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Всё равно кто выполнит задание.</example>
                <example>Выполнит задание всё равно кто.</example>
                <example correction="всё равно кто">Выполнит задание <marker>всё равно, кто</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="EST_CHEM_ZANJATSA" name="Цельные выражения: «есть чем заняться», ...">
            <!-- Запятая не ставится в цельных выражениях:
            есть чем заняться,
	    ... ,
            не нахожу что сказать
            найду куда обратиться
            было о чём подумать
            ед, множ((быть|нати|остаться)) + (кто|что|где|куда|когда) + VB:INF:
            -->
            <rule>
                <pattern>
                    <token regexp="yes">есть|нахожу|найду|нашёлся|нашелся|было|осталось</token>
                    <token>,</token>		    
                    <token regexp="yes">кто|что|где|куда|когда|чем|чём</token>
                    <token postag_regexp="yes" postag="VB:INF:.*"></token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Он не нашёлся что ответить.</example>
                <example>Я найду куда обратиться.</example>
                <example>Ему есть чем заняться.</example>
                <example>Я не нахожу что сказать.</example>
                <example correction="нашёлся что ответить">Он не <marker>нашёлся, что ответить</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token regexp="yes">есть|нахожу|найду|нашёлся|нашелся|было|осталось</token>
                    <token>,</token>
                    <token regexp="yes">о|над</token>		    
                    <token regexp="yes">кто|что|где|куда|когда|чем|чём</token>
                    <token postag_regexp="yes" postag="VB:INF:.*"></token>
                </pattern>
                <message>Запятая не нужна: <suggestion>\1 \3 \4 \5</suggestion>.</message>
                <short>Запятая не нужна</short>
                <example>Ему было о чём подумать.</example>
                <example correction="было о чём подумать">Ему <marker>было, о чём подумать</marker>.</example>
            </rule>
        </rulegroup>
        <rule id="Comma_Chtobi_2VERB" name="Запятая в предложении со «чтобы»">
            <pattern> 
                <token>Чтобы</token>
                <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes" /><exception regexp="yes" scope="next">[,;-—(]</exception><exception inflected="yes" >быть</exception></token>
                <or>
                    <token regexp="yes">нужен|нужно|необходимо|достаточно<exception regexp="yes" scope="previous">[,;:–-—(]</exception></token>
                    <token postag="VB:.*" postag_regexp="yes" ><exception  postag="VB:INF:.*" postag_regexp="yes" /><exception negate_pos="yes" postag="VB:.*" postag_regexp="yes" /><exception regexp="yes" scope="previous">[,;:–-—(]</exception></token>
                 </or>
            </pattern>
            <message>Требуется запятая до конца предложения.</message>
            <short>Требуется запятая</short>
            <example correction=""><marker>Чтобы полететь на луну нужен</marker> корабль.</example>
            <example>Чтобы полететь на луну, нужен корабль.</example>
            <example>Чтобы закончить раньше (если вы не хотите).</example>
        </rule> 
        <rule id="PUNCT_OBR" name="Запятая при обращении" default="on">
            <pattern case_sensitive="yes">
                <token postag="NN:(Name|Patr):.*" postag_regexp="yes" regexp="yes" >[А-ЯЁ][а-яё]*<exception negate_pos="yes"  postag="NN:(Name|Patr):.*" postag_regexp="yes" /><exception  postag="NN:(Name|Patr):.*:D" postag_regexp="yes" /><exception scope="previous">и</exception></token>
                <token postag="VB:IMP:TRANS:PFV:.*:P2" postag_regexp="yes"><exception negate_pos="yes"  postag="VB:.*" postag_regexp="yes" /></token>
            </pattern>
            <message>Запятая при обращении: <suggestion>\1, \2</suggestion></message>
            <short>Запятая при обращении</short>
            <example correction="Иван, принесите"><marker>Иван принесите</marker> ведёрко.</example>
            <example correction="Иван, принеси"><marker>Иван принеси</marker> ведёрко.</example>
            <example>Иван, принеси ведёрко.</example>
            <example>На помощь Сергею пришли обычные горожане.</example>
            <example>Сейчас я иду домой.</example>
            <example>Ильин день у православных.</example>
        </rule>
        <rule id="Punct_skazano_sdelano" name="Сказано – сделано">
            <pattern>
                <token>cказано</token>
                <token>сделано</token>
            </pattern>
            <message>Пропущено тире: <suggestion>\1 – \2</suggestion>.</message>
            <short>Пропущено тире</short>
            <example correction="cказано – сделано"><marker>cказано сделано</marker></example>
            <example>Сказано – сделано!</example>
        </rule>
    </category>
    <category id="TYPOGRAPHY" name="Типографика">     
        
        <rulegroup default="on" id="DOUBL_KAVITCHKI" name="Двойные кавычки">
            <rule>
               <pattern>
                <token>«</token>
                <token>«</token>
            </pattern>
            <message>Кавычки не соответствуют нормам типографики. Кавычки одного рисунка рядом не повторяются: <suggestion>«</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B2%D1%8B%D1%87%D0%BA%D0%B8</url>
            <short>Кавычки одного рисунка рядом не повторяются</short>
            <example>«Цыганы» мои не продаются вовсе», — сетовал Пушкин.</example>
            <example correction="«"><marker>««</marker>Цыганы» мои не продаются вовсе», — сетовал Пушкин.</example>
           </rule>
           <rule>
               <pattern>
                <token>»</token>
                <token>»</token>
            </pattern>
            <message>Кавычки не соответствуют нормам типографики. Кавычки одного рисунка рядом не повторяются: <suggestion>»</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%B2%D1%8B%D1%87%D0%BA%D0%B8</url>
            <short>Кавычки одного рисунка рядом не повторяются</short>
            <example>«Цыганы» мои не продаются вовсе», — сетовал Пушкин.</example>
            <example correction="»">«Цыганы<marker>»»</marker> мои не продаются вовсе», — сетовал Пушкин.</example>
           </rule>
        </rulegroup>
        <rule default="on" id="postscriptum" name="«P.S.»">
             <pattern case_sensitive="no">
                    <token>P</token>
                    <token>.</token>
                    <token spacebefore="yes">S</token>
                    <token>.</token>
             </pattern>
            <message>«P.S.» пробелом не разделяется: <suggestion>P.S.</suggestion></message>
            <short>«P.S.» пробелом не разделяется</short>
            <example>P.S.</example>
            <example correction="P.S."><marker>P. S.</marker></example>
        </rule>
        <rule default="off" id="KAVITCHKI" name="” → „">
            <pattern>
                <token>“</token>
            </pattern>
            <message>Кавычки не соответствуют нормам типографики: <suggestion>„</suggestion>пример<suggestion>”</suggestion>.</message>
            <short>Неправильные кавычки</short>
            <example>Газета „Правда”.</example>
            <example correction="„|”">Газета <marker>“</marker>Правда”.</example>
        </rule>
        <rule default="off" id="Three_dot" name="... → …">
            <pattern>
                <token>.</token>
                <token>.</token>
                <token>.</token>
            </pattern>
            <message>Заменить на типографский символ многоточия?<suggestion>…</suggestion></message>
            <short>Заменить на многоточие?</short>
            <example>Продолжение следует…</example>
            <example correction="…">Продолжение следует<marker>...</marker></example>
        </rule>
        <rulegroup  default="on" id="Wrong_group_punct" name="Неправильное сочетание знаков препинания">
           <rule>         
            <pattern>
                <token>?</token>
                <token>!</token>
                <token>!</token>
            </pattern>
            <message>Неправильное сочетание знаков препинания. Возможная замена: <suggestion>?!</suggestion></message>
            <short>Неправильное сочетание знаков препинания</short>
            <example>Продолжение следует?!</example>
            <example correction="?!">Продолжение следует<marker>?!!</marker></example>
           </rule>
        <rule>         
            <pattern>
                <token>!</token>
                <token>?</token>
            </pattern>
            <message>Неправильное сочетание знаков препинания. Возможная замена: <suggestion>?!</suggestion></message>
            <short>Неправильное сочетание знаков препинания</short>
            <example>Продолжение следует?!</example>
            <example correction="?!">Продолжение следует<marker>!?</marker></example>
        </rule>
        <rule>
 	    <pattern>
  		<token>?</token>
  		<token skip="1">.<exception scope="next">.</exception></token>
 	    </pattern>
 	    <message>Неправильное сочетание знаков препинания. Возможная замена: <suggestion>?</suggestion></message>
 	    <short>Неправильное сочетание знаков препинания</short>
 	    <example>Продолжение следует?</example>
 	    <example correction="?">Продолжение следует<marker>?.</marker></example>
	</rule>
    
        </rulegroup>
        
        <rule default="on" id="TIRE" name="Дефис вместо тире" tags="picky">
            <pattern>
                <token regexp="yes">[а-яё][а-яё].*</token>
                <marker>
                    <token spacebefore="yes">-</token>
                </marker>
                <token spacebefore="yes" regexp="yes">[а-яёЁА-Я][а-яё].*</token>
            </pattern>
            <message>Дефис вместо тире <suggestion>—</suggestion></message>
            <short>Тире</short>
            <example correction='—'>В основе сюжета <marker>-</marker> дальнейшие приключения центрального персонажа «Двенадцати стульев» Остапа Бендера.</example>
            <example>В основе сюжета — дальнейшие приключения центрального персонажа «Двенадцати стульев» Остапа Бендера.</example>
        </rule> 
                   
        <rule default="on" id="PUNKT_KAVITCHKI" name="Кавычки и знаки препинания">
            <pattern>
                <token spacebefore="no" regexp="yes"><exception scope="previous" regexp="yes">;|:|[\p{Digit}]*|,</exception>;|:|–|-|—|,</token>
                <token regexp="yes">»|\)</token>
            </pattern>
            <message>Знаки препинания должны стоять после закрывающихся кавычек или скобок: <suggestion>\2\1</suggestion></message>
            <short>Знаки препинания — после кавычек/скобок</short>
            <example>Газета «Правда»: &quot;У нас опубликована сенсационная статья&quot;!</example>
            <example>У нас опубликована сенсационная ;) статья.</example>
            <example>(1989—)</example>
            <example correction="»:">Газета «Правда<marker>:»</marker> &quot;У нас опубликована сенсационная статья&quot;!</example>
        </rule>
        
        <rulegroup default="on" id="Digit_comnatnaja" name="Сокращения: «2-комнатная», ...">
            <rule>
                <pattern>
                    <token regexp="yes">[\p{Digit}]-х</token>
                    <token inflected="yes">комнатный</token>
                </pattern>
                <message>Неправильное словообразование. Должно быть: <suggestion><match no="1" regexp_match="([\p{Digit}])-(х)" regexp_replace="$1‑"></match><match no="2"></match></suggestion></message>
                <short>Неправильное сокращение</short>
                <example correction="2‑комнатные">В доме есть <marker>2-х комнатные</marker> квартиры.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="Digit_defis_letter" name="Окончания порядковых числительных">
            <rule>
                <pattern>
                    <token regexp="yes">[\p{Digit}](й|го|му|м|о|я|е|ми|х)<exception scope= "previous">,</exception></token>
                </pattern>
                <message>Пропущен дефис. Должно быть: <suggestion><match no="1" regexp_match="([\p{Digit}])(й|го|му|м|о|я|е|ми|х)" regexp_replace="$1‑$2"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%80%D1%8F%D0%B4%D0%BA%D0%BE%D0%B2%D1%8B%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5</url>
                <short>Пропущен дефис</short>
                <example>План должен быть выполнен к 6-му сентября.</example>
                <example>План должен быть выполнен к 7‑му сентября.</example>
                <example>Высота этой горы 345,2 м.</example>
                <example correction="6‑му">План должен быть выполнен к <marker>6му</marker> сентября.</example>
            </rule>
            <rule>
                <pattern>
                    <token regexp="yes">[\p{Digit}]<exception scope= "previous">,</exception></token>
                    <token regexp="yes">й|го|му|о|я|е|ми|х</token>
                </pattern>
                <message>Пропущен дефис. Должно быть: <suggestion>\1-\2</suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%80%D1%8F%D0%B4%D0%BA%D0%BE%D0%B2%D1%8B%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5</url>
                <short>Пропущен дефис</short>
                <example>План должен быть выполнен к 6-му сентября.</example>
                <example correction="6-му">План должен быть выполнен к <marker>6 му</marker> сентября.</example>
            </rule>
        </rulegroup>
    
        <rule id="LC_AFTER_PERIOD_RU" name="После точки идёт слово, начинающееся со строчной буквы" >
            <!-- https://github.com/languagetool-org/languagetool/issues/3655 -->
            <antipattern>
                <token regexp="yes" case_sensitive="yes">.*[a-zа-яё]$</token>
                <token>.</token>
                <token regexp="yes">de|com|net|org|ru|by|ua|kz|su|рф|рус|онлайн|сайт|москва</token>
            </antipattern>
            <pattern>
                <token spacebefore="yes" regexp="yes" case_sensitive="yes">.*[a-zа-яё]$</token>
                <token spacebefore="no">.</token>
                <marker>
                    <token spacebefore="no" regexp="yes" case_sensitive="yes">[a-zа-яёA-ZА-ЯЁ].+<exception postag="UNKNOWN"/><exception regexp="yes">bat|de|dat|doc|pro|php|med|xls|docx|xlsx|odt|ods|sxc|sxw|txt</exception></token>
                </marker>
            </pattern>
            <message>Поставьте пробел после точки, но если пропущено начало предложения, то пишите следующее слово с большой буквы:<suggestion> <match no="3" case_conversion="startupper"/></suggestion> или <suggestion> <match no="3"/></suggestion></message>
            <short>Пропущен пробел</short>
            <example correction=" Только| только">LanguageTool предоставляет проверку грамматики, стиля и орфографии.<marker>только</marker> вставьте текст сюда.</example>
        </rule>
          
        
    </category>
    <category id="GRAMMAR" name="Грамматика">
        
      <rulegroup id="Sklonenije_NUM_NN" name="Склонение «числительное + существительное»">
            <!-- исключения один, два, три, четыре -->
        <rule>
            <pattern>
                    <token postag="NumC:Nom" ><exception regexp="yes">одни|один|одно|одна|две|два|три|четыре|столько|сколько|несколько|много|немного|немножко|немало|мало|сто|тысяча|двое|трое|четверо|пятеро</exception></token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:.*:.*" negate_pos="yes" postag_regexp="yes"/><exception postag="NN:.*:PL:R"  postag_regexp="yes"/><exception regexp="yes" >утра|вечера|дня|ночи|минимум|максимум</exception></token>
            </pattern>
            <message suppress_misspelled="yes">Числительное не согласуется с существительным по падежу: <suggestion><match no="1"/> <match no="2" postag_regexp="yes" postag="NN:(.*):.*:.*" postag_replace="NN:$1:PL:R" /></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Неверное склонение</short>
            <example correction="пять карандашей" >В коробке лежало <marker>пять карандаша</marker>.</example>
            <example>В коробке лежало пять карандашей.</example>
            <example>Это позволило в несколько раз расширить диапазон длин волн.</example>
            <example>Численность рабочих уменьшилась в пять раз.</example>
            <example>Новая машина займёт много места.</example>
            <example>Я просыпаюсь в шесть утра.</example>
            <example>К сожалению, дней через пять минимум.</example>
         </rule>
         <rule>
            <antipattern>
                <token regexp="yes">метр|километр|сантиметр</token>
                <token postag="NumC:Nom" />
                <token>один</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:.*:.*" negate_pos="yes" postag_regexp="yes"/><exception postag="NN:.*:Sin:Nom"  postag_regexp="yes"/><exception postag="NN:.*:Sin:V"  postag_regexp="yes"/></token>
            </antipattern>
            <pattern>
                    <token>один</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:.*:.*" negate_pos="yes" postag_regexp="yes"/><exception postag="NN:.*:Sin:Nom"  postag_regexp="yes"/><exception postag="NN:.*:Sin:V"  postag_regexp="yes"/></token>
            </pattern>
            <message suppress_misspelled="yes">Числительное не согласуется с существительным по падежу: <suggestion><match no="1"/> <match no="2" postag_regexp="yes" postag="NN:(.*):.*:.*" postag_replace="NN:$1:Sin:Nom" /></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Неверное склонение</short>
            <example correction="один карандаш" >В коробке лежал <marker>один карандаша</marker>.</example>
            <example>В коробке лежал один карандаш.</example>
            <example>Ты не должен столько есть за один раз.</example>
            <example>В нём метр девяносто один росту.</example>    <!--  согласуется с "метр" -->
         </rule>
         <rule>
            <pattern>
                    <token regexp="yes">два|три|четыре<exception scope="previous" postag="NN:.*:Sin:R"  postag_regexp="yes"/></token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:.*:.*" negate_pos="yes" postag_regexp="yes"/><exception postag="NN:.*:Sin:R"  postag_regexp="yes"/><exception regexp="yes" >минимум|максимум</exception></token>
            </pattern>
            <message suppress_misspelled="yes">Числительное не согласуется с существительным по падежу: <suggestion><match no="1"/> <match no="2" postag_regexp="yes" postag="NN:(.*):.*:.*" postag_replace="NN:$1:Sin:R" /></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Неверное склонение</short>
            <example correction="три карандаша" >В коробке лежало <marker>три карандаш</marker>.</example>
            <example>В коробке лежало два карандаша.</example>
            <example>Однако дворец был возрождён за два года.</example>
            <example>К сожалению, дня через два минимум.</example>
            <example>Мне нужна дощечка дюйма три толщиной</example> <!-- обратный порядок слов -->
         </rule>
        </rulegroup>   
        
        <rulegroup id="Sklonenije_chislitelnih" name="Склонение количественных числительных">
            <!-- Склонение количественных числительных (Т) -->
         <rule>
            <pattern>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:T'></exception></token>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:T'></exception></token>
                <token postag='NumC:T' ><exception  negate_pos="yes" postag='NumC:T'></exception></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:T" /> <match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:T" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='ста двадцатью пятью'>Склонять числительные можно <marker>сто двадцать пятью</marker> способами, но только один из них правильный.</example>
            <example>Склонять числительные можно ста двадцатью пятью способами, но только один из них правильный.</example>
         </rule>
         <rule>
            <pattern>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:T'></exception></token>
                <token postag='NumC:T' ></token>
                <token postag='NumC:T' ><exception  negate_pos="yes" postag='NumC:T'></exception></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:T" /> <match no="2" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='ста двадцатью пятью'>Склонять числительные можно <marker>сто двадцатью пятью</marker> способами, но только один из них правильный.</example>
            <example>Склонять числительные можно ста двадцатью пятью способами, но только один из них правильный.</example>
         </rule>
         <rule>
            <pattern>
                <token postag='NumC:T' ></token>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:T'></exception></token>
                <token postag='NumC:T' ><exception  negate_pos="yes" postag='NumC:T'></exception></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1"  /> <match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:T" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='ста двадцатью пятью'>Склонять числительные можно <marker>ста двадцать пятью</marker> способами, но только один из них правильный.</example>
            <example>Склонять числительные можно ста двадцатью пятью способами, но только один из них правильный.</example>
         </rule>
         <rule>
            <pattern>
                <token negate_pos="yes"  postag='NumC:.*' postag_regexp='yes'></token>
               <marker>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:T'></exception></token>
                <token skip="1" postag='NumC:T' ><exception negate_pos="yes" postag='NumC:T'></exception><exception  scope="next" postag_regexp="yes" postag='NumC:.*'></exception></token>             
               </marker>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:T" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='двадцатью пятью'>Склонять числительные можно <marker>двадцать пятью</marker> способами, но только один из них правильный.</example>
            <example>Склонять числительные можно двадцатью пятью способами, но только один из них правильный.</example>
         </rule>                   
        <!-- Склонение количественных числительных (Им) -->
         <rule>
            <pattern>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:Nom'></exception></token>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:Nom'></exception></token>
                <token postag='NumC:Nom'></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:Nom" /> <match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:Nom" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='сто двадцать пять'>Способ номер <marker>ста двадцати пять</marker>.</example>
            <example>сто двадцать пять</example>
         </rule>
         <rule>
            <pattern>
                <token postag='NumC:Nom' ></token>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:Nom'></exception></token>
                <token postag='NumC:Nom'></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1" /> <match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:Nom" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='сто двадцать пять'>Способ номер <marker>сто двадцати пять</marker>.</example>
            <example>сто двадцать пять</example>
         </rule>
         <rule>
            <pattern>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:Nom'></exception></token>
                <token postag='NumC:Nom' ></token>
                <token postag='NumC:Nom'></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:Nom" /> <match no="2" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='сто двадцать пять'>Способ номер <marker>ста двадцать пять</marker>.</example>
            <example>сто двадцать пять</example>
         </rule>
         <rule>
            <pattern>
                <token negate_pos="yes"  postag='NumC:.*' postag_regexp='yes'></token>
                <marker>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:Nom'></exception><exception regexp='yes'>одиножды|дважды|трижды|четырежды|пятью|шестью|семью|восемью|девятью</exception></token>
                <token skip="1" postag='NumC:Nom'><exception  scope="next" postag_regexp="yes" postag='NumC:.*'></exception></token>
                </marker>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:Nom" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='двадцать пять'>Способ номер <marker>двадцатью пять</marker>.</example>
            <example>Способ номер двадцать пять.</example>
         </rule>
       <!-- Склонение количественных числительных (Р) --> 
         <rule>
            <pattern>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:R'></exception></token>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:R'></exception></token>
                <token postag='NumC:R'></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:R" /> <match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:R" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='ста двадцати пяти'>Скорость машины составляла около <marker>сто двадцать пяти</marker> километров в час.</example>
            <example>ста двадцати пяти</example>
         </rule>
         <rule>
            <pattern>
                <token postag='NumC:R' ></token>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:R'></exception></token>
                <token postag='NumC:R'></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1" /> <match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:R" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='ста двадцати пяти'>Скорость машины составляла около <marker>ста двадцать пяти</marker> километров в час.</example>
            <example>ста двадцати пяти</example>
         </rule>
         <rule>
            <pattern>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:R'></exception></token>
                <token postag='NumC:R' ></token>
                <token postag='NumC:R'></token>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="1" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:R" /> <match no="2" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
            <example correction='ста двадцати пяти'>Скорость машины составляла около <marker>сто двадцати пяти</marker> километров в час.</example>
            <example>ста двадцати пяти</example>
         </rule>  
         <rule>
            <pattern>
                <token negate_pos="yes"  postag='NumC:.*' postag_regexp='yes'></token>
                <marker>
                <token postag='NumC:.*' postag_regexp='yes'><exception postag='NumC:R'></exception></token>
                <token skip="1" postag='NumC:R'><exception  scope="next" postag_regexp="yes" postag='NumC:.*'></exception></token>
                </marker>
            </pattern>
            <message suppress_misspelled="yes">При склонении количественных имён числительных изменяются все слова и все части сложных слов: <suggestion><match no="2" postag_regexp="yes" postag="NumC:.*" postag_replace="NumC:R" /> <match no="3"/></suggestion>.</message>
            <url>https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5#.D0.A1.D0.BA.D0.BB.D0.BE.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BC.D1.91.D0.BD_.D1.87.D0.B8.D1.81.D0.BB.D0.B8.D1.82.D0.B5.D0.BB.D1.8C.D0.BD.D1.8B.D1.85</url>
            <short>Склоняются все слова</short>
           <example correction='двадцати пяти'>Скорость машины составляла около <marker>двадцать пяти</marker> километров в час.</example>
           <example>двадцати пяти</example>
         </rule>   
        </rulegroup>
        <rule id="grammar_o_tom_to_chto" name="Грамматические ошибки: «о том, то что ...»">
            <pattern>
                <token>о<exception regexp="yes" scope="previous">—|-|,|[!?)»]</exception></token>
                <token>том</token>
                <token>,</token>
                <token>то</token>
                <token>что</token>
            </pattern>
            <message>Лишний предлог: <suggestion><match no="1" /> <match no="2" /><match no="3" /> <match no="5" /></suggestion>.</message>           
            <short>Лишний предлог</short>
            <example correction="о том, что">Я хотел сказать <marker>о том, то что</marker> будет.</example>
            <example>Я хотел сказать о том, что будет.</example>
        </rule>
        <rule id="grammar_coordination_of_verbal_participle_phrases" name="Грамматические ошибки вида: «Идя по улице, у меня развязался шнурок»">     
            <pattern>
                <token postag_regexp="yes" postag="DPT:Real:.*:.*"><exception postag_regexp="yes" postag="DPT:Real:.*:.*" negate_pos="yes"></exception></token>
                <token skip="3"></token>
                <token>,</token>
                <token>у</token>
                <token>меня</token>  
            </pattern>
            <message>Грамматическая ошибка: замените деепричастие глаголом в прошедшем времени.</message>           
            <suggestion>Когда я <match  no="1" postag="DPT:Real:(.*):(.*)" postag_regexp="yes" postag_replace="VB:Past:$1:$2:(Masc|Fem)" /> <match no="2" include_skipped="all" />, <match no="4" /> <match no="5" /></suggestion>
            <short>Грамматическая ошибка</short>
            <example correction="Когда я шла по улице, у меня|Когда я шёл по улице, у меня"><marker>Идя по улице, у меня</marker> развязался шнурок.</example>
            <example>Всякий раз, как я вижу, как плачет моя дочь, у меня сердце кровью обливается.</example>
            <example>Когда я шёл по улице, у меня развязался шнурок.</example>
        </rule>
        <rule id="grammar_Duplication_by_the_pronoun_of_the_noun-subject" name="Грамматические ошибки. Дублирование местоимением существительного-подлежащего">
            <pattern>
                <token postag="NN:.*" postag_regexp="yes"><exception  postag="NN:.*" postag_regexp="yes" negate_pos="yes" ></exception><exception  postag="NN:.*:.*:.*:Nom" postag_regexp="yes" negate_pos="yes" ></exception></token>
                <token><exception  postag="VB:.*|UNKNOWN|DPT.*|PT:.*|PT_Short:.*|ADJ:Short:.*" postag_regexp="yes" /></token>
                <token>,</token>
                <token postag="PNN:.*:Nom:P3" postag_regexp="yes"><exception  postag="PNN:.*:Nom:P3" postag_regexp="yes"  negate_pos="yes"></exception></token>
                <token postag="VB:.*" postag_regexp="yes">
                    <exception  postag="VB:.*|SENT_END|PARA_END" postag_regexp="yes"  negate_pos="yes"></exception>
                    <exception>может</exception>
                </token>
            </pattern>
            <message>Грамматическая ошибка. Дублирование местоимением существительного-подлежащего: <suggestion>\1 \2 \5</suggestion>.</message>
            
            <short>Грамматическая ошибка</short>
            <example correction="Героиня пьесы стремилась"><marker>Героиня пьесы, она стремилась</marker> к лучшей жизни.</example>
            <example>Героиня пьесы стремилась к лучшей жизни.</example>
            <example>Эта героиня выступала, она стремилась показать себя с лучшей стороны.</example>
            <example>У разных агентств разные критерии того, кого считать пользователем она.</example>
            <example>Понимая, что его дни сочтены, он пытался решить проблему.</example>
            <example>Как персонификация леса, он может принимать самые различные образы.</example>
            <example>Наше резервирование ещё раз подтвердили в администрации здания, оно продолжает действовать.</example>
        </rule>
        <rule id="grammar_vse_li_noun" name="Склонение (число) «все ли + существительное»">
            <pattern>
                <token>все</token>
                <token>ли</token>
                <token postag="NN:.*:.*:Sin:.*" postag_regexp="yes"><exception  postag="NN:.*:.*:PL:Nom" postag_regexp="yes"/><exception negate_pos="yes"  postag="NN:.*:.*:Sin:.*" postag_regexp="yes"/></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка, требуется множественное число: <suggestion><match no="1" /> <match no="2" /> <match no="3" postag_regexp="yes" postag="NN:(.*):(.*):Sin:.*" postag_replace="NN:$1:$2:PL:Nom" /></suggestion>.</message>
            
            <short>Требуется множественное число</short>
            <example correction="все ли ошибки">А <marker>все ли ошибка</marker> найдены?</example>
            <example>А все ли ошибки найдены?</example>
        </rule>
       
        <rule id="grammar_bolee_interesnee" name="Грамматические ошибки: «более (менее) интереснее, ...»">
            <pattern>
                <token regexp="yes">более|менее</token>
                <token postag="ADJ:Comp"><exception  postag="ADJ:.*:.*" postag_regexp="yes"></exception><exception>уже</exception></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка: <suggestion><match no="1" /> <match no="2" postag_regexp="yes" postag="ADJ" postag_replace="ADJ:Posit:.*:Nom" /></suggestion>.</message>
            
            <short>Грамматическая ошибка</short>
            <example correction="более умная|более умное|более умные|более умный"><marker>более умнее</marker></example>
            <example>более интересный</example>
            <example>умнее</example>
        </rule>
       
         <rule id="grammar_nemnogo_blednovat" name="Грамматические ошибки: «немного бледноват»">
            <pattern>
                <token regexp="yes">немного|слегка|чуть-чуть</token>
                <token postag="ADJ:Short:.*" postag_regexp="yes" regexp="yes">(.*)(оват)</token>
            </pattern>
            <message>Грамматическая ошибка: <suggestion><match no="2" /></suggestion>.</message>
            
            <short>Грамматическая ошибка</short>
            <example correction="бледноват">Мальчик <marker>немного бледноват</marker>.</example>
            <example>Мальчик немного бледный.</example>
            <example>Мальчик бледноват</example>
        </rule>
       
          <rule id="prosit_proshenija" name="Выражение «просить прощения»">
            <pattern>
                <token inflected="yes">просить</token>
                <token>прощение</token>
            </pattern>
            <message>Правильно: <suggestion>\1 прощения</suggestion>.</message>         
            <short>Правильно: «просить прощения»</short>
            <example correction="просил прощения">Он <marker>просил прощение</marker>.</example>
      
        </rule>  
        <rulegroup id="v_svjazi_s" name="Грамматические ошибки: «в связи с ...»">
          <rule>
            <pattern>
                <token>в</token>
                <token>связи</token>
                <token regexp="yes">с|со</token>
                <token postag_regexp="yes" postag="NN:.*"><exception  postag_regexp="yes" postag="NN:.*:.*:T" /><exception  postag_regexp="yes" postag="NN:.*" negate_pos="yes" /></token>
            </pattern>
            <message suppress_misspelled="yes">После словосочетания: «в связи с» необходим творительный падеж: <suggestion><match no="1"/> <match no="2"/> <match no="3"/> <match no="4" postag_regexp="yes" postag="NN:(.*):(.*):(.*):.*"  postag_replace="NN:$1:$2:$3:T"/></suggestion></message>         
            <short>Требуется творительный падеж</short>
            <example correction="В связи с событием|В связи с событьем"><marker>В связи с событие</marker>.</example>
            <example>В связи с событием.</example>
          </rule>
          <rule>
            <pattern>
                <token>в</token>
                <token>связи</token>
                <token>с</token>
                <token inflected="yes">это<exception>этим</exception></token>
            </pattern>
            <message>После словосочетания: «в связи с» необходим творительный падеж: <suggestion>\1 \2 \3 этим</suggestion></message>         
            <short>Требуется творительный падеж</short>
            <example correction="В связи с этим"><marker>В связи с это</marker> событием.</example>
            <example>В связи с этим событием.</example>
          </rule>
        </rulegroup>
        <rulegroup id="v_kontakte_s" name="Грамматические ошибки: «в контакте с ...»">
          <rule>
            <pattern>
                <token>в</token>
                <token>контакте</token>
                <token regexp="yes">с|со</token>
                <token postag_regexp="yes" postag="NN:.*"><exception  postag_regexp="yes" postag="NN:.*:.*:T" /><exception  postag_regexp="yes" postag="NN:.*|SENT_END|PARA_END" negate_pos="yes" /></token>
            </pattern>
            <message suppress_misspelled="yes">После словосочетания: «в контакте с» необходим творительный падеж: <suggestion><match no="1"/> <match no="2"/> <match no="3"/> <match no="4" postag_regexp="yes" postag="NN:(.*):(.*):(.*):.*"  postag_replace="NN:$1:$2:$3:T"/></suggestion></message>         
            <short>Требуется творительный падеж</short>
            <example correction="в контакте с разработчиком">Он постоянно находился <marker>в контакте с разработчик</marker>.</example>
            <example>Он постоянно находился в контакте с разработчиком.</example>
          </rule>
        </rulegroup>
        <rulegroup id="v_sochetanii_s" name="Грамматические ошибки: «в сочетании с ...»">
          <rule>
            <pattern>
                <token>в</token>
                <token>сочетании</token>
                <token regexp="yes">с|со</token>
                <token postag_regexp="yes" postag="NN:.*"><exception  postag_regexp="yes" postag="NN:.*:.*:T" /><exception  postag_regexp="yes" postag="NN:.*" negate_pos="yes" /></token>
            </pattern>
            <message suppress_misspelled="yes">После словосочетания: «в сочетании с» необходим творительный падеж: <suggestion><match no="1"/> <match no="2"/> <match no="3"/> <match no="4" postag_regexp="yes" postag="NN:(.*):(.*):(.*):.*"  postag_replace="NN:$1:$2:$3:T"/></suggestion></message>         
            <short>Требуется творительный падеж</short>
            <example correction="в сочетании с молоком">Дыню нельзя употреблять <marker>в сочетании с молока</marker>.</example>
            <example>Дыню нельзя употреблять в сочетании с молоком.</example>
          </rule>
        </rulegroup>
        <rulegroup id="v_sravnenii_s" name="Грамматические ошибки: «в сравнении с ...»">
          <rule>
            <pattern>
                <token>в</token>
                <token>сравнении</token>
                <token regexp="yes">с|со</token>
                <token postag_regexp="yes" postag="NN:.*"><exception  postag_regexp="yes" postag="NN:.*:.*:T" /><exception  postag_regexp="yes" postag="NN:.*" negate_pos="yes" /></token>
            </pattern>
            <message suppress_misspelled="yes">После словосочетания: «в контакте с» необходим творительный падеж: <suggestion><match no="1"/> <match no="2"/> <match no="3"/> <match no="4" postag_regexp="yes" postag="NN:(.*):(.*):(.*):.*"  postag_replace="NN:$1:$2:$3:T"/></suggestion></message>         
            <short>Требуется творительный падеж</short>
            <example correction="в сравнении со скоростью">Но <marker>в сравнении со скорость</marker> света, скорость: «Пионера» выглядит просто черепашьей.</example>
            <example>Но в сравнении со скоростью света, скорость: «Пионера» выглядит просто черепашьей.</example>
          </rule>
        </rulegroup>
        <rulegroup id="naravne_s" name="Грамматические ошибки: «наравне с ...»">
          <rule>
            <pattern>
                <token>наравне</token>
                <token regexp="yes">с|со</token>
                <token postag_regexp="yes" postag="NN:.*"><exception  postag_regexp="yes" postag="NN:.*:.*:T" /><exception  postag_regexp="yes" postag="NN:.*" negate_pos="yes" /></token>
            </pattern>
            <message suppress_misspelled="yes">После словосочетания: «наравне с» необходим творительный падеж: <suggestion><match no="1"/> <match no="2"/> <match no="3" postag_regexp="yes" postag="NN:(.*):(.*):(.*):.*"  postag_replace="NN:$1:$2:$3:T"/></suggestion></message>         
            <short>Требуется творительный падеж</short>
            <example correction="наравне с облаками">Лететь <marker>наравне с облаках</marker>.</example>
            <example>Лететь наравне с облаками.</example>
          </rule>
        </rulegroup>
        <rule id="grammar_v_protivorechii_s" name="«В противоречие с»">
            <pattern>
                <token>в</token>
                <token>противоречие</token>
                <token>с</token>
                <token postag_regexp="yes"  postag="NN:.*:.*:.*"><exception  postag="NN:.*:.*:.*:T" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка: <suggestion><match no="1"/> <match no="2"/> <match no="3"/> <match no="4" postag_regexp="yes" postag="NN:(.*):(.*):(.*):.*" postag_replace="NN:$1:$2:$3:T" /></suggestion>.</message>     
            <short>Грамматическая ошибка</short>
            <example correction="в противоречие с правилами">Это вступает <marker>в противоречие с правил</marker>.</example>
            <example>Это вступает в противоречие с правилами.</example>
        </rule>                     
        <rule id="skuchat_za" name="Грамматические ошибки: «скучать за ... »">
            <pattern>
                <token inflected="yes">скучать</token>
                <token>за</token>
            </pattern>
            <message>Скорей всего требуется предлог «о» или «по».</message>         
            <short>Нужен предлог «о» или «по»</short>
            <example correction=""><marker>Скучаю за</marker> другом.</example>
            <example>Скучаю по другу.</example>
        </rule>  
        <rulegroup id="oplachivat_prep" name="Грамматические ошибки: «оплачивать за», «оплачивать по»">
          <rule>
            <pattern>
                <token inflected="yes" regexp="yes" skip="1">оплатить|оплачивать<exception postag_regexp="yes" postag="PT:.*"></exception></token>
                <token postag="PREP">за</token>      <!--     <token postag="PREP"></token>  -->
            </pattern>
            <message>Предлог не нужен.</message>         
            <short>Лишний предлог</short>
            <example correction=""><marker>Оплатить за</marker> проезд.</example>
            <example correction=""><marker>Оплатить товар за</marker> евро.</example>
            <example>Оплачивать проезд.</example>
            <example>Счёт должен быть оплачен к первому числу следующего месяца.</example>
            <example>Покупатель оплачивает товар  на условиях, предусмотренных настоящим договором.</example>           
          </rule>
          <rule>
            <pattern>
                <token inflected="yes" regexp="yes">оплатить|оплачивать<exception postag_regexp="yes" postag="PT:.*"></exception></token>
                <token postag="PREP">по</token>
                <token postag="NN:.*:.*:D" postag_regexp="yes"></token>  
            </pattern>
            <message suppress_misspelled="yes">Предлог не нужен: <suggestion><match no="1"/> <match no="3" postag_regexp="yes" postag="NN:(.*):(.*):(.*):D"  postag_replace="NN:$1:$2:$3:T"/></suggestion></message>         
            <short>Лишний предлог</short>
            <example correction="Оплатить картой|Оплатить картою"><marker>Оплатить по карте</marker>.</example>
            <example>Оплачивать картой.</example>
          </rule>
        </rulegroup>
        <rulegroup id="sojalet_ob_etom" name="Грамматические ошибки: «сожалею это», «подтвердить об этом» ">
          <!-- TODO: replace "это" -->
          <rule>
             <pattern>
                <token inflected="yes" >сожалеть</token>
                <token>это</token>
            </pattern>
            <message>Необходим предлог «об»: <suggestion>\1 об этом</suggestion></message>         
            <short>Нужен предлог</short>
            <example correction="сожалею об этом">Я <marker>сожалею это</marker>.</example>
            <example>сожалеть об этом</example>
          </rule>
          <rule>
             <pattern>
                <token inflected="yes" regexp="yes" >подтвердить|подтверждать|указать</token>
                <token>об</token>
                <token>этом</token>
            </pattern>
            <message>Предлог «об» не нужен: <suggestion>\1 это</suggestion></message>         
            <short>Предлог не нужен</short>
            <example correction="подтвердить это">Кто бы мог <marker>подтвердить об этом</marker>?</example>
          </rule>
        </rulegroup>
         <rulegroup id="rugat_rugatsja" name="Грамматические ошибки: «ругать или ругаться + ...»">
           <rule>
             <pattern>
                <token inflected="yes">ругать</token>
                <token postag="PREP"></token>
            </pattern>
            <message>Предлог не нужен.</message>         
            <short>Лишний предлог</short>
            <example correction="">Тренер <marker>ругал на</marker> футболиста.</example>
            <example>Тренер ругал футболиста.</example>
          </rule>
          <rule>
             <pattern>
                 <marker>
                     <token inflected="yes" >ругаться</token>
                     <token>на</token>
                 </marker>
                 <token postag_regexp="yes" postag="NN:(Anim|Name|Fam|Patr):.*"></token>
            </pattern>
            <message>В данном контексте предлог «на» недопустим. Возможная замена – использовать предлог «с/со» или глагол «ругать» без предлога.</message>         
            <short>Требуется предлог «с/со»</short>
            <example correction="">Тренер <marker>ругался на</marker> футболиста.</example>
            <example>Тренер ругался с футболистом.</example>
          </rule>
        </rulegroup>
        <rulegroup id="udivlyatsja_na" name="Грамматические ошибки: «удивляться на ...»">
          <rule>
             <pattern>
                <token inflected="yes" >удивляться</token>
                <token>на</token>
            </pattern>
            <message>В данном контексте предлог «на» недопустим.</message>         
            <short>Предлог не нужен</short>
            <example correction="">Я <marker>удивляюсь на</marker> тебя.</example>
            <example>Я тебе удивляюсь.</example>
          </rule>
        </rulegroup>
        <rulegroup id="vzjat_s_nego_interview" name="Грамматические ошибки: «взять с ... интервью»">
          <rule>
             <pattern>
                <token inflected="yes" >взять</token>
                <token>с</token>
                <token skip="2"></token>
                <token>интервью</token>
            </pattern>
            <message>Вместо предлога «с» необходим «у»: <suggestion><match no="1" /> у <match no="3" include_skipped="all" /> <match no="4" /></suggestion></message>         
            <short>Неверный предлог</short>
            <example correction="взял у гостя интервью">Комментатор <marker>взял с гостя интервью</marker>.</example>
            <example correction="взял у гостя в студии интервью">Комментатор <marker>взял с гостя в студии интервью</marker>.</example>
            <example>Комментатор взял у гостя интервью.</example>
          </rule>
        </rulegroup>
         <rulegroup  id="znat_cenu" name="Грамматические ошибки: «знать цену ...»">
           <rule>
             <pattern>
                <token inflected="yes">знать</token>
                <token>цену</token>
                <token postag_regexp="yes" postag="NN:.*:.*:R"></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка: <suggestion><match no="1" /> <match no="2" /> <match no="3" postag_regexp="yes" postag="NN:(.*):(.*):(.*):R" postag_replace="NN:$1:$2:$3:D" /></suggestion>.</message>
            
            <short>Грамматическая ошибка</short>
            <example correction="знал цену слову">Он <marker>знал цену слова</marker>.</example>
            <example>Он знал цену слову.</example>
          </rule>
          <rule>
             <pattern>
                <token inflected="yes">знать</token>
                <token>цену</token>
                <token postag_regexp="yes" postag="ADJ:MPR:.*:.*|ADJ:.*:.*"></token>
                <token postag_regexp="yes" postag="NN:.*:.*:R"></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка: <suggestion><match no="1" /> <match no="2" /> <match no="3" /> <match no="4" postag_regexp="yes" postag="NN:(.*):(.*):(.*):R" postag_replace="NN:$1:$2:$3:D" /></suggestion>.</message>
            
            <short>Грамматическая ошибка</short>
            <example correction="знала цену своей красоте">Она <marker>знала цену своей красоты</marker>.</example>
            <example>Она знала цену своей красоте.</example>
          </rule>
          <!--  возможно много ложных срабатываний из-за двусмысленности фразы
          <rule>
             <pattern>
                <token inflected="yes">знать</token>
                <token>её</token>               
                <token>цену</token>
               
            </pattern>
            <message>Грамматическая ошибка: <suggestion><match no="1" /> ей <match no="3" /></suggestion>.</message>
            
            <short>Грамматическая ошибка</short>
            <example correction="знают ей цену">Они <marker>знают её цену</marker>.</example>
            <example>Они знают eй цену.</example>
          </rule>    
          -->
        </rulegroup>
                     
        <rule id="grammar_blagodarja_dat" name="«Благодаря» + дательный падеж">
            <pattern>
                <token>благодаря</token>
                <token postag_regexp="yes"  postag="NN:.*:.*:.*:R"><exception  postag="NN:.*:.*:.*:D" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Требуется дательный падеж: <suggestion><match no="1"/> <match no="2" postag_regexp="yes" postag="NN:(.*):(.*):(.*):R" postag_replace="NN:$1:$2:$3:D" /></suggestion>.</message>
            
            <short>Дательный падеж</short>
            <example correction="Благодаря предупреждению|Благодаря предупрежденью"><marker>Благодаря предупреждения</marker> мы избежали неприятностей.</example>
            <example>Благодаря своевременному предупреждению мы избежали неприятностей.</example>
            <example>Благодаря предупреждению мы избежали неприятностей.</example>
        </rule>  
         <rule id="grammar_soobrazno_dat" name="«Сообразно» + дательный падеж">
            <pattern>
                <token>сообразно</token>
                <token postag_regexp="yes"  postag="NN:.*:.*:.*:R"><exception  postag="NN:.*:.*:.*:D" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Требуется дательный падеж: <suggestion><match no="1"/> <match no="2" postag_regexp="yes" postag="NN:(.*):(.*):(.*):R" postag_replace="NN:$1:$2:$3:D" /></suggestion>.</message>
            
            <short>Дательный падеж</short>
            <example correction="сообразно взглядам">Он ведёт себя <marker>сообразно взглядов</marker> общества.</example>
            <example>Он ведёт себя сообразно взглядам.</example>
        </rule>  
        
        <rule id="grammar_v_sootvetstvii" name="«В соответствии с»">
            <pattern>
                <token>в</token>
                <token>соответствии</token>
                <token postag_regexp="yes"  postag="NN:.*:.*:D"><exception  postag="NN:.*:.*:T" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка: <suggestion><match no="1"/> <match no="2"/> с <match no="3" postag_regexp="yes" postag="NN:(.*):(.*):(.*):D" postag_replace="NN:$1:$2:$3:T" /></suggestion>.</message>     
            <short>Грамматическая ошибка</short>
            <example correction="в соответствии с графиком">Отпуск предоставляется <marker>в соответствии графику</marker>.</example>
            <example>Отпуск предоставляется в соответствии с графиком.</example>
        </rule> 
        <rule id="grammar_uverennost_v" name="«Уверенность в ...»">
            <pattern>
                <token>уверенность</token>
                <token>в</token>
                <token postag_regexp="yes"  postag="NN:.*:.*:V"><exception  postag="NN:.*:.*:P" postag_regexp="yes"></exception><exception>том</exception></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка: <suggestion><match no="1"/> <match no="2"/> <match no="3" postag_regexp="yes" postag="NN:(.*):(.*):(.*):V" postag_replace="NN:$1:$2:$3:P" /></suggestion>.</message>     
            <short>Грамматическая ошибка</short>
            <example correction="уверенность в силах"><marker>уверенность в силы</marker>.</example>
            <example>уверенность в силах</example>
        </rule> 
        
         <rulegroup id="toska_toskovat" name="«Тоска (тосковать) + ...»">
           <rule>    
            <pattern>
                <token inflected="yes">тоска</token>
                <token>по</token>
                <token postag_regexp="yes"  postag="NN:.*:.*:P"><exception  postag="NN:.*:.*:D" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка: <suggestion><match no="1"/> <match no="2"/> <match no="3" postag_regexp="yes" postag="NN:(.*):(.*):(.*):P" postag_replace="NN:$1:$2:$3:D" /></suggestion>.</message>     
            <short>Грамматическая ошибка</short>
            <example correction="Тоска по дому"><marker>Тоска по доме</marker>.</example>
            <example>Тоска по дому.</example>
           </rule>
           <rule>    
            <pattern>
                <token inflected="yes">тосковать</token>
                <token>по</token>
                <token postag_regexp="yes"  postag="NN:.*:.*:P"><exception  postag="NN:.*:.*:D" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Грамматическая ошибка: <suggestion><match no="1"/> <match no="2"/> <match no="3" postag_regexp="yes" postag="NN:(.*):(.*):(.*):P" postag_replace="NN:$1:$2:$3:D" /></suggestion>.</message>     
            <short>Грамматическая ошибка</short>
            <example correction="Тосковать по дому"><marker>Тосковать по доме</marker>.</example>
            <example>Тосковать по дому.</example>
           </rule>
        </rulegroup>
        <rule id="grammar_poshel_k" name="Грамматика: «пошёл» + ...">  <!-- issue #1073 -->
            <pattern>
                <token regexp="yes">пошёл|пошел</token>
                <token postag="NN:.*:.*:Sin:D" postag_regexp="yes"></token>
            </pattern>
            <message>Возможно пропущен предлог или существительное стоит в неправильном падеже.</message>
            <short>Пропущен предлог</short>
            <example correction="">Я <marker>пошёл речке</marker>.</example>
            <example>Я пошёл к речке.</example>
        </rule>
        <rule id="grammar_po_sravneniju_s" name="Грамматика: «по сравнению» + ..."> <!-- issue #1073 -->
            <pattern>
                <token>по</token>
                <token>сравнению</token>
                <token><exception regexp="yes">с|со|в|,|;</exception></token>
            </pattern>
            <message>Пропущен предлог.</message>
            <short>Пропущен предлог</short>
            <example correction="">Дело в том, что функции Риккати-Бесселя могут быть записаны в виде обратной рекуррентной последовательности с хорошей сходимостью для более широкого диапазона аргументов <marker>по сравнению сферическими</marker> функциями Бесселя следующим образом:</example>
            <example>Дело в том, что функции Риккати-Бесселя могут быть записаны в виде обратной рекуррентной последовательности с хорошей сходимостью для более широкого диапазона аргументов по сравнению со сферическими функциями Бесселя следующим образом:</example>
        </rule>      
        <rule  id="Unify_PADJ_NN_case" name="Согласование притяжательного прилагательного (местоимения) с существительным по падежу">
            <!-- TODO remove свой + все формы from exception -->       
            <antipattern>
                <token>во</token>
                <token regexp="yes">всём|всем</token>
                <token postag="NN:.*" postag_regexp="yes"></token>
            </antipattern>          
            <pattern>
                <marker>
                    <unify negate="yes">
                        <feature id="case"/>
                        <token postag="ADJ:MPR:.*" postag_regexp="yes"><exception  negate_pos="yes"   postag="ADJ:MPR:.*" postag_regexp="yes" /><exception scope="previous" regexp="yes">,|–|-|—|оба|обе</exception><exception inflected="yes" regexp="yes" >который|такой|сам|самый|каждый|свой|другой|оба|обе</exception><exception scope="previous"  postag="NN:.*" postag_regexp="yes" ></exception></token>                        
                        <token postag="NN:.*" postag_regexp="yes">
                            <exception regexp="yes">друг|уже|уж|при|после|весь|мировой|молодой|куплю|байке|лажа|лазанью</exception>
                            <exception postag="VB:.*|CONJ|PREP|ADV|ADJ:.*" postag_regexp="yes" />
                            <!-- Слова без буквы ё имеют неправильный падеж -->
                            <exception regexp="yes">&missing_yo;</exception>
                            <exception scope="next" regexp="yes">&double_num;</exception>
                            <exception case_sensitive="yes">Tом</exception>
                        </token>
                    </unify>				        
                </marker>
            </pattern>
            <filter class="org.languagetool.rules.ru.AdvancedSynthesizerFilter" args="lemmaFrom:1 lemmaSelect:ADJ:MPR:.*:.* postagFrom:2 postagSelect:NN:.*:(.*):.*:(.*) postagReplace:ADJ:MPR:\b1:\b2"/>
            <message>Притяжательное прилагательное (местоимение) не согласуется с существительным по падежу.</message>
            <suggestion>{suggestion} \2</suggestion>
            <short>Не согласуются по падежу</short>
            <example>моё отношение</example>
            <example>Сама кашу заварила, сама и расхлёбывай.</example>
            <example>Тем самым предложение обособляется.</example>
            <example>В простом курятнике моём Пшена мы с вами поклюём.</example>
            <example>Положив тем самым основы коалиции.</example>
            <example correction="моё отношение"><marker>моему отношение</marker></example>
        </rule>
        <rule  id="Unify_PADJ_NN_gender" name="Согласование притяжательного прилагательного (местоимения) с существительным по роду">
            <!-- TODO remove свой + все формы from exception -->                 
            <pattern>
                <marker>
                    <unify negate="yes">
                        <feature id="gender"/>
                        <token postag="ADJ:MPR:.*" postag_regexp="yes"><exception  negate_pos="yes"   postag="ADJ:MPR:.*" postag_regexp="yes" /><exception  postag="ADJ:MPR:PL.*" postag_regexp="yes" /><exception scope="previous" regexp="yes">,|–|-|—|при|оба|обе</exception><exception inflected="yes" regexp="yes" >который|такой|сам|самый|каждый|свой|другой|оба|обе</exception><exception scope="previous"  postag="NN:.*" postag_regexp="yes" ></exception></token>
                        <token postag="NN:.*" postag_regexp="yes">
                            <exception regexp="yes">друг|уже|уж|при|после|весь|мировой|молодой|куплю|байке|лажа|лазанью</exception>
                            <exception postag="VB:.*|CONJ|PREP|ADV|ADJ:.*" postag_regexp="yes" />
                            <!-- Слова без буквы ё имеют неправильный падеж -->
                            <exception regexp="yes">&missing_yo;</exception>
                            <exception scope="next" regexp="yes">&double_num;</exception>
                            <exception case_sensitive="yes">Tом</exception>
                            <!-- полчаса, полдня -->
                            <exception regexp="yes">пол.*</exception>  
                        </token>
                    </unify>				        
                </marker>
            </pattern>
            <filter class="org.languagetool.rules.ru.AdvancedSynthesizerFilter" args="lemmaFrom:1 lemmaSelect:ADJ:MPR:.*:.* postagFrom:2 postagSelect:NN:.*:(.*):.*:(.*) postagReplace:ADJ:MPR:\b1:\b2"/>
            <message>Притяжательное прилагательное (местоимение) не согласуется с существительным по роду.</message>
            <suggestion>{suggestion} \2</suggestion>
            <short>Не согласуются по роду</short>
            <example>моё отношение</example>
            <example>Он сам же тот пенальти реализовал.</example>
            <example>Сама кашу заварила, сама и расхлёбывай.</example>
            <example>Тем самым предложение обособляется.</example>
            <example>Он каждые полчаса бежит в лабораторию.</example>
            <example>Ваш второй ребёнок — мальчик?</example> 
            <example correction="моё отношение"><marker>моей отношение</marker></example>
        </rule>
        <rule  id="Unify_PADJ_NN_number" name="Согласование притяжательного прилагательного (местоимения) с существительным по числу">
            <!-- TODO remove свой + все формы from exception -->
            <antipattern>
              <token postag="ADJ:MPR:.*" postag_regexp="yes">
                  <exception  negate_pos="yes"   postag="ADJ:MPR:.*" postag_regexp="yes" />
                  <exception scope="previous" regexp="yes">,|–|-|—|при</exception>
                  <exception inflected="yes" regexp="yes" >который|такой|сам|самый|каждый|свой</exception>
              </token>
              <token postag="NN:.*" postag_regexp="yes">
                  <exception regexp="yes">друг|уже|уж|при|после|весь|мировой|молодой|куплю|байке|лажа|лазанью</exception>
                  <exception postag="VB:.*|CONJ|PREP|ADV|ADJ:.*" postag_regexp="yes" />
                  <!-- Слова без буквы ё имеют неправильный падеж -->
                  <exception regexp="yes">&missing_yo;</exception>
                  <exception scope="next" regexp="yes">&double_num;</exception>
                  <exception case_sensitive="yes">Tом</exception>
                  <!-- полчаса, полдня -->
                  <exception regexp="yes">пол.*</exception>
              </token>
              <token regexp="yes">и|или|,</token>
              <token postag="NN:.*" postag_regexp="yes"></token>
            </antipattern>    
            <pattern>
                <marker>
                    <unify negate="yes">
                        <feature id="number"/>
                        <token postag="ADJ:MPR:.*" postag_regexp="yes"><exception  negate_pos="yes"   postag="ADJ:MPR:.*" postag_regexp="yes" /><exception scope="previous" regexp="yes">,|–|-|—|при|два|три|оба|обе</exception><exception inflected="yes" regexp="yes" >который|такой|сам|самый|каждый|свой|другой|оба|обе</exception><exception scope="previous"  postag="NN:.*" postag_regexp="yes" ></exception></token>
                        <token postag="NN:.*" postag_regexp="yes">
                            <exception regexp="yes">друг|уже|уж|при|после|весь|мировой|молодой|куплю|байке|лажа|лазанью</exception>
                            <exception postag="VB:.*|CONJ|PREP|ADV|ADJ:.*" postag_regexp="yes" />
                            <!-- Слова без буквы ё имеют неправильный падеж -->
                            <exception regexp="yes">&missing_yo;</exception>
                            <exception scope="next" regexp="yes">&double_num;</exception>
                            <exception case_sensitive="yes">Tом</exception>
                            <!-- полчаса, полдня -->
                            <exception regexp="yes">пол.*</exception>
                        </token>
                    </unify>				        
                </marker>
            </pattern>
            <filter class="org.languagetool.rules.ru.AdvancedSynthesizerFilter" args="lemmaFrom:1 lemmaSelect:ADJ:MPR:.*:.* postagFrom:2 postagSelect:NN:.*:(.*):.*:(.*) postagReplace:ADJ:MPR:\b1:\b2"/>
            <message>Притяжательное прилагательное (местоимение) не согласуется с существительным по числу.</message>
            <suggestion>{suggestion} \2</suggestion>
            <short>Не согласуются по числу</short>
            <example>это отношение</example>
            <example>Он путешествовал каких-нибудь месяца два.</example>
            <example>Он каждые полчаса бежит в лабораторию.</example>
            <example>Два ваших товарища.</example>
            <example>Родоначальником собаки кто считает волка, кто шакала, а некоторые — оба эти вида (иногда к ним добавляют койота).</example>
            <example>Сама кашу заварила, сама и расхлёбывай.</example>
            <example>Тем самым предложение обособляется.</example>
            <example>Унёс <marker>свои тело</marker> и душу.</example>
            <example correction="это отношение"><marker>эти отношение</marker></example>
        </rule>
        <!--
        <rule  id="Unify_PNN_NN_number" name="Согласование местоимения с существительным по числу" default="off">  -->
            <!-- Disabled. Может быть не только согласование, но и управление.  default="temp_off"
            TODO: указать список конкретных местоимений, к которым применимо правило
            "Целое больше суммы его частей."
            "Давай, я завяжу тебе шнурки."
            -->
            <!--
            <pattern>
                <marker>
                    <unify negate="yes">
                        <feature id="number"/>
                        <token postag="PNN:.*" postag_regexp="yes"><exception postag_regexp="yes" postag="PNN:.*:(R|D|V|T|P):.*" /><exception scope="previous" regexp="yes">,|–|-|—</exception><exception scope="previous" postag="PREP" /><exception inflected="yes" regexp="yes" >это|то</exception></token>
                        <token postag="NN:.*|SENT_END|PARA_END" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*|SENT_END|PARA_END" postag_regexp="yes" />
        -->
                    <!-- Слова без буквы ё имеют неправильный падеж -->
        <!--                    <exception regexp="yes">&missing_yo;</exception>
                        </token>
                    </unify>				        
                </marker>
            </pattern>
            <message>Местоимение не согласуется с существительным по числу.</message>
            <short>Не согласуются по числу</short>
            <example>По сумме всех запусков оптимизации.</example>
            <example>Это и повлияло на их решение.</example>
            <example>Я не могу не верить его словам.</example>
            <example correction="">По сумме <marker>всего запускам</marker> оптимизации.</example>
        </rule>        -->                                   
        <rulegroup default="on" id="Soglasovanie_ADJ_NN" name="Согласование прилагательного с существительным">
            <antipattern>
                <token inflected="yes">сильный</token>
                <token inflected="yes" regexp="yes">страна|мир</token>
                <token></token>
            </antipattern>
            <antipattern>
                <token inflected="yes">довольный</token>
                <token  postag_regexp="yes" postag="NN:.*:.*:T"></token>
                <token></token>
            </antipattern>
            <antipattern>
                <token regexp="yes">&double_num;|[\p{Digit}]+|[\p{Digit}]+-го</token>
                <token></token>
                <marker> 
                    <token postag="ADJ:.*" postag_regexp="yes"></token>
                    <token postag="NN:.*" postag_regexp="yes"></token>
                </marker>
            </antipattern>
            <antipattern>
                <token case_sensitive="yes" regexp="yes">[А-Я].+<exception postag="CONJ|PREP" postag_regexp="yes" /></token>
                <token case_sensitive="yes" regexp="yes">[А-Я].+<exception postag="CONJ|PREP" postag_regexp="yes" /></token>
            </antipattern>
            <antipattern>
                <token case_sensitive="yes" regexp="yes">[А-Я].*[А-Я].*</token>
            </antipattern>
            <antipattern>
                <token regexp="yes">&time;</token>
                <token postag="NN:.*:*" postag_regexp="yes" />
            </antipattern>
            <antipattern>
		        <token regexp="yes">&human;</token>
                <token postag="NN:.*:(Nom|R)" postag_regexp="yes" />
	        </antipattern>
	        <antipattern>
		        <token regexp="yes">&human;</token>
                <token postag="NN:.*:T|ADV"  postag_regexp="yes">
                    <exception postag="NN:.*:T|ADV" postag_regexp="yes" negate_pos='yes'/> 
                </token>
	        </antipattern>   
	        <antipattern>
                <token regexp="yes" postag="ADJ:.*" postag_regexp="yes">&nation;</token>
	        </antipattern>
	        <antipattern>		        
                <token postag="NN:.*" postag_regexp="yes" regexp="yes">&dual;</token>
	        </antipattern> <!-- TODO remove after adding PL tags -->

	        <antipattern>
                <token postag_regexp="yes" postag="VB:INF:.*" />
                <token postag="ADJ:.*" postag_regexp="yes"/>
                <token postag="NN:.*"  postag_regexp="yes"/>			        
	        </antipattern>

	        <antipattern>
                <token postag="VB:.*" postag_regexp="yes"/>
                <token postag="ADJ:Posit:(Masc|Fem|Neut):T" postag_regexp="yes"/>
                <token postag="NN:.*:Sin:V" postag_regexp="yes"/>
	        </antipattern>
	        <antipattern>
                <token postag="VB:.*" postag_regexp="yes" />
                <token postag="ADJ:Posit:PL:T"/>
                <token postag="NN:.*:.*:PL:V" postag_regexp="yes"/>
	        </antipattern>
	        <antipattern>
                <token postag="VB:.*" postag_regexp="yes"/>
                <token postag="ADV"/>
                <token postag="ADJ:Posit:(Masc|Fem|Neut):T" postag_regexp="yes"/>
                <token postag="NN:.*:.*:Sin:V" postag_regexp="yes"/>
	        </antipattern>
	        <antipattern>
                <token postag="VB:.*" postag_regexp="yes" />
                <token postag="ADV"/>
                <token postag="ADJ:Posit:PL:T"/>
                <token postag="NN:.*:.*:PL:V" postag_regexp="yes"/>
	        </antipattern>
	        <!-- "Нам объявят необходимым запрет на спиртное." -->
	        <!-- Нам объявят необходимыми игры на свежем воздухе. -->
	        <!-- Делала политически невозможной отмену единожды данных им законом прав -->
	        <antipattern>
		        <token postag="PT:.*:.*:PL:.*" postag_regexp="yes" skip="2"><exception scope="next" regexp="yes">[«»",]</exception></token>
			<token postag="ADJ:Posit:PL:T"/>
			   <token postag="NN:.*" postag_regexp="yes"/>
	        </antipattern>

	        <antipattern>
		        <token postag="PT:.*:.*:.*" postag_regexp="yes" skip="2">
			        <exception postag=".*:PL:.*" postag_regexp="yes"/>
			        <exception scope="next"  regexp="yes">[«»",]</exception>
		        </token>
		        <token postag="ADJ:*:T" postag_regexp="yes"><exception postag=".*:PL:.*" postag_regexp="yes"/></token>
			    <token postag="NN:.*" postag_regexp="yes"/>
	        </antipattern>

	        <antipattern>
                <token postag="ADJ:.*:R" postag_regexp="yes">
                    <exception scope="previous">по</exception>
                </token>
                <token postag="NN:.*:D" postag_regexp="yes"/>
	        </antipattern>

	        <antipattern>
                <token postag="ADJ:.*:V" postag_regexp="yes">
                    <exception scope="previous">по</exception>
                </token>
                <token postag="NN:.*:D" postag_regexp="yes">
                    <exception postag="NN:.*:D" postag_regexp="yes" negate_pos="yes"/>
                </token>
	        </antipattern>

                <rule  id="Unify_Adj_NN_number">
                    <antipattern>
                        <token postag="ADJ:.*" postag_regexp="yes"></token>
                        <token postag="NN:.*:D" postag_regexp="yes"></token>
                        <token></token>
                    </antipattern>
                    <antipattern>
                        <token skip="-1">как</token>
                        <token skip="-1">так</token>
                        <token postag="ADJ:.*" postag_regexp="yes"></token>
                        <token postag="NN:.*" postag_regexp="yes"></token>
                        <token></token>
                    </antipattern>
                    <antipattern>
                        <marker>
                            <token postag="ADJ:.*" postag_regexp="yes"></token>
                            <token postag="NN:.*" postag_regexp="yes"></token>
                        </marker>
                        <token>,</token>
                        <token postag="NN:.*" postag_regexp="yes"></token>
                    </antipattern>                    
                    <pattern>
                        <marker>
                            <unify negate="yes">
                                <feature id="number"/>
                                <token postag="ADJ:.*" postag_regexp="yes">
                                    <exception scope="previous"  regexp="yes">,|и|или|–|-|—|&double_num;|[\p{Digit}]+|[\p{Digit}]+-го</exception>
                                    <exception postag="ADV|ADJ:Comp|PT:.*|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp='yes'/>
                                    <exception regexp="yes">р|онлайн|полн.*|выходн(ых|ые)|средн.*|арифметическ(ое|ие)|зернов.*|животных|основн.*|легких|лёгких|позднее|поминальное|серый</exception>
                                </token>
                                <token postag="NN:.*" postag_regexp="yes">
                                    <exception postag="CONJ|PREP|ADV|ABR|Ord:.*" postag_regexp="yes" />
                                    <exception regexp="yes">друг|уже|были|дай|гей|стряпней|стерней</exception>
                                    <!-- полчаса, полдня -->
                                    <exception regexp="yes">пол.*</exception>
                                </token>
                            </unify>				        
                        </marker>
                        <token>
                            <exception regexp="yes">и|[«»"/\\]</exception>
                            <exception postag="NN:.*" postag_regexp="yes"/>
                        </token>
                    </pattern>
                    <message>Прилагательное не согласуется с существительным по числу.</message>
                    <short>Грамматическая ошибка в согласовании числа</short>
                    <example>Крепкие столы.</example>
                    <example>Серый зол.</example>
                    <example>Эти добрые полчаса.</example>
                    <example>Контактный тел.</example>
                    <example>Суеверие — это религия слабых духом.</example>
                    <example>Счастливые часов не наблюдают.</example>
                    <example>Смелого пуля боится.</example>
                    <example>За два своих предыдущих боя заработал больше.</example>
                    <example>Как на среднем, так и на высшем уровнях.</example>
                    <example>Сегодня откроются 3 дополнительных офиса.</example>
                    <example>Проверь, что у них одинаковые род/число/падеж.</example>                    
                    <example>на месте нынешних Манитобы, Дакоты и Миннесоты.</example>
                    <example>К середине XIX века были открыты 63 химических элемента, и попытки найти закономерности в этом наборе предпринимались неоднократно.</example>
                    <example>Быть умным Николаю мешала лень.</example>
                    <example>Делала политически невозможной отмену единожды данных им законом прав.</example>
                    <example>Этот экспорт, полностью подконтрольный правительствам стран мира, стремительно рос.</example>
                    <example>Нам объявят необходимым запрет на спиртное.</example>
                    <example>Нам объявят необходимыми игры на свежем воздухе.</example>
                    <example>Для оставшихся неготовыми лодок соорудили бокс.</example>
                    <example>Для оставшейся неготовой лодки соорудили бокс.</example>
                    <example>Умные уже тут.</example>
                    <example>Мы чужие друг другу.</example>
                    <example>Белый стул.</example>
                    <example>Вы должны помочь мне!</example>
                    <example>Больных гриппом просим не входить.</example>
                    <example>Если загорелся зелёный машинам, то можно ехать.</example>
                    <example>Преподавать русский инострацам сложно.</example>
                    <example>Корзина была полная ягод.</example>
                    <example>Воспользуемся средним чисел а и б.</example>
                    <example>После выходных работник смотрелся не важно.</example>
                    <example correction=""><marker>Железные кровать</marker>.</example>
                    <example>Вдали виднелись красивые сосны.</example>
                    <example correction="">Вдали виднелись <marker>красивые ёлка</marker>.</example>
                    <example>Мебель сделана из красивой сосны.</example>
                    <example>Невежливо показывать на других пальцем.</example>
                    <example>Незначительный объём перевозок выполняется маршрутными такси.</example>
                    <example>Он каждые полчаса бежит в лабораторию.</example>
                    <example correction="">Столы сделаны из <marker>красивой сосен</marker>.</example>
                </rule>
                
                 
                <rule  id="Unify_Adj_NN_gender">
                    <antipattern>
                        <token postag="ADJ:.*:Nom" postag_regexp="yes"></token>
                        <token postag="NN:.*:D" postag_regexp="yes"></token>
                        <token></token>
                    </antipattern>
                    <antipattern>
                        <marker>
                            <token postag="ADJ:.*" postag_regexp="yes"></token>
                            <token postag="NN:.*" postag_regexp="yes"></token>
                        </marker>
                        <token>,</token>
                        <token postag="NN:.*" postag_regexp="yes"></token>
                    </antipattern>
                    <pattern>
                        <marker>
                            <unify negate="yes">
                                <feature id="gender"/>
                                <token postag="ADJ:.*" postag_regexp="yes">
                                    <exception scope="previous" regexp="yes">,|–|-|—|был|&double_num;|[\p{Digit}]+</exception>
                                    <exception postag="ADV|ADJ:Comp|PT:.*|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp="yes"/>
             <!--                       <exception regexp="yes">полн.*|выходн(ых|ые)|средн.*|арифметическ(ое|ие)|подобн.*|отличн.*|книжном|продуктовом|праздную|вещей|мобильного</exception>  -->
                                    <exception case_sensitive="yes">Божию</exception>
                                    <exception case_sensitive="yes">Серый</exception>
                                    <exception regexp="yes">р|онлайн</exception>
                                </token>
                                <token postag="NN:.*" postag_regexp="yes">
                                    <exception postag="CONJ|PREP|ADV|ABR|ADJ:.*|Ord:.*" postag_regexp="yes" />
                                    <exception regexp="yes">друг|уже|уж|при|после|весь|мировой|молодой|куплю|байке|лажа|лазанью|были|дай|гей</exception>
                                    <exception case_sensitive="yes">Tом</exception>
                                    <!-- полчаса, полдня -->
                                    <exception regexp="yes">пол.*</exception>  
                                </token>
                            </unify>				        
                        </marker>
                        <token>
                            <exception regexp="yes">и|[«»"/\\]</exception>
                            <exception postag="NN:.*" postag_regexp="yes"/>
                        </token>
                    </pattern>
                    <message>Прилагательное не согласуется с существительным по роду.</message>
                    <example>Крепкие столы.</example>
                    <example>Серый дарит.</example>
                    <example>Контактный тел.</example>
                    <example>Эти добрые полчаса.</example>
                    <example>Суеверие — это религия слабых духом.</example>
                    <example>Счастливые часов не наблюдают.</example>
                    <example>Смелого пуля боится.</example>
                    <example>Сегодня откроются 3 дополнительных офиса.</example>
                    <example>Проверь, что у них одинаковые род/число/падеж.</example> 
                    <example>на месте нынешних Манитобы, Дакоты и Миннесоты.</example>
                    <example>К середине XIX века были открыты 63 химических элемента, и попытки найти закономерности в этом наборе предпринимались неоднократно.</example>
                    <example>Быть умным Николаю мешала лень.</example>
                    <example>Делала политически невозможной отмену единожды данных им законом прав.</example>
                    <example>Этот экспорт, полностью подконтрольный правительствам стран мира, стремительно рос.</example>
                    <example>Нам объявят необходимым запрет на спиртное.</example>
                    <example>Нам объявят необходимыми игры на свежем воздухе.</example>
                    <example>Для оставшихся неготовыми лодок соорудили бокс.</example>
                    <example>Для оставшейся неготовой лодки соорудили бокс.</example>
                    <example>Вестминстер — место пребывания короля, а позднее парламента.</example>
                    <example>Крепкий стол.</example>
                    <example>Крепкая ограда.</example>
                    <example>Умные уже тут.</example>
                    <example>Мы чужие друг другу.</example>
                    <example>Белый стул.</example>
                    <example>Ты должен вести себя спокойнее.</example>
                    <example>Больных гриппом просим не входить.</example>
                    <example>Если загорелся зелёный машинам, то можно ехать.</example>
                    <example>Если загорелся зелёный кошке, то ехать нельзя.</example>
                    <example>Преподавать русский инострацам сложно.</example>
                    <example>Корзина была полная ягод.</example>
                    <example>Воспользуемся средним чисел а и б.</example>
                    <example>После выходных работник смотрелся не важно.</example>
                    <example correction=""><marker>Железный кровать</marker>.</example>
                    <example>Вдали виднелись красивые сосны.</example>
                    <example correction="">Вдали виднелись <marker>красивый ёлка</marker>.</example>
                    <example>Мебель сделана из красивой сосны.</example>
                    <example correction="">Столы сделаны из <marker>красивая деревьев</marker>.</example>
                    <example correction=""><marker>Твердолобая тори</marker>.</example>
                    <example>Был построен добротный дом.</example>
                    <example correction="">Был построен <marker>добротная дом</marker>.</example>
                    <example>Пушистая кошка грелась на солнышке.</example>
                    <example correction="">Эта <marker>пушистое кошка</marker> грелась.</example>
                    <example>Вдали виднелось синее небо.</example>
                    <example>Тогда это проблема другой стороны.</example>
                    <example>Он каждые полчаса бежит в лабораторию.</example>
                    <example correction="">Вдали виднелось <marker>синий небо</marker>.</example>
                    <example>Пустой дом был полным пыли.</example>
                    <example correction="">Цена на <marker>полную заряд</marker> составляет 10$.</example>
                    <example>Цена на полный заряд составляет 10$.</example>
                </rule>

                <rule  id="Unify_Adj_NN_case">
                    <antipattern>
                        <token postag="ADJ:.*:.*:T" postag_regexp='yes'><exception postag="ADJ:.*:.*:T" postag_regexp='yes' negate_pos='yes'/></token>
                        <token postag="NN:.*:.*:.*:Nom" postag_regexp='yes' />
                    </antipattern>
		        
                    <antipattern>
                        <token postag="ADJ:.*:.*:P" postag_regexp='yes'></token>
                        <token postag="NN:.*:.*:.*:2P|NN:.*:.*:.*:2R" postag_regexp='yes' />   <!-- второй предложный (местный) (в неоплатном долгу)-->
                    </antipattern>    
                        
                    <antipattern>
                        <token postag="ADJ:Posit:PL:T"><exception postag="ADJ:MPR:.*"  postag_regexp='yes' scope="previous"/></token>
                        <token postag="NN:.*:.*:PL:V" postag_regexp='yes' />
                    </antipattern>
                    <!-- Временными правительства называли журналисты. -->
                    <antipattern>
                        <token postag="ADJ:.*:(Masc|Fem|Neut):T" postag_regexp="yes"><exception postag="ADJ:MPR:.*" postag_regexp='yes' scope="previous"/></token>
                        <token postag="NN:.*:.*:Sin:V" postag_regexp='yes' />
                    </antipattern>
                    <!-- Временной заплату считали недолго. -->
                    <pattern>
                        <marker>
                            <unify negate="yes">
                                <feature id="case"/>
                                <token postag="ADJ:.*" postag_regexp="yes">
                                    <exception scope="previous" regexp="yes">,|–|-|—</exception>
                                    <exception postag="PT:.*|ADV|ADJ:Comp|ABR|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp="yes" />
                                    <exception regexp="yes">р|онлайн|полн.*|выходн(ых|ые)|средн.*|арифметическ(ое|ие)|подобн.*|отличн.*|книжном|продуктовом|праздную|вещей|возможным|невозможным|собственн(ом|ый)|активн(ым|ыми)|сборной|большее|меньшее</exception>
                                    <exception postag="ADJ:Posit:Masc:.*" postag_regexp="yes" regexp="yes">&color;|мобильн.*</exception>
                                    <exception case_sensitive="yes">Божию</exception>
                                </token>
                                <token postag="NN:.*" postag_regexp="yes">
                                    <exception regexp="yes">друг|уже|уж|при|после|весь|мировой|молодой|куплю|байке|лажа|лазанью</exception>
                                    <exception postag="VB:.*|CONJ|PREP|ADV|ABR|ADJ:.*|Ord:.*" postag_regexp="yes" />
                                    <!-- Слова без буквы ё имеют неправильный падеж -->
                                    <exception regexp="yes">&missing_yo;</exception>
                                    <exception case_sensitive="yes">Tом</exception>
                                    <!-- полчаса, полдня -->
                                    <exception regexp="yes">пол.*</exception>   
                                </token>
                            </unify>				        
                        </marker>
                        <token>
                            <exception regexp="yes">[«»",/\\]</exception>
                            <exception postag="NN:.*:(Nom|D|V|T|P)" postag_regexp="yes"/>
                            <exception>щеткой</exception>
                        </token>
                    </pattern>
                    <filter class="org.languagetool.rules.ru.AdvancedSynthesizerFilter" args="lemmaFrom:1 lemmaSelect:ADJ:(Posit|Sup):.*:.* postagFrom:2 postagSelect:NN:.*:(.*):.*:(.*) postagReplace:ADJ:\a1:\b1:\b2"/>
                    <message>Прилагательное не согласуется с существительным по падежу.</message>
                    <suggestion>{suggestion} \2</suggestion>
                    <example>Ставшие хрестоматийными слова «Природой здесь нам суждено в Европу прорубить окно», которые А. С. Пушкин вкладывает в уста Петра I — лишь риторически эффектная фраза.</example>
                    <example correction="глупую женщину">Я терпеть не могу эту <marker>глупою женщину</marker>.</example>
                    <example>Временными правительства называли журналисты.</example>
                    <example>Эти добрые полчаса.</example>
                    <example>Контактный тел.</example>
                    <example>Она позволяет сильным страны сей ситуативно решать.</example>
                    <example>Временной заплату считали недолго.</example>
                    <example>У них выше вероятность инфаркта, чем у довольных партнером.</example>
                    <example>Среди них наибольшей известностью пользовались простые шутки.</example>
                    <example>Среди них большей известностью пользовались простые шутки.</example>
                    <example>Крепкие столы.</example>
                    <example>Проверь, что у них одинаковые род/число/падеж.</example> 
                    <example>Суеверие — это религия слабых духом.</example>
                    <example>Счастливые часов не наблюдают.</example>
                    <example>Смелого пуля боится.</example>
                    <example>Быть умным Николаю мешала лень.</example>
                    <example>Делала политически невозможной отмену единожды данных им законом прав.</example>
                    <example>Этот экспорт, полностью подконтрольный правительствам стран мира, стремительно рос.</example>
                    <example>Нам объявят необходимым запрет на спиртное.</example>
                    <example>Нам объявят необходимыми игры на свежем воздухе.</example>
                    <example>Для оставшихся неготовыми лодок соорудили бокс.</example>
                    <example>Для оставшейся неготовой лодки соорудили бокс.</example>
                    <example>Вестминстер — место пребывания короля, а позднее парламента.</example>
                    <example>Крепкий стол.</example>
                    <example>Крепкая ограда.</example>
                    <example>Умные уже тут.</example>
                    <example>Мы чужие друг другу.</example>
                    <example>Белый стул.</example>
                    <example>Вы должны помочь мне!</example>
                    <example>Больных гриппом просим не входить.</example>
                    <example>Если загорелся зелёный машинам, то можно ехать.</example>
                    <example>Если загорелся зелёный кошке, то ехать нельзя.</example>
                    <example>Преподавать русский инострацам сложно.</example>
                    <example>Корзина была полная ягод.</example>
                    <example>Воспользуемся средним чисел а и б.</example>
                    <example>После выходных работник смотрелся не важно.</example>
                    <example correction="Железною кроватью|Железной кроватью"><marker>Железная кроватью</marker>.</example>
                    <example>Вдали виднелись красивые сосны.</example>
                    <example correction="красивая ёлка">Вдали виднелись <marker>красивой ёлка</marker>.</example>
                    <example>Мебель сделана из красивой сосны.</example>
                    <example>При императрице Екатерине Великой Россия успешно воевала с Турцией</example>
                    <example>При Ярославе Мудром митрополит впервые был избран из числа русских священников</example>
                    <example>В бассейне Нижней Таймыры есть такие объекты как Река Мамонта</example>
                    <!-- <example correction="">Столы сделаны из <marker>красивых куски</marker> древесины.</example> -->
                    <!-- <example correction="">Столы сделаны из <marker>красивых деревья</marker>.</example> -->
                    <example>Был построен добротный дом.</example>
                <!--    <example correction="">Был построен <marker>добротный дому</marker>.</example>  --> <!-- коррекцию падежа надо применить к существительному, а не к прилагательному!!! --> 
                    <example>Пушистая кошка грелась на солнышке.</example>
                    <example correction="пушистою кошкой|пушистой кошкой">Эта <marker>пушистая кошкой</marker> грелась.</example>
                    <example>Вдали виднелось синее небо.</example>
                    <example>Оно смотрелось синее неба.</example>
                    <example>Быть в неоплатном долгу.</example>
                    <example>Добротная усадьба.</example>
                    <example correction="Добротной усадьбе"><marker>Добротная усадьбе</marker>.</example>
                    <example>Нет крепкого сна.</example>
                    <example correction="крепкого сна">Нет <marker>крепкому сна</marker>.</example>
                    <example>Вода стекала по мягкому жёлобу.</example>
                    <example correction="мягкому жёлобу">Вода стекала по <marker>мягкого жёлобу</marker>.</example>
                    <example>Мы увидели бурной реку и стремительными рыб, идущих против течения.</example>
                    <example>Они справились с бурной рекой</example>
                    <example correction="бурною рекой|бурной рекой">Они справились с <marker>бурную рекой</marker>.</example>
                    <example>Они думали о родном доме.</example>
                    <example>Традиционно первым Германским государством принято считать восточно-франкское государство.</example>
                    <example>Он каждые полчаса бежит в лабораторию.</example>
                    <example correction="родном доме">Они думали о <marker>родного доме</marker>.</example>
                </rule>               
        </rulegroup>
        
        
        <rulegroup default="on" id="Soglasovanie_NN_PT" name="Согласование существительного с причастием" >
        <rule>
            <!-- Experimental rule, issue #1069, #1062 default="temp_off"  (род)  tags="picky"-->  
            <pattern>
                <token>
                    <exception postag="NN:.*|PNN:.*" postag_regexp="yes" />
                    <exception regexp="yes">на|в|и|или|,</exception>
                </token>
                <unify negate="yes">
                    <feature id="gender"/>        
                    <marker>
                        <token postag="NN:.*:V" postag_regexp="yes"><exception postag="NN:.*:V" postag_regexp="yes" negate_pos="yes"></exception></token>
                        <unify-ignore>
                            <token>,</token>
                        </unify-ignore>
                        <token postag="PT:.*" postag_regexp="yes" ><exception postag="PT:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
                    </marker>
                </unify>
               <token><exception postag="NN:.*|PNN:.*" postag_regexp="yes" /></token>
            </pattern>
            <message>Ошибка в согласовании причастия по роду!</message>
            <short>Ошибка в согласовании</short>
            <example correction="">Он увидел <marker>собаку, хромавшего</marker> на задние лапы.</example>
            <example>Он увидел собаку, хромавшую на задние лапы.</example>
        </rule>
        <rule>
            <!-- Experimental rule, issue #1069, #1062 (число) -->  
            <pattern>
                <token>
                    <exception postag="NN:.*|PNN:.*" postag_regexp="yes" />
                    <exception regexp="yes">на|в|и|или|,</exception>
                </token>
                <unify negate="yes">
                    <feature id="number"/>        
                    <marker>
                        <token postag="NN:.*:V" postag_regexp="yes"><exception postag="NN:.*:V" postag_regexp="yes" negate_pos="yes"></exception></token>
                        <unify-ignore>
                            <token>,</token>
                        </unify-ignore>
                        <token postag="PT:.*" postag_regexp="yes" ><exception postag="PT:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
                    </marker>
                </unify>
               <token><exception postag="NN:.*|PNN:.*" postag_regexp="yes" /></token>
            </pattern>
            <message>Ошибка в согласовании причастия по числу!</message>
            <short>Ошибка в согласовании</short>
            <example correction="">Он увидел <marker>собаку, хромавших</marker> на задние лапы.</example>
            <example>Он увидел собаку, хромавшую на задние лапы.</example>
        </rule>
        <rule>
            <!-- Experimental rule, issue #1069, #1062 (падеж) -->  
            <pattern>
                <token>
                    <exception postag="NN:.*|PNN:.*" postag_regexp="yes" />
                    <exception regexp="yes">на|в|и|или|,</exception>
                </token>
                <unify negate="yes">
                    <feature id="case"/>        
                    <marker>
                        <token postag="NN:.*:V" postag_regexp="yes"><exception postag="NN:.*:V" postag_regexp="yes" negate_pos="yes"></exception></token>
                        <unify-ignore>
                            <token>,</token>
                        </unify-ignore>
                        <token postag="PT:.*" postag_regexp="yes" ><exception postag="PT:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
                    </marker>
                </unify>
               <token><exception postag="NN:.*|PNN:.*" postag_regexp="yes" /></token>
            </pattern>
            <message>Ошибка в согласовании причастия по падежу!</message>
            <short>Ошибка в согласовании</short>
            <example correction="">Он увидел <marker>собаку, хромавшая</marker> на задние лапы.</example>
            <example>Он увидел собаку, хромавшую на задние лапы.</example>
        </rule>
        </rulegroup>       
        
        <rulegroup default="on" id="Soglasovanie_NN_PT_2" name="Согласование существительного с причастием (2)" tags="picky" >
        <rule>
            <!-- Experimental rule, issue #1069, #1062 default="temp_off"  (род)-->  
            <pattern>
                <token>
                    <exception postag="NN:.*|PNN:.*" postag_regexp="yes" />
                    <exception regexp="yes">на|в|и|или|,</exception>
                </token>
                <unify negate="yes">
                    <feature id="gender"/>        
                    <marker>
                        <token postag="NN:.*:D" postag_regexp="yes"><exception postag="NN:.*:D" postag_regexp="yes" negate_pos="yes"></exception></token>
                        <unify-ignore>
                            <token>,</token>
                        </unify-ignore>
                        <token postag="PT:.*" postag_regexp="yes" ><exception postag="PT:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
                    </marker>
                </unify>
               <token><exception postag="PNN:.*" postag_regexp="yes" /></token>
            </pattern>
            <message>Ошибка в согласовании причастия по роду!</message>
            <short>Ошибка в согласовании</short>
            <example correction="">Довольно часто авторы таких работ предоставляют доступ к своим <marker>программам, реализующее</marker> новые разработки в этой области.</example>
            <example>Довольно часто авторы таких работ предоставляют доступ к своим программам, реализующим новые разработки в этой области.</example>
        </rule>
        <rule>
            <!-- Experimental rule, issue #1069, #1062 (число) -->  
            <pattern>
                <token>
                    <exception postag="NN:.*|PNN:.*" postag_regexp="yes" />
                    <exception regexp="yes">на|в|и|или|,</exception>
                </token>
                <unify negate="yes">
                    <feature id="number"/>        
                    <marker>
                        <token postag="NN:.*:D" postag_regexp="yes"><exception postag="NN:.*:D" postag_regexp="yes" negate_pos="yes"></exception></token>
                        <unify-ignore>
                            <token>,</token>
                        </unify-ignore>
                        <token postag="PT:.*" postag_regexp="yes" ><exception postag="PT:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
                    </marker>
                </unify>
               <token><exception postag="PNN:.*" postag_regexp="yes" /></token>
            </pattern>
            <message>Ошибка в согласовании причастия по числу!</message>
            <short>Ошибка в согласовании</short>
            <example correction="">Довольно часто авторы таких работ предоставляют доступ к своим <marker>программам, реализующего</marker> новые разработки в этой области.</example>
            <example>Довольно часто авторы таких работ предоставляют доступ к своим программам, реализующим новые разработки в этой области.</example>
        </rule>
        <rule>
            <!-- Experimental rule, issue #1069, #1062 (падеж) -->  
            <pattern>
                <token>
                    <exception postag="NN:.*|PNN:.*" postag_regexp="yes" />
                    <exception regexp="yes">на|в|и|или|,</exception>
                </token>
                <unify negate="yes">
                    <feature id="case"/>        
                    <marker>
                        <token postag="NN:.*:D" postag_regexp="yes"><exception postag="NN:.*:D" postag_regexp="yes" negate_pos="yes"></exception></token>
                        <unify-ignore>
                            <token>,</token>
                        </unify-ignore>
                        <token postag="PT:.*" postag_regexp="yes" ><exception postag="PT:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
                    </marker>
                </unify>
               <token><exception postag="PNN:.*" postag_regexp="yes" /></token>
            </pattern>
            <message>Ошибка в согласовании причастия по падежу!</message>
            <short>Ошибка в согласовании</short>
            <example correction="">Довольно часто авторы таких работ предоставляют доступ к своим <marker>программам, реализующих</marker> новые разработки в этой области.</example>
            <example>Довольно часто авторы таких работ предоставляют доступ к своим программам, реализующим новые разработки в этой области.</example>
        </rule>
        </rulegroup> 
        
        <rule  id="Adj_NN_number_Software" name="«Программное обеспечение»"> 
            <pattern> <!-- Need more unification -->
                <marker>
                    <token inflected="yes" regexp="yes">программный|аппаратный<exception regexp="yes">программного|программные|аппаратного|аппаратные</exception></token>
                    <token>обеспечения</token>
                </marker>                     
            </pattern>
            <message>Прилагательное не согласуется с существительным.</message>
            <example>С помощью коммерчески доступного программного обеспечения, основанного на разных методах.</example>
            <example correction="">С помощью коммерчески доступного <marker>программных обеспечения</marker>, основанного на разных методах.</example>
        </rule>            
        <rulegroup  id="EAdj_NN_number_2_4" name="Определение при существительном, зависящем от числительных «два, три, четыре»">
            <!-- Розенталь ЛИТЕРАТУРНОЕ РЕДАКТИРОВАНИЕ ТЕКСТА $193 -->
            <rule>
                    <pattern>
                      <token regexp="yes">&double_num;</token>
                        <marker>
                               <token postag="ADJ:.*:(Masc|Fem|Neut):.*" postag_regexp="yes">
                                    <exception postag="ADJ:.*:PL:.*" postag_regexp="yes"></exception>
                                    <exception postag="ADV|ADJ:Comp|PT:.*|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp='yes'/>
                                </token>
                                <token postag="NN:.*:(Masc|Neut):Sin:.*" postag_regexp="yes">
                                    <exception postag="CONJ|PREP|ADV|Ord:.*" postag_regexp="yes" />
                                </token>
                        </marker>
                        <token>
                            <exception regexp="yes">и|[«»",]</exception>
                            <exception postag="NN:.*" postag_regexp="yes"/>
                        </token>
                    </pattern>
                    <message suppress_misspelled="yes">Определение, находящееся между числительным 2,3,4 и существительным мужского или среднего рода, ставится в форме родительного падежа множественного числа: <suggestion><match no="2" postag="ADJ:(.*):(Masc|Fem|Neut):(.*)" postag_regexp="yes" postag_replace="ADJ:$1:PL:R"></match> <match no="3"></match></suggestion></message>
                    <short>Грамматическая ошибка в согласовании</short>
                    <example>Два дружных брата.</example>
                    <example>3 бурых медведя.</example>
                    <example>Сегодня будут открыты 3 дополнительных офиса.</example>
                    <example correction="дружных брата">два <marker>дружный брата</marker>.</example>
                    <example correction="бурых медведя">3 <marker>бурый медведя</marker>.</example>
                    <example correction="бурых медведя">Три <marker>бурый медведя</marker>.</example>
            </rule> 
            <rule>
                    <pattern>
                      <token regexp="yes">&double_num;</token>
                        <marker>
                               <token postag="ADJ:.*:(Masc|Fem|Neut):.*" postag_regexp="yes">
                                    <exception postag="ADJ:.*:PL:.*" postag_regexp="yes"></exception>
                                    <exception postag="ADV|ADJ:Comp|PT:.*|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp='yes'/>
                                </token>
                                <token postag="NN:.*:Fem:Sin:.*" postag_regexp="yes">
                                    <exception postag="CONJ|PREP|ADV|Ord:.*" postag_regexp="yes" />
                                </token>
                        </marker>
                        <token>
                            <exception regexp="yes">и|[«»",]</exception>
                            <exception postag="NN:.*" postag_regexp="yes"/>
                        </token>
                    </pattern>
                    <message suppress_misspelled="yes">Определение, находящееся между числительным 2,3,4 и существительным женского рода, ставится в форме именительного падежа множественного числа (в случае наличия предлога возможна форма родительного падежа множественного числа): <suggestion><match no="2" postag="ADJ:(.*):(Masc|Fem|Neut):(.*)" postag_regexp="yes" postag_replace="ADJ:$1:PL:Nom"></match> <match no="3"></match></suggestion></message>
                    <short>Грамматическая ошибка в согласовании</short>
                    <example>Две дружные сестры.</example>
                    <example>Разделить на две равные части.</example>
                    <example>Две столовые ложки лежали возле тарелки.</example>
                    <example>Давать по две столовых ложки.</example>
                    <example>3 бурых медведя.</example>
                    <example>Сегодня будут открыты 3 дополнительных офиса.</example>
                    <example correction="равные части">две <marker>равная части</marker>.</example>

            </rule> 
            <!--   -->
            <rule>
                    <pattern>
                      <token regexp="yes">&double_num;</token>
                        <marker>
                               <token postag="ADJ:.*:PL:.*" postag_regexp="yes">
                                    <exception postag="ADV|ADJ:Comp|PT:.*|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp='yes'/>
                                </token>
                                <token postag="NN:Anim:.*:PL:.*" postag_regexp="yes">
                                    <exception postag="CONJ|PREP|ADV|Ord:.*" postag_regexp="yes" /><exception postag="NN:Anim:.*:Sin:R" postag_regexp="yes" />
                                </token>
                        </marker>
                        <token>
                            <exception regexp="yes">и|[«»",]</exception>
                            <exception postag="NN:.*" postag_regexp="yes"/>
                        </token>
                    </pattern>
                    <message suppress_misspelled="yes">Грамматическая ошибка в согласовании числа: <suggestion><match no="2"></match> <match no="3" postag="NN:Anim:(.*):PL:(.*)" postag_regexp="yes" postag_replace="NN:Anim:$1:Sin:R"></match></suggestion></message>
                    <short>Грамматическая ошибка в согласовании</short>
                    <example>Два дружных брата.</example>
                    <example>Две больших тени.</example>
                    <example>3 бурых медведя.</example>           
                    <example>Сегодня будут открыты 3 дополнительных офиса.</example>
                    <example correction="дружных брата">два <marker>дружных братьев</marker>.</example>
                    <example correction="бурых медведя">3 <marker>бурых медведей</marker>.</example>
                    <example correction="бурых медведя">Три <marker>бурых медведей</marker>.</example>
            </rule>
        </rulegroup>

        
        <rulegroup default="on" id="SoglasovaniePNN_Verb" name="Согласование подлежащего (местоимения) со сказуемым">
            <rule>
                
                <pattern>
                    <!--           Он (PNN:Masc)   VB:Past:.*:.*:Masc   -->
                    <token regexp="yes">он|этот|тот</token>
                    <token postag="VB:Past:.*" postag_regexp="yes"><exception postag_regexp="yes" postag="VB:Past:.*:.*:Masc"></exception><exception regexp="yes">был|была|было</exception><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"></exception></token>
                </pattern>
                <message suppress_misspelled="yes">Местоимение не согласуется с глаголом по роду: <suggestion><match no="1"></match> <match no="2" postag="VB:Past:(.*):(.*):.*" postag_regexp="yes" postag_replace="VB:Past:$1:$2:Masc"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по роду</short>
                <example>Во дворе он грелся на солнышке.</example>
                <example correction="он грелся">Во дворе <marker>он грелась</marker> на солнышке.</example>
            </rule>
            
            
            <rule>
                
                <pattern>
                    <!--          она (PNN:Fem)   VB:Past:.*:.*:Fem    -->
                    <token  regexp="yes">она|эта|та</token>
                    <token postag="VB:Past:.*" postag_regexp="yes"><exception postag_regexp="yes" postag="VB:Past:.*:.*:Fem"></exception><exception regexp="yes">был|была|было</exception><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"></exception></token>
                </pattern>   
                <message suppress_misspelled="yes">Местоимение не согласуется с глаголом по роду: <suggestion><match no="1"></match> <match no="2" postag="VB:Past:(.*):(.*):.*" postag_regexp="yes" postag_replace="VB:Past:$1:$2:Fem"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по роду</short>
                <example>Она грелась на солнышке.</example>
                <example correction="Она грелась"><marker>Она грелся</marker> на солнышке.</example>
            </rule>
            
            <rule>
                
                <pattern>
                    <!--        оно   (PNN:Neut)   VB:Past:.*:.*:Neut    -->
                    <token>оно</token>
                    <token postag="VB:Past:.*" postag_regexp="yes"><exception postag_regexp="yes" postag="VB:Past:.*:.*:Neut"></exception><exception regexp="yes">был|была|было</exception><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"></exception></token>
                </pattern>              
                <message suppress_misspelled="yes">Местоимение не согласуется с глаголом по роду: <suggestion><match no="1"></match> <match no="2" postag="VB:Past:(.*):(.*):.*" postag_regexp="yes" postag_replace="VB:Past:$1:$2:Neut"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по роду</short>
                <example>Оно готовилось на сковородке.</example>
                <example>Это была чудесная пьеса.</example>
                <example correction="Оно готовилось"><marker>Оно готовился</marker> на сковородке.</example>
            </rule>
            
            <rule>
                
                <pattern>
                    <!--        оно   (PNN:PL)   VB:Past:.*:.*:PL    -->
                    <token  regexp="yes">они|эти</token>
                    <token postag="VB:Past:.*" postag_regexp="yes"><exception postag_regexp="yes" postag="VB:Past:.*:.*:PL"></exception><exception regexp="yes">был|была|было</exception><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"></exception></token>
                </pattern>       
                <message suppress_misspelled="yes">Местоимение не согласуется с глаголом по числу: <suggestion><match no="1"></match> <match no="2" postag="VB:Past:(.*):(.*):.*" postag_regexp="yes" postag_replace="VB:Past:$1:$2:PL"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по числу</short>
                <example>Они готовились на сковородке.</example>
                <example correction="Они готовились"><marker>Они готовился</marker> на сковородке.</example>
            </rule>
            
        </rulegroup>
        
        <rulegroup default="on" id="SoglasovanieNN_Verb" name="Согласование подлежащего (существительного) со сказуемым">
            <rule>
                <pattern>
                    <!--           NN:Masc:Sin:Nom   VB:Past:.*:.*:Masc   -->
                    <token postag="SENT_START" skip="-1"><exception scope="next" postag="NN:.*:Fem:Sin:Nom" postag_regexp="yes"></exception><exception scope="next" postag="NN:.*:Neut:Sin:Nom" postag_regexp="yes"></exception> <exception scope="next" postag_regexp="yes" postag="PNN:.*"></exception></token>           
                    <marker>
                        <token postag="NN:.*:Masc:Sin:Nom" postag_regexp="yes">
                            <exception negate_pos="yes" postag="NN:.*:Masc:Sin:Nom" postag_regexp="yes"></exception>
                            <exception regexp="yes">&profession;</exception>
                        </token>
                        <token postag="VB:Past:.*" postag_regexp="yes" skip="-1"><exception postag_regexp="yes" postag="VB:Past:.*:.*:Masc"></exception><exception postag_regexp="yes" postag="VB:Past:.*:.*:PL"></exception><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"></exception><exception scope="next" postag="NN:.*:Fem:Sin:Nom" postag_regexp="yes"></exception><exception scope="next" postag="NN:.*:Neut:Sin:Nom" postag_regexp="yes"></exception></token>
                    </marker>
                    <token regexp="yes">[.;]</token>
                </pattern>         
                <message suppress_misspelled="yes">Существительное не согласуется с глаголом по роду: <suggestion><match no="2"></match> <match no="3" postag="VB:Past:.*" postag_regexp="yes" postag_replace="VB:Past:.*:.*:Masc"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%93%D0%BB%D0%B0%D0%B3%D0%BE%D0%BB_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по роду</short>
                <example>Во дворе кот грелся на солнышке.</example>
                <example>Тренер посоветовала мне это.</example>
                <example correction="кот грелся">Во дворе <marker>кот грелась</marker> на солнышке.</example>
            </rule>
            
            <rule>
                
                <pattern>
                    <!--           NN:Fem:Sin:Nom   VB:Past:.*:.*:Fem    -->
                    <token postag="SENT_START" skip="-1"><exception scope="next" postag="NN:.*:Masc:Sin:Nom" postag_regexp="yes"></exception><exception scope="next" postag="NN:.*:Neut:Sin:Nom" postag_regexp="yes"></exception><exception scope="next" postag_regexp="yes" postag="PNN:.*"></exception></token>
                    <marker>
                        <token postag="NN:.*:Fem:Sin:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Fem:Sin:Nom" postag_regexp="yes"></exception></token>
                        <token postag="VB:Past:.*" postag_regexp="yes" skip="-1"><exception postag_regexp="yes" postag="VB:Past:.*:.*:Fem"></exception><exception postag_regexp="yes" postag="VB:Past:.*:.*:PL"></exception><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"></exception><exception scope="next" postag="NN:.*:Masc:Sin:Nom" postag_regexp="yes"></exception><exception scope="next" postag="NN:.*:Neut:Sin:Nom" postag_regexp="yes"></exception></token>
                    </marker>
                    <token regexp="yes">[.;]</token>
                </pattern>                
                <message suppress_misspelled="yes">Существительное не согласуется с глаголом по роду: <suggestion><match no="2"></match> <match no="3" postag="VB:Past:.*" postag_regexp="yes" postag_replace="VB:Past:.*:.*:Fem"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%93%D0%BB%D0%B0%D0%B3%D0%BE%D0%BB_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по роду</short>
                <example>Кошка грелась на солнышке.</example>
                <example correction="Кошка грелась"><marker>Кошка грелся</marker> на солнышке.</example>
            </rule>
            <!--           NN:Neut:Sin:Nom   VB:Past:.*:.*:Neut    -->
            <!--
            <rule>
                
                <pattern>                
                    <token postag="SENT_START" skip="-1"><exception scope="next" postag="NN:Masc:Sin:Nom"></exception><exception scope="next" postag="NN:Fem:Sin:Nom"></exception><exception scope="next" postag_regexp="yes" postag="PNN:.*"></exception></token>
                    <marker>
                        <token postag="NN:Neut:Sin:Nom"><exception negate_pos="yes" postag_regexp="yes" postag="NN:Neut:Sin:.*"></exception></token>
                        <token postag="VB:Past:.*" postag_regexp="yes" skip="-1"><exception postag="VB:Past:.*:.*:Neut"></exception><exception postag="VB:Past:.*:.*:PL"></exception><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"></exception><exception scope="next" postag="NN:Fem:Sin:Nom"></exception><exception scope="next" postag="NN:Masc:Sin:Nom"></exception></token>
                    </marker>
                    <token regexp="yes">[.;]</token>
                </pattern>
                
                <message>Существительное не согласуется с глаголом по роду.
                    <suggestion><match no="2"></match> <match no="3" postag="VB:Past:.*" postag_regexp="yes" postag_replace="VB:Past:.*:.*:Neut"></match></suggestion>
                </message>
                <url>http://ru.wikipedia.org/wiki/%D0%93%D0%BB%D0%B0%D0%B3%D0%BE%D0%BB_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по роду</short>
                <example>Блюдо готовилось на сковородке.</example>
                <example correction="Кот грелся"><marker>Блюдо готовился</marker> на сковородке.</example>
            </rule>
            -->
            
            
         

            <rule>        <!-- #1063 -->          
                <antipattern>
                    <token  postag="SENT_START" skip ="-1"><exception scope="next" postag_regexp="yes" postag="PNN:.*" /></token>
                    <token  postag="NN:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag_regexp="yes" postag="NN:.*"></exception></token>
                    <token  postag="VB:(Past|Real):.*"  postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag_regexp="yes" postag="VB:(Past|Real):.*" /><exception  postag_regexp="yes" postag="VB:(Past|Real):TRANS:.*" /></token>                            
                    <token postag_regexp="yes" postag="NN:.*:Nom" skip="-1"><exception negate_pos="yes" postag_regexp="yes" postag="NN:.*"></exception></token>
                    <token regexp="yes">;|:|[\p{Punct}]</token>
                </antipattern>
                <antipattern>
                    <token  postag="SENT_START" skip ="-1"><exception scope="next" postag_regexp="yes" postag="PNN:.*" /></token>
                    <token skip="3"  regexp="yes" >и|,</token>
                    <token  postag="NN:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag_regexp="yes" postag="NN:.*"></exception></token>
                    <token  postag="VB:(Past|Real):.*"  postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag_regexp="yes" postag="VB:(Past|Real):.*" /><exception  postag_regexp="yes" postag="VB:(Past|Real):TRANS:.*" /></token>                            
                </antipattern>
                <antipattern>
                    <token  postag="SENT_START" skip ="-1"><exception scope="next" postag_regexp="yes" postag="PNN:.*" /></token>
                    <token skip="3" postag="NN:.*:Nom" postag_regexp="yes"></token>
                    <token  postag="NN:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag_regexp="yes" postag="NN:.*"></exception></token>
                    <token  postag="VB:(Past|Real):.*"  postag_regexp="yes" skip="-1"><exception negate_pos="yes" postag_regexp="yes" postag="VB:(Past|Real):.*" /><exception  postag_regexp="yes" postag="VB:(Past|Real):TRANS:.*" /></token>                            
                </antipattern>
                
                <antipattern>
                    <token  postag="NN:.*:D" postag_regexp="yes"></token>
                    <token  postag="VB:(Past|Real):.*"  postag_regexp="yes" ></token>                            
                </antipattern>
               
                <pattern>
                    <token  postag="SENT_START" skip ="-1"><exception scope="next" postag_regexp="yes" postag="PNN:.*" /><exception scope="next">с</exception></token>
                    <marker>
                    <unify negate="yes">
                        <feature id="number"/>          
                        <token  postag="NN:.*:Nom" postag_regexp="yes"><exception negate_pos="yes" postag_regexp="yes" postag="NN:.*"></exception><exception scope="previous" postag_regexp="yes" postag="NumD_P|NumC:Nom|Num:.*"></exception></token>
                        <token  postag="VB:(Past|Real):.*"  postag_regexp="yes">
                            <exception negate_pos="yes" postag_regexp="yes" postag="VB:(Past|Real):.*" />
                            <exception  postag_regexp="yes" postag="VB:(Past|Real):TRANS:.*|VB:(Past|Real):bezl:IMPFV" />
                            <exception scope="next" postag_regexp="yes" postag="NN:.*:Nom|UNKNOWN|NumD_[SDP]|PNN:.*:Nom"></exception>
                            <exception scope="next" regexp="yes">более|менее|около|почти</exception>
                            <exception>может</exception>
                            <exception>должен</exception>
                            <exception>можешь</exception>
                        </token>                            
                    </unify>
                    </marker>
                </pattern>
                <message>Существительное не согласуется с глаголом по числу.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%93%D0%BB%D0%B0%D0%B3%D0%BE%D0%BB_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по числу</short>
                <example>Коты грелись на солнышке.</example>
                <example>Блюдо готовилось на сковородке.</example>
                <!-- <example>около 75% объёма поставляемой воды приходится на компанию X.</example> -->
                <example>Сыр и сливочное масло делаются из молока.</example>
                <example>Учащиеся всё время сидели неподвижно.</example>
                <example>С каждого дерева упало по груше.</example>
                <example>Эти легенды следует передать нашим потомкам.</example>
                <example>Тренер посоветовала мне это.</example> 
                <example>Вода превращается в лёд.</example>
                <example>Сайт в последние два года считается достоверным источником.</example>
                <example>Для работы программы требуется Java.</example>
                <example>В российском павильоне после открытия Всемирной универсальной выставки побывало более 6,1 миллиона туристов.</example>
                <example>Эти письма может напечатать любой секретарь.</example>
                <example>До конца года остаётся 298 дней.</example>
                <example>За последнее предложение высказались все.</example> 
                <example>Какие строки можешь выделить?</example>  <!-- Пропущено подлежащее -->
                <example>Матч отменили из-за дождя.</example> <!-- Пропущено слово, управление  -->
                <example>Империи удалось многое узнать.</example>
                <example>100 лет называются веком.</example>
                <example>В 1448 году упоминаются городские волнения против строительства замка.</example>
                <example correction=""><marker>Блюдо готовились</marker> на сковородке.</example>
                <example correction=""><marker>Коты грелся</marker> на солнышке.</example>
                <example correction=""><marker>Маша гуляют</marker> на солнышке.</example>
            </rule>

     <!--          Оба + существительное + глагол  -->
           <rule>                  
                <pattern>
                   <marker>
                       <token  regexp="yes">Об[ае]</token>
                       <token  postag="NN:.*:Sin:R" postag_regexp="yes"></token>
                       <token  postag="VB:Past:.*"  postag_regexp="yes" skip="-1"><exception postag_regexp="yes" postag="VB:Past:.*:.*:PL" /><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"  /><exception scope="next" postag_regexp="yes" postag="VB:.*:.*" /></token>               
                   </marker>
                   <token postag="SENT_END"/>               
                </pattern>
                <message suppress_misspelled="yes">Существительное не согласуется с глаголом по числу: <suggestion><match no="1"></match> <match no="2"></match> <match no="3" postag="VB:Past:.*" postag_regexp="yes" postag_replace="VB:Past:.*:.*:PL"></match></suggestion></message>                
                <short>Ошибка в согласовании по числу</short>
                <example>И тогда я оба раза решил сходить в кино.</example>
                <example>А неожиданно для себя я их посмотрел потому, что оба раза хотел на самом деле в тот день посмотреть совсем другой мюзикл.</example>                
                <example correction="Оба друга загорали"><marker>Оба друга загорало</marker> на солнышке.</example>
            </rule>

      <!--          Два + существительное + глагол  -->
<!--
           <rule>                  
                <pattern>
		  <marker>
                    <token  regexp="yes">два|три|четыре<exception scope="previous" postag_regexp="yes" postag="NN.*:.*:.*:Nom"></exception><exception scope="previous" postag_regexp="yes"  postag="PNN:.*:Nom:.*" ></exception><exception scope="previous" postag="PREP" ></exception></token>
		    <token  postag="NN:.*:Sin:R" postag_regexp="yes"></token>
                    <token  postag="VB:Past:.*"  postag_regexp="yes" skip="-1"><exception postag="VB:Past:.*:.*:PL" /><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"  /><exception scope="next" postag_regexp="yes" postag="NN.*:.*:.*:Nom"></exception><exception scope="next" postag_regexp="yes"  postag="PNN:.*:Nom:.*" ></exception></token>               
                  </marker>
		    <token regexp="yes">[.;?!,]</token>
		</pattern>
                <message>Существительное не согласуется с глаголом по числу: <suggestion><match no="1"></match> <match no="2"></match> <match no="3" postag="VB:Past:.*" postag_regexp="yes" postag_replace="VB:Past:.*:.*:PL"></match></suggestion></message>
                
                <short>Ошибка в согласовании по числу</short>
                
                <example correction="Три друга загорали"><marker>Три друга загорало</marker> на солнышке.</example>
            </rule>
-->
      <!--          Пять + существительное + глагол  -->
<!--
           <rule>                 
                <pattern>
                    <marker>
                        <token  regexp="yes" >пять|шесть|семь|восемь|девять|десять|одиннадцать|двенадцать|тринадцать|четырнадцать|пятнадцать|шестнадцать|семнадцать|восемнадцать|девятнадцать|двадцать|двое|трое|четверо|пятеро|шестеро|семеро<exception scope="previous" postag_regexp="yes" postag="NN.*:.*:.*:Nom"></exception>
                            <exception scope="previous" postag_regexp="yes"  postag="PNN:.*:Nom:.*" ></exception>
                            <exception scope="previous" postag="PREP" ></exception>
                        </token>
                        <unify negate="yes">
                            <feature id="number"/>  
                            <token  postag="NN:.*:PL:R" postag_regexp="yes"></token>
                            <token  postag="VB:Past:.*"  postag_regexp="yes" skip="-1">
                                <exception postag="VB:Past:.*:.*:PL" />
                                <exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*"  />
                                <exception scope="next" postag_regexp="yes" postag="NN:.*:.*:Nom"></exception>
                                <exception scope="next" postag_regexp="yes" postag="NN.*:.*:.*:Nom"></exception>
                                <exception scope="next" postag_regexp="yes"  postag="PNN:.*:Nom:.*" ></exception>
                            </token>	
                        </unify>	  
                    </marker>
		    <token regexp="yes">[.;?!,]</token>
		</pattern>
                <message>Существительное не согласуется с глаголом по числу: <suggestion><match no="1"></match> <match no="2"></match> <match no="3" postag="VB:Past:.*" postag_regexp="yes" postag_replace="VB:Past:.*:.*:PL"></match></suggestion></message>
                
                <short>Ошибка в согласовании по числу</short>               
                <example correction="Пять друзей загорали"><marker>Пять друзей загорало</marker> на солнышке.</example>
            </rule>
-->


            <rule>
                
                <pattern>
                    <!--           NN:Masc:Sin:Nom   VB:Past:!PL   -->
                    <token postag="SENT_START" skip="-1"><exception scope="next" postag_regexp="yes" postag="NN:.*:.*:PL:Nom"></exception><exception scope="next" postag_regexp="yes" postag="PNN:.*"></exception><exception scope="next" regexp = "yes" >и|или</exception></token>
                    <marker>
                        <token postag="NN:.*:Masc:Sin:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Masc:Sin:Nom" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">и|,</exception></token>
                        <token postag="VB:Past:.*:.*:PL" skip="-1" postag_regexp="yes"><exception negate_pos="yes" postag_regexp="yes" postag="VB:Past:.*:.*:PL"></exception><exception scope="next" postag_regexp="yes" postag="NN:.*:.*:PL:Nom|PNN:PL:Nom"></exception></token>
                    </marker>
                    <token regexp="yes">[.;]</token>
                </pattern>    
                <message suppress_misspelled="yes">Существительное не согласуется с глаголом по числу: <suggestion><match no="2"></match> <match no="3" postag="VB:Past:.*:.*:PL" postag_regexp="yes" postag_replace="VB:Past:.*:.*:Masc"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%93%D0%BB%D0%B0%D0%B3%D0%BE%D0%BB_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по числу</short>
                <example>Кот грелся на солнышке.</example>
                <example correction="Кот грелся"><marker>Кот грелись</marker> на солнышке.</example>
            </rule>
            <rule>
                
                <pattern>
                    <!--           NN:Fem:Sin:Nom   VB:Past:!PL   -->
                    <token postag="SENT_START" skip="-1"><exception scope="next" postag_regexp="yes" postag="NN:.*:PL:Nom"></exception><exception scope="next" postag_regexp="yes" postag="PNN:.*"></exception><exception scope="next" regexp = "yes" >и|или</exception></token>
                    <marker>
                        <token postag="NN:.*:Fem:Sin:Nom" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Fem:Sin:Nom" postag_regexp="yes"></exception><exception scope="previous" regexp="yes">и|,</exception></token>
                        <token postag="VB:Past:.*:.*:PL" skip="-1" postag_regexp="yes"><exception negate_pos="yes" postag="VB:Past:.*:.*:PL" postag_regexp="yes"></exception><exception scope="next" postag_regexp="yes" postag="NN:.*:PL:Nom|PNN:PL:Nom"></exception></token>
                    </marker>
                    <token regexp="yes">[.;]</token>
                </pattern>     
                <message suppress_misspelled="yes">Существительное не согласуется с глаголом по числу: <suggestion><match no="2"></match> <match no="3" postag="VB:Past:.*:.*:PL" postag_regexp="yes" postag_replace="VB:Past:.*:.*:Fem"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%93%D0%BB%D0%B0%D0%B3%D0%BE%D0%BB_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Ошибка в согласовании по числу</short>
                <example>Кошка грелась на солнышке.</example>
                <example correction="Кошка грелась"><marker>Кошка грелись</marker> на солнышке.</example>
            </rule>
        </rulegroup>
        
        <rulegroup id="Verb_number" name="Число глагола при однородных членах">
          <rule>
            <pattern>
                <token postag="NN:.*:Sin:Nom" postag_regexp="yes"><exception postag="NN:.*:Nom|NN:.*:.*:PL:T" postag_regexp="yes" scope="previous"></exception></token>
                <token>и</token>
                <token postag="NN:.*:Nom" postag_regexp="yes">
                    <exception regexp="yes"   inflected="yes">день|ночь|вечер|утро|час|минута|время</exception>
                </token>
                <token postag="VB:.*:(Masc|Fem|Neut)" postag_regexp="yes"><exception postag="NN:.*:Nom" postag_regexp="yes" scope="next"></exception><exception postag="NN:.*:.*" postag_regexp="yes"></exception><exception inflected="yes">быть</exception></token>
            </pattern>
            <message>Глагол при однородных членах предложения должен быть во множественном числе.</message>
            <short>Требуется множественное число</short>
            <example correction=""><marker>Мальчик и девочка играла</marker> в шахматы.</example>
            <example>Мальчик и девочка играли в шахматы.</example>
            <example>Комитет по вопросам культуры и духовности решил вернуть законопроект.</example>
            <example>Она день и ночь караулила нас.</example>
          </rule>
          <rule>
            <pattern>
                <token postag="NN:Anim:.*:Nom" postag_regexp="yes"><exception postag="NN:Anim:.*:Nom|NN:.*:.*:PL:T" postag_regexp="yes" scope="previous"></exception></token>
                <token skip="1">с<exception postag="&lt;ADV&gt;" ></exception></token>    
                <token postag="NN:Anim:.*:T" postag_regexp="yes"></token>  <!-- TODO добавить варианты с неодушевлёнными существительными, отделив от наречных выражений  -->
                <token postag="VB:.*:(Masc|Fem|Neut)" postag_regexp="yes"><exception inflected="yes">быть</exception><exception postag="NN:.*:.*" postag_regexp="yes"></exception></token>
            </pattern>
            <message>Глагол при однородных членах предложения должен быть во множественном числе</message>
            <short>Требуется множественное число</short>
            <example correction=""><marker>Мальчик с девочкой играла</marker> в шахматы.</example>
            <example>Мальчик с девочкой играли в шахматы.</example>
          </rule>
        </rulegroup>
        
        <rulegroup  id="Unify_Mult_Adj" name="Согласование нескольких прилагательных в словосочетании">
            <rule>        
                <pattern>
                    <marker>
                        <unify negate="yes">
                            <feature id="gender"/>
                            <token postag="ADJ:.*" postag_regexp="yes" min="2" max="3">
                                <exception scope="previous"  regexp="yes">,|и|–|-|—|&double_num;</exception>
                                <exception postag="ADV|ADJ:Comp|PT:.*|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp='yes'/>
                                <exception regexp="yes">полн.*|выходн(ых|ые)|средн.*|арифметическ(ое|ие)|зернов.*|животных|основн.*|легких|лёгких|позднее|поминальное</exception>
                            </token>  
                            <token postag="NN:.*" postag_regexp="yes">
                                <exception postag="CONJ|PREP|ADV|Ord:.*" postag_regexp="yes" />
                                <exception regexp="yes">друг|уже|были|дай|гей|стряпней|стерней</exception>
                                <!-- полчаса, полдня -->
                                <exception regexp="yes">пол.*</exception>
                            </token>
                        </unify>				        
                    </marker>
                        
                </pattern>
                <message>Прилагательное не согласуется с существительным по роду.</message>
                <short>Грамматическая ошибка в согласовании рода</short>
                <example>Крыловский государственный научный центр</example>
                <example correction=""><marker>Крыловский государственной научный центр</marker></example>
            </rule>
            <rule>        
                <pattern>
                    <marker>
                        <unify negate="yes">
                            <feature id="number"/>
                            <token postag="ADJ:.*" postag_regexp="yes" min="2" max="3">
                                <exception scope="previous"  regexp="yes">,|и|–|-|—|&double_num;</exception>
                                <exception postag="ADV|ADJ:Comp|PT:.*|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp='yes'/>
                                <exception regexp="yes">полн.*|выходн(ых|ые)|средн.*|арифметическ(ое|ие)|зернов.*|животных|основн.*|легких|лёгких|позднее|поминальное</exception>
                            </token>
                            <token postag="NN:.*" postag_regexp="yes">
                                <exception postag="CONJ|PREP|ADV|Ord:.*" postag_regexp="yes" />
                                <exception regexp="yes">друг|уже|были|дай|гей|стряпней|стерней</exception>
                                <!-- полчаса, полдня -->
                                <exception regexp="yes">пол.*</exception>
                            </token>
                        </unify>				        
                    </marker>
                        
                </pattern>
                <message>Прилагательное не согласуется с существительным по роду.</message>
                <short>Грамматическая ошибка в согласовании рода</short>
                <example>Крыловский государственный научный центр</example>
                <example correction=""><marker>Крыловский государственные научный центр</marker></example>
            </rule>
            <rule>        
                <pattern>
                    <marker>
                        <unify negate="yes">
                            <feature id="case"/>
                            <token postag="ADJ:.*" postag_regexp="yes" min="2" max="3">
                                <exception scope="previous"  regexp="yes">,|и|–|-|—|&double_num;</exception>
                                <exception postag="ADV|ADJ:Comp|PT:.*|ADJ:MPR:.*|ADJ:Short:.*|NN:.*" postag_regexp='yes'/>
                                <exception regexp="yes">полн.*|выходн(ых|ые)|средн.*|арифметическ(ое|ие)|зернов.*|животных|основн.*|легких|лёгких|позднее|поминальное</exception>
                            </token>
                            <token postag="NN:.*" postag_regexp="yes">
                                <exception postag="CONJ|PREP|ADV|Ord:.*" postag_regexp="yes" />
                                <exception regexp="yes">друг|уже|были|дай|гей|стряпней|стерней</exception>
                                <!-- полчаса, полдня -->
                                <exception regexp="yes">пол.*</exception>
                            </token>
                        </unify>				        
                    </marker>           
                </pattern>
                <message>Прилагательное не согласуется с существительным по падежу.</message>
                <short>Грамматическая ошибка в согласовании рода</short>
                <example>Крыловский государственный научный центр</example>
                <example correction=""><marker>Крыловский государственному научный центр</marker></example>
            </rule>
        </rulegroup>
        
        
        <rulegroup default="off" id="Obobchajuchee_slovo" name="Согласование с обобщающим словом">
            
            <!--TO DO: добавить остальные падежи  и добавить suppress_misspelled="yes"     -->

            <rule>
                <pattern>
                    
                    <!--           [NN:.*:.*:D]:  [NN:.*:.*:D] , [NN:.*:.*:D]      -->
                    <token postag="NN:.*:.*:D" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:D" postag_regexp="yes"></exception></token>
                    <token>:</token>
                    <marker>
                        <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:.*:D" postag_regexp="yes"></exception></token>
                        <token>,</token>
                        <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:.*:D" postag_regexp="yes"></exception></token>
                    </marker>
                </pattern>
                <message>Однородные члены не согласуется с обобщающим существительным по падежу: <suggestion><match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:D"></match><match no="4"></match> <match no="5" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:D"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D0%BE%D0%B1%D1%89%D0%B0%D1%8E%D1%89%D0%B5%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%BE</url>
                <short>Ошибка в согласовании падежей</short>
                <example>На конференции работали советы по секциям: физике, математике.</example>
                <example correction="химии, истории">На конференции работали  советы по секциям: <marker>химия, история</marker>.</example>
            </rule>
            
            <rule>
                <pattern>
                    
                    <!--           [NN:.*:.*:D]:  [NN:.*:.*:D] и [NN:.*:.*:D]      -->
                    <token postag="NN:.*:.*:D" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:D" postag_regexp="yes"></exception></token>
                    <token>:</token>
                    <marker>
                        <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:.*:D" postag_regexp="yes"></exception></token>
                        <token>и</token>
                        <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:.*:D" postag_regexp="yes"></exception></token>
                    </marker>
                    
                </pattern>
                <message suppress_misspelled="yes">Однородные члены не согласуется с обобщающим существительным по падежу: <suggestion><match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:D"></match> <match no="4"></match> <match no="5" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:D"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D0%BE%D0%B1%D1%89%D0%B0%D1%8E%D1%89%D0%B5%D0%B5_%D1%81%D0%BB%D0%BE%D0%B2%D0%BE</url>
                <short>Ошибка в согласовании падежей</short>
                <example>На конференции работали советы по секциям: физике и математике.</example>
                <example correction="химии и истории">На конференции работали  советы по секциям: <marker>химия и история</marker>.</example>
            </rule>
            
        </rulegroup>
        
        <rulegroup default="on" id="O_P_padeg" name="Предлоги и предложный падеж">
            <rule>
                <pattern case_sensitive="yes">
                    <marker>                
                        <token>не</token>
                        <token regexp="yes">ее|её</token>
                        <token postag="NN:.*:.*:P" postag_regexp="yes" regexp="yes">[а-яё].*<exception negate_pos="yes" postag="NN:.*:.*:P" postag_regexp="yes"></exception><exception regexp="yes" scope="previous">«|[\p{Punct}]|[\p{Digit}]*</exception></token>
                    </marker>
                </pattern>
                <message>Опечатка (не) -> (на): <suggestion>на \2 \3</suggestion>?</message>
                <short>Опечатка (не) -> (на)?</short>
                <example>Слёза на её щеках.</example>
                <example correction="на её щеках">Слёзы <marker>не её щеках</marker>.</example>
            </rule>
            <rule>
                <antipattern>
                    <token chunk="MayMissingYO"></token>
                </antipattern>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START" skip="-1"><exception regexp="yes" scope="next">о|обо|об|в|во|при|по|на|и|или|но|да|О|Обо|Об|В|Во|При|По|На|И|Или|Но|Да|метрах|шагах|километрах|саженях</exception></token>
                    <marker>
                        <token postag="NN:.*:.*:P" postag_regexp="yes" regexp="yes">[а-яё].*<exception negate_pos="yes" postag="NN:.*:.*:P" postag_regexp="yes"></exception><exception regexp="yes" scope="previous">«|[\p{Punct}]|[\p{Digit}]*</exception></token>
                    </marker>
                </pattern>
                <message>Предложный падеж предполагает наличие предлога (о – обо – об; в – во; при; по; на): <suggestion>о \2</suggestion>, <suggestion>в \2</suggestion>, <suggestion>при \2</suggestion>, <suggestion>по \2</suggestion>, <suggestion>на \2</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%BD%D1%8B%D0%B9_%D0%BF%D0%B0%D0%B4%D0%B5%D0%B6</url>
                <short>Пропущен предлог</short>
                <example>Они думали о доме.</example>
                <example>Не только в Москве и России, но и во всем мире.</example>
                <example>Рабочие красили забор метрах в пятидесяти от меня.</example>
                <example correction="о доме|в доме|при доме|по доме|на доме">Они думали <marker>доме</marker>.</example>
            </rule>
            <rule>
                 <antipattern>
                    <token postag="SENT_START"></token>
                    <token chunk="MayMissingYO"></token> 
                </antipattern>
                <pattern>
                    <token postag="SENT_START"></token>
                    <marker>
                        <token postag="NN:.*:.*:P" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:.*:P" postag_regexp="yes"></exception></token>
                    </marker>
                </pattern>
                <message>Предложный падеж предполагает наличие предлога (о – обо – об; в – во; при; по; на): <suggestion>О <match no="2" case_conversion="startlower"></match></suggestion>, <suggestion>Об <match no="2" case_conversion="startlower"></match></suggestion>, <suggestion>Обо <match no="2" case_conversion="startlower"></match></suggestion>, <suggestion>В <match no="2" case_conversion="startlower"></match></suggestion>, <suggestion>Во <match no="2" case_conversion="startlower"></match></suggestion>, <suggestion>При <match no="2" case_conversion="startlower"></match></suggestion>, <suggestion>По <match no="2" case_conversion="startlower"></match></suggestion>, <suggestion>На <match no="2" case_conversion="startlower"></match></suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%BD%D1%8B%D0%B9_%D0%BF%D0%B0%D0%B4%D0%B5%D0%B6</url>
                <short>Пропущен предлог</short>
                <example>О доме они думали.</example>
                <example correction="О доме|Об доме|Обо доме|В доме|Во доме|При доме|По доме|На доме"><marker>Доме</marker> они думали.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="PREP_PNN" name="Правописание предлогов с местоимениями">
            <rule>
                <pattern case_sensitive="no">
                    <token>у</token>
                    <token>никого</token>
                </pattern>
                <message>Предлог ставится между частицей и местоимением: <suggestion>ни у кого</suggestion>.</message>
                <url>https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Предлог ставится между частицей и местоимением</short>
                <example>Ни у кого этого нет.</example>
                <example correction="Ни у кого"><marker>У никого</marker> этого нет.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>с</token>
                    <token>нечем</token>
                </pattern>
                <message>Предлог ставится между частицей и местоимением: <suggestion>не с чем</suggestion>.</message>
                <url>https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Предлог ставится между частицей и местоимением</short>
                <example>Не с чем сравнивать.</example>
                <example correction="Не с чем"><marker>С нечем</marker> сравнивать.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>с</token>
                    <token>никаким</token>
                </pattern>
                <message>Предлог ставится между частицей и местоимением: <suggestion>ни с каким</suggestion>.</message>
                <url>https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Предлог ставится между частицей и местоимением</short>
                <example>ни с каким</example>
                <example correction="ни с каким"><marker>с никаким</marker></example>
            </rule>         
            <rule>
                <pattern case_sensitive="no">
                    <token>при</token>
                    <token>никаких</token>
                </pattern>
                <message>Предлог ставится между частицей и местоимением: <suggestion>ни при каких</suggestion>.</message>
                <url>https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5</url>
                <short>Предлог ставится между частицей и местоимением</short>
                <example>Проведение матчей в манеже пока невозможно ни при каких обстоятельствах.</example>
                <example correction="ни при каких">Проведение матчей в манеже пока невозможно <marker>при никаких</marker> обстоятельствах.</example>
            </rule>      
        </rulegroup>
        
        <rulegroup default="on" id="Com_Num" name="Собирательные числительные">
            <rule>
                <pattern>
                    <token regexp="yes">пятеро|шестеро|семеро</token>
                    <token postag="NN:.*:Fem:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Fem:.*" postag_regexp="yes"></exception><exception regexp = "yes">были|стали</exception></token>
                </pattern>
                <message>Собирательные числительные (двое, трое, четверо, пятеро, шестеро, семеро) не употребляются с существительными женского рода: <suggestion><match no="1" regexp_match="(пят|шест|сем)еро" regexp_replace="$1ь"></match> <match no="2"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>Здесь было семь подруг.</example>
                <example correction="семь подруг">Здесь было <marker>семеро подруг</marker>.</example>
                <example correction="пять подруг">Здесь было <marker>пятеро подруг</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>двое</token>
                    <token postag="NN:.*:Fem:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Fem:.*" postag_regexp="yes"></exception><exception regexp = "yes">были|стали</exception></token>
                </pattern>
                <message>Собирательные числительные (двое, трое, четверо, пятеро, шестеро, семеро) не употребляются с существительными женского рода: <suggestion>две <match no="2" postag="NN:.*:Fem:PL:Nom" postag_regexp="yes"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>Здесь были две подруги.</example>
                <example correction="две подруги">Здесь были <marker>двое подруг</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>трое</token>
                    <token postag="NN:.*:Fem:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Fem:.*" postag_regexp="yes"></exception><exception regexp = "yes">были|стали</exception></token>
                </pattern>
                <message>Собирательные числительные (двое, трое, четверо, пятеро, шестеро, семеро) не употребляются с существительными женского рода: <suggestion>три <match no="2" postag="NN:.*:Fem:PL:Nom" postag_regexp="yes"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>Здесь были три подруги.</example>
                <example correction="три подруги">Здесь были <marker>трое подруг</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>четверо</token>
                    <token postag="NN:.*:Fem:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Fem:.*" postag_regexp="yes"></exception><exception regexp = "yes">были|стали</exception></token>
                </pattern>
                <message>Собирательные числительные (двое, трое, четверо, пятеро, шестеро, семеро) не употребляются с существительными женского рода: <suggestion>четыре <match no="2" postag="NN:.*:Fem:PL:Nom" postag_regexp="yes"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>Здесь были четыре подруги.</example>
                <example correction="четыре подруги">Здесь были <marker>четверо подруг</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>двое</token>
                    <token regexp="yes" >волков|медведей|котов|кабанов</token>
                </pattern>
                <message suppress_misspelled="yes">Собирательные числительные (двое, трое, четверо, пятеро, шестеро, семеро) не употребляются с названиями взрослых особей животных: <suggestion>два <match no="2" postag="NN:(.*):(.*):PL:R" postag_regexp="yes" postag_replace="NN:$1:$2:Sin:R"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>В зоопарке находились два волка.</example>
                <example correction="два медведя">В зоопарке находились <marker>двое медведей</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>трое</token>
                    <token regexp="yes" >волков|медведей|котов|кабанов</token>
                </pattern>
                <message suppress_misspelled="yes">Собирательные числительные (двое, трое, четверо, пятеро, шестеро, семеро) не употребляются с названиями взрослых особей животных: <suggestion>три <match no="2" postag="NN:(.*):(.*):PL:R" postag_regexp="yes" postag_replace="NN:$1:$2:Sin:R"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>В зоопарке находились три волка.</example>
                <example correction="три медведя">В зоопарке находились <marker>трое медведей</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>четверо</token>
                    <token regexp="yes" >волков|медведей|котов|кабанов</token>
                </pattern>
                <message suppress_misspelled="yes">Собирательные числительные (двое, трое, четверо, пятеро, шестеро, семеро) не употребляются с названиями взрослых особей животных: <suggestion>четыре <match no="2" postag="NN:(.*):(.*):PL:R" postag_regexp="yes" postag_replace="NN:$1:$2:Sin:R"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>В зоопарке находились четыре волка.</example>
                <example correction="четыре медведя">В зоопарке находились <marker>четверо медведей</marker>.</example>
            </rule>
             <rule>
                <pattern>
                    <token regexp="yes">пятеро|шестеро|семеро</token>
                    <token regexp="yes" >волков|медведей|котов|кабанов|собак|кошек|тигров|леопардов|львов</token>
                </pattern>
                <message>Собирательные числительные (двое, трое, четверо, пятеро, шестеро, семеро) не употребляются с названиями взрослых особей животных: <suggestion><match no="1" regexp_match="(пят|шест|сем)еро" regexp_replace="$1ь"></match> <match no="2"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example correction="семь волков">В зоопарке находились <marker>семеро волков</marker>.</example>
            </rule>
        </rulegroup>

        <rulegroup default="on" id="Para_NN" name="Числительное «пара» + существительное">
            <rule>
                <pattern>
                    <token>пара</token>
                    <token regexp="yes">брюк|колготок|ножниц|ворот|кусачек|тисков|клещей|щипцов</token>
                </pattern>
                <message>Числительное «пара» не употребляется с существительными, существующими только в форме множественного числа: <suggestion>двое <match no="2"></match></suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>двое брюк</example>
                <example correction="двое брюк"><marker>пара брюк</marker></example>
            </rule>        
        </rulegroup>
        
        <rulegroup default="on" id="dva_i_bolee" name="«Два и более» + существительное">
            <rule>
                <pattern>
                    <token regexp="yes">два|три|четыре</token>
                    <token>и</token>
                    <token>более</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception postag="NN:.*:Sin:R" postag_regexp="yes"></exception></token>
                </pattern>
                <message suppress_misspelled="yes">В сочетаниях «два и более» + существительное управляемое существительное ставится в родительном падеже единственного числа: <suggestion><match no="1"></match> <match no="2"></match> <match no="3"></match> <match no="4" postag="NN:(.*):.*:.*" postag_regexp="yes" postag_replace="NN:$1:Sin:R"></match></suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>В задании может быть два и более варианта.</example>
                <example correction="два и более варианта">В задании может быть <marker>два и более вариантов</marker>.</example>
            </rule>
        </rulegroup>

        <rulegroup default="on" id="Oba_obe" name="Числительные «оба» и «обе»">
            <rule>
                <pattern>
                    <token regexp="yes">оба|обоих|обоим|обоими</token>
                    <token postag="NN:.*:Fem:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Fem:.*" postag_regexp="yes"></exception></token>
                </pattern>
                <message suppress_misspelled="yes">Числительное «оба» (обоих, обоим, обоими) употребляется только с существительными мужского рода: <suggestion><match no="1" postag="Num:.*:(.*)" postag_regexp="yes" postag_replace="Num:Fem:$1"></match> <match no="2"></match></suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>По обеим сторонам.</example>
                <example correction="обеим сторонам">По <marker>обоим сторонам</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>у</token>
                    <token>обоих</token>
                    <token regexp="yes">ворот|часов</token>
                </pattern>
                <message>Числительное «оба» (обоих) не может употребляться с существительными, имеющими только форму множественного числа: <suggestion>у тех и у других <match no="3"></match></suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>Стража стояла у тех и у других ворот.</example>
                <example correction="у тех и у других ворот">Стража стояла <marker>у обоих ворот</marker>.</example>
            </rule>
            
            
            <rule>
                <pattern>
                    <token regexp="yes">обе|обеих|обеим|обеими</token>
                    <token postag="NN:.*:Masc:.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*:Masc:.*" postag_regexp="yes"></exception></token>
                </pattern>
                <message suppress_misspelled="yes">Числительное «обе» (обеих, обеим, обеими) употребляется только с существительными женского рода: <suggestion><match no="1" postag="Num:.*:(.*)" postag_regexp="yes" postag_replace="Num:Masc:$1"></match> <match no="2"></match></suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D0%B8%D1%80%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Грамматическая ошибка</short>
                <example>На обоих столах.</example>
                <example correction="оба столах|обоих столах">На <marker>обеих столах</marker>.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="Pnn_compose_error" name="Ошибки в образовании местоимений">
            
            <rule>
                <pattern>
                    <token regexp="yes">ихний|ихняя|ихнее|ихнего|ихнему|ихним|ихнем|ихней|ихнюю|ихних|ихними|ихние</token>
                </pattern>
                <message>Правильная форма – <suggestion>их</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%BE%D0%BC_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B5</url>
                <short>Правильная форма – &quot;их&quot;</short>
                <example>Там находится их дом.</example>
                <example correction="их">Там находится <marker>ихний</marker> дом.</example>
            </rule>   
        </rulegroup>
        <rulegroup  id="NN_N_pril_prich" name="Правописание «нн» или «н» в причастиях и прилагательных">
            <rule>
                <pattern>
                    <marker>  
                        <token postag="ADJ:.*" postag_regexp="yes" regexp="yes">.*[аеёиоуэюя][н](&pril_end;)<exception  postag="ADJ:Comp" /><exception  negate_pos="yes" postag="ADJ:.*" postag_regexp="yes"></exception></token>  <!-- <exception>женат</exception> --> 
                    </marker>
                    <token  postag="PREP" skip="1" ></token>  
                        <token postag="NN:.*:.*:.*:P" postag_regexp="yes"></token>
                </pattern>
                <message>Причастие пишется с «нн», есть зависимые слова: <suggestion suppress_misspelled="yes"><match no="1" regexp_match="(.*[аеёиоуэюя])[н]([а-мо-я]{1,3})" regexp_replace="$1нн$2"></match></suggestion></message>
                <short>Пишется с «нн»</short>
                <example>Сегодня на ужин жаренная на масле картошка.</example>
                <example>Стеклянный, оловянный и деревянный – это исключения из правила.</example>
                <example>Вводится единый для всех ведомств госбюджет, с едиными остатками.</example>
                <example>Пётр I приказал заменить их чулки с зелёных на красные.</example>
                <example>Он женат на стюардессе.</example>
                <example>Раньше в этом регионе.</example>
                <example>Вы больше не одиноки в комнате.</example>
                <example>Я не уверена в том, что он говорит правду.</example>
                <example>Ещё один остановочный пункт существовал на острове Змеиный близ дельты Дуная.</example>
                <example>Объекты реализации единых по замыслу архитектурных проектов.</example>
                <example correction="жаренная">Сегодня на ужин <marker>жареная</marker> на масле картошка.</example>
                <example correction="жаренная">Сегодня на ужин <marker>жареная</marker> в этом масле картошка.</example>
            </rule>

            <rule>
                <pattern>
                    <marker>  
                        <token postag="PT:.*" postag_regexp="yes" regexp="yes">.*[аеёиоуэюя][н][н]([а-мо-я]{1,3})<exception  negate_pos="yes" postag="PT:.*" postag_regexp="yes"></exception><exception scope="previous" >,</exception><exception scope="previous" postag="ADV" ></exception></token>
                    </marker>
                    <token negate_pos="yes"  postag="PREP" ><exception  postag="NN:.*:.*:.*:(T|D)" postag_regexp="yes"></exception><exception regexp="yes">[А-ЯЁ]</exception></token>                
                    <token negate_pos="yes" postag="NN:.*:.*:.*:T" postag_regexp="yes"></token>
                </pattern>
                <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:1 regexp:(.*[аеёиоуэюя][н])[н]([а-мо-я]{1,3}) postag_regexp:ADJ:.*  two_groups_regexp:yes "/>     <!-- Test if word without "нн" exist. req regexp  (.*[аеёиоуэюя][н])[н]([а-мо-я]{1,3})   $1$2 -->
                <message>Прилагательное пишется с «н», зависимых слов нет: <suggestion suppress_misspelled="yes"><match no="1" regexp_match="(.*[аеёиоуэюя])[н][н]([а-мо-я]{1,3})" regexp_replace="$1н$2"></match></suggestion></message>
                <short>Пишется с «н»</short>
                <example>Сегодня на ужин жареная картошка.</example>
                <example>Сегодня у нас на ужин жаренная Иваном картошка.</example>
                <example>Во дворце состоялось объединённое заседание.</example>
                <example>Поступки, совершённые ими.</example>
                <example>Эта подержанная машина продаётся.</example>
                <example>Я не уверена в том, что он говорит правду.</example>
                <example>На фоне начинающихся массовых беспорядков, порождённых экономической и политической ситуацией, наблюдается кризис.</example>
                <example>Декларация содержит рекомендации по охране, адресованные странам и правительствам.</example>
                <example>Метод лингвосоционического моделирования, предложенный Л. М. Комиссаровой, применяется при анализе.</example>
                <example correction="жареная">Сегодня на ужин <marker>жаренная</marker> картошка.</example>
 <!--           <example correction="уверена">Я не <marker>уверенна</marker> в том, что он говорит правду.</example>  -->
            </rule>
        </rulegroup>            
        <rulegroup default="on" id="Ne_narech" name="«Не» с наречиями">
            <!-- TODO  -->
            <rule> <!--  1.) невесть кто (что, какой, где, куда )-->
                <pattern case_sensitive="no">
                    <marker>
                        <token>не</token>
                        <token>весть</token>
                    </marker>
                    <token regexp="yes">кто|что|какой|где|куда</token>
                </pattern>
                <message>Пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Слитно с «не»</short>
                <example>Невесть кто</example>
                <example correction="Невесть"><marker>Не весть</marker> кто.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <marker>
                        <token>не</token>
                        <token regexp="yes">где|куда|откуда|зачем</token>
                    </marker>
                </pattern>
                <message>Пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Слитно с «не»</short>
                <example>Некуда идти.</example>
                <example correction="Некуда"><marker>Не куда</marker> лететь.</example>
            </rule>
            <rule>
                <!-- раздельное написание частицы не:
                далеко не, вовсе не, отнюдь не или зависимые слова, начинающиеся с ни- (temp remove вовсе, issue #6360)
                -->
                <pattern>
                    <marker>         
                        <or>
                            <token regexp="yes">далеко|отнюдь</token>
                            <token postag="ADV"  regexp="yes">(ни)(.*)</token>   
                        </or>
                        <token postag="ADV"  regexp="yes">(не)(.*)[о]</token>                  
                    </marker>
                </pattern>
                <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:не(.*) postag_regexp:(ADV)  "/>      <!-- Test if word without "не" exist -->
                <message>Пишется раздельно с «не»: <suggestion><match no="1"></match> <match no="2" regexp_match="(не)(.*)" regexp_replace="$1 $2"></match></suggestion>.</message>
                <short>Раздельно с «не»</short>
                <example>Работа выполнена далеко не плохо.</example>
                <example correction="далеко не плохо">Работа выполнена <marker>далеко неплохо</marker>.</example>
            </rule>
            <rule>
                <!-- раздельное написание частицы не:
                наречию на -о имеется противопоставление с союзом «а»
                -->
                <pattern>
                    <marker>         
                        <token postag="ADV"  regexp="yes">(не)(.*)[о]</token>
                        <token>,</token>
                        <token>а</token>
                        <token postag="ADV" ><exception regexp="yes">потом|сейчас</exception>
                        </token>
                    </marker>
                </pattern>
                <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:1 regexp:не(.*) postag_regexp:(ADV)  "/>      <!-- Test if word without "не" exist -->
                <message>Пишется раздельно с «не», имеется противопоставление с союзом «а»: <suggestion><match no="1" regexp_match="(не)(.*)" regexp_replace="$1 $2"></match><match no="2"></match> <match no="3"></match> <match no="4"></match></suggestion>.</message>
                <short>Раздельно с «не»</short>
                <example>Работа выполнена не плохо, а хорошо.</example>
                <example>Он замолкает ненадолго, а потом поет печальную песню.</example>   <!-- issue #6165 , а=но -->             
                <example correction="не плохо, а хорошо">Работа выполнена <marker>неплохо, а хорошо</marker>.</example>
            </rule>
            <rule>
                <!-- слитное написание частицы не:
                наречию на -о имеется союз «но» (приписывается оба признака)
                -->
                <pattern>
                    <marker>         
                        <token>не</token>
                        <token postag="ADV"  regexp="yes">(.*)[о]</token>
                        <token>,</token>
                        <token >но</token>
                    </marker>                 
                    <or>  
                        <token postag="ADV" ></token>
                        <token postag="&lt;ADV&gt;" ></token>
                    </or>      
                </pattern>
                <message>Пишется слитно с «не», имеется союз «но», нет отрицания: <suggestion>не<match no="2"></match><match no="3"></match> <match no="4" ></match></suggestion>.</message>
                <short>Слитно с «не»</short>
                <example>Работа выполнена неплохо, но с опозданием.</example>
                <example correction="неплохо, но">Работа выполнена <marker>не плохо, но</marker> с опозданием.</example>
                <example correction="неплохо, но">Работа выполнена <marker>не плохо, но</marker> медленно.</example>
        </rule>
        </rulegroup>            
        <rule  id="Ne_narech2" name="«Не» с наречиями (2)" default="on">
            <!-- TODO set on after release -->
            <!-- слитное написание частицы не:
               отсутствует противопоставление, отсутствуют слова  «отнюдь, вовсе, далеко», отсутствует местоимение или наречие с «ни», TODO отсутствуют «едва ли не», «чуть ли не» ,«разве не».
                -->
                <antipattern>
                    <token>не</token>
                    <token postag="ADV|PRDC" postag_regexp="yes"  regexp="yes">(.*)[о]<exception postag="PARTICLE"></exception></token>
                    <token>и</token>
                    <token>не</token>
                    <token postag="ADV|PRDC" postag_regexp="yes" regexp="yes">(.*)[о]<exception postag="PARTICLE"></exception></token>
                </antipattern>
                <antipattern>
                    <token>не</token>
                    <token skip="-1" postag="ADV"  regexp="yes">(.*)[о]<exception postag="PARTICLE"></exception></token>
                    <token>,</token>
                    <token postag="ADV"  regexp="yes">(.*)[о]<exception postag="PARTICLE"></exception></token>
                </antipattern>
                <pattern>
                    <marker>         
                        <token>не<exception scope="previous" regexp="yes">ни(.*)|отнюдь|вовсе|далеко|разве|ли|–|-|—|это|эти|эта|этот|тот|та|те|да|а</exception>
                            <exception scope="previous" postag_regexp="yes" postag="ADV" />
                            <exception scope="previous">но</exception>
                        </token>
                        <token postag="ADV"  regexp="yes">(.*)[о]<exception regexp="yes">заново|настолько|несколько|одиноко|особенно|особо|специально</exception><exception scope="next" regexp="yes">,|а|да|иной|иное|иные|иная|–|-|—</exception><exception scope="next" postag_regexp="yes" postag="CONJ|ADV"></exception><exception postag="PARTICLE"></exception></token>
                    </marker>                        
                </pattern>
                <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:(.*) postag_regexp:(ADV) prefix:не suffix:  "/>      <!--   Test if word with "не" exist! -->
                <message>Обычно пишется слитно с «не», отсутствует противопоставление: <suggestion>не<match no="2"></match></suggestion>.</message>
                <url>https://kak-pravilno.net/ne-obyazatelno-ili-neobyazatelno-kak-pravilno/</url>
                <short>Обычно слитно с «не»</short>
                <example>Несложно проверить его стабильность.</example>
                <example>Она начала играть в волейбол не столько из интереса, сколько из тщеславия.</example>
                <example>Сегодня не особо ветрено.</example>
                <example>Это не ново.</example>
                <example>Его уже не видно и не слышно.</example>
                <example>Достаточно A, но не достаточно B.</example>
                <example>Красное больше не модно.</example>
                <example>Дома сидеть невесело.</example>
                <example>Разве не опасно бродить по улицам?</example>
                <example>Отрасли промышленности с большим вложением капитала, совершенно не обязательно требуют вложения знаний.</example>
                <example>Работа выполнена не плохо, а хорошо.</example>  <!-- противопоставление с отрицанием, раздельно-->
                <example>Работа выполнена неплохо, но с опозданием.</example>  <!-- противопоставление без отрицания, слитно -->
                <example correction="Несложно"><marker>Не сложно</marker> проверить его стабильность.</example>
        </rule>        
              
        <rulegroup default="on" id="Ne_narech_ne_horosho" name="«Не» с наречиями «не хорошо и не плохо»">
            <rule>
                <pattern case_sensitive="no">
                    <marker>
                        <token>нехорошо</token>
                        <token>и</token>                        
                        <token>неплохо</token>
                    </marker>
                </pattern>
                <message>В данном контексте пишется раздельно: <suggestion>не хорошо \2 не плохо</suggestion>.</message>
                <short>Раздельно с «не»</short>
                <example>не хорошо и не плохо</example>
                <example correction="не хорошо и не плохо"><marker>нехорошо и неплохо</marker></example>
            </rule>
        </rulegroup>        
                
        <rulegroup default="on" id="Ne_pril_prich" name="«Не» с прилагательными и причастиями">
            <rule>
                <pattern>
                    <token regexp="yes">очень|весьма|крайне|совершенно|вполне|почти|отчасти|совсем|чрезвычайно</token>
                    <marker>
                        <token>не</token>
                        <token postag="ADJ:.*" postag_regexp="yes"><exception regexp="yes">такой|сякой</exception><exception postag="ADJ:Short:.*" postag_regexp="yes"/><exception negate_pos="yes" postag="ADJ:.*" postag_regexp="yes"/></token>
                    </marker>
                </pattern>
                <message>Пишется слитно: <suggestion>\2\3</suggestion>.</message>
                <short>Слитно с «не»</short>
                <example>Этот поступок был крайне неосторожным.</example>
                <example>Совсем не такой.</example>
                <example correction="неосторожным">Этот поступок был крайне <marker>не осторожным</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token regexp="yes">очень|крайне|совершенно|совсем|чрезвычайно</token>
                    <marker>
                        <token>не</token>
                        <token postag="PT:.*" postag_regexp="yes"></token>
                    </marker>
                </pattern>
                <message>Пишется слитно: <suggestion>\2\3</suggestion>.</message>
                <short>Слитно с «не»</short>
                <example>Это совсем непродуманное решение.</example>
                <example correction="непродуманное">Это совсем <marker>не продуманное</marker> решение.</example>
            </rule>
            
            <rule>
                <!-- раздельное написание частицы не:
                если "не" входит в состав усилительных отрицаний: далеко не, отнюдь не, вовсе не, ничуть не, нисколько не и т. п., предшествующих существительному, прилагательному или наречию.
                -->
                <pattern>
                    <token regexp="yes">далеко|отнюдь|вовсе|ничуть|нисколько</token>
                    <token postag="(ADJ:.*)|(PT:.*)" postag_regexp="yes" regexp="yes">(не)(.*)<exception   postag="ADJ:Short:.*" postag_regexp="yes"/></token>
                </pattern>
                <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:не(.*) postag_regexp:(ADJ:.*)|(PT:.*)  "/>      <!-- Test if word without "не" exist -->
                <message>Пишется раздельно с «не»: <suggestion><match no="1"></match> <match no="2" regexp_match="(не)(.*)" regexp_replace="$1 $2"></match></suggestion>.</message>
                <short>Раздельно с «не»</short>
                <example>Эта книга вовсе не интересная.</example>
                <example correction="вовсе не интересная">Эта книга <marker>вовсе неинтересная</marker>.</example>
            </rule>
            <rule>
                <!-- раздельное написание частицы не:
                если при прилагательном, причастии или наречии в качестве пояснительного слова стоит местоимение, начинающееся с ни, например:
                никому (ни для кого и т. п.) не нужная вещь, никогда не встречающаяся ошибка, никому не выгодно за это браться;
                -->
                <pattern>
                    <token postag="PNN:.*" regexp="yes" postag_regexp="yes">(ни)(.*)<exception regexp="yes">ним|них|ничего</exception></token>
                    <token postag="(ADJ:.*)|(PT:.*)" postag_regexp="yes" regexp="yes">(не)(.*)<exception regexp="yes">(необходим)(.*)|(немецк)(.*)</exception></token>   <!-- <exception   postag="ADJ:Short:.*" postag_regexp="yes"/>  общее правило для полной и краткой формы прилагательных-->
                </pattern>
                <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:не(.*) postag_regexp:(ADJ:.*)|(PT:.*)  "/>      <!-- Test if word without "не" exist -->
                <message>Пишется раздельно с «не»: <suggestion><match no="1"></match> <match no="2" regexp_match="(не)(.*)" regexp_replace="$1 $2"></match></suggestion>.</message>
                <short>Раздельно с «не»</short>
                <example>На полке лежит никому не нужная коробка.</example>
                <example>Наличие в них недостоверных сведений.</example>
                <example>В жизни нет ничего невозможного.</example> <!-- ничего - исключение, не зависит от прилагательных, а само ими поясняется -->
                <example>На корабль доставили контейнеры с погруженными в них немецкими автомобилями.</example>
                <example correction="никому не нужная">На полке лежит <marker>никому ненужная</marker> коробка.</example>
            </rule>
        </rulegroup>
            
        <rule default="temp_off" id="Ne_pril_prich1" name="«Не» с прилагательными и причастиями (краткая форма)"> 
                <!-- Его походка медлительна, неуверенна. Это краткое прилагательное, слитное написание НЕ, две буквы НН, зависимых слов нет   default="temp_off" -->
            <antipattern>   
                    <marker>
                        <token>не</token>
                        <token skip="1" postag="ADJ:Short:.*" postag_regexp="yes"><exception negate_pos="yes"  postag="ADJ:Short:.*" postag_regexp="yes"/></token>
                    </marker>
                    <token>,</token>
                    <token regexp="yes">а|хотя|как</token>               
            </antipattern>
            <antipattern>   
                    <marker>
                        <token>не</token>
                        <token skip="1" postag="ADJ:Short:.*" postag_regexp="yes"><exception negate_pos="yes"  postag="ADJ:Short:.*" postag_regexp="yes"/></token>
                    </marker>
                    <token>,</token>
                    <token>не</token>
                    <token>так</token>
                    <token>ли</token>               
            </antipattern>

            <!--     Ne_pril_prich -->
    
            <antipattern>
                <token regexp="yes">уже|очень|весьма|крайне|совершенно|вполне|почти|отчасти|совсем|чрезвычайно|далеко|отнюдь|вовсе|ничуть|нисколько|вообще</token>   <!-- + вообще,   уже -->
                <marker>
                    <token>не</token>
                    <token postag="ADJ:Short:.*" postag_regexp="yes">
                        <exception negate_pos="yes"  postag="ADJ:Short:.*" postag_regexp="yes"/>
                    </token>
                </marker>
            </antipattern> 
   
            <antipattern>
                <token     postag="PNN:.*" regexp="yes" postag_regexp="yes">(ни)[а-я](.*)</token>   
                <marker>
                    <token>не</token>
                    <token postag="ADJ:Short:.*" postag_regexp="yes">
                        <exception negate_pos="yes"  postag="ADJ:Short:.*" postag_regexp="yes"/>
                    </token>
                </marker>
            </antipattern>
            
            <antipattern>
                <token>
                    <exception>,</exception>
                </token>   
                <marker>
                    <token>не</token>
                    <token postag="ADJ:Short:.*" postag_regexp="yes">
                        <exception negate_pos="yes"  postag="ADJ:Short:.*" postag_regexp="yes"/>
                    </token>
                </marker>
                <token regexp="yes">[.!?:]</token>
            </antipattern> 
                              
            <pattern>   
                    <marker>
                        <token>не</token>
                        <token postag="ADJ:Short:.*" postag_regexp="yes">
                            <exception negate_pos="yes"  postag="ADJ:Short:.*" postag_regexp="yes"/>
                            <exception postag="ADJ:Short:Masc" />
                            <exception regexp="yes" >&ne_pril_short_inoe;|&ne_pril_short_double;</exception>
                        </token>   <!-- <exception  postag="PT_Short:.*|VB:.*" postag_regexp="yes"/> -->
                    </marker>
                    <token><exception  postag="PREP" /><exception>ли</exception><exception  postag="NN:.*:.*:.*:(T|D)|ADV" postag_regexp="yes" /><exception regexp="yes">[А-ЯЁ]</exception></token>                
            </pattern>
        <!--    <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:(.*) postag_regexp:(ADJ:Short:.*) prefix:не suffix:  "/>    -->    <!--   Test if word with "не" exist! -->
        <!--    <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:(.*) postag_regexp:UNKNOWN prefix:не suffix:  negate_pos:yes"/>  -->  <!--   Test if word with "не" exist! -->


                <message>Возможно пишется слитно, проверьте контекст: <suggestion>\1\2</suggestion>.</message>
                <short>Возможно слитно с «не»</short>
                <example>Его походка медлительна, неуверенна.</example>
                <example>Река не глубокая, а мелкая.</example>  <!-- противопоставление с отрицанием, раздельно-->
                <example>Река не глубока, а мелка.</example>  <!-- противопоставление с отрицанием, раздельно-->
                <example>Река неглубокая, но холодная.</example>   <!-- противопоставление без отрицания, слитно -->
                <example>Река неглубока, но холодна.</example>   <!-- противопоставление без отрицания, слитно -->
                <example>Вы не женаты, не так ли?</example>
                <example>Они не аналогичны ей, хотя и близки к этому.</example>
                <example>Ничто так не ценно, как здоровье.</example>
                <example>Эта община уже не жизненна.</example>
                <example>Мы с ней не знакомы.</example>
                <example>Человек не виновен в вымирании мамонтов.</example>
                <example>Эта доставка либо слишком дорога, либо вообще не доступна.</example>
                <example>Я никогда не бывал в Нью-Йорке, и моя сестра тоже не бывала там.</example>
                <example correction="неуверенна">Его походка медлительна, <marker>не уверенна</marker>.</example>
        </rule>

        <rulegroup default="on" id="Ne_komu_inomu_kak" name="Оборот «не кому иному, как»">
            <rule>
                <pattern case_sensitive="no">
                    <marker>
                        <token regexp="yes">некому|нечему|никому|ничему|некто|нечто</token>
                        <token regexp="yes">иному|другому|иной|другой</token>                                                
                        <token min="0" max="1">,</token>
                        <token>как</token>
                    </marker>
                </pattern>
                <message>В данном контексте (имеется противопоставление) пишется раздельно: <suggestion><match no="1" regexp_match="([нН])([еи])(.*)" regexp_replace="$1е $3"></match> <match no="2" />, <match no="4" /></suggestion>.</message>
                <url>https://www.anews.com/p/126679064-nikto-inoj-ili-ne-kto-inoj-kak-pravilno-pishetsya-i-v-chem-raznica/</url>
                <short>Раздельно с «не»</short>
                <example>не кому иному, как</example>
                <example correction="не кому иному, как"><marker>некому иному, как</marker></example>
                <example correction="Не кому иному, как"><marker>Никому иному как</marker></example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <marker>
                        <token>а</token>
                        <token regexp="yes">некому|нечему|никому|ничему</token>
                        <token regexp="yes">иному|другому</token>                                                
                    </marker>
                </pattern>
                <message>В данном контексте (имеется противопоставление) пишется раздельно: <suggestion><match no="1" /> <match no="2" regexp_match="([нН])([еи])(.*)" regexp_replace="$1е $3"></match> <match no="3" /></suggestion>.</message>
                <url>https://www.anews.com/p/126679064-nikto-inoj-ili-ne-kto-inoj-kak-pravilno-pishetsya-i-v-chem-raznica/</url>
                <short>Раздельно с «не»</short>
                <example>а не кому иному</example>
                <example correction="а не кому иному"><marker>а некому иному</marker></example>

            </rule>
        </rulegroup>
        <rulegroup default="on" id="nikto_ioj" name="Оборот «никто иной»">
            <rule>  <!--  некто иной = кто-то другой: «Некто иной изображён на картине.» -->
                <pattern case_sensitive="no">
                    <marker>
                        <token>ни<exception scope="previous">а</exception></token>  
                        <token regexp="yes">кто|что</token>  
                        <token regexp="yes">иной|другой<exception scope="next" regexp="yes">,|как</exception></token>                                                
                    </marker>
                </pattern>
                <message>В данном контексте (нет противопоставления) пишется слитно: <suggestion>\1\2 \3</suggestion>.</message>
                <url>https://www.anews.com/p/126679064-nikto-inoj-ili-ne-kto-inoj-kak-pravilno-pishetsya-i-v-chem-raznica/</url>
                <short>Слитно с «не»</short>
                <example>Никто иной не может быть там.</example>
                <example correction="Никто иной"><marker>Ни кто иной</marker> не может быть там.</example>
            </rule>
        </rulegroup>
                
        <rulegroup default="on" id="Upr_ne_verb_i_ni" name="Управление глагола при отрицании: «и» вместо «ни»">
            <rule> 
                <pattern>
                    <marker>
                        <token>не</token>
                        <token postag="VB:Past:.*" postag_regexp="yes"><exception negate_pos="yes" postag="VB:Past:.*" postag_regexp="yes"/></token>
                        <token>и</token>
                        <token postag="NN:.*:R" postag_regexp="yes"><exception negate_pos="yes" postag="NN:.*" postag_regexp="yes"/><exception>следа</exception></token>
                    </marker>
                </pattern>
                <message>Управление глагола при отрицании: «и» вместо «ни». <suggestion><match no="1"/> <match no="2"/> ни <match no="4"/></suggestion></message>
                <short>Управление глагола при отрицании</short>
                <example>За весь вечер он не сказал ни слова.</example>
                <example>Там не осталось и следа.</example>
                <example correction="не сказал ни слова">За весь вечер он <marker>не сказал и слова</marker>.</example>
            </rule>
        </rulegroup>   
	<rule id="kak_ni_stranno" name="Опечатка: «как ни странно» или «как не странно»">
  	    <pattern>
    		<token>как</token>
    		<token>не</token>
    		<token>странно</token>
  	     </pattern>
  	     <message>Опечатка: <suggestion>\1 ни \3</suggestion></message>
  	     <short>Опечатка</short>
  	     <example correction="как ни странно"><marker>как не странно</marker></example>
	 </rule>
         <rulegroup default="on" id="Pravopisanie_s_odnoj" name="Словосочетание: «с одной»">    
            <rule>
                <pattern>
                    <marker>
                        <token>с</token>
                        <token>одной</token>
                    </marker>        
                    <token><exception   postag_regexp="yes" postag="NN:.*:Fem:Sin:T|NN:.*:Fem:Sin:R|ADJ:.*|ABR:.*|PT:.*|PREP|CONJ|ADV"></exception><exception regexp="yes">[,"«.;:]</exception><exception>ВПП</exception></token>
                </pattern>
                <message>Пропущено слово.</message>
                <example correction=""><marker>С одной</marker> оптимизатору было проще найти минимум.</example>
                <example>С одной стороны оптимизатору было проще найти минимум.</example>
                <example>Микроскопы Ван Левенгука представляли собой относительно небольшие изделия с одной очень сильной линзой.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="Pravopisanie_po-prezhnemu" name="Правописание слов: «по-прежнему» или «по прежнему»">    
            <rule>
                <pattern raw_pos="yes">
                    <marker>
                        <token>по<exception scope="previous">судя</exception></token>
                        <token  postag="ADJ:Posit:Masc:D" />
                    </marker>
                    <token>,</token>
                    <token skip="-1">
                        <exception scope="next" postag_regexp="yes" postag="NN:.*:Masc:.*:D|NN:.*:Neut:.*:D" />
                    </token>
                    <token postag="SENT_END" />
                </pattern>
                <message>Слово пишется через дефис: <suggestion>\1-\2</suggestion>.</message>
                <short>Пишется через дефис</short>
                <example>Судя по мясному рагу на столе, вы застигли его за обедом.</example>
                <example correction="по-зимнему">Я оделся <marker>по зимнему</marker>, так как было холодно.</example>
                <example correction="по-хорошему">Давай <marker>по хорошему</marker>, иначе будет грустно.</example>
                <example correction="по-прежнему">Я поступлю <marker>по прежнему</marker>, как бы вы меня ни уговаривали.</example>
                <example correction="по-прежнему">Я поступлю <marker>по прежнему</marker>, как меня не уговаривай и чем меня не заманивай в эту ловушку.</example>
            </rule>
            <rule>
                <pattern>
                    <marker>
                        <token>по</token>
                        <token  postag="ADJ:Posit:Masc:D">
                            <exception regexp="yes">черному|чёрному|белому|красному|синему|желтому|жёлтому|русскому|прусскому|австрийскому|английскому|немецкому|французскому|испанскому|португальскому|голландскому|датскому|китайскому|японскому|арабскому|индийскому|армянскому|грузинскому|польскому|чешскому</exception>
                        </token>
                    </marker>
                    <token regexp="yes">[.!?]</token>
                </pattern>
                <message>Слово пишется через дефис: <suggestion>\1-\2</suggestion>.</message>
                <short>Пишется через дефис</short>
                <example>Судя по мясному рагу на столе, вы застигли его за обедом.</example>
                <example correction="по-зимнему">Я оделся <marker>по зимнему</marker>.</example>
                <example correction="по-хорошему">Давай <marker>по хорошему</marker>.</example>
                <example correction="по-прежнему">Я поступлю <marker>по прежнему</marker>.</example>
            </rule>
            <rule>
                <pattern raw_pos="yes">
                    <marker>
                        <token>по<exception scope="previous">судя</exception></token>
                        <token  postag="ADJ:Posit:Masc:D">
                            <exception regexp="yes">черному|чёрному|белому|красному|синему|желтому|жёлтому|русскому|прусскому|австрийскому|английскому|немецкому|французскому|испанскому|португальскому|голландскому|датскому|китайскому|японскому|арабскому|индийскому|армянскому|грузинскому|польскому|чешскому</exception>
                        </token>
                    </marker>
                    <token skip="-1">
                        <exception postag_regexp="yes" postag="NN:.*:Masc:.*:D|NN:.*:Neut:.*:D" />
                        <exception scope="next" postag_regexp="yes" postag="NN:.*:Masc:.*:D|NN:.*:Neut:.*:D" />
                    </token>
                    <token>,</token>
                    <token skip="-1">
                        <exception scope="next" postag_regexp="yes" postag="NN:.*:Masc:.*:D|NN:.*:Neut:.*:D" />
                    </token>
                    <token postag="SENT_END" />
                </pattern>
                <message>Слово пишется через дефис: <suggestion>\1-\2</suggestion>.</message>
                <short>Пишется через дефис</short>
                <example>Судя по мясному рагу на столе, вы застигли его за обедом.</example>
                
                <example correction="по-зимнему">Я оделся <marker>по зимнему</marker> тепло, так как было холодно.</example>
                <example correction="по-хорошему">Давай <marker>по хорошему</marker> разберёмся, иначе будет грустно.</example>
                <example correction="по-прежнему">Я поступлю <marker>по прежнему</marker> отчаянно, как бы вы меня ни уговаривали.</example>
            </rule>
            <rule>
                <pattern>
                    <marker>
                        <token>по<exception scope="previous">судя</exception></token>
			<token  postag="ADJ:Posit:Masc:D" case_sensitive="yes">
                            <exception regexp="yes">[А-Я].*|федеральному|местному|минимальному|максимальному|черному|чёрному|белому|красному|синему|желтому|жёлтому|русскому|прусскому|австрийскому|английскому|немецкому|французскому|испанскому|португальскому|голландскому|датскому|китайскому|японскому|арабскому|индийскому|армянскому|грузинскому|польскому|чешскому</exception>
                        </token>
                    </marker>
                    <token skip="-1">
                        <exception postag_regexp="yes" postag="NN:.*:Masc:.*:D|NN:.*:Neut:.*:D" />
                        <exception scope="next" postag_regexp="yes" postag="NN:.*:Masc:.*:D|NN:.*:Neut:.*:D" />
                        <exception>IP-адресу</exception>
                        <exception>хэшу</exception>
                        <exception>«</exception>
                    </token>
                    <token regexp="yes">[.!?]</token>
                </pattern>
                <message>Слово пишется через дефис: <suggestion>\1-\2</suggestion>.</message>
                <short>Пишется через дефис</short>
                <example>Он взял курс прямо на юг по местному шоссе N 11.</example>
                <example>Надо перейти к коммиту в списке коммитов, кликнув по соответствующему коду.</example>
                <example>Надо перейти к коммиту в списке коммитов, кликнув по соответствующему хэшу.</example>
                <example>Это его бизнес-партнер по вышеупомянутому «Лео ойл».</example>
                <example>Судя по мясному рагу на столе, вы застигли его за обедом.</example>
                <example>Мне смутно помнилось, что ехать надо по федеральному шоссе №1.</example>
                <example correction="по-зимнему">Я оделся <marker>по зимнему</marker> тепло.</example>
                <example correction="по-хорошему">Давай <marker>по хорошему</marker> разберёмся.</example>
                <example correction="по-прежнему">Я поступлю <marker>по прежнему</marker> отчаянно.</example>
                <example>Отсутствие ограничений по минимальному объему закупок.</example>
            </rule>

            <rule>
                <pattern raw_pos="yes">
                    <marker>
                        <token postag="ADV" regexp="yes" skip="1">по-.*<exception regexp="yes">по-моему|по-твоему|по-нашему|по-вашему|по-разному</exception></token>
                    </marker>
                    <token skip="-1"  postag_regexp="yes" postag="NN:.*:Masc:Sin:D|NN:.*:Neut:Sin:D">
                    <!--<exception>IP-адресу</exception>-->
                    </token>
                    <token postag="SENT_END" />                
                </pattern>
                <message>Слова пишутся раздельно: <suggestion>по <match no="1" regexp_match="([пП]о-)(.*)" regexp_replace="$2"></match></suggestion>.</message>
                <short>Раздельно</short>
                <example correction="по прежнему">Я спускаюсь к речке <marker>по-прежнему</marker>, знакомому с самого детства, пути.</example>
                <example correction="по прежнему">Я спускаюсь к речке <marker>по-прежнему</marker> пути, знакомому с самого детства.</example>
                <example> По-моему, снегу осталось лежать совсем не долго.</example>
                <example> Как, по-вашему, снегу лежать еще долго?</example>
                <example correction="по весеннему">Лисица проваливалась <marker>по-весеннему</marker> снегу.</example>
                <example> Россия, по-прежнему, стоит в ряду развивающихся стран.</example>
                <!--<example correction="по весеннему">Лисица проваливалась <marker>по-весеннему</marker>, совсем талому снегу.</example>-->
            </rule>
        </rulegroup>
        
        
        <rulegroup default="on" id="Pravopisanie_slitno1" name="Правописание слов: «наверху», «внизу» ...">
    

            <rule>
                <!-- вместо вне   -->
                <pattern case_sensitive="no">
                    <marker>
                        <token>в</token>
                        <token>место</token>
                    </marker>
                    <token><exception postag_regexp="yes" postag="ADJ:MPR:.*:R "></exception><exception regexp="yes" >назначения|поиска|сбора|сосредоточения</exception></token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="вместо">Это новое оборудование можно  использовать <marker>в место</marker> старого.</example>
            </rule>
            <rule>
                <!-- заместо    -->
                <pattern case_sensitive="no">
                    <marker>
                        <token>за<exception scope="previous">это</exception></token>
                        <token>место</token>
                    </marker>
                    <token><exception postag="PREP"></exception></token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example>Соревнования за место в команде.</example>
                <example>Что это за место?</example>
                <example correction="заместо">Это новое оборудование можно  использовать <marker>за место</marker> старого.</example>
            </rule>
            <rule>
                <!--насчёт   -->      
                <pattern case_sensitive="no">
                    <marker>
                    <token>на</token>
                    <token regexp="yes" >счёт|счет</token>  <!--<exception scope="next" postag_regexp="yes" postag="*.:R"></exception>  в-->
                    </marker>
                    <token><exception  postag="PREP"></exception><exception postag_regexp="yes" postag="VB:.*"></exception><exception>,</exception><exception  regexp="yes" inflected="yes">поставщик|заказчик|контрагент|покупатель|продавец|исполнитель|кредитор|заёмщик|заемщика|организация|денежный|([0-9]*)</exception></token>
                    <token><exception  regexp="yes" >([0-9]*)[0-9.]</exception></token> 
                </pattern>
                <message>Слово пишется слитно, так как выступает в роли наречия: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example>Деньги переведены <marker>на счёт</marker> в банке.</example>
                <example>Деньги переведены <marker>на счёт</marker> 00000000000000.</example>
                <example>Деньги переведены <marker>на счёт</marker> Visa 11111111111111.</example>
                <example>Деньги переведены <marker>на счёт</marker> поставщика.</example>
                <example correction="насчёт">Тебе следует быть осторожным <marker>на счёт</marker> того, чтобы пойти в поход.</example>
            </rule>
            <rule>
                <!-- ниже    -->
                <pattern case_sensitive="no">
                    <token>ни</token>
                    <token>же</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="ниже">Эта игрушка висит <marker>ни же</marker> на другой ветке ёлки.</example>
            </rule>
            <rule>
      <!-- посередине    -->
                <pattern case_sensitive="no">
                    <token>по</token>
                    <token>середине</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="посередине">Эта игрушка висит <marker>по середине</marker> между двумя шарами.</example>
            </rule>

            <rule>
                <!-- накануне, наподобие, напротив               
  -->
                <pattern case_sensitive="no">
                    <token>на</token>
                    <token regexp="yes">кануне|подобие|против</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="накануне">Это событие произошло <marker>на кануне</marker> дня рождения.</example>
            </rule>
            
            <rule>
                <!-- внизу, снизу, наверху, вверху, сверху                
  -->
                <pattern case_sensitive="no">
                    <token regexp="yes">на|в|с</token>
                    <token regexp="yes">верху|низу</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="наверху">Он будет <marker>на верху</marker>.</example>
            </rule>
            
            
            <rule>
                <!-- сверх, свыше, согласно               
  -->
                <pattern case_sensitive="no">
                    <token regexp="yes">со|с</token>
                    <token regexp="yes">верх|выше|гласно</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="сверх">Склад заполнен <marker>с верх</marker> меры.</example>
            </rule>
            
            <rule>
                <!-- вглубь, вдоль, взамен               
  -->
                <pattern case_sensitive="no">
                    <token>в</token>
                    <token regexp="yes">глубь|доль|замен</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="вдоль">Его путь пролегал <marker>в доль</marker> лесополосы.</example>
            </rule>
            
            
            <rule>
                <!-- ввиду (но: иметь в виду)
        
  -->
                <pattern case_sensitive="no">
                    <token><exception inflected="yes" regexp="yes">иметь|имелось|иметься</exception><exception scope="previous" inflected="yes" regexp="yes">иметь|имелось|иметься</exception></token> 
                      <marker>
                        <token>в</token>
                        <token>виду</token>
                    </marker>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\2\3</suggestion>.</message>
                <short>Пишется слитно</short>
                <example>Много  оборудования не использовалось в учреждении <marker>ввиду</marker> отсутствия расходных материалов.</example>
                <example>Он имел <marker>в виду</marker> совсем другое событие.</example>
                <example>Имелось в виду:</example>
                <example>Имея это в виду</example>
                <example correction="ввиду">Много оборудования не использовалось в учреждении <marker>в виду</marker> отсутствия расходных материалов.</example>
            </rule>
            
            <rule>
                <!--  иметь в виду (но: ввиду)
        
                -->
                <pattern case_sensitive="no">
                    <token inflected="yes">иметь</token>
                    <token>ввиду</token>
                </pattern>
                <message>Пишется раздельно: <suggestion>\1 в виду</suggestion>.</message>
                <short>Пишется раздельно</short>
                <example correction="имел в виду">Он <marker>имел ввиду</marker> совсем другое событие.</example>
            </rule>
            
            <rule>            
                <!-- заранее           
                -->          
                <pattern case_sensitive="no">
                    <marker>
                        <token>за</token>
                        <token>ранее</token>
                    </marker>
                    <token>.</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="заранее">Он прибыл на станцию <marker>за ранее</marker>.</example>
            </rule>
            <rule>
                <!-- поверх, подо, помимо              
                -->
                <pattern case_sensitive="no">
                    <token>по</token>
                    <token regexp="yes">верх|до|мимо</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2</suggestion>.</message>
                <short>Пишется слитно</short>
                <example>
                    <marker>Помимо</marker> чисто игровых проблем на ситуацию в таблице могут влиять и различные нюансы.</example>
                <example correction="Помимо">
                    <marker>По мимо</marker> чисто игровых проблем на ситуацию в таблице могут влиять и различные нюансы.</example>
            </rule>
            <rule>
                <!-- невзирая на, несмотря на -->
                <pattern case_sensitive="no">
                    <token>не</token>
                    <token regexp="yes">взирая|смотря</token>
                    <token>на</token>
                </pattern>
                <message>Слово пишется слитно: <suggestion>\1\2 \3</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="несмотря на">Премия в этом году состоялась <marker>не смотря на</marker> кризис.</example>
                <example correction="невзирая на">Премия в этом году состоялась <marker>не взирая на</marker> кризис.</example>
            </rule>
           
            <rule>
                <!-- навстречу/ на встречу   -->
                <pattern case_sensitive="no">
                    <token>навстречу</token>
                    <token>с</token>
                </pattern>
                <message>Пишется раздельно: <suggestion>на встречу \2</suggestion>.</message>
                <short>Пишется раздельно</short>
                <example correction="на встречу с">Я иду <marker>навстречу с</marker> искусством.</example>
                <example>Я иду на встречу с искусством.</example>
                <example>Я иду на встречу с другом.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <marker>
                        <token>на</token>
                        <token>встречу</token>
                    </marker>
                    <or>
                        <token postag_regexp="yes" postag=".*.:.*:.*:D"></token>
                        <token>друг</token>
                    </or>
                </pattern>
                <message>Пишется слитно: <suggestion>навстречу</suggestion>.</message>
                <short>Пишется слитно</short>
                <example correction="навстречу">Я иду <marker>на встречу</marker> движению.</example>
                <example>Я иду навстречу движению.</example>
                <example correction="навстречу">Они шли <marker>на встречу</marker> друг другу.</example>
            </rule>        
        </rulegroup>
        <rulegroup id="TO_JE" name="Правописание: «тоже» или «то же»">
          <rule>
            <pattern>
                <token>тоже<exception postag="NN:.*:.*:.*:.*|PNN:.*" postag_regexp="yes" scope="previous"></exception></token>
                <token postag="NN:.*:Neut:.*" postag_regexp="yes"></token>
            </pattern>
            <message>Пишется раздельно: <suggestion>то же \2</suggestion>.</message>
            <url>http://lik-bez.com/board/orfografija/slitno_razdelno_cherez_defis/to_zhe_tak_zhe/64-1-0-303</url>
            <short>Пишется раздельно</short>
            <example correction="то же время">Буду в <marker>тоже время</marker>.</example>
            <example>Буду в то же время.</example>
            <example>Сосна тоже дерево, только хвойное.</example>
         </rule>
         <rule>
            <pattern>
                <token>тоже<exception postag="NN:.*:.*:.*:.*" postag_regexp="yes" scope="previous"></exception></token>
                <token>самое</token>
            </pattern>
            <message>Пишется раздельно: <suggestion>то же \2</suggestion>.</message>
            <url>http://lik-bez.com/board/orfografija/slitno_razdelno_cherez_defis/to_zhe_tak_zhe/64-1-0-303</url>
            <short>Пишется раздельно</short>
            <example correction="то же самое">Буду в <marker>тоже самое</marker> время.</example>           
         </rule>
         <rule>
            <pattern>
                <token>тоже<exception postag="NN:.*:.*:.*:.*" postag_regexp="yes" scope="previous"></exception></token>
                <token>,</token>
                <token>что</token>
            </pattern>
            <message>Пишется раздельно: <suggestion>то же\2 \3</suggestion>.</message>
            <url>http://lik-bez.com/board/orfografija/slitno_razdelno_cherez_defis/to_zhe_tak_zhe/64-1-0-303</url>
            <short>Пишется раздельно</short>
            <example correction="то же, что">Сегодня <marker>тоже, что</marker> и вчера.</example>           
         </rule>
        </rulegroup>
 
        <rulegroup id="TAK_JE" name="Правописание «также» или «так же»" default="temp_off" >
            <rule>
                <pattern>
                    <token>также<exception postag="NN:.*:.*:.*:.*|SENT_START" postag_regexp="yes" scope="previous"></exception></token>
                    <token>,</token>
                    <token>как</token>
                </pattern>
                <message>Пишется раздельно: <suggestion>так же\2 \3</suggestion>.</message>
                <url>http://lik-bez.com/board/orfografija/slitno_razdelno_cherez_defis/to_zhe_tak_zhe/64-1-0-303</url>
                <short>Пишется раздельно</short>
                <example correction="так же, как">Сегодня <marker>также, как</marker> и вчера.</example>           
            </rule>
            <rule>
                <pattern>
                    <token>также</token>
                    <token>как</token>
                </pattern>
                <message>Пишется раздельно: <suggestion>так же \2</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_738</url>
                <short>Пишется раздельно</short>
                <example correction="так же как">Всё <marker>также как</marker> и было.</example>           
            </rule>
        </rulegroup>
        <rulegroup default="on" id="i_tak_dalee" name="Словосочетание: «и так далее»">
            <rule>
                <pattern case_sensitive="no">
                    <token>итак</token>
                    <token>далее</token>
                </pattern>
                <message>Пишется раздельно: <suggestion>и так далее</suggestion>.</message>
                <short>Пишется раздельно: «и так далее»</short>
                <example>В пять часов после обеда он ложится спать, в девять встаёт, часа через три опять ложится спать, <marker>и так далее</marker>.</example>
                <example correction="и так далее">В шесть часов после обеда он ложится спать, в девять встаёт, часа через три опять ложится спать, <marker>итак далее</marker>.</example>
            </rule>
        </rulegroup>  
        
        <rulegroup default="on" id="Vo_chto_by_to_ni_stalo" name="Словосочетание: «во что бы то ни стало»">
            <rule>
                <pattern case_sensitive="no">
                    <token>во</token>
                    <token>чтобы</token>
                    <token>то</token>
                    <token regexp="yes">ни|не</token>
                    <token>стало</token>
                </pattern>
                <message>Пишется раздельно: <suggestion>во что бы то ни стало</suggestion>.</message>
                <short>Пишется раздельно: «во что бы то ни стало»</short>
                <example correction="во что бы то ни стало">Мы должны попасть домой <marker>во чтобы то ни стало</marker>.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>во</token>
                    <token>что</token>
                    <token>бы</token>
                    <token>то</token>
                    <token>не</token>
                    <token>стало</token>
                </pattern>
                <message>Пишется раздельно: <suggestion>во что бы то ни стало</suggestion>.</message>
                <short>Пишется раздельно: «во что бы то ни стало»</short>
                <example correction="во что бы то ни стало">Мы должны попасть домой <marker>во что бы то не стало</marker>.</example>
            </rule>
            
        </rulegroup>
        
        <rulegroup default="on" id="Tak_je_kak_i" name="Сложный союз «так же как и»">
            <rule>
                <pattern case_sensitive="no">
                    <token>также</token>
                    <token>как</token>
                    <token>и</token>
                </pattern>
                <message>Сложный союз: <suggestion>так же \2 \3</suggestion>.</message>
                <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_738</url>
                <short>Сложный союз &quot;так же как и&quot;</short>
                <example correction="так же как и">Мы, <marker>также как и</marker> наши товарищи, любим заниматься спортом.</example>
            </rule>
        </rulegroup>
        <rule id="TAK_JE_KAK" name="Сложный союз «так же как»">
            <pattern>
                <token>,</token>
                <marker>
                <token>так</token>
                <token>же</token>
                <token >,</token>
                <token>как</token>
                </marker>
            </pattern>
            <message>Запятая не нужна: <suggestion><match no="2"/> <match no="3"/> <match no="5"/></suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_738</url>
            <short>Запятая не нужна</short>
            <example correction="так же как">Мы, <marker>так же, как</marker> и наши товарищи, любим заниматься спортом.</example>
        </rule>
        <rulegroup id="TAKOJ_KAK" name="Сложный союз «такой (такая, такое, такие) как»" >
          <rule>
            <pattern>
                <token postag_regexp="yes" postag="ADJ:.*"></token>
                <marker>
                <token>,</token>
                <token regexp="yes">такой|такая|такие|такое|таких</token>
                <token min="0" max="1">же</token>
                <token>,</token>
                <token>как</token>
                </marker>
            </pattern>
            <message>Запятая не нужна: <suggestion><match no="2"/> <match no="3"/> <match no="4"/> <match no="6"/></suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_722</url>
            <short>Запятая не нужна</short>
            <example correction=", такая как">Погода дождливая<marker>, такая, как</marker> в Лондоне.</example>
            <example correction=", такая же как">Погода дождливая<marker>, такая же, как</marker> в Лондоне.</example>
            <example>Погода дождливая, такая как в Лондоне.</example>
            <example>Погода дождливая, такая же как в Лондоне.</example>
          </rule>
          <rule>
            <pattern>
                <token postag_regexp="yes" postag="NN:.*"></token>
                <marker>
                <token>,</token>
                <token regexp="yes">такой|такая|такие|такое|таких</token>
                <token min="0" max="1">же</token>
                <token>,</token>
                <token>как</token>
                </marker>
            </pattern>
            <message>Запятая не нужна: <suggestion><match no="2"/> <match no="3"/> <match no="4"/> <match no="6"/></suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_722</url>
            <short>Запятая не нужна</short>
            <example correction=", такие как">Туристы посетили старинные города<marker>, такие, как</marker> Новгород и Владимир.</example>
            <example correction=", такие же как">Туристы посетили старинные города<marker>, такие же, как</marker> Новгород и Владимир.</example>
            <example>Туристы посетили старинные города, такие как Новгород и Владимир.</example>
            <example>Туристы посетили старинные города, такие же как Новгород и Владимир.</example>
          </rule>
          <rule>
              <antipattern>
                  <token postag_regexp="yes" postag="NN:.*"></token>    
                  <token min="0" max="1">,</token>
                  <token regexp="yes">такой|такая|такие|такое|таких</token>
                  <token>как</token>
              </antipattern>
              <antipattern>
                  <token postag_regexp="yes" postag="ADJ:.*"></token>
                  <token min="0" max="1">,</token>
                  <token regexp="yes">такой|такая|такие|такое|таких</token>
                  <token>как</token>
              </antipattern>
              <antipattern>
                  <token>,</token>
                  <token regexp="yes">включая|исключая</token>
                  <token regexp="yes">такой|такая|такие|такое|таких</token>
                  <token>как</token>
              </antipattern>
              <pattern>
                  <marker>
                      <token regexp="yes">такой|такая|такие|такое|таких</token>
                      <token>как</token>
                  </marker>
              </pattern>
            <message>Пропущена запятая: <suggestion><match no="1"/>, <match no="2"/></suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_722</url>
            <short>Нужна запятая</short>
            <example correction="такой, как">Но не <marker>такой как</marker> обычно.</example>
            <example>Но не такой, как обычно.</example>
            <example>Туристы посетили старинные города, такие как Новгород и Владимир.</example>
            <example>Туристы посетили старинные города, включая такие как Новгород и Владимир.</example>
            <example>Погода дождливая, такая как в Лондоне.</example>
          </rule>
          <rule>
              <antipattern>
                  <token postag_regexp="yes" postag="NN:.*"></token>    
                  <token min="0" max="1">,</token>
                  <token regexp="yes">такой|такая|такие|такое|таких</token>
                  <token>же</token>
                  <token>как</token>
              </antipattern>
              <antipattern>
                  <token postag_regexp="yes" postag="ADJ:.*"></token>
                  <token min="0" max="1">,</token>
                  <token regexp="yes">такой|такая|такие|такое|таких</token>
                  <token>же</token>
                  <token>как</token>
              </antipattern>
              <pattern>
                  <token regexp="yes">такой|такая|такие|такое|таких</token>
                  <token>же</token>
                  <token>как</token>
              </pattern>
            <message>Пропущена запятая: <suggestion><match no="1"/> <match no="2"/>, <match no="3"/></suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_722</url>
            <short>Нужна запятая</short>
            <example correction="такой же, как">Но не <marker>такой же как</marker> обычно.</example>
            <example>Но не такой же, как обычно.</example>
            <example>Туристы посетили старинные города, такие же как Новгород и Владимир.</example>
            <example>Погода дождливая, такая же как в Лондоне.</example>
          </rule>          
          <rule>
            <pattern>
                <token regexp="yes">такой|такая|такие|такое|таких</token>
                <token min="0" max="1">же</token>
                <token>,</token>
                <marker>
                    <token skip="-1">как</token>
                    <token postag="PNN:.*|NN.*" postag_regexp="yes"><exception regexp="yes">этот|эта|это|эти|те|тот|та|то</exception></token>
                </marker>
                <token postag="ADV"></token>
            </pattern>
            <message>Пропущена запятая: <suggestion><match no="4" include_skipped="all"/> <match no="5"/>,</suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_722</url>
            <short>Нужна запятая</short>
            <example correction="как он,">Людей таких, <marker>как он</marker> ещё поискать надо.</example>
            <example correction="как этот парень,">Людей таких же, <marker>как этот парень</marker> ещё поискать.</example>
            <example correction="как он,">Людей таких же, <marker>как он</marker> ещё поискать надо.</example>
            <example>Людей таких, как он, ещё поискать надо.</example>      
          </rule> 
        </rulegroup>
        <rulegroup default="on" id="Ni_to_ni_drugoe" name="Сложный союз «ни то, ни другое»">
            <rule>
                <pattern case_sensitive="no">
                    <token regexp="yes">не|ни</token>
                    <token>то</token>
                    <token regexp="yes">не|ни</token>
                    <token>другое</token>
                </pattern>
                <message>Сложный союз: <suggestion>ни \2, ни \4</suggestion>.</message>
                <short>Сложный союз &quot;ни то, ни другое&quot;</short>
                <example correction="ни то, ни другое">А может, <marker>ни то не другое</marker>, а что-то новое?</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>не</token>
                    <token>то</token>
                    <token>,</token>
                    <token>не</token>
                    <token>другое</token>
                </pattern>
                <message>Сложный союз: <suggestion>ни \2\3 ни \5</suggestion>.</message>
                <short>Сложный союз &quot;ни то, ни другое&quot;</short>
                <example correction="ни то, ни другое">А может, <marker>не то, не другое</marker>, а что-то новое?</example>
            </rule>
        </rulegroup>
        
        
        <rulegroup default="on" id="Ni_mnogo_ni_malo" name="Фразеологический оборот «ни много ни мало»">
            <rule>
                <pattern case_sensitive="no">
                    <token regexp="yes">не|ни</token>
                    <token>много</token>
                    <token>,</token>
                    <token regexp="yes">не|ни</token>
                    <token>мало</token>
                </pattern>
                <message>Фразеологический оборот: <suggestion>ни \2 ни \5</suggestion>.</message>
                <short>Фразеологический оборот &quot;ни много ни мало&quot;</short>
                <example correction="Ни много ни мало"><marker>Не много, ни мало</marker>, а прошло уже 35 лет.</example>
            </rule>
          
        </rulegroup>
        
        
        
        <rulegroup default="on" id="Oborot_nikto_inoj_ne" name="Обороты «не кто иной, как» и «никто иной не»">
            <!--  Обороты не кто иной, как..., не что иное, как...      и     никто иной не...; ничто иное не...,
            например: это был не кто иной, как твоя родная сестра, но: никто иной не мог этого сделать;
            это было не что иное, как приключение; но: ничто иное не могло бы меня испугать.
            -->

            <rule>
                <pattern case_sensitive="no">
                    <token>ни</token>
                    <token regexp="yes">кто|что</token>
                    <token regexp="yes">иной|иное</token>
                    <token>,</token>
                    <token>как</token>
                </pattern>
                <message>Оборот: <suggestion>не \2 \3\4 \5</suggestion>.</message>
                <short>Ошибка</short>
                <example>Был это не кто иной, как наш мастер.</example>
                <example correction="не кто иной, как">Был это <marker>ни кто иной, как</marker> наш мастер.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>ни</token>
                    <token regexp="yes">кто|что</token>
                    <token regexp="yes">иной|иное</token>
                    <token>как</token>
                </pattern>
                <message>Оборот: <suggestion>не \2 \3, \4</suggestion>.</message>
                <short>Ошибка</short>
                <example>Был это не кто иной, как наш мастер.</example>
                <example correction="не кто иной, как">Был это <marker>ни кто иной как</marker> наш мастер.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token regexp="yes">ни|не</token>
                    <token regexp="yes">кто|что</token>
                    <token regexp="yes">иной|иное|другой|другое</token>
                    <token>не</token>
                </pattern>
                <message>Оборот: <suggestion>ни\2 \3 \4</suggestion>.</message>
                <short>Ошибка</short>
                <example>Ничто иное не могло бы его испугать.</example>
                <example>Ничто другое не могло бы его испугать.</example>
                <example correction="Ничто иное не">
                    <marker>Не что иное не</marker> могло бы его испугать.</example>
                <example correction="Ничто другое не">
                    <marker>Не что другое не</marker> могло бы его испугать.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token regexp="yes">(не)(кто|что)</token>
                    <token regexp="yes">иной|иное|другой|другое</token>
                    <token>не</token>
                </pattern>
                <message>Оборот: <suggestion><match no="1" regexp_match="(не|Не)(кто|что)" regexp_replace="ни$2"></match> <match no="2"></match> <match no="3"></match></suggestion>.</message>
                <short>Ошибка</short>
                <example>Ничто иное не могло бы его испугать.</example>
                <example>Ничто другое не могло бы его испугать.</example>
                <example correction="Ничто иное не"><marker>Нечто иное не</marker> могло бы его испугать.</example>
                <example correction="Ничто другое не"><marker>Нечто другое не</marker> могло бы его испугать.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="Frazeologizm_nevernij" name="Ошибки во фразеологизмах «щекотливая дилемма», ...">
            <!--  Щекотливая дилемма - щекотливый вопрос
                  Вся пресса поёт в одну дуду  -  поёт в один голос
                  не упасть лицом в грязь - не ударить лицом в грязь
                  отдал руку и сердце - предложил руку и сердце
                  избиение  грешников - избиение младенцев
                  закадычная подруга - лучшая подруга
                  промокли до костей - промокли до нитки
                  промёрзли до нитки - промёрзли до костей
                  глас, вопиющий в пустыне - глас вопиющего в пустыне
            -->

            
            <rule>
                <pattern case_sensitive="no">
                    <token>щекотливая</token>
                    <token>дилемма</token>
                </pattern>
                <message>Фразеологизм: <suggestion>щекотливый вопрос</suggestion>.</message>
                <short>Ошибка</short>
                <example>щекотливый вопрос</example>
                <example correction="щекотливый вопрос">
                    <marker>щекотливая дилемма</marker>
                </example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>поёт</token>
                    <token>в</token>
                    <token>одну</token>
                    <token>дуду</token>
                </pattern>
                <message>Фразеологизм: <suggestion>\1 \2 один голос</suggestion>.</message>
                <short>Ошибка</short>
                <example>Вся пресса поёт в один голос.</example>
                <example correction="поёт в один голос">Вся пресса <marker>поёт в одну дуду</marker>.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>не</token>
                    <token>упасть</token>
                    <token>лицом</token>
                    <token>в</token>
                    <token>грязь</token>
                </pattern>
                <message>Фразеологизм: <suggestion>\1 ударить \3 \4 \5</suggestion>.</message>
                <short>Ошибка</short>
                <example>не ударить лицом в грязь</example>
                <example correction="не ударить лицом в грязь">
                    <marker>не упасть лицом в грязь</marker>
                </example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>отдал</token>
                    <token>руку</token>
                    <token>и</token>
                    <token>сердце</token>
                </pattern>
                <message>Фразеологизм: <suggestion>предложил \2 \3 \4</suggestion>.</message>
                <short>Ошибка</short>
                <example>предложил руку и сердце</example>
                <example correction="предложил руку и сердце">
                    <marker>отдал руку и сердце</marker>
                </example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>избиение</token>
                    <token>грешников</token>
                </pattern>
                <message>Фразеологизм: <suggestion>\1 младенцев</suggestion>.</message>
                <short>Ошибка</short>
                <example>избиение младенцев</example>
                <example correction="избиение младенцев">
                    <marker>избиение грешников</marker>
                </example>
            </rule>
            
            <rule>
                <pattern case_sensitive="no">
                    <token>закадычная</token>
                    <token>подруга</token>
                </pattern>
                <message>Фразеологизм: <suggestion>лучшая \2</suggestion>.</message>
                <short>Ошибка</short>
                <example>Она – лучшая подруга.</example>
                <example correction="лучшая подруга">Она – <marker>закадычная подруга</marker>.</example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>промокли</token>
                    <token>до</token>
                    <token>костей</token>
                </pattern>
                <message>Фразеологизм: <suggestion>\1 \2 нитки</suggestion>.</message>
                <short>Ошибка</short>
                <example>промокли до нитки</example>
                <example correction="промокли до нитки">
                    <marker>промокли до костей</marker>
                </example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>замёрзли</token>
                    <token>до</token>
                    <token>нитки</token>
                </pattern>
                <message>Фразеологизм: <suggestion>\1 \2 костей</suggestion>.</message>
                <short>Ошибка</short>
                <example>замёрзли до костей</example>
                <example correction="замёрзли до костей">
                    <marker>замёрзли до нитки</marker>
                </example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>промёрзли</token>
                    <token>до</token>
                    <token>нитки</token>
                </pattern>
                <message>Фразеологизм: <suggestion>\1 \2 костей</suggestion>.</message>
                <short>Ошибка</short>
                <example>промёрзли до костей</example>
                <example correction="промёрзли до костей">
                    <marker>промёрзли до нитки</marker>
                </example>
            </rule>
            <rule>
                <pattern case_sensitive="no">
                    <token>глас</token>
                    <token>,</token>
                    <token>вопиющий</token>
                    <token>в</token>
                    <token>пустыне</token>
                </pattern>
                <message>Фразеологизм: <suggestion>\1 вопиющего \4 \5</suggestion>.</message>
                <short>Ошибка</short>
                <example>глас вопиющего в пустыне</example>
                <example correction="глас вопиющего в пустыне">
                    <marker>глас, вопиющий в пустыне</marker>
                </example>
            </rule>
        </rulegroup>
        
        <rulegroup id="VO_VREMJA" name="Правописание «во время» или «вовремя»">
            <rule>
                <pattern case_sensitive='yes'>
                    <marker>
                    <token>Вовремя</token>
                    </marker>
                    <token skip='-1'></token>
                    <token postag='VB:.*' postag_regexp='yes'></token>
                </pattern>
                <message>Предлог+существительное: <suggestion>Во время</suggestion></message>
                <short>Вовремя/Во время</short>
                <example correction='Во время'><marker>Вовремя</marker> мероприятия был фуршет.</example>
                <example>Во время мероприятия был фуршет.</example>
            </rule>
            <rule>
                <pattern case_sensitive='yes'>
                 <token postag='VB:.*' postag_regexp='yes' skip='-1'></token>
                 <marker>
                 <token>во</token>
                 <token>время</token>
                 </marker>
                 <token regexp="yes">[.?!,]</token>
                </pattern>
                <message>Наречие: <suggestion>\2\3</suggestion></message>
                <short>Вовремя/Во время</short>
                <example correction='вовремя'>Поезд прибыл на вокзал <marker>во время</marker>.</example>
                <example>Поезд прибыл на вокзал вовремя.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="V_K_IS" name="Беглая гласная в предлогах: «в», «к», «без», «из» ...">
            <rule>
                <pattern>
                    <token>во</token>
                    <token regexp="yes">[аёоуыэюяьън].*</token>
                </pattern>
                <message>Неправильная форма предлога. Буква &quot;о&quot; не нужна: <suggestion>в \2</suggestion>.</message>
                <short>Буква &quot;о&quot; не нужна</short>
                <example>Мы видели её в окне.</example>
                <example correction="в окне">Мы видели её <marker>во окне</marker>.</example>
            </rule>
              <rule>
                <pattern>
                    <token>в</token>
                    <token regexp="yes">фра.*</token>
                </pattern>
                <message>Неправильная форма предлога: <suggestion>во \2</suggestion>.</message>
                <short>Беглая гласная</short>
                <example>Мы отправили её во Францию.</example>
                <example correction="во Францию">Мы отправили её <marker>в Францию</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>в</token>
                    <or>
                    <token regexp="yes" case_sensitive="yes" >в[бвгджзклмнпрстфхчшщ].*</token>
                    <token regexp="yes" case_sensitive="yes" >Втор.*</token>
                    </or>
                </pattern>
                <message>Правильная форма предлога: <suggestion>во \2</suggestion>.</message>
                <short>Беглая гласная</short>
                <example>Хождение во власть.</example>
                <example correction="во власть">Хождение <marker>в власть</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>в</token>
                    <token regexp="yes" case_sensitive="yes" >В[бвгджзклмнпрстфхчшщ].*</token>
                </pattern>
                <message>Правильная форма предлога: <suggestion>во \2</suggestion>.</message>
                <short>Беглая гласная</short>
                <example>Жить во Владивостоке.</example>
                <example correction="во Владимир">Приехал <marker>в Владимир</marker>.</example>
                <example correction="Во Внуково"><marker>В Внуково</marker> я успел.</example>
            </rule>
            <rule>
                <pattern>
                    <token postag="PREP">ко</token>
                    <token regexp="yes">[аеёиоуыэюяьън].*</token>
                </pattern>
                <message>Неправильная форма предлога. Буква &quot;о&quot; не нужна: <suggestion>к \2</suggestion>.</message>
                <short>Буква &quot;о&quot; не нужна</short>
                <example>Мы успели к обеду.</example>
                <example correction="к обеду">Мы успели <marker>ко обеду</marker>.</example>
            </rule>         
            <rule>
                <pattern>
                    <token>безо</token>
                    <token regexp="yes">[аеёиоуыэюяьън].*</token>
                </pattern>
                <message>Неправильная форма предлога. Буква &quot;о&quot; не нужна: <suggestion>без \2</suggestion>.</message>
                <short>Буква &quot;о&quot; не нужна</short>
                <example>Он убегал без оглядки.</example>
                <example correction="без оглядки">Он убегал <marker>безо оглядки</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token case_sensitive="yes" regexp="yes">Изо|изо</token>
                    <token regexp="yes">[аеёиоуыэюяьън].*</token>
                </pattern>
                <message>Неправильная форма предлога. Буква &quot;о&quot; не нужна: <suggestion>из \2</suggestion>.</message>
                <short>Буква &quot;о&quot; не нужна</short>
                <example>Из окна выпал пакет.</example>
                <example>На ИЗО одному мальчику не хватило красок.</example>
                <example correction="Из окна"><marker>Изо окна</marker> выпал пакет.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="S_SO" name="Беглая гласная в предлогах: «c», «co»">
            <rule>
                <pattern>
                    <token>с</token>
                    <token regexp="yes" case_sensitive="yes" >[сзшжлрщ][йцкнгшщзхфвпрлджчсмтб].*|ль[йцкнгшщзхфвпрлджчсмтб].*</token>
                </pattern>
                <message>Неправильная форма предлога. Исправление: <suggestion>со \2</suggestion>.</message>
                <short>Неправильная форма предлога</short>
                <example>Кошка спрыгнула со шкафа.</example>
                <example>Сверхскоростная магистраль с многорядным движением.</example>
                <example correction="со шкафа">Кошка спрыгнула <marker>с шкафа</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>с</token>
                    <token regexp="yes" case_sensitive="yes" >С[бвгджзклмнпрстфхчшщ].*<exception>СвДП</exception></token>
                </pattern>
                <message>Неправильная форма предлога. Исправление: <suggestion>со \2</suggestion>.</message>
                <short>Неправильная форма предлога</short>
                <example>Co Степаном я знаком</example>
                <example correction="Со Смирновым"><marker>С Смирновым</marker> я знаком.</example>
                <example correction="со Степаном"> Я встретился <marker>с Степаном</marker>.</example>
                <!-- <example correction="со СвДП"> ХСС делила власть <marker>с СвДП</marker>.</example> -->
            </rule>
            <rule>
                <pattern>
                    <token>со</token>
                    <token regexp="yes" case_sensitive="yes">[аеёиоуыэюя][а-яё]*|[бвгдкмнпфх][аеёиоуыэюя][а-яё]*</token>    <!--  [аеёиоуыэюяьънбгдкптфхцч][а-яё]* --> 
                </pattern>
                <message>Неправильная форма предлога. Буква &quot;о&quot; не нужна: <suggestion>с \2</suggestion>.</message>
                <short>Буква &quot;о&quot; не нужна</short>
                <example>Иван взял сумку с едой.</example>
                <example>Филиал ОАО "СО ЕЭС".</example>
                <example>Король Дон Жуан VI со двором переехал в Рио-де-Жанейро.</example>
                <example correction="с едой">Иван взял сумку <marker>со едой</marker>.</example>
                <example correction="с покрытием">Дорога <marker>со покрытием</marker>.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="Vo_izbezhanie" name="Правописание предлога «во избежание»">
            <rule>
                <pattern>
                    <token>во</token>
                    <token>избежании</token>
                </pattern>
                <message>Неправильная форма предлога. Исправление: <suggestion>\1 избежание</suggestion>.</message>
                <short>Ошибка!</short>
                <example>Чего не следует делать во избежание неприятностей.</example>
                <example correction="во избежание">Чего не следует делать <marker>во избежании</marker> неприятностей.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="O_OB_OBO" name="Правописание предлогов: «о», «об», «обо»">
            <rule>
                <pattern>
                    <token regexp="yes">обо|о</token>
                    <token regexp="yes">[аиоуэ].*<exception>и</exception></token>
                </pattern>
                <message>Неправильная форма предлога. Исправление: <suggestion>об \2</suggestion>.</message>
                <short>Неправильная форма предлога</short>
                <example>Об интернете.</example>
                <example correction="Об интернете"><marker>О интернете</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token regexp="yes">об|о</token>
                    <token regexp="yes">мне|что</token>
                </pattern>
                <message>Неправильная форма предлога. Исправление: <suggestion>обо \2</suggestion>.</message>
                <short>Неправильная форма предлога</short>
                <example>Они говорили обо мне.</example>
                <example correction="обо мне">Они говорили <marker>об мне</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>об</token>
                    <token regexp="yes">всём|всей|всех|всем</token>
                </pattern>
                <message>Неправильная форма предлога. Исправление: <suggestion>обо \2</suggestion> или <suggestion>о \2</suggestion>.</message>
                <short>Неправильная форма предлога</short>
                <example>Обо всём.</example>
                <example correction="Обо всём|О всём"><marker>Об всём</marker>.</example>
            </rule>
        </rulegroup>
        
        <rule id="Verb_IMP_OR_REAL" name="Глагол должен быть в настоящем времени" default="on">
            <pattern>
                <token regexp="yes">если|когда</token>
                <token postag="PNN:.*" postag_regexp="yes"></token>
                <marker>
                    <token postag="VB:IMP:TRANS:IMPFV:.*:.*" postag_regexp="yes"><exception postag="VB:IMP:TRANS:IMPFV:.*:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
                </marker>
            </pattern>
            <message suppress_misspelled="yes">Глагол в настоящем времени не может быть в повелительном наклонении: <suggestion><match no="3" postag="VB:IMP:(.*)" postag_regexp="yes" postag_replace="VB:Real:$1"></match></suggestion></message>
            <example correction="ищете">Если вы <marker>ищите</marker> в этом месте.</example>
            <example>Если вы ищете в этом месте.</example>
        </rule>
        <rule default="on" id="Verb_and_Verb" name="Глагол и глагол">
	     <antipattern> <!-- exception for "Tire_and_Verbs"  rule -->
                <token postag="VB:Past:INTR:PFV:.*" postag_regexp="yes"></token>
                <token postag="VB:IMP:TRANS:IMPFV:Sin:P2" ></token>                
            </antipattern>            
            <antipattern>
                <token postag="SENT_START" negate_pos="yes"/>
                <token case_sensitive="yes" regexp="yes">[А-ЯЁ].*</token>
	    </antipattern>
            <antipattern>
                <!-- Use СONJ multiword chunk (similar to однако, только) -->
	        <!-- Что чёрт возьми происходит? (черт побери)-->
                <token postag="&lt;/CONJ&gt;"></token>
            </antipattern>
            <antipattern>
                <!-- Use ADV multiword chunk  (similar to хорошо) -->
                <!-- e.g. как следует, как попало, того и гляди, во что бы (то) ни стало is a ADV multiword chunk -->
                <token postag="&lt;/ADV&gt;"></token>
            </antipattern>
            <antipattern>
                <!-- Use ADV multiword chunk  (similar to хорошо) -->
                <token postag="ADV"></token>
            </antipattern>
            <!-- Как следует попарился. -->
            <!-- Мороженое того и гляди растает, давай уже съедим его. -->
            <!-- Во что бы то ни стало заскочи посмотреть на нас. -->
            <!-- Во что бы ни стало заскочи посмотреть на нас. --> 

            <!-- Закладывает будь здоров! -->
                <!-- Use multiword chunk ADV (similar to хорошо) -->
                <!-- e.g. как попало is a ADV word chunk -->

            <!-- Я его на бочку с порохом посадил, пущай полетает! -->            
                <!-- пущай simialr пусть -->
                <!-- хули simialr чего, зачем - Use multiword ADV tag, and should have ADV tag-->

            <antipattern>
                <token regexp="yes">давай|давайте</token>
                <token postag="VB:Fut:.*" postag_regexp="yes"/>
            </antipattern>
            <!-- Сколько тебе не хватает на куртку? Давай добавлю? -->
            <antipattern>
                <token regexp="yes">хочешь|хотите</token>
                <token postag="VB:IMP:.*" postag_regexp="yes"/>
            </antipattern>
            <!-- Хочешь верь, хочешь нет. -->
            <antipattern>
                <token regexp="yes">хочешь|хотите</token>
                <token>не</token>
                <token regexp="yes">хочешь|хотите</token>
            </antipattern>
            <!-- А маленькая, всеми обижаемая мартышка хочешь не хочешь должна была сбиться в коллектив. -->
            <antipattern>
                <token postag="VB:.*:Masc" postag_regexp="yes"/>
                <token>смог</token>
            </antipattern>
            <!-- Этим летом в Санкт-Петербурге был смог, так как в двадцати метрах-->
            <antipattern>
                <token>был</token>
                <token postag_regexp="yes" postag="PT:Past:.*:Masc"/>
            </antipattern>
            <antipattern>
                <token>было</token>
                <token postag_regexp="yes" postag="PT:Past:.*:Neut"/>
            </antipattern>
            <antipattern>
                <token>была</token>
                <token postag_regexp="yes"  postag="PT:Past:.*:Fem"/>
            </antipattern>
            <antipattern>
                <token>были</token>
                <token postag_regexp="yes"  postag="PT:Past:.*:PL"/>
            </antipattern>
            <antipattern>
                <token>будет</token>
                <token postag_regexp="yes" postag="PT:Past:.*:(Masc|Fem|Neut)"/>
            </antipattern>
            <antipattern>
                <token>будут</token>
                <token postag_regexp="yes"  postag="PT:Past:.*:PL"/>
            </antipattern>
            <antipattern>
                <token>как</token>
                <!-- TODO Unify  - not work in antipattern -->
                <token inflected="yes">хотеть</token> 
                <token postag="VB:.*" postag_regexp="yes"/>
                <!-- Пусть сам как хочет ковыряется, а я от проекта устраняюсь. -->
            </antipattern>
            <antipattern>
                <!-- TODO missing ё for noun, e.g. слез/слёз  -->
                <token regexp="yes">&missing_yo;</token>
            </antipattern>
            <antipattern>
                <!-- TODO Should be fully unified!!! - not work in antipattern -->
                <!-- <unify> -->
                <!-- <feature id="tense"/> -->
                <!-- <feature id="number"/> -->
                <!-- <feature id="person"/> -->
                <token inflected="yes" postag="VB:.*"
                           postag_regexp="yes"
                           regexp="yes">пойти|идти|сходить|давать|думать|попробовать</token>
                <token postag="VB:.*" postag_regexp="yes"/>
                <!-- </unify> -->
            </antipattern>
            <antipattern>
                <!-- TODO Should be fully unified!!! - not work in antipattern -->
                <!-- <unify> -->
                <!-- <feature id="tense"/> -->
                <!-- <feature id="number"/> -->
                <!-- <feature id="person"/> -->
                <token postag="VB:.*" postag_regexp="yes"/>
                <token inflected="yes" postag="VB:.*"
                           postag_regexp="yes">давать</token>
                <!-- </unify> -->
            </antipattern>
            <!-- 2 verbs in same forms, it may be unify -->
            <antipattern>
                <token postag_regexp="yes" postag="VB:Past:.*:.*:Masc" />
                <token postag_regexp="yes" postag="VB:Past:.*:.*:Masc" />
            </antipattern>
            <antipattern>
                <token postag_regexp="yes" postag="VB:Past:.*:.*:Fem" />
                <token postag_regexp="yes" postag="VB:Past:.*:.*:Fem" />
            </antipattern>
            <antipattern>
                <token postag_regexp="yes" postag="VB:Past:.*:.*:Neut" />
                <token postag_regexp="yes" postag="VB:Past:.*:.*:Neut" />
            </antipattern>
            <antipattern>
                <token postag_regexp="yes" postag="VB:Past:.*:.*:PL" />
                <token postag_regexp="yes" postag="VB:Past:.*:.*:PL" />
            </antipattern>

            <pattern>
                <!--     VB:.*  VB:.* (VB:INF:)            -->
                <token postag="VB:.*" postag_regexp="yes">
                    <exception postag_regexp="yes" postag="VB:INF:.*"/>
                    <exception postag_regexp="yes" negate_pos="yes" postag="(VB|PT|DPT):.*"/>
                </token>
                <token postag="VB:.*" postag_regexp="yes">
                    <exception postag_regexp="yes" postag="VB:INF:.*"/>
                    <exception postag_regexp="yes" negate_pos="yes" postag="(VB|PT|DPT):.*"/>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Два глагола в личной форме подряд. Второй глагол должен быть в неопределённой форме: <suggestion><match no="1"></match> <match no="2" postag="VB:.*" postag_regexp="yes" postag_replace="VB:INF:.*"></match></suggestion></message>
            <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BA%D0%B0%D0%B7%D1%83%D0%B5%D0%BC%D0%BE%D0%B5#.D0.A1.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BD.D0.BE.D0.B5_.D0.B3.D0.BB.D0.B0.D0.B3.D0.BE.D0.BB.D1.8C.D0.BD.D0.BE.D0.B5_.D1.81.D0.BA.D0.B0.D0.B7.D1.83.D0.B5.D0.BC.D0.BE.D0.B5</url>
            <short>Ошибка в примыкании</short>
            <example>Здесь будет строиться всё больше жилья.</example>
            <example>И как попало расселись на траве.</example>
            <example>Однако он был отвергнут.</example>
            <example>В этой области мы не знаем ничего, давайте создадим модель и поэкспериментируем.</example>
            <example>Думал собраться пойти купить выпить.</example>
            <example>Он как следует попарился.</example>
            <example>Толику необходимо перепрыгнуть через преграду.</example>
            <example>Он смеялся радовался. (Некорректный пример)</example> <!-- Incorrect example, but this error must detected with another rule. -->
            <example correction="будет строиться">Здесь <marker>будет строится</marker> всё больше жилья.</example>
        </rule>
       
        <rule id="missing_2_verb" name="Пропущен второй глагол" default="on">
            <antipattern>
                <token postag_regexp="yes" postag="VB:INF:.*" />
                <token postag="ADV|PRDC|PNN:.*" postag_regexp="yes" />
                <token postag_regexp="yes" postag="VB:INF:.*" />
            </antipattern>
            <antipattern>
                <token>не</token>
                <token postag_regexp="yes" postag="VB:INF:.*" />
            </antipattern>
             <antipattern>
                <token postag_regexp="yes" postag="VB:INF:.*" />
                <token>не</token>
            </antipattern>
            <antipattern>
                <token postag="ADV|PRDC" postag_regexp="yes" />
                <token postag_regexp="yes" postag="VB:INF:.*" />
                <token postag_regexp="yes" postag="VB:INF:.*" />
            </antipattern>            
            <antipattern>
                <token postag="ADV|PRDC|ADJ:Comp" postag_regexp="yes" />
                <token postag_regexp="yes" postag="VB:INF:.*" />
            </antipattern>
            <pattern>
                <!-- "Любое слово." -->
                <token postag="SENT_START"></token>
                <token postag="UNKNOWN" negate_pos="yes" skip="-1">
                    <!-- "Кроме глаголов." -->
                    <exception regexp="yes" >&verb;</exception>
                    <exception postag="VB:Past:.*|VB:Real:.*|VB:Fut:.*|VB:IMP:.*|ADJ:Short:.*" postag_regexp="yes" ></exception>
                    <exception postag="VB:Past:.*|VB:Real:.*|VB:Fut:.*|VB:IMP:.*|ADJ:Short:.*" postag_regexp="yes" scope="next"></exception>
                </token>
                <!-- "Глагол в неопределённой форме." -->
                <marker>
                    <token postag_regexp="yes" postag="VB:INF:.*">
                        <exception postag="VB:INF:.*" negate_pos="yes" postag_regexp="yes"></exception>
                        <exception postag="NN:Anim:.*:Nom|NN:Fam:.*:Nom|NN:Name:.*:Nom|NN:Patr:.*:Nom|PNN:.*:Nom:.*" negate_pos="yes"  postag_regexp="yes" scope="previous" ></exception>
                        <exception postag="ADJ:Short:.*|CONJ" postag_regexp="yes" scope="previous"></exception>
                        <exception scope="previous">любитель</exception>
                    </token>
                </marker>
            </pattern>
            <message>Перед глаголом в неопределённой форме должен быть модальный глагол (хочет, будет, должен, может, ...)</message>
            <short>Пропущен модальный глагол</short>
            <example type="incorrect">Денис <marker>носить</marker> грязные носки.</example>
            <example>Денис носит грязные носки.</example>
            <example>Денис будет носить грязные носки.</example>
            <example>Денис большой любитель поесть.</example>
            <example type="incorrect">Маша <marker>любить</marker> мягкие игрушки.</example>
            <example>Маша будет любить мягкие игрушки.</example>
	    <example>Он взял за правило никогда не говорить дурно о других.</example>
            <example>Перед глаголом в неопределённой форме должен быть модальный глагол.</example>
            <example>Они слишком заняты склоками друг с другом, чтобы думать об общих идеалах.</example>
            <example>Учиться нельзя заставлять.Учёбу нужно поощрять.</example>
            <example>Нельзя ожидать всего от школы.</example>
            <example>Должен ли я остаться здесь?</example>
            <example>Готовы ли вы отложить ваши глупые сомнения?</example>
            <example>Мне пора идти спать.</example>
            <example>Тебе лучше поспать.</example>
            <example>Невозможно заставить его понять новую теорию.</example>
            <example>Отличать правду от кривды сложно.</example>
            <example>Нельзя не сказать и ещё об очень важном влиянии НЭПа</example>
            <example>Легко мне говорить по-японски.</example>
            <example>Легко мальчику говорить по-японски.</example>
        </rule>                                                                                                                                                                                                                   
                                                                                                                                                                                                                                                                                
        <rule default="on" id="Verb_and_PT" name="Глагол и причастие">
            <pattern>
                <token>получится</token>
                <token postag="PT:.*|PT_Short:.*" postag_regexp="yes"><exception postag="ADJ:.*" postag_regexp="yes"></exception></token>
            </pattern>
  
        <message suppress_misspelled="yes">Глагол и причастие подряд. Вероятно, опечатка: <suggestion><match no="1"></match> <match no="2" postag="PT:.*" postag_regexp="yes" postag_replace="VB:INF:.*"></match></suggestion></message>
            <short>Вероятно, опечатка</short>
            <example correction="получится найти">Применение численных методов оптимизации никогда не может гарантировать, что <marker>получится найден</marker> глобальный экстремум.</example>
            <example>Применение численных методов оптимизации никогда не может гарантировать, что получится найти глобальный экстремум.</example>
        </rule>

        <rulegroup default="on" id="Verb_tsa_and_ttsya" name="Правописание «-тся» и «-ться» в глаголах">
          <rule>        
            <pattern>
                <!--     VB:.*         -->
                <token skip="-1" regexp="yes">нужно|надо|необходимо<exception  scope="next" regexp="yes">&pnct;|и|или</exception><exception postag="PNN:.*" postag_regexp="yes" scope="next" /></token>
                <marker>
                  <token postag="VB:.*" postag_regexp="yes" skip="-1"><exception postag_regexp="yes"  postag="VB:INF:.*"></exception><exception postag_regexp="yes" negate_pos="yes" postag="VB:.*"></exception><exception>трём</exception><exception postag_regexp="yes" scope="next" postag="VB:.*"></exception></token>
                </marker>
                <token regexp="yes">[.;,!?]</token>
            </pattern>
            <message suppress_misspelled="yes">Глагол должен быть в неопределённой форме: <suggestion><match no="2" postag="VB:.*" postag_regexp="yes" postag_replace="VB:INF:.*"></match></suggestion></message>
            <url>http://tsya.ru/</url>
            <short>Глагол должен быть в неопределённой форме</short>
            <example>Нужно, чтобы мы готовились к худшему.</example>
            <example>Не надо суетиться!</example>
            <example>Нужно решить транспортную проблему – заявил губернатор Московской области Борис Громов.</example>
            <example>Спрашивайте, что вам надо и оставьте меня в покое.</example> <!-- Incorrect example, correct: Спрашивайте, что вам надо, и оставьте меня в покое. -->
            <example correction="суетиться">Не надо <marker>суетится</marker>!</example>
            <example correction="перепрыгнуть">Толику необходимо <marker>перепрыгнул</marker> через барьер.</example>
            <example correction="строиться">Нужно <marker>строится</marker> на этом месте.</example>
          </rule>
          <rule>
            <pattern>
                <!--  NN:.*:Nom|PNN:.*:Nom:.* +  же + не  + VB:INF:.*  .(.*ться)       -->
                <token postag_regexp="yes" postag="NN:.*:Nom|PNN:.*:Nom:.*"></token>
                <token>же</token>
                <token>не</token>
                <marker>
                 <token postag="VB:INF:.*" postag_regexp="yes" regexp="yes" >[а-яё]*ться<exception postag_regexp="yes" negate_pos="yes" postag="VB:INF:.*"></exception><exception postag_regexp="yes" scope="next" postag="VB:.*"></exception></token>
                </marker>          
            </pattern>
             <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:4 regexp:(.*)ься postag_regexp:UNKNOWN   negate_pos:yes"/>     <!-- Test if word without "ь" exist -->
            <message suppress_misspelled="yes">Глагол должен быть в личной форме, мягкий знак не нужен: <suggestion><match no="4" postag="VB:INF:.*" postag_regexp="yes" postag_replace="VB:.*:.*:Sin:P3"/></suggestion></message>
            <url>http://tsya.ru/</url>
            <short>Мягкий знак не нужен</short>
            <example>Парень же не справится.</example>
           <example correction="справится">Парень же не <marker>справиться</marker>.</example>
          </rule>        
        </rulegroup>
        
        <rulegroup id="Verb_INF_OR_3P" default="on" name="Инфинитив вместо личной формы глагола">
            <!-- need test on big data -->
        <rule>    
            <antipattern>
                <token postag="VB:.*" postag_regexp="yes" skip="-1">
                    <exception postag="VB:.*" postag_regexp="yes" negate_pos="yes"></exception>
                </token>
                <token postag="VB:INF:INTR:.*" postag_regexp="yes" skip="-1">
                    <exception postag="VB:.*" postag_regexp="yes" scope="next"></exception>
                    <exception postag="VB:.*" postag_regexp="yes" scope="previous"></exception>
                    <exception regexp="yes" >быть|есть|идти</exception>
                </token>
            </antipattern>        
            <antipattern>
                <token postag="ADJ:Comp|ADJ:Short:.*|DPT:.*|PRDC"  postag_regexp="yes" skip="-1"></token>
                <token postag="VB:INF:INTR:.*" postag_regexp="yes" ></token>
            </antipattern>
            <antipattern>
                <token>в</token>
                <token postag="NN:.*"  postag_regexp="yes" skip="-1"></token>
                <token postag="VB:INF:INTR:.*" postag_regexp="yes" ></token>
            </antipattern>              
            <pattern>
                <token postag="PNN:.*:Nom:P3|NN:(Name|Fam|Patr):.*:.*:Nom" postag_regexp="yes" skip="-1"><exception postag="VB:(Fut|IMP|Past|Real):.*" postag_regexp="yes" scope="next"></exception><exception postag="VB:.*" postag_regexp="yes" scope="previous"></exception><exception regexp="yes" scope="next">[,;и]</exception></token>
                <marker>
                    <token postag="VB:INF:INTR:.*" postag_regexp="yes" skip="-1">
                        <exception postag="VB:.*|PRDC|PT_Short:.*" postag_regexp="yes" scope="next"></exception>
                        <exception regexp="yes" scope="next">—|-|–</exception>
                        <exception postag="VB:.*|PT_Short:.*" postag_regexp="yes" scope="previous"></exception>
                        <exception regexp="yes" scope="previous">—|-|–</exception>
                        <exception regexp="yes" >быть|есть|идти</exception>
                    </token>
                </marker>
                <token postag="SENT_END"></token>
            </pattern>
            <message suppress_misspelled="yes">Инфинитив вместо личной формы глагола: <suggestion><match no="2" postag_regexp="yes" postag="VB:INF:(.*):(.*)"  postag_replace="VB:Real:$1:$2:Sin:P3"></match></suggestion></message>
            <url>http://tsya.ru/</url>
            <short>Глагол должен быть в личной форме</short>
            <example correction="приходится">Он мне <marker>приходиться</marker> племенником.</example>
            <example>Он мне приходится племенником.</example>
            <example>Ты увидишь, что ей трудно угодить.</example>
            <example>На него всегда можно положиться в сложной ситуации.</example>
            <example>Ты ведь собирался сейчас же её бросить, не так ли?</example>
            <example>Волков бояться — в лес не ходить.</example>
            <example>Ей запрещено выходить из дома.</example>
            <example>Ей не с кем поговорить.</example>
            <example>Он в состоянии помочь.</example>
            <example>Не надо суетиться!</example>
         </rule>
         <rule>
	 <antipattern>
	 <token>что</token>
	 <token>учиться</token>
	 <token>любить</token>
	 </antipattern>
            <pattern>
                <!--     VB:INF:.*  .*ть|.*ться       -->
                <token skip="1" >что<exception  scope="next" regexp="yes">[,:;]</exception><exception postag="PNN:.*" postag_regexp="yes" scope="next" /></token>
                <marker>
                 <token postag="VB:INF:.*" postag_regexp="yes" regexp="yes" >[а-яё]*ться<exception postag_regexp="yes" negate_pos="yes" postag="VB:INF:.*"></exception><exception postag_regexp="yes" scope="next" postag="VB:.*"></exception><exception postag_regexp="yes" scope="previous" postag="VB:.*|NN:.*:Nom|PNN:.*:Nom:.*"></exception></token>
                </marker>          
            </pattern>
            <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:(.*)ься postag_regexp:UNKNOWN   negate_pos:yes"/>     <!-- Test if word without "ь" exist -->
            <message suppress_misspelled="yes">Глагол должен быть в личной форме, мягкий знак не нужен: <suggestion><match no="2" postag="VB:INF:.*" postag_regexp="yes" postag_replace="VB:.*:.*:Sin:P3"/></suggestion></message>
            <url>http://tsya.ru/</url>
            <short>Мягкий знак не нужен</short>
            <example>Проблема может возникнуть при наличии собственных резонансов в модели, что относится и к нашему случаю, где частота падающей волны приходится на максимум дипольного отклика частицы.</example>
            <example>Всё больше людей понимает, что учиться любить можно и нужно.</example>
	    <example correction="относится">Проблема может возникнуть при наличии собственных резонансов в модели, что <marker>относиться</marker> и к нашему случаю, где частота падающей волны приходится на максимум дипольного отклика частицы.</example>
        </rule>        
        </rulegroup>                
        <rulegroup  id="Verb_INF_OR_3P_2" default="temp_off" name="Инфинитив вместо личной формы глагола" > <!-- set temp off -->  <!-- tags="picky" -->
            <antipattern>
                 <token postag="SENT_START" skip="-1" />
                 <token postag="VB:.*" skip="-1" postag_regexp="yes" ><exception   postag="VB:.*"  postag_regexp="yes"  negate_pos="yes"    /></token>
                 <marker>
                    <token postag="VB:INF:.*" postag_regexp="yes" regexp="yes" >[а-яё]*ться<exception negate_pos="yes" postag="VB:INF:.*" postag_regexp="yes"/><exception postag_regexp="yes" scope="next" postag="VB:.*"></exception></token>
                </marker>
                <token postag="PREP" skip="-1"></token>    
                <token regexp="yes">[.;,!?]</token>
            </antipattern>
              <antipattern>
                 <token postag="SENT_START" skip="-1" />
                 <token  skip="-1" regexp="yes" >было|стало</token>
                 <marker>
                    <token postag="VB:INF:.*" postag_regexp="yes" regexp="yes" >[а-яё]*ться<exception negate_pos="yes" postag="VB:INF:.*" postag_regexp="yes"/><exception postag_regexp="yes" scope="next" postag="VB:.*"></exception></token>
                </marker>
                <token postag="PREP" skip="-1"></token>    
                <token regexp="yes">[.;,!?]</token>
            </antipattern>
            <antipattern>
                 <token postag="SENT_START" skip="-1" />
                 <token regexp="yes" skip="-1">&verb;</token>
                 <marker>
                    <token postag="VB:INF:.*" postag_regexp="yes" regexp="yes" >[а-яё]*ться<exception negate_pos="yes" postag="VB:INF:.*" postag_regexp="yes"/><exception postag_regexp="yes" scope="next" postag="VB:.*"></exception></token>
                </marker>
                <token postag="PREP" skip="-1"></token>    
                <token regexp="yes">[.;,!?]</token>
            </antipattern>
            <antipattern>
                 <token postag="SENT_START" skip="-1" />
                 <token postag_regexp="yes"  postag="NN:.*:.*:.*:Nom"><exception postag_regexp="yes" negate_pos="yes" postag="NN:.*:.*:.*:Nom"/></token>
                 <token postag="ADV" negate_pos="yes" skip="-1" ></token>
                 <marker>
                    <token postag="VB:INF:.*" postag_regexp="yes" regexp="yes" >[а-яё]*ться<exception negate_pos="yes" postag="VB:INF:.*" postag_regexp="yes"/>
                        <exception postag_regexp="yes" scope="next" postag="VB:.*"></exception>
                        <exception postag_regexp="yes" scope="previous" postag="VB:.*|NN:.*:Nom|PNN:.*:Nom:.*" />
                        <exception regexp="yes" scope="previous" >было|стало|можно|сложно|нужно|трудно|надо|нелегко|легко|лучше|хуже|невозможно|успешно|чтобы|сильно|слабо|непросто|небрежно|вовремя|разрешено</exception> <!-- check word, maybe set POStag? -->
                    </token>
                </marker>
                <token postag="PREP" skip="-1"></token>    
                <token regexp="yes">[.;,!?]</token>
            </antipattern>
            <antipattern>
                <token postag="VB:INF:.*" postag_regexp="yes"></token>
                <token regexp="yes">и|или</token>
                <token postag="VB:.*:.*" postag_regexp="yes"></token>    
            </antipattern>
            <antipattern>
                <token postag="VB:.*:.*" postag_regexp="yes"></token>
                <token regexp="yes">и|или</token>
                <token postag="VB:INF:.*" postag_regexp="yes"></token>    
            </antipattern>
        <rule>
            <pattern>
                <marker>
                    <token postag="VB:INF:.*" postag_regexp="yes" regexp="yes" >[а-яё]*ться<exception negate_pos="yes" postag="VB:INF:.*" postag_regexp="yes"/>
                        <exception postag_regexp="yes" scope="next" postag="VB:.*|DPT:.*"></exception>
                        <exception postag_regexp="yes" scope="previous" postag="VB:.*|NN:.*:Nom|PNN:.*:Nom:.*|DPT:.*|PT_Short:.*|PT:.*|SENT_START" />
                        <exception regexp="yes" scope="previous" >было|стало|можно|сложно|нужно|трудно|надо|нелегко|легко|лучше|хуже|невозможно|успешно|чтобы|сильно|слабо|непросто|небрежно|вовремя|разрешено|приятно|рад</exception> <!-- check word, maybe set POStag? -->
                    </token>
                </marker>
                <token postag="PREP"  skip="-1"></token>    
                <token regexp="yes">[.;,!?]</token>
            </pattern>
            <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:1 regexp:(.*)ься postag_regexp:UNKNOWN   negate_pos:yes"/>     <!-- Test if word without "ь" exist --> 
            <message suppress_misspelled="yes" >Глагол должен быть в личной форме, мягкий знак не нужен: <suggestion><match no="1" postag="VB:INF:.*" postag_regexp="yes" postag_replace="VB:.*:.*:Sin:P3"/></suggestion></message>
            <url>http://tsya.ru/</url>
            <short>Глагол должен быть в личной форме</short>
            <example>Но вот мой друг очень положительно относится к спорту.</example>
            <example>Ты должен немедленно отправиться в путь.</example>
            <example>Тебе нужно встретиться с ней.</example>
            <example>У Тома было много возможностей встретиться с Мери за лето.</example>
	    <example>Ему свойственно смеясь относиться к неприятностям.</example>
            <example>Учиться в школе сложно?</example>
            <example>Том намерен жениться на Анне, а не на Мэри.</example>   
            <example>Плесень может появляться и размножаться в кислотах, которые защищают нас от бактерий.</example>
            <example>Взрослый самец может временно присоединяться к стаду с самками.</example>
            <example>Все хотят встретиться с вами, вы знаменитость!</example>
            <example correction="относится">Но вот мой друг очень положительно <marker>относиться</marker> к спорту.</example>
        </rule>
        </rulegroup>
        <rulegroup  id="Verb_INF_OR_3P_3" default="on"  name="Инфинитив вместо личной формы глагола (3)" >
        <rule>
            <pattern>
                <token postag="SENT_START" skip="-1" ><exception regexp="yes" scope="next">какой|если|какая|какие|какое|искушение|должен|должна|должны|должно</exception>
                    <exception postag_regexp="yes" scope="next" postag="VB:.*" />
                </token>
                <token postag="NN:.*:Nom|PNN:.*:Nom:.*"  postag_regexp="yes"  ><exception postag_regexp="yes" negate_pos="yes" postag="NN:.*:.*|PNN:.*:Nom:.*" />
                <exception postag_regexp="yes" scope="previous" postag="VB:.*|NN:.*:Nom|PNN:.*:Nom:.*" />
                <exception postag_regexp="yes" postag="NN:Inanim:.*:Sin:R" />
                <exception regexp="yes" scope="previous" >было|стало|можно|сложно|нужно|трудно|надо|нелегко|легко|лучше|хуже|невозможно|успешно|чтобы|сильно|слабо|непросто|небрежно|вовремя|разрешено|&verb;|искушение|должен|должна|должны|должно</exception> <!-- check word, maybe set POStag? -->
                </token> 
                <marker>
                    <token postag="VB:INF:.*" postag_regexp="yes" regexp="yes" >[а-яё]*ться<exception negate_pos="yes" postag="VB:INF:.*" postag_regexp="yes"/></token>
                </marker>
                <token postag="ADV"  skip="-1"><exception postag_regexp="yes" scope="next" postag="VB:.*" /><exception postag_regexp="yes" postag="VB:.*" /></token>    
                <token regexp="yes">[.;,!?]</token>
            </pattern>
       <!--     <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:1 regexp:(.*)ься postag_regexp:UNKNOWN   negate_pos:yes"/>    --> <!-- Test if word without "ь" exist --> 
            <message suppress_misspelled="yes" >Глагол должен быть в личной форме, мягкий знак не нужен: <suggestion><match no="3" postag="VB:INF:.*" postag_regexp="yes" postag_replace="VB:.*:.*:Sin:P3"/></suggestion></message>
            <url>http://tsya.ru/</url>
            <short>Глагол должен быть в личной форме</short>
            <example>У меня нет никакого желания оставаться здесь.</example>
            <example correction="решится">Эта проблема <marker>решиться</marker> после установки данной системы.</example>
            <example correction="пятится">Рак <marker>пятиться</marker> назад.</example>
        </rule>
        </rulegroup>

        <rulegroup default="on" id="Verb_3P_and_inf" name="Правописание «-т» и «-ть» в глаголах – однородных членах предложения">
          <rule>        
            <pattern>
                <!--     VB:.* (-т) и    VB:INF: (-ть)      -->
                <token postag="VB:Real:.*:P3" postag_regexp="yes" ><exception postag_regexp="yes"  postag="VB:INF:.*"></exception></token>
                <token>и</token>
                <marker>
                    <token postag_regexp="yes"  postag="VB:INF:.*" ></token>
                </marker>
                <token postag="NN:.*:.*:.*:.*" postag_regexp="yes"><exception postag_regexp="yes" postag="NN:.*:.*:.*:Nom"></exception><exception negate_pos="yes" postag_regexp="yes" postag="NN:.*:.*:.*:.*"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Оба глагола должны быть в личной форме: <suggestion><match no="3" postag_regexp="yes" postag="VB:INF:(.*):(.*)"  postag_replace="VB:Real:$1:$2:Sin:P3"></match></suggestion></message>
            <url>http://tsya.ru/</url>
            <short>Глагол должен быть в личной форме</short>
            <example>Она сидит и кормит ребёнка.</example>
            <example correction="кормит">Она сидит и <marker>кормить</marker> ребёнка.</example>
          </rule>
          <rule>         
              <pattern>
                  <!--     VB:.* (-т) и    VB:INF: (-ть)      -->
                  <marker>
                      <token postag_regexp="yes"  postag="VB:INF:.*" > <exception scope="previous"  postag_regexp="yes" postag="VB:.*:.*:.*|PT_Short:.*"></exception></token>
                  </marker>
                  <token postag="NN:.*:.*:.*:.*" postag_regexp="yes">
                      <exception postag_regexp="yes" postag="NN:.*:.*:.*:Nom"></exception>
                      <exception negate_pos="yes" postag_regexp="yes" postag="NN:.*:.*:.*:.*"></exception>
                  </token>
                  <token>и</token>
                  <token postag="VB:Real:.*:P3" postag_regexp="yes" >
                      <exception postag_regexp="yes"  postag="VB:INF:.*"></exception>
                  </token>
              </pattern>
              <message suppress_misspelled="yes">Оба глагола должны быть в личной форме: <suggestion><match no="1" postag_regexp="yes" postag="VB:INF:(.*):(.*)"  postag_replace="VB:Real:$1:$2:Sin:P3"></match></suggestion></message>
              <url>http://tsya.ru/</url>
              <short>Глагол должен быть в личной форме</short>
              <example>Она кормит ребёнка и смотрит телевизор.</example>
              <example>Король Кристиан X вынужден подписать капитуляцию и приказывает армии сложить оружие.</example>
              <example correction="кормит">Она <marker>кормить</marker> ребёнка и смотрит телевизор.</example>
          </rule>
          <rule>
            <pattern>
                <!--     VB:.* (-т) и    VB:INF: (-ть)      -->
                <token regexp="yes">должны|хотите|можете</token>
                <marker>
                    <token postag="VB:INF:.*" postag_regexp="yes"><exception postag_regexp="yes"  postag="VB:.*:Sin:P3"></exception></token>
                    <token regexp="yes">и|или</token>
                    <token postag_regexp="yes"  postag="VB:.*:Sin:P3" ><exception postag_regexp="yes"  postag="VB:INF:.*"></exception></token>
                </marker>                
            </pattern>
            <message suppress_misspelled="yes">Оба глагола должны быть в неопределённой форме. <suggestion><match no="2"/> <match no="3"/> <match no="4" postag_regexp="yes" postag="VB:(.*):(.*):(.*):Sin:P3"  postag_replace="VB:INF:$2:$3"></match></suggestion></message>
            <short>Оба глагола должны быть в неопределённой форме</short>
            <example>Вы должны прочитать и согласиться с правилами.</example>
            <example correction="прочитать и согласиться">Вы должны <marker>прочитать и согласится</marker> с правилами.</example>
          </rule>
          <rule>
            <pattern>
                <!--     VB:.* (-т) и    VB:INF: (-ть)      -->
                <token regexp="yes">должны|хотите|можете</token>
                <marker>
                    <token postag_regexp="yes"  postag="VB:.*:Sin:P3" ><exception postag_regexp="yes"  postag="VB:INF:.*"></exception></token>
                    <token regexp="yes">и|или</token>
                    <token postag="VB:INF:.*" postag_regexp="yes"><exception postag_regexp="yes"  postag="VB:.*:Sin:P3"></exception></token>
                </marker>                
            </pattern>
            <message suppress_misspelled="yes">Оба глагола должны быть в неопределённой форме. <suggestion><match no="2" postag_regexp="yes" postag="VB:(.*):(.*):(.*):Sin:P3"  postag_replace="VB:INF:$2:$3"></match> <match no="3"/> <match no="4"/></suggestion></message>
            <short>Оба глагола должны быть в неопределённой форме</short>
            <example>Вы должны прочитать и согласиться с правилами.</example>
            <example correction="согласиться и прочитать">Вы должны <marker>согласится и прочитать</marker> правила.</example>
          </rule>
        </rulegroup>        
        <rule default="on" id="PREP_and_DPT" name="Деепричастие и предлог">
            <pattern case_sensitive="no">
                <!--              PREP :.*    -->
                <!--              excluded prep "по" for another rule    -->
                <token postag="PREP"><exception negate_pos="yes" postag="PREP"></exception></token>
                <token postag="DPT:.*" postag_regexp="yes">
                    <exception negate_pos="yes" postag="DPT:.*" postag_regexp="yes"></exception>
                </token> 
            </pattern>
            <message>Предлог перед деепричастием не употребляется. Исправление: <suggestion>\1\2</suggestion> или <suggestion>\2</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B3</url>
            <short>Предлог перед деепричастием не употребляется</short>

            <example correction="пробежав|бежав">Он, <marker>про бежав</marker> в лес по тропе, устал.</example>
        </rule>
        
         <rule default="on" id="Verb_and_PREP" name="Глагол и предлог">
             <antipattern>
                 <token postag="PREP"/>
                 <token chunk="MayMissingYO"></token> 
             </antipattern>
             <pattern case_sensitive="no">
                <!--              PREP VB:.*    -->
                <!--              excluded prep "по" for another rule    -->
                <or>
                <token postag="PREP">
                    <exception negate_pos="yes" postag="PREP"></exception>
                    <exception regexp="yes">спустя|ради|по|насчёт|насчет|ко</exception>   <!--  |[А-ЯЁ]* -->
                </token>
                <token regexp="yes">у|при</token>
                </or>
                <token postag="VB:.*" postag_regexp="yes">
                    <exception negate_pos="yes" postag="VB:.*" postag_regexp="yes"></exception>
                    <exception>трём</exception>
                </token>
                
            </pattern>
            <message>Предлог перед глаголом не употребляется. Исправление: <suggestion>\2</suggestion> или <suggestion>\2 \1</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B3</url>
            <short>Предлог перед глаголом не употребляется</short>
            <example>Он пошёл в лес.</example>
            <example>Стив Джобс и Ко начали поиск специалистов.</example>
            <example>Он лёгок на подъем.</example>
            <example>Как насчет поиграть в теннис сегодня после обеда?</example>
            <example correction="пошёл|пошёл в">Он <marker>в пошёл</marker> лес.</example>
        </rule>
        
        <rule id="NE_VB_NN_NN" name="Падеж существительного в конструкции «не+глагол+существительное»">
            <pattern>
                <token>не</token>
                <token postag="VB:.*" postag_regexp="yes"></token>
                <token regexp="yes">решение|постановление|определение</token> <!-- <token postag="NN:.*:Sin:V" postag_regexp="yes"><exception postag="NN:.*:Sin:R" postag_regexp="yes"></exception><exception postag="NN:.*:.*:.*" postag_regexp="yes" negate_pos="yes"></exception></token> -->
                <token postag="NN:.*:Sin:R" postag_regexp="yes"></token>
            </pattern>
            <message suppress_misspelled="yes">Требуется родительный падеж: <suggestion><match no="1"/> <match no="2"/> <match no="3" postag="NN:(.*):Sin:V" postag_regexp="yes" postag_replace="NN:$1:Sin:R"></match> <match no="4"/></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example correction="не дождались решения комиссии|не дождались решенья комиссии">Мы <marker>не дождались решение комиссии</marker>.</example>
            <example>Мы не дождались решения комиссии.</example>
        </rule>
        <rulegroup id="ABR_GENDER" name="Род аббревиатур">
            <!--  TODO: add exception -->
            <rule>   
                <pattern>
                    <token postag="ABR:Masc"><exception scope="previous" postag="PREP|ABR:.*|NN:.*|CONJ" postag_regexp="yes"/><exception scope="previous" regexp="yes">([0-9,.]+)|—|-|–</exception></token>                  
                    <token postag="VB:Past:.*:.*:Fem|VB:Past:.*:.*:Neut" postag_regexp="yes"/>
                </pattern>
                <message suppress_misspelled="yes">Род аббревиатуры определяется по опорному слову: <suggestion><match no="1"/> <match no="2" postag_regexp="yes" postag="VB:Past:.*" postag_replace="VB:Past:.*:.*:Masc" /></suggestion> — мужской род.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Мужской род</short>
                <example correction="УЕФА объявил"><marker>УЕФА объявила</marker> о реформе.</example>
                <example>УЕФА объявил о реформе.</example>
                <example>Фактическая власть в СССР принадлежала руководству КПСС.</example>
                <example>На фронте протяжённостью 500,5 км располагалась группа армий.</example>
            </rule>
            <rule>   
                <pattern>
                    <token postag="ABR:Fem"><exception scope="previous" postag="PREP|ABR:.*|NN:.*|CONJ" postag_regexp="yes"/><exception scope="previous" regexp="yes">совет|безопасности</exception><exception scope="previous" regexp="yes">([0-9,.]+)|—|-|–</exception></token>                  
                    <token postag="VB:Past:.*:.*:Neut|VB:Past:.*:.*:Masc" postag_regexp="yes"/>
                </pattern>
                <message suppress_misspelled="yes">Род аббревиатуры определяется по опорному слову: <suggestion><match no="1"/> <match no="2" postag_regexp="yes" postag="VB:Past:.*" postag_replace="VB:Past:.*:.*:Fem" /></suggestion> — женский род.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Женский род</short>
                <example>Сегодня ВДНХ открылась в 10-00.</example>
                <example>Вчера ООН одобрила эту заявку.</example>
                <example>Вчера Cовет Безопасности ООН одобрил эту заявку.</example>
                <example correction="ВДНХ открылась">Сегодня <marker>ВДНХ открылся</marker> в 10-00.</example>
                <example correction="ООН одобрила">Вчера <marker>ООН одобрил</marker> эту заявку.</example>    
            </rule>                        
            <rule>   
                <pattern>
                    <token postag="ABR:Neut"><exception scope="previous" postag="PREP|ABR:.*|NN:.*|CONJ" postag_regexp="yes"/><exception scope="previous" regexp="yes">([0-9,.]+)|—|-|–</exception></token>                  
                    <token postag="VB:Past:.*:.*:Fem|VB:Past:.*:.*:Masc" postag_regexp="yes"/>
                </pattern>
                <message suppress_misspelled="yes">Род аббревиатуры определяется по опорному слову: <suggestion><match no="1"/> <match no="2" postag_regexp="yes" postag="VB:Past:.*" postag_replace="VB:Past:.*:.*:Neut" /></suggestion> — средний род.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Средний род</short>
                <example>СНГ образовалось в 1991 году.</example>   
                <example>ФБР наградило агента Смита.</example>
                <example>ЦРУ определило его местонахождение.</example>
                <example correction="СНГ образовалось"><marker>СНГ образовался</marker> в 1991 году.</example>
                <example correction="ЦРУ определило"><marker>ЦРУ определила</marker> его местонахождение.</example>
                <example correction="ФБР наградило"><marker>ФБР наградил</marker> агента Смита.</example>
            </rule>                        
        </rulegroup>   
        <rule id="Verb_and_NomDTV" name="Глагол предполагает падеж">
            <antipattern>
                <token skip="1">не</token>
                <token skip="3" postag="VB:.*" postag_regexp="yes"/>
                <token postag=".*:R" postag_regexp="yes"/> 
            </antipattern>
            <pattern>
                <marker>
                    <!-- Добавить глаголы, которые на согласуются с -->
                    <!-- 'телефоне' 'телефона' -->
                    <!-- слушать телефона, сообщать телефоне и т.д.  -->
                    <!-- но: бояться телефона -->
                    <token skip="3" inflected="yes"
                                       regexp="yes">отвечать|сообщать|говорить|понимать|думать|слушать|нюхать|смотреть|терпеть|обидеть|ощущать|осязать|обнимать|ходить|сидеть|лежать|причинять
                        <exception postag="PT:.*|DPT:.*" postag_regexp="yes" />
                        <exception scope="next" regexp="yes">,|:|–|-|—|«|»|"|[0-9]+.*</exception>
                        <exception scope="next" postag="ADJ:Comp|ADV|PREP|VB:.*|Num:.*|NumC:.*" postag_regexp="yes" />
                        <exception scope="next" postag=".*:(Nom|D|T|V)(:.*)*|.*:(Masc|Fem|Neut)|PREP" postag_regexp="yes"></exception>
                        <exception scope="next">нет</exception>
                    </token>
                    <token skip="1" postag="(PT|NN):.*" postag_regexp="yes">
                        <exception postag=".*:(Nom|D|T|V)(:.*)*|.*:(Masc|Fem|Neut)(:Sin|:PL)*|PREP|ADJ:Comp" postag_regexp="yes"></exception>
                        <exception regexp="yes">уже|ли|&missing_yo;|карате|саке|боке|процентов</exception>
                        <exception>дат</exception>
                        <exception scope="next" postag="Num:.*|NumC:.*" postag_regexp="yes"/>
                        <exception scope="next" regexp="yes">[0-9]+.*|[IVXLCM]+.*</exception>
                    </token>
                </marker>
                <token>
                    <exception postag="Num:.*" postag_regexp="yes"/>
                </token>
            </pattern>
            <message>Глагол "\1" предполагает после себя предлог перед родительным и предложным падежом (например: без, о, на, в) или запятую.</message>
            <example>Однако, по сути, директива № 1 от 21 июня реально всего лишь (и прежде всего) сообщала вероятную дату нападения Германии.</example>
            <example correction="">Не <marker>сообщайте людях</marker> о празднике.</example>
            <example correction="">Ложка <marker>лежала столе</marker>.</example>
        </rule>
        <rule id="Verb_and_wo_P" name="Глагольное управление (падеж)">
            <!--TODO   необходимо использовать грамматические характеристики глагола (переходный/непереходный) (+) -->            
            <antipattern>
                <token case_sensitive="yes" regexp="yes">[А-Я].*[А-Я].*</token>
            </antipattern>
            <antipattern>
                <token>ни</token>
                <token>было</token>
            </antipattern>
            <antipattern>
                <token>то</token>
                <token>есть</token>
            </antipattern>
            <antipattern>
                <token>в</token>
                <token skip="5" inflected="yes">какой</token>
                <token postag="VB:.*" postag_regexp="yes"/>
                <token postag="(PT|NN):.*:P" postag_regexp="yes"/>
            </antipattern>
            <antipattern>
                <token postag="PT:.*:P" postag_regexp="yes"/>
                <token postag="VB:INF:.*" postag_regexp="yes"/>
                <token postag="(PT|NN):.*:P" postag_regexp="yes"/>
            </antipattern>
            <!-- о продолжавшем меняться мире. -->
            <pattern>
                <marker>
                    <token skip="3" postag="VB:.*" postag_regexp="yes"><exception postag="PT:.*|DPT:.*|PREP|CONJ|ADV|ADJ:MPR:.*|NN:.*|NumC:.*" postag_regexp="yes" />
                        <exception scope="previous" postag="PREP"/>
                        <exception regexp="yes" scope="next" >метрах|сантиметрах|километрах|саженях|шагах</exception>
                        <exception postag="VB:.*:TRANS:.*" postag_regexp="yes" /> <!-- исключить переходные глаголы -->
                        <exception scope="next" regexp="yes">,|:|–|-|—|«|»|"|[0-9]+.*|\(|\)</exception>
                        <exception scope="next" postag="ADJ:Comp|ADV|PREP|VB:.*|Num:.*" postag_regexp="yes" />
                        <exception scope="next" postag=".*:(Nom|D|T|V|R)(:.*)*|.*:(Masc|Fem|Neut)|PREP|PT:.*|DPT:.*" postag_regexp="yes"></exception>
                        <exception>моем</exception>
                    </token>
                    <token postag="(PT|NN):.*" postag_regexp="yes"><exception postag=".*:(Nom|D|T|V|R)(:.*)*|.*:(Masc|Fem|Neut)(:Sin|:PL)*|PREP|ADJ:Comp|ADJ:.*|ADV|PARTICLE|NN:Fam|NN:Name|NN:Patr" postag_regexp="yes"></exception>
                        <exception regexp="yes">уже|ли|&missing_yo;|карате|саке|боке</exception>
                        <exception>дат</exception>
                    </token>
                </marker>
                <token><exception postag="Num:.*" postag_regexp="yes"/></token>
            </pattern>
            <message>Глагол «\1» предполагает после себя предлог перед предложным падежом (например: о, на, в).</message>
            <example>Однако, по сути, директива № 1 от 21 июня реально всего лишь (и прежде всего) сообщала вероятную дату нападения Германии.</example>
            <example>В каких оно должно быть рамках?</example>
            <example>Я бы хотел быть Пикассо.</example>
            <example>Сторожевые посты из крестьян стояли метрах в пятидесяти друг от друга вдоль полотна.</example>
            <example>Не <marker>сообщайте людях</marker> о празднике.</example>  <!-- неверный падеж -->
            <example correction="">Ложка <marker>лежала столе</marker>.</example>
        </rule>
        
        <rule id="Verb_izbezhat_NN" name="Глагол «избежать» + существительное">
            <pattern>
                <marker>
                    <token inflected="yes" >избежать</token>
                    <token postag="NN:.*:Sin:V" postag_regexp="yes"><exception  postag="ADJ:.*" postag_regexp="yes"></exception></token>
                </marker>
                <token postag="NN:.*" postag_regexp="yes"  negate_pos="yes"/>
            </pattern>
            <message suppress_misspelled="yes">Глагол «\1» предполагает после себя существительное в родительном падеже: <suggestion><match no="1"></match> <match no="2" postag_regexp="yes" postag="NN:(.*):(.*):(.*):V" postag_replace="NN:$1:$2:$3:R"  ></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example correction="избежал встречи">Он <marker>избежал встречу</marker>.</example>
            <example>Вы ещё на какое-то время избежите той же участи.</example>
        </rule>        
        <rule id="Verb_and_PNN_Nom" name="Глагольное управление (местоимение)" >
            <antipattern>
                <token postag="VB:Real:TRANS:IMPFV:.*:P1"  postag_regexp="yes"></token>
                <token postag="PNN:.*:Nom:P3|PNN:.*:Nom:P2" postag_regexp="yes" ></token>
                <token postag_regexp="yes" postag="PARTICLE|PNN:.*:R:.*|VB:.*" ></token>
            </antipattern>
            <pattern>
                <token postag="VB:Real:TRANS:IMPFV:.*:P1"  postag_regexp="yes"><exception scope="previous" postag_regexp="yes" postag="PNN:.*:.*" ></exception></token>
                <token postag="PNN:.*:Nom:P3|PNN:.*:Nom:P2" postag_regexp="yes" ><exception scope="next" regexp="yes">[,;.!]</exception><exception scope="next" postag_regexp="yes" postag="PARTICLE|PNN:.*:R:.*" ></exception></token>
            </pattern>
            <message>Неверное управление</message>
            <example correction=""><marker>Люблю он</marker></example>          
            <example>Мир, цинично добавляет он, стал слишком тесен.</example>
            <example>Вот я чувствую вы меня ими досыта и накормите.</example>
            <example>Вот я чувствую: вы меня ими досыта и накормите.</example> 
            <example>Я вижу ты патриот.</example>
            <example>Люблю его</example>            
        </rule>
       
    <rulegroup default="on" id="PREP_and_PNN1" name="Предлог и местоимения без «н»">
        <rule>
            <pattern>
                <!--                           -->
                    <token regexp="yes">вопреки|наперекор|согласно|вслед|навстречу|подобно|соответственно|благодаря</token>
                    <token regexp="yes">нему|ней|ним</token>
            </pattern>
            <message>Лишняя начальная буква «н»: <suggestion><match no="1"></match> <match no="2" regexp_match="([н])(.*)" regexp_replace="$2"></match></suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Лишняя начальная буква «н»</short>
            <example>Это было сделано благодаря ему.</example>
            <example correction="благодаря ему">Это было сделано <marker>благодаря нему</marker>.</example>
        </rule>
        
        <rule>
            <pattern>
                <!--        старше его, выше её,  лучше их                   -->
                    <token regexp="yes">старше|выше|лучше</token>
                    <token regexp="yes">него|неё|них</token>
            </pattern>
            <message>Лишняя начальная буква «н»: <suggestion><match no="1"></match> <match no="2" regexp_match="([н])(.*)" regexp_replace="$2"></match></suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Лишняя начальная буква «н»</short>
            <example>Он прыгнул лучше их.</example>
            <example correction="лучше их">Он прыгнул <marker>лучше них</marker>.</example>
        </rule>
        
      <!-- в отношении его, при помощи её, не в пример им, в противовес им, по поводу её, за исключением их,
           со стороны её, по причине его,  наподобие его, насчёт их   -->
  
         <rule>
            <pattern>
                    <token regexp="yes">в|при|по|за|со</token>
                    <token regexp="yes">отношении|помощи|пример|противовес|поводу|исключением|стороны|причине</token>
                    <token regexp="yes">него|неё|них</token>
            </pattern>
            <message>Лишняя начальная буква «н»: <suggestion><match no="1"></match> <match no="2"></match> <match no="3" regexp_match="([н])(.*)" regexp_replace="$2"></match></suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Лишняя начальная буква «н»</short>
            <example>Был выполнен возврат товара по причине его несоответствия требованиям.</example>
            <example correction="по причине его">Был выполнен возврат товара <marker>по причине него</marker> несоответствия требованиям.</example>
        </rule> 
        
        <rule>
            <pattern>
                    <token regexp="yes">наподобие|насчёт|насчет</token>
                    <token regexp="yes">него|неё|них</token>
            </pattern>
            <message>Лишняя начальная буква «н»: <suggestion><match no="1"></match> <match no="2" regexp_match="([н])(.*)" regexp_replace="$2"></match></suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Лишняя начальная буква «н»</short>
            <example>насчёт их</example>
            <example correction="насчёт их"><marker>насчёт них</marker></example>
        </rule> 
        
</rulegroup>   
        
        <rulegroup default="on" id="PREP_and_PNN" name="Предлог и местоимения">
            <rule>
            <pattern>
                <!--              PREP (его, ему, ей... ) -> PREP (него, нему, ней... )                 -->
                <marker>
                    <token regexp="yes">без|для|до|от|в|за|из|к|на|о|по|под|перед|при|про|с|у|через|возле|вокруг|впереди|мимо|напротив|около|после|посереди|сзади</token>
                <!--    <token postag="PREP">
                        <exception negate_pos="yes" postag="PREP"></exception>
                        <exception regexp="yes">по|в|благодаря|за|наперекор|вопреки|согласно|навстречу</exception>
                    </token> -->
                    <and>
                        <token postag="PNN:.*:P3" postag_regexp="yes">
                            <exception postag="PNN:.*:Nom:P3" postag_regexp="yes"></exception>
                            <exception regexp="yes" >её|ее|его|их</exception>
                        </token>
                        <token regexp="yes" negate="yes">[н].*</token>
                    </and>
                </marker>
           <!--     <token postag="SENT_END"></token>  -->
            </pattern>
            <message>У местоимений 3 лица в косвенных падежах пишется начальная «н», если эти местоимения употребляются после предлогов: <suggestion>\1 н\2</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Пропущена начальная буква «н»</short>
            <example>Он пошёл к нему.</example>
            <example>Дело удалось благодаря его усилиям.</example>
            <example correction="к нему">Он подошёл <marker>к ему</marker>.</example>
        </rule>
      
        <rule>
            <pattern>
                <!-- без ней, для ней, до ней, от ней -> без неё, для неё, до неё, от неё  -->
                <token regexp="yes">без|для|до|от</token>
                <token >ней</token>
            </pattern>
            <message>Нормативная форма – «неё»: <suggestion>\1 неё</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Нормативная форма – неё</short>
            <example>Всё было сделано без неё</example>
            <example correction="без неё">Всё было сделано <marker>без ней</marker>.</example>
        </rule>
        
        <rule>
            <pattern>   
                <!--       
без него(неё),  в (), для(), до(), за(), из(), к(), на(), но(), о(), от(), по(), под(), перед(), при(), про(), с(), у(), через() 
наречные предлоги: возле, вокруг, впереди, мимо, напротив, около, после, посереди, сзади него.
                -->
            <token>сзади</token>
            <!--  |для|до|от|в|за|из|к|на|но|о|по|под|перед|при|про|с|у|через|возле|вокруг|впереди|мимо|напротив|около|после|посереди   -->
            <token>его</token>
            </pattern>
            <message>Нормативная форма – «него»: <suggestion>\1 него</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Нормативная форма – него</short>
            <example>сзади него</example>
            <example correction="сзади него"><marker>сзади его</marker>.</example>
        </rule>  
   <!--      <rule>
            <pattern>  -->
                <!--       
без него(неё),  в (), для(), до(), за(), из(), к(), на(), но(), о(), от(), по(), под(), перед(), при(), про(), с(), у(), через() 
наречные предлоги: возле, вокруг, впереди, мимо, напротив, около, после, посереди, сзади него.
                -->
   <!--             <token regexp="yes">без|для|до|от|в|за|из|к|на|но|о|по|под|перед|при|про|с|у|через|возле|вокруг|впереди|мимо|напротив|около|после|посереди|сзади</token>
                <token regexp="yes">е[её]</token>
            </pattern>
            <message>Нормативная форма – него: <suggestion>\1 него</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Нормативная форма – неё</short>
            <example>Всё было сделано без неё</example>
            <example type="incorrect">Всё было сделано <marker>без её</marker>.</example>
        </rule>        
        -->
        <rule>
            <pattern>
                <!--           у ней  -> у неё  -->
                <token>у</token>
                <token>ней</token>
            </pattern>
            <message>Форма «у ней» придаёт высказыванию разговорный характер. Нормативная форма: <suggestion>\1 неё</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%BE%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8%D1%8F</url>
            <short>Разговорная форма</short>
            <example>У неё на окошке герань.</example>
            <example correction="У неё"><marker>У ней</marker> занавески в разводах.</example>
        </rule>
        
        </rulegroup>
        <rule default="on" id="PREP_K_and_Noun" name="Предлог «к» и существительное">
            <pattern case_sensitive="yes">
                <!--              PREP к, ко -> NN:.*:D   -->
                <token regexp="yes">к|ко</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" regexp="yes">[а-яё].*<exception postag="NN:.*:.*:D" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлог «к» предполагает употребление существительного в дательном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:D"></match></suggestion></message>
            <short>Требуется дательный падеж</short>
            <example>Он подошёл к дому.</example>
            <example correction="к дому">Он подошёл <marker>к дом</marker>.</example>
        </rule>
        <rule default="on" id="PREP_K_and_ADJ" name="Предлог «к» и прилагательное">
            <pattern>
                <!--              PREP к, ко -> ADJ:.*:D   -->
                <token regexp="yes">к|ко</token>
                <token postag="ADJ:.*:.*" postag_regexp="yes">
                    <exception postag="ADJ:.*:D" postag_regexp="yes"></exception>
                    <exception inflected="yes">такой</exception>
                    <exception postag="ADJ:Short:.*|ADJ:Comp" postag_regexp="yes"></exception>
                    <exception postag="ADJ:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлог «к» предполагает употребление прилагательного в дательном падеже: <suggestion><match no="1"></match> <match no="2" postag="ADJ:(.*):.*" postag_regexp="yes" postag_replace="ADJ:$1:D"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется дательный падеж</short>
            <example>Он подошёл к зелёному дому.</example>
            <example>Это относится к такого рода обещаниям.</example>
            <example correction="к зелёному|зелёный">Он подошёл <marker>к зелёный</marker> дому.</example>
        </rule>
        <rulegroup default="on" id="PREP_K_and_Num" name="Предлог «к» и числительное">
          <rule>
            <pattern>
                <!--              PREP к, ко -> Num:.*:D   -->
                <token regexp="yes">к|ко</token>
                <token postag="Num:.*:.*" postag_regexp="yes">
                    <exception postag="Num:.*:D" postag_regexp="yes"></exception>
                    <exception  postag="ADJ:MPR:.*:D" postag_regexp="yes"/>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлог «к» предполагает употребление числительного в дательном падеже: <suggestion><match no="1"></match> <match no="2" postag="Num:(.*):.*" postag_regexp="yes" postag_replace="Num:$1:D"></match></suggestion></message>
            <short>Требуется дательный падеж</short>
            <example>Один к двум.</example>
            <example correction="к двум">Один <marker>к два</marker>.</example>
            <example correction="к одному">Один <marker>к один</marker>.</example>
        </rule>
        <rule>
          <pattern>
                <!--              PREP к, ко -> NumC:D   -->
                <token regexp="yes">к|ко</token>
                <token postag="NumC:.*" postag_regexp="yes"><exception postag="NumC:D" ></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Предлог «к» предполагает употребление числительного в дательном падеже: <suggestion><match no="1"></match> <match no="2" postag="NumC:.*" postag_regexp="yes" postag_replace="NumC:D"></match></suggestion></message>
            <short>Требуется дательный падеж</short>
            <example correction="к трём">Один <marker>к тремя</marker>.</example>
        </rule>
        </rulegroup>
        <rule default="on" id="PREP_V_VS_NA" name="Предлог «в» или предлог «на» и существительное">
            <pattern>
                <!--              PREP в (or PREP на)  + Noun   -->
                <token>на</token>
                <token regexp="yes">&prep_v;</token>
            </pattern>
            <message>Требуется предлог «в» вместо предлога «на»: <suggestion>в <match no="2"></match></suggestion></message>
            <short>Требуется предлог «в»</short>
            <example>Он идёт в кино.</example>
            <example correction="в кино">Он идёт <marker>на кино</marker>.</example>
        </rule>
        <rule default="on" id="PREP_NA_VS_V" name="Предлог «на» или предлог «в» и существительное">
            <pattern>
                <!--              PREP на (or PREP в)  + Noun   -->
                <token>в</token>
                <token regexp="yes">&prep_na;</token>
            </pattern>
            <message>Требуется предлог «на» вместо предлога «в»: <suggestion>на <match no="2"></match></suggestion></message>
            <short>Требуется предлог «на»</short>
            <example>Игорь пригласил меня на концерт!</example>
            <example>Игорь получил посылку на почте.</example>
            <example>Игорь искал документы в почте.</example>
            <example correction="на концерт">Он пошёл <marker>в концерт</marker>.</example>
        </rule>
        
        <rule default="on" id="PREP_Nad_and_Noun" name="Предлоги: «над», «перед» и существительное">
            <pattern>
                <!--              PREP над, перед -> NN:.*:T   -->
                <token regexp="yes">над|перед</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:T" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлоги: «над» и «перед» предполагают употребление существительного в творительном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:T"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется творительный падеж</short>
            <example>Перед закатом.</example>
            <example correction="Перед закатом|Закат"><marker>Перед закат</marker>.</example>
        </rule>
        <rule default="on" id="PREP_Nad_and_ADJ" name="Предлоги: «над», «перед» и прилагательное">
            <pattern>
                <!--               PREP над, перед -> ADJ:.*:T   -->
                <token regexp="yes">над|перед</token>
                <token postag="ADJ:.*:.*" postag_regexp="yes">
                    <exception postag="ADJ:.*:T" postag_regexp="yes"></exception>
                    <exception postag="ADJ:Short:.*|ADJ:Comp" postag_regexp="yes"></exception>
                    <exception postag="ADJ:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлоги: «над» и «перед» предполагают употребление прилагательного в творительном падеже: <suggestion><match no="1"></match> <match no="2" postag="ADJ:(.*):.*" postag_regexp="yes" postag_replace="ADJ:$1:T"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется творительный падеж</short>
            <example>Перед багровым закатом.</example>
            <example correction="Перед багровым|Багровый"><marker>Перед багровый</marker> закатом.</example>
        </rule>
        
        
        <rule default="on" id="PREP_cherez_and_Noun" name="Предлоги: «сквозь», «через» и существительное">
            <pattern case_sensitive="no">
                <!--              PREP сквозь, через -> NN:.*:V   -->
                <token regexp="yes">сквозь|через</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" regexp="yes">[а-яё].*<exception postag="NN:.*:.*:V" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:Nom" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлоги: «сквозь» и «через» предполагают употребление существительного в винительном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:V"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется винительный падеж</short>
            <example>Луч света попал сквозь окно в комнату.</example>
            <example>Через тернии к звёздам.</example>
            <example correction="сквозь окно|окном">Луч света попал <marker>сквозь окном</marker> в комнату.</example>
        </rule>
        <rule default="on" id="PREP_cherez_and_ADJ" name="Предлоги: «сквозь», «через» и прилагательное">
            <pattern>
                <!--               PREP сквозь, через -> ADJ:.*:V   -->
                <token regexp="yes">сквозь|через</token>
                <token postag="ADJ:.*:.*" postag_regexp="yes">
                    <exception postag="ADJ:.*:V" postag_regexp="yes"></exception>
                    <exception postag="ADJ:Short:.*|ADJ:Comp" postag_regexp="yes"></exception>
                    <exception postag="ADJ:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлоги: «сквозь» и «через» предполагают употребление прилагательного в винительном падеже: <suggestion><match no="1"></match> <match no="2" postag="ADJ:(.*):.*" postag_regexp="yes" postag_replace="ADJ:$1:V"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется винительный падеж</short>
            <example>Луч света попал сквозь стеклянное окно в комнату.</example>
            <example correction="сквозь стеклянного|сквозь стеклянное|сквозь стеклянный|стеклянному">Луч света попал <marker>сквозь стеклянному</marker> окно в комнату.</example>
        </rule>
        
        <rulegroup default="on" id="PREP_V_and_Noun" name="Предлог «в» и существительное">
          <rule>
            <pattern>
                <!--              PREP в -> NN:.*:.*:V или NN:.*:P NN:.*:2R    исключение для "в учителя,... -->
                <token>в<exception postag="&lt;ADV&gt;"/></token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes"><exception regexp="yes">тысяча|миллион</exception><exception postag="NN:.*:.*:R" postag_regexp="yes" regexp="yes">.*y</exception><exception postag="NN:.*:.*:(P|V|2R|2P)" postag_regexp="yes"></exception><exception postag="NN:.*:.*:.*" negate_pos="yes" postag_regexp="yes"></exception><exception postag="NN:.*:PL:Nom" postag_regexp="yes"></exception></token> 
            </pattern>
            <message suppress_misspelled="yes">Предлог «в» предполагает употребление существительного в винительном или предложном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match></suggestion> или <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:V"></match></suggestion> </message>
            <short>Требуется винительный или предложный падеж</short>
            <example>Он смотрел в окно.</example>
            <example>в дыму</example>
            <example>Дебаты кандидатов в депутаты.</example>
            <example>Данные поступают в редактор мгновенно.</example> <!-- Тест на наличие неодушевленного слова "редактор" в словаре.  -->
            <example correction="В окне|В окно"><marker>В окном</marker> я увидел её.</example>
            <example correction="в окне|в окно">Я увидел её <marker>в окном</marker>.</example>
          </rule>
          <rule>
            <pattern>
                <!--              PREP в -> NN:.*:.*:V или NN:.*:P NN:.*:2R    исключение для "в учителя,... -->
                <token>в<exception postag="&lt;ADV&gt;"/></token>
                <token postag="ADJ:.*:(V|P)" postag_regexp="yes" min="1" max="2">
                    <exception postag="PT:.*" postag_regexp="yes"></exception>
                    <exception inflected="yes">который</exception>
                </token> 
                <marker>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception regexp="yes">тысяча|миллион</exception>
                    <exception postag="NN:.*:.*:R" postag_regexp="yes" regexp="yes">.*y</exception>
                    <exception postag="NN:.*:.*:(P|V|2R|2P)" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:PL:Nom" postag_regexp="yes"></exception>
                </token>
                </marker> 
            </pattern>
            <message suppress_misspelled="yes">Предлог «в» предполагает употребление существительного в винительном или предложном падеже: <suggestion><match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match></suggestion></message>
            <short>Требуется винительный или предложный падеж</short>
            <example>Он смотрел в новое окно.</example>
            <example>В предусмотренных конституцией случаях.</example>
            <example>Он всегда смотрит в будущее.</example>
            <example>В котором писатель предсказал такие блага современной цивилизации как мобильные телефоны, принтеры и прочие технические устройства.</example>
            <example>Это наблюдается в одной такой группе</example>
            <example correction="группе">Это наблюдается в одной такой <marker>группой</marker></example>
          </rule>
        </rulegroup>
        <rulegroup default="on" id="PREP_Pri_and_Noun" name="Предлог «при» и существительное">
            <rule>
            <pattern>
                <!--              PREP при -> NN:.*:P   -->
                <token>при</token>
                <token postag="NN:.*:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:.*:P" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message>Предлог «при» предполагает употребление существительного в предложном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется предложный падеж</short>
            <example>Лаборатория была создана при центре.</example>
            <example correction="при центре|центр">Лаборатория была создана <marker>при центр</marker>.</example>
        </rule>
        <rule>
            <pattern>
                <!--              PREP при -> NN:.*:P   -->
                <marker>
                <token>при</token>
                <token postag="NN:.*:.*:P" postag_regexp="yes"></token>
                <token skip="1">и<exception postag="UNKNOWN" scope="next"></exception></token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:.*:P" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                    <exception scope="next" postag="NN:.*:.*:.*:Nom"  postag_regexp="yes"></exception>
                </token>
                </marker> 
            </pattern>
            <message>Предлог «при» предполагает употребление существительного в предложном падеже: <suggestion><match no="1"></match> <match no="2"></match> <match no="3" include_skipped="all"></match> <match no="4" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match></suggestion></message>
            <short>Требуется предложный падеж</short>
            <example>В университете лаборатории созданы при кафедре и факультете.</example>
            <example>В битве с наполеоновскими войсками при Йене и Ауэрштедте Пруссия потерпела сокрушительное поражение.</example>
            <example correction="при кафедре и факультете">В университете лаборатории созданы <marker>при кафедре и факультет</marker>.</example>
            <example correction="при кафедре и факультете">В университете лаборатории созданы <marker>при кафедре и факультет</marker></example>
            <example correction="при кафедре и профильном факультете">В университете лаборатории созданы <marker>при кафедре и профильном факультет</marker>.</example>
        </rule>
        <rule>
            <pattern>
                <!--              PREP при -> NN:.*:P   -->
                <token>при</token>
                <token postag="NN:.*:.*:P" postag_regexp="yes"></token>
                <token skip="1">,<exception postag="CONJ|PREP|UNKNOWN" scope="next" postag_regexp="yes"></exception></token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:P" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message>Предлог «при» предполагает употребление существительного в предложном падеже: <suggestion><match no="1"></match> <match no="2"></match><match no="3" include_skipped="all" ></match> <match no="4" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match></suggestion></message>
            <short>Требуется предложный падеж</short>
            <example>В университете лаборатории созданы при кафедре, факультете.</example>
            <example>С 5 апреля 1797 великие князья при крещении, а князья императорской крови при совершеннолетии получали льготы.</example>
            <example>В морской битве при Ладе, вследствие измены, эллины были разбиты.</example>
            <example correction="при кафедре, факультете">В университете лаборатории созданы <marker>при кафедре, факультет</marker>.</example>
            <example correction="при кафедре, профильном факультете">В университете лаборатории созданы <marker>при кафедре, профильном факультет</marker>.</example>
        </rule>
        <rule>
            <pattern>
                <!--              PREP при -> NN:.*:P   -->
                <token>при</token>
                <token postag="NN:.*:.*:P" postag_regexp="yes"></token>
                <token>,</token>
                <token postag="NN:.*:.*:P" postag_regexp="yes"></token>
                <token skip="1">,<exception postag="CONJ|PREP|UNKNOWN" scope="next" postag_regexp="yes"></exception></token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:P" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message>Предлог «при» предполагает употребление существительного в предложном падеже: <suggestion><match no="1"></match> <match no="2"></match><match no="3"></match> <match no="4"></match><match no="5" include_skipped="all"></match> <match no="6" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match></suggestion></message>
            <short>Требуется предложный падеж</short>
            <example>В университете лаборатории созданы при кафедре, факультете.</example>
            <example correction="при кафедре, факультете, институте">В университете лаборатории созданы <marker>при кафедре, факультете, институт</marker>.</example>
            <example correction="при отладке, запуске, тщательном тестировании">Найдены проблемы, часть которых удалось исправить <marker>при отладке, запуске, тщательном тестирование</marker>.</example>
        </rule>
         <rule>
            <pattern>
                <!--              PREP при -> NN:.*:P   -->
                <token>при</token>
                <token postag="NN:.*:.*:P" postag_regexp="yes"></token>
                <token>,</token>
                <token postag="NN:.*:.*:P" postag_regexp="yes"></token>
                <token skip="1">и<exception postag="UNKNOWN" scope="next"></exception></token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:P" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message>Предлог «при» предполагает употребление существительного в предложном падеже: <suggestion><match no="1"></match> <match no="2"></match><match no="3"></match> <match no="4"></match> <match  no="5" include_skipped="all"></match> <match no="6" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match></suggestion></message>
            <short>Требуется предложный падеж</short>
            <example>В университете лаборатории созданы при кафедре, факультете.</example>
            <example correction="при кафедре, факультете и институте">В университете лаборатории созданы <marker>при кафедре, факультете и институт</marker>.</example>
            <example correction="при отладке, запуске и тщательном тестировании">Найдены проблемы, часть которых удалось исправить <marker>при отладке, запуске и тщательном тестирование</marker>.</example>
        </rule>
       
        </rulegroup>
        <rule default="on" id="PREP_Pri_and_ADJ" name="Предлог «при» и прилагательное">
            <pattern>
                <!--              PREP при -> ADJ:.*:P   -->
                <token>при</token>
                <token postag="ADJ:.*:.*" postag_regexp="yes">
                    <exception postag="ADJ:.*:P" postag_regexp="yes"></exception>
                    <exception postag="ADJ:Short:.*|ADJ:Comp" postag_regexp="yes"></exception>
                    <exception postag="ADJ:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                    <exception>различного</exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлог «при» предполагает употребление прилагательного в предложном падеже: <suggestion><match no="1"></match> <match no="2" postag="ADJ:(.*):.*" postag_regexp="yes" postag_replace="ADJ:$1:P"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется предложный падеж</short>
            <example>Лаборатория была создана при исследовательском центре.</example>
            <example correction="при исследовательском|исследовательский">Лаборатория была создана <marker>при исследовательский</marker> центре.</example>
        </rule>
        
        <rule default="on" id="PREP_U_and_Noun" name="Предлоги: «у», «без», ... и существительное">
            <pattern case_sensitive="no">
                <!--  PREP у, без, вместо, для, до, из (изо), из-за, из-под, кроме, около, от, против, среди-> NN:.*:R   -->
                <token regexp="yes">у|без|вместо|для|до|из|изо|из-за|из-под|кроме|около|от|против|среди</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" regexp="yes">[а-яё].*<exception postag="NN:.*:.*:R|NN:.*:.*:2R|NN:.*:.*:2P" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                    <exception regexp="yes">нее|варяг|грек|роду|полсотни|власть</exception> 
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлог «\1» предполагает употребление существительного в родительном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:R"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example>Заросший пруд у опушки леса.</example>
            <example>У семи нянек дитя без глазу.</example>
            <example>К его словам мало кто прислушивается, особенно из власть предержащих.</example>
            <example>Он встретил у Гончаровых холодный приём.</example>
            <example correction="у опушки|опушка">Заросший пруд <marker>у опушка</marker> леса.</example>
            <example correction="у опушки|опушка">Заросший пруд <marker>у опушка</marker></example> <!-- у опушек| TODO: need check disambig !!! rule NOUN_NOT_NOM -->  
        </rule>
        <rule default="on" id="PREP_U_and_ADJ" name="Предлоги: «у», «без», ... и прилагательное">
            <pattern>
                <!--   PREP у, без вместо для, до, из (изо), из-за, из-под, кроме, около, от, против, среди- -> ADJ:.*:.*:R   -->
                <token regexp="yes">у|без|вместо|для|до|из|изо|из-за|из-под|кроме|около|от|против|среди</token>
                <token postag="ADJ:.*:.*:.*" postag_regexp="yes">
                    <exception postag="ADJ:.*:.*:R" postag_regexp="yes"></exception>
                    <exception regexp="yes">[.?!:;"'«»]</exception>
                    <exception postag="ADJ:Short:.*|ADJ:Comp" postag_regexp="yes"></exception>
                    <exception postag="ADJ:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлог «\1» предполагает употребление прилагательного в родительном падеже: <suggestion><match no="1"></match> <match no="2" postag="ADJ:(.*):(.*):.*" postag_regexp="yes" postag_replace="ADJ:$1:$2:R"></match></suggestion> или <suggestion><match no="2"></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example>Заросший пруд у лесной опушки.</example>
            <example>Я выступаю против.</example>
            <example correction="у лесной|лесную">Заросший пруд <marker>у лесную</marker> опушки.</example>
        </rule>
        <rule default="on" id="PREP_C_and_Noun" name="Предлог «с» и существительное">
            <pattern case_sensitive="no">
                <!--  PREP  с -> NN:.*:R or  NN:.*:T   -->
                <token regexp="yes">с|со</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" ><exception regexp="yes">[а-я]*у|[!.?]</exception><exception postag="NN:.*:.*:R" postag_regexp="yes"></exception><exception postag="NN:.*:.*:T|UNKNOWN" postag_regexp="yes"></exception><exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception></token>
            </pattern>
            <message>Предлог «\1» предполагает употребление существительного в родительном или творительном падеже.</message>
            <short>Требуется родительный или творительный падеж</short>
            <example>Егерь пошёл в лес с рысью.</example>
            <example>В конце концов они встретились с глазу на глаз.</example>
            <example>М.: Прогресс, 1987. — 560 с.</example>
            <example correction="">Егерь пошёл в лес <marker>с рысь</marker>.</example>
        </rule>
        <rule default="on" id="PREP_C_and_ADJ" name="Предлог «с» и прилагательное">
            <pattern case_sensitive="no">
                <!--  PREP  с -> ADJ:.*:R or  ADJ:.*:T   -->
                <token regexp="yes">с|со</token>
                <token postag="ADJ:.*:.*" postag_regexp="yes" ><exception postag="ADJ:.*:R" postag_regexp="yes"></exception><exception postag="ADJ:Short:.*|ADJ:Comp" postag_regexp="yes"></exception><exception postag="ADJ:.*:T" postag_regexp="yes"></exception><exception postag="(ADJ|PT):.*:.*" negate_pos="yes" postag_regexp="yes"></exception></token>
            </pattern>
            <message>Предлог «\1» предполагает употребление прилагательного в родительном или творительном падеже.</message>
            <short>Требуется родительный или творительный падеж</short>
            <example>Егерь пошёл в лес с пушистой рысью.</example>
            
            <example correction="">Егерь пошёл в лес <marker>с пушистая</marker> рысью.</example>
        </rule> 
        <rule id="PREP_POD_And_NOUN" name="Предлог «под» и существительное">
            <pattern>
                <token>под<exception scope="previous">из</exception></token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:T" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:V" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*" postag_regexp="yes" negate_pos="yes" />
                </token>
            </pattern>
            <message>Предлог «под» предполагает употребление существительного в винительном или предложном падеже.</message>
            <short>Требуется творительный или винительный падеж</short>
            <example>Как научиться плавать под водой?</example>
            <example>Табуретка стоит под столом.</example>
            <example correction=""><marker>Под вода</marker>.</example>
            <example>Дайте мне бутылку из-под вина.</example>
        </rule>
        <rule id="PREP_Pro_And_Noun" name="Предлог «про» и существительное">
            <pattern>
                <token>про</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:.*:V" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*:.*" postag_regexp="yes" negate_pos="yes" />
                </token>
            </pattern>
            <message>Предлог «про» предполагает употребление существительного в винительном падеже.</message>
            <url>https://ru.wiktionary.org/wiki/%D0%BF%D1%80%D0%BE</url>
            <short>Требуется винительный падеж</short>
            <example correction=""><marker>Про паж</marker>.</example>
            <example correction="">Он рассказывал <marker>про путешествию</marker>.</example>
            <example>Он рассказывал про путешествие.</example>
        </rule>
        <rule id="PREP_Za_And_Noun" name="Предлог «за» и существительное">
            <antipattern>
                <token  regexp="yes" >что|из</token>
                <marker>
                    <token>за</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"></token>    
                </marker>
            </antipattern>    
            <pattern>
                <token>за<exception scope="previous" >что|из</exception></token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:.*:T" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*:V" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*:Nom" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*:.*" postag_regexp="yes" negate_pos="yes" />
                </token>
            </pattern>
            <message>Предлог «за» предполагает употребление существительного в творительном или винительном падежах.</message>
            <url>https://ru.wiktionary.org/wiki/%D0%BF%D1%80%D0%BE</url>
            <short>Творительный или винительный падеж</short>
            <example correction=""><marker>За весе</marker>.</example>
            <example>Он был за домом.</example>
            <example>Я спросил, что это за вода?</example>   <!-- check disambig. Ok. вода - Nom -->
            <example>Я спросил, что это за человек?</example>   <!-- check disambig Ok. человек - Nom -->
            <example>Что он был за человек?</example>
            <example>Однако из за уменьшения габаритов и веса комплектующих. (Некорректный пример)</example>  <!-- incorrect example, but for another rule -->
        </rule>
        <rule id="PREP_Na_And_Noun" name="Предлог «на» и существительное" >
            <pattern>
                <token>на</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:.*:V" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*:P" postag_regexp="yes" />
                    <exception regexp="yes" >дню|счету|счет|счёт</exception>
                    <exception postag="NN:.*:.*:.*:.*" postag_regexp="yes" negate_pos="yes" />
                    <exception case_sensitive="yes" postag="NN:.*:.*:.*:(R|Nom|T)" postag_regexp="yes" regexp="yes" >[А-ЯЁ][а-я]*</exception></token>
            </pattern>
            <message>Предлог «на» предполагает употребление существительного в винительном или предложном падежах.</message>
            <url>https://ru.wiktionary.org/wiki/%D0%BF%D1%80%D0%BE</url>
            <short>Винительный или предложный падеж</short>
            <example correction=""><marker>На резками</marker>.</example>
            <example>Кошка прыгнула на коврик.</example>
            <example>Он молится несколько раз на дню.</example>
            <example>На Маврикия прилетают грачи.</example>
        </rule>
        <rule id="PREP_Ob_And_Noun" name="Предлог «об» и существительное">
            <pattern>
                <token>об</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:.*:V" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*:P" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*:Z" postag_regexp="yes" />
                    <exception postag="NN:.*:.*:.*:.*" postag_regexp="yes" negate_pos="yes" />
                </token>
            </pattern>
            <message>Предлог «об» предполагает употребление существительного в винительном или предложном падежах.</message>
            <url>https://ru.wiktionary.org/wiki/%D0%BF%D1%80%D0%BE</url>
            <short>Винительный или предложный падеж</short>
            <example correction=""><marker>Об работка</marker>.</example>
            <example>Собака ударилась об косяк двери.</example>
        </rule>
        <rule default="on" id="PREP_O_and_Noun" name="Предлог «о» и существительное">
            <!--     <antipattern case_sensitive="no">
                <token postag="SENT_START"></token>
                <marker>
                    <token>о</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes" >
                        <exception postag="NN:.*:.*:V" postag_regexp="yes"></exception>
                        <exception postag="NN:.*:.*:P" postag_regexp="yes"></exception>
                        <exception postag="NN:.*:.*:Z" postag_regexp="yes"></exception>
                        <exception postag="NN:.*:.*:.*" negate_pos="yes" postag_regexp="yes"></exception>
                    </token>
                </marker>
                <token>,</token>
            </antipattern>    -->
            
            <pattern case_sensitive="no">
                <!--  PREP  о -> NN:.*:V or  NN:.*:P  (SENT_END|PARA_END)  NN:.*:.*:Z -->
                <token>о</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" ><exception postag="NN:.*:.*:V" postag_regexp="yes" /><exception postag="NN:.*:.*:Nom" postag_regexp="yes" /><exception postag="NN:.*:.*:P" postag_regexp="yes"/><exception postag="NN:.*:.*:Z" postag_regexp="yes" /><exception postag="NN:.*:.*:.*" negate_pos="yes" postag_regexp="yes" /></token>
            </pattern>
            <message>Предлог «о» предполагает употребление существительного в винительном или предложном падеже.</message>
            <short>Требуется винительный или предложный падеж</short>
            <example>Я прочитал газетную статью о ярмарке.</example>
            <example>О жемчужина, сияющая в цветке лотоса!</example>
            <example correction="">Я прочитал газетную статью <marker>о ярмаркой</marker>.</example>
        </rule>
         <rule default="on" id="PREP_O_and_ADJ" name="Предлог «о» и прилагательное">
            <pattern case_sensitive="no">
                <!--  PREP  о -> ADJ:.*:V or  ADJ:.*:P   -->
                <token>о</token>
                <token postag="ADJ:.*:.*" postag_regexp="yes" ><exception postag="ADJ:.*:V" postag_regexp="yes"></exception><exception postag="ADJ:Short:.*|ADJ:Comp" postag_regexp="yes"></exception><exception postag="ADJ:.*:P" postag_regexp="yes"></exception><exception postag="(ADJ|PT):.*:.*" negate_pos="yes" postag_regexp="yes"></exception></token>
            </pattern>
            <message>Предлог «о» предполагает употребление прилагательного в винительном или предложном падеже.</message>
            <short>Требуется винительный или предложный падеж</short>
            <example>Я прочитал газетную статью о предстоящей ярмарке.</example>
            <example correction="">Я прочитал газетную статью <marker>о предстоящая</marker> ярмаркой.</example>
        </rule>
        <rule default="on" id="PREP_PO_and_Noun" name="Предлог «по» и существительное">
          <!--  PREP  по -> NN:.*:D or  NN:.*:P, (NN:.*:PL:V   "ходить в лес по грибы"  )  -->
    <!--    <antipattern>
              <token inflected="yes" skip="2" regexp="yes">ходить|пойти</token>   
              <token>по</token>
              <token postag="NN:.*:PL:V"  postag_regexp="yes" ></token>   
            </antipattern>    -->
            <pattern case_sensitive="yes">
                <token regexp="yes">по|По</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" >  <!-- removed: |SENT_END|PARA_END   !!!!!!! -->
                    <exception postag="NN:.*:.*:D" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:V" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:P" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message>Предлог «по» предполагает употребление существительного в дательном падеже, но возможен предложный или винительный падеж.</message>
            <short>Требуется дательный (винительный, предложный) падеж</short>
            <example>Я шёл по снегу.</example>
            <example>Я ходил в лес по грибы.</example>
            <example>Я ходил по грибы.</example>
            <example>Груз сплавляли по реке По.</example>
            <example correction=""><marker>По улица</marker> пойду.</example>
            <example correction="">Я шёл <marker>по снегом</marker>.</example>
        </rule>
        
        <rulegroup  id="PREP_V_tom_Noun" name="Предлог «в» + «том или тот» и существительное">
          <rule> <!-- TODO: -->
            <pattern>
                <token regexp="yes">в|про<exception scope="previous" regexp="yes">надлежащего|требуемого</exception></token>
                <token>том</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" >  <!-- removed: |SENT_END|PARA_END   !!!!!!! -->
                    <exception postag="NN:.*:.*:Sin:(P|R)" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message>Требуется предложный падеж или предлог «тот».</message>
            <short>Требуется предложный падеж</short>
            <example>В том деле нет правды.</example>
	    <example>Не видит в том потери.</example>
            <example>Моделирование прекращается в тот момент, когда практически вся энергия импульса будет либо рассеяна объектом, либо поглощена.</example>
            <example correction=""><marker>В том делах</marker> нет правды.</example>
          </rule>
        </rulegroup>
        
        <rule default="on" id="grammar_bez_ucheta_and_Noun" name="Оборот «без учёта» и существительное">
            <pattern>
                <token>без</token>
                <token regexp="yes">учёта|учета</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" ><exception postag="NN:.*:.*:R" postag_regexp="yes" /><exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Оборот «без учёта» предполагает употребление существительного в родительном падеже: <suggestion><match no="1" /> <match no="2" /> <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:R"></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example>Без учёта таксиста в машине нас было четверо.</example>
            <example correction="Без учёта таксиста"><marker>Без учёта таксистом</marker> в машине нас было четверо.</example>
        </rule>
        <rule default="on" id="grammar_v_adress_and_Noun" name="Оборот «в адрес» и существительное">
            <pattern>
                <token>в</token>
                <token>адрес</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" ><exception postag="NN:.*:.*:R" postag_regexp="yes" /><exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Оборот «в адрес» предполагает употребление существительного в родительном падеже: <suggestion><match no="1" /> <match no="2" /> <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:R"></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example>В адрес организации мы направили письмо.</example>
            <example correction="В адрес организации"><marker>В адрес организацией</marker> мы направили письмо.</example>
        </rule>
        <rule default="on" id="grammar_v_vedenie_and_Noun" name="Оборот «в ведение» и существительное">
            <pattern>
                <token>в</token>
                <token>ведение</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" ><exception postag="NN:.*:.*:R" postag_regexp="yes" /><exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Оборот «в ведение» предполагает употребление существительного в родительном падеже: <suggestion><match no="1" /> <match no="2" /> <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:R"></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example>В ведение организации было передано имущество.</example>
            <example correction="В ведение организации"><marker>В ведение организацией</marker> было передано имущество.</example>
        </rule>
        <rule default="on" id="grammar_v_vide_and_Noun" name="Оборот «в виде» и существительное">
            <pattern>
                <token>в</token>
                <token>виде</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" ><exception postag="NN:.*:.*:R" postag_regexp="yes" /><exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Оборот «в виде» предполагает употребление существительного в родительном падеже: <suggestion><match no="1" /> <match no="2" /> <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:R"></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example>Звезда берет своё начало в виде облака газа и пыли, которое называют туманностью.</example>
            <example correction="в виде облака">Звезда берет своё начало <marker>в виде облаком</marker> газа и пыли, которое называют туманностью.</example>
        </rule>
         <rule default="on" id="grammar_v_vidah_and_Noun" name="Оборот «в видах» и существительное">
            <pattern>
                <token>в</token>
                <token>видах</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes" ><exception postag="NN:.*:.*:R" postag_regexp="yes" /><exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Оборот «в видах» предполагает употребление существительного в родительном падеже: <suggestion><match no="1" /> <match no="2" /> <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:R"></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example>Предлагаем разобраться в видах соли.</example>
            <example correction="в видах газировки">Предлагаем разобраться <marker>в видах газировка</marker>.</example>
        </rule>
        <rule id="upravlauchij_NN" name="Словосочетание: «управляющий», ... + существительное">
            <pattern case_sensitive="no">
                <!--    Управляющий предприятием    NN:.*:.*:T       -->
                <or>
                  <token regexp="yes" inflected="yes">командующий|заведующий</token>
                  <token regexp="yes">управляющий|управляющего|управляющему|управляющим|управляющем</token>
                </or>
                <token postag="NN:.*:.*:.*:R" postag_regexp="yes">
                    <exception postag="NN:.*:.*:.*:T" postag_regexp="yes"></exception>
                    <exception postag="NN:(Name|Fam|Patr):.*:.*:.*" postag_regexp="yes"></exception>
                    <exception inflected="yes" regexp="yes">символ|команда|компания|инструкция</exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Существительное «\1» предполагает употребление зависимого слова в творительном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):R" postag_regexp="yes" postag_replace="NN:$1:$2:$3:T"></match></suggestion></message>
            <short>Требуется творительный падеж</short>
            <example><marker>Управляющий предприятием</marker> общественного питания.</example>
            <example><marker>Управляющая организация</marker>.</example>
            <example><marker>Управляющая Наталья</marker> взяла трубку.</example>
            <example correction="Управляющий предприятием|Управляющий предприятьем"><marker>Управляющий предприятия</marker> общественного питания.</example>
        </rule>
	
	<rule default="on" id="plit_lodkoj" name="Словосочетание: «плыть лодкой» ► «плыть на лодке»">
            <pattern case_sensitive="no">
                <!--          -->
                <token regexp="yes" inflected="yes">летать|плыть</token>
                <token regexp="yes">лодкой|вертолётом|кораблём|самолётом</token>
            </pattern>
            <message suppress_misspelled="yes">Существительное «\1» предполагает употребление зависимого слова в предложном падеже: <suggestion><match no="1"></match> на <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:P"></match></suggestion></message>
            <short>Требуется предложный падеж</short>
           
            <example correction="плыть на лодке"><marker>плыть лодкой</marker></example>
        </rule>
        
        <rule default="on" id="vopreki_NN" name="Предлог «вопреки» + существительное">
            <pattern case_sensitive="no">
                <!--     вопреки предположениям    NN:.*:.*:D       -->
                <token>вопреки</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:D" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Предлог «\1» предполагает употребление зависимого слова в творительном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:D"></match></suggestion></message>
            <short>Требуется дательный падеж</short>
            <example><marker>Вопреки предположениям</marker> о том, что изменения ожидаются довольно скоро, объявлены более отдалённые сроки их вступления в силу.</example>
            <example correction="Вопреки предположениям|Вопреки предположеньям"><marker>Вопреки предположений</marker> о том, что изменения ожидаются довольно скоро, объявлены более отдалённые сроки их вступления в силу.</example>
        </rule>
        
        <rule default="on" id="zaslujivat_NN" name="Словосочетание: «заслуживать» + существительное">
            <pattern case_sensitive="no">
                <!--    заслуживать доверия    NN:.*:.*:R       -->
                <token>заслуживать</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:R" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Глагол «\1» предполагает употребление зависимого слова в родительном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:R"></match></suggestion></message>
            <short>Требуется родительный падеж</short>
            <example>Кто может <marker>заслуживать доверия</marker> в этом вопросе?</example>
            <example correction="заслуживать доверия|заслуживать доверья">Кто может <marker>заслуживать доверие</marker> в этом вопросе?</example>
        </rule>
        <rule default="on" id="zaslujit_NN" name="Словосочетание: «заслужить» + существительное">
            <pattern case_sensitive="no">
                <!--    заслужить доверие    NN:.*:.*:V       -->
                <token>заслужить</token>
                <token postag="NN:.*:.*:.*" postag_regexp="yes">
                    <exception postag="NN:.*:.*:V" postag_regexp="yes"></exception>
                    <exception postag="NN:.*:.*:.*|SENT_END|PARA_END" negate_pos="yes" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message suppress_misspelled="yes">Глагол «\1» предполагает употребление зависимого слова в винительном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:V"></match></suggestion></message>
            <short>Требуется винительный падеж</short>
            <example>Кто может <marker>заслужить доверие</marker> в этом вопросе?</example>
            <example correction="заслужить доверие|заслужить доверье">Кто может <marker>заслужить доверию</marker> в этом вопросе?</example>
        </rule>
        
        
        <rule default="on" id="drug_s_drugom" name="Словосочетание: «равноправны друг c другом»">
            <pattern case_sensitive="no">
                <!--   Равноправны друг c другом      -->
                <token>равноправны</token>
                <token>друг</token>
                <token>другу</token>
            </pattern>
            <message><suggestion>\1 \2 с другом</suggestion></message>
            <short>Равноправны друг c другом</short>
            <example>Равноправны друг c другом.</example>
            <example correction="равноправны друг с другом">Они <marker>равноправны друг другу</marker>.</example>
        </rule>
        
        <rule default="on" id="pouchastvovat" name="Правописание «поучаствовать», ...">
            <pattern case_sensitive="no">       
                <token>по</token>
                <token postag="VB:.*" postag_regexp="yes" ><exception postag="VB:.*" postag_regexp="yes" negate_pos="yes" ></exception><exception regexp="yes" >по(.*)</exception></token>
            </pattern>
        <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:(.*) postag_regexp:(VB:.*) prefix:по suffix:  "/>      <!--   Test if word with "по" exist! -->
            <message>Пишется слитно: <suggestion>\1\2</suggestion></message>
            <short>Пишется слитно</short>
            <example>Южнокорейский консорциум может поучаствовать в проекте.</example>
            <example>Он хочет по идти в кругосветное путешествие. (Некорректный пример)</example> <!-- Incorrect example, but for another rules!!! -->
            <example correction="поучаствовать">Южнокорейский консорциум может <marker>по участвовать</marker> в проекте.</example>
        </rule>
        <rule id="Potok_and_Noun" name="Словосочетание: «поток» и существительное">
	        <pattern>
	        <token inflected="yes" regexp="yes">поток|направление<exception scope="previous" postag="VB:.*" postag_regexp="yes" /><exception regexp="yes">поток(ом|ами)</exception><exception scope="previous" postag="ADJ:.*:P|ADJ:MPR:.*:P" postag_regexp="yes" /><exception regexp="yes">направлен(ии|иях|ия)</exception></token>
                <token postag_regexp="yes" postag="NN:.*">
                <exception postag_regexp="yes" postag="NN:.*:(R|T)"></exception>
                <exception negate="yes" case_sensitive="yes" regexp="yes">[а-я].*</exception>
                </token>
            </pattern>
            <message>После слов: «поток» и «направление» существительные употребляются в родительном и творительном падеже.</message>
            <short>Словосочетание: «поток» и существительное</short>
            <example correction=""><marker>Направление движению</marker></example>
            <example correction="">По <marker>направлению движению</marker></example>
            <example correction="">Линия <marker>потока энергия</marker></example>
            <example correction=""> <marker>Поток энергия</marker></example>
            <example>Указал направление рукой</example>
            <example>Поток энергии</example>
            <example>Поток стрелой устремился вниз с горы</example>
            <example>Направление Голова</example>
            <example>Не позднее двух дней со дня направления участнику разъяснения.</example>
        </rule>
        
        <rule id="Dvigenie_and_Noun" name="Словосочетание: «движение» и существительное">
	    <pattern>
	        <token postag_regexp="yes" postag="VB:.*" skip="1"/>
                <marker>
                    <token inflected="yes" >движение<exception scope="previous" postag="ADJ:.*:P|ADJ:MPR:.*:P|PREP" postag_regexp="yes" /></token>
                    <token postag_regexp="yes" postag="NN:.*">
                        <exception postag_regexp="yes" postag="NN:.*:(T|R)"></exception>
                        <exception postag_regexp="yes" postag="NN:.*" negate_pos="yes"></exception>
                        <exception negate="yes" case_sensitive="yes" regexp="yes">[а-я].*</exception>
                    </token>
                </marker>
            </pattern>
            <message suppress_misspelled="yes">После слов: «движение» существительные употребляются в родительном или творительном падеже: <suggestion><match no="2"></match> <match no="3" postag_regexp="yes" postag="NN:(.*):(.*)"  postag_replace="NN:$1:(T|R)"></match></suggestion></message>
            <short>Требуется родительный или творительный падеж</short>
            <example correction="движение руки|движение рукой|движение рукою">А теперь совершаем <marker>движение руке</marker> по часовой стрелке.</example>
            <example>А теперь совершаем движение рукой по часовой стрелке.</example>
            <example>При движении мать постоянно трогает детёныша хоботом, ногами или хвостом, в зависимости от того, находится ли детёныш перед ней, рядом или за ней.</example>
        </rule>       
                        
        <rule id="V_TECHENII" name="Словосочетание: «в течении реки»">
            <pattern>
                <token>в</token>
                <token>течение</token>
                <token  regexp="yes">реки|потока|воды|ручья</token>
            </pattern>
            <message>Должно быть: <suggestion>\1 течении \3</suggestion></message>
            <short>В течении (воды, реки, ...)</short>
            <example correction="в течении реки">Там <marker>в течение реки</marker> много изгибов.</example>
            <example>Там в течении реки много изгибов.</example>
        </rule>
        <rulegroup id="V_OTLICHIE" name="Словосочетание или производный предлог: «в отличие» или «в отличии»">
          <rule>  
            <pattern>
                <token>в</token>
                <token>отличии</token>
                <token>от</token>
            </pattern>
            <message>Предлог «в отличие» употребляется с предлогом «от»: <suggestion>\1 отличие \3</suggestion></message>
            <url>http://new.gramota.ru/spravka/punctum?layout=item&amp;id=58_99</url>
            <short>Предлог «в отличие»</short>
            <example correction="В отличие от"><marker>В отличии от</marker> аэрофотоснимков космические изображения позволяют охватить огромные участки земной поверхности.</example>
          </rule>
          <rule>  
            <pattern>
                <token>в</token>
                <token>отличие</token>
                <token negate="yes">от</token>
            </pattern>
            <message>Предлог с существительным «в отличии»: <suggestion>\1 отличии \3</suggestion></message>
            <short>Предлог с существительным «в отличии»</short>
            <example correction="В отличии этих"><marker>В отличие этих</marker> двух аппаратов можно не сомневаться.</example>
          </rule>
        </rulegroup>
        <rulegroup id="V_TECHENIЕ" name="Словосочетание: «в течение времени»">
          <rule>  
            <pattern>
                <token>в</token>
                <token>течении</token>
                <token regexp="yes">часа|минуты|промежутка|секунды|дня|суток|времени|недели|месяца|года|столетия|тысячелетия</token>
            </pattern>
            <message>Должно быть: <suggestion>\1 течение \3</suggestion></message>
            <short>В течение (времени, часа, ...)</short>
            <example correction="в течение часа">Работа должна быть выполнена <marker>в течении часа</marker>.</example>
            <example>Работа должна быть выполнена в течение часа.</example>
          </rule>
           <rule>  
            <pattern>
                <token>в</token>
                <token>течении</token>
                <or> 
                  <token regexp= "yes" >[0-9]*</token>
                  <token postag= "NumC:.*"  postag_regexp="yes"></token>
                </or>
                <token inflected="yes" regexp= "yes">час|минута|секунда|день|сутки|календарный|рабочий|банковский|выходной|праздничный|неделя|месяц|год|столетие|тысячелетие</token>
            </pattern>
            <message>Должно быть: <suggestion>\1 течение \3 \4</suggestion></message>
            <short>В течение (времени, часа, ...)</short>
            <example correction="в течение 10 дней">Работа должна быть выполнена <marker>в течении 10 дней</marker>.</example>
            <example correction="в течение 10 календарных">Работа должна быть выполнена <marker>в течении 10 календарных</marker> дней.</example>
             <example correction="в течение трёх банковских">Перевод выполняется <marker>в течении трёх банковских</marker> дней.</example>
            <example>Работа должна быть выполнена в течение 10 дней.</example>
          </rule>
        </rulegroup>
        <rulegroup id="V_PRODOLJENIЕ" name="Словосочетание: «в продолжение (отрезка времени)»">
          <rule>
            <pattern>
                <token>в</token>
                <token>продолжении</token>
                <token regexp="yes">часа|минуты|промежутка|секунды|дня|времени|недели|месяца|года|столетия|тысячелетия|разговора|беседы</token>
            </pattern>
            <message>Должно быть: <suggestion>\1 продолжение \3</suggestion> (время).</message>
            <short>В продолжение (времени, часа, ...)</short>
            <example correction="в продолжение дня">Работа была выполнена <marker>в продолжении дня</marker>.</example>
            <example>Работа была выполнена в продолжение дня.</example>
        </rule>
        <!-- TO DO:  в продолжении (существительное) -->
         <rule>
            <pattern>
                <token>в</token>
                <token>продолжение</token>
                <token regexp="yes">отрезка|дороги|участка|поля|пути|маршрута|инструкции|текста|параграфа|рассказа|повести|поэмы|произведения</token>
            </pattern>
            <message>Должно быть: <suggestion>\1 продолжении \3</suggestion> (расстояние).</message>
            <short>В продолжении (отрезка, пути, ...)</short>
            <example correction="В продолжении пути"><marker>В продолжение пути</marker> будет привал.</example>
            <example>В продолжении дороги будет карман.</example>
          </rule>
        </rulegroup>
    </category>
    <category id="STYLE" name="Стиль">
        
        <rulegroup default="on" id="talk" name="Разговорные слова">
            <rule>
                <pattern>
                    <token postag=".*:Talk" postag_regexp="yes">
                        <exception negate_pos="yes" postag=".*:Talk" postag_regexp="yes"></exception>
                    </token>
                </pattern>
                <message>Разговорная или устаревшая форма слова.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D0%B7%D0%B3%D0%BE%D0%B2%D0%BE%D1%80%D0%BD%D1%8B%D0%B9_%D1%81%D1%82%D0%B8%D0%BB%D1%8C</url>
                <short>Разговорная форма</short>
                <example>Иван Иванович</example>
                <example correction="">Иван <marker>Иваныч</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>бежите<exception scope="previous" regexp="yes">куда|откуда|туда|сюда</exception><exception scope="next" >в</exception><exception scope="previous" postag_regexp="yes" postag="PNN:.*"></exception>
                    </token>
                </pattern>
                <message>Разговорная или устаревшая форма слова: <suggestion>бегите</suggestion>.</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D0%B7%D0%B3%D0%BE%D0%B2%D0%BE%D1%80%D0%BD%D1%8B%D0%B9_%D1%81%D1%82%D0%B8%D0%BB%D1%8C</url>
                <short>Разговорная форма</short>
                <example>Куда бежите?</example>
                <example>Вы уже бежите в укрытие.</example>
                <example correction="Бегите"><marker>Бежите</marker> скорей сюда!</example>
            </rule>
        </rulegroup>
       <rulegroup  id="Word_root_repeat" name="Повтор однокоренных слов">
            <rule>
                <pattern>
                    <token inflected="yes"  skip="-1">исследование</token>
                    <token inflected="yes" regexp="yes">исследовать|исследоваться</token>                        
                </pattern>
                <message>Повтор однокоренных слов.</message>
                 <short>Повтор слова</short>
                <example>При исследовании поглощения света наночастицами рассматривались трёхслойные частицы из заранее выбранных материалов.</example>
                <example correction="">При <marker>исследовании поглощения света наночастицами исследовались</marker> трёхслойные частицы из заранее выбранных материалов.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes" skip="-1">исследовать|исследоваться</token> 
                    <token inflected="yes">исследование</token>      
                </pattern>
                <message>Повтор однокоренных слов.</message>
                 <short>Повтор слова</short>
                <example>При исследовании поглощения света наночастицами рассматривались трёхслойные частицы из заранее выбранных материалов.</example>
                <example correction=""><marker>Исследовались трёхслойные частицы из заранее выбранных материалов при исследовании</marker> поглощения света наночастицами.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes" skip="-1" >рассмотрение</token>
                    <token inflected="yes" regexp="yes" >рассматривать|рассматриваться</token>                            
                </pattern>
                <message>Повтор однокоренных слов.</message>
                 <short>Повтор слова</short>
                <example>При исследовании поглощения света наночастицами рассматривались трёхслойные частицы из заранее выбранных материалов.</example>
                <example correction="">При <marker>рассмотрении поглощения света наночастицами рассматривались</marker> трёхслойные частицы из заранее выбранных материалов.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes" skip="-1">рассматривать|рассматриваться</token>   
                    <token inflected="yes"  >рассмотрение</token>
                                         
                </pattern>
                <message>Повтор однокоренных слов.</message>
                 <short>Повтор слова</short>
                <example>При исследовании поглощения света наночастицами рассматривались трёхслойные частицы из заранее выбранных материалов.</example>
                <example correction=""><marker>Рассматривались трёхслойные частицы из заранее выбранных материалов при рассмотрении</marker> поглощения света наночастицами.</example>
            </rule>
        </rulegroup>
        <rule id="PARTICLE_JE" name="Избыточная частица «же»" default="on"  tags="picky">
            <antipattern>
                <token regexp="yes" skip="-1">«|что</token>
                <token>же</token>
            </antipattern>
            <pattern>
                <token><exception regexp="yes">почему|потому|давай|сейчас|где|тут|меня|тебя|откуда|отсюда</exception><exception postag="PNN:.*|ADJ:MPR:.*|PARTICLE" postag_regexp="yes"></exception></token>
                <token>же</token>
            </pattern>
            <message>Избыточная частица «же»: <suggestion>\1</suggestion></message>
            <short>Избыточная частица</short>
            <example correction="Псков"><marker>Псков же</marker> стал провинциальным городом.</example>
            <example>Псков стал провинциальным городом.</example>
            <example>«Псков же стал провинциальным городом».</example>
            <example>Экскурсовод сказал, что Псков же стал провинциальным городом.</example>
            <example>Удалось подобрать ту же цветовую гамму.</example> 
        </rule>
        <rule id="PARTICLE_JE_J" name="Употребление частиц: «же» и «ж»">
            <pattern case_sensitive="yes">
                <token regexp="yes">[а-яёА-ЯЁ]*[бвгджзйклмнпрстфхчц]</token>
                <token>ж</token>
                <token regexp="yes" negate="yes">[,.;/]</token>
            </pattern>
            <message>Частица «Ж» употребляется только после слов, оканчивающихся на гласный звук: <suggestion>\1 же \3</suggestion></message>
            <short>Требуется частица «же»</short>
            <example correction="Иван же не"><marker>Иван ж не</marker> приехал.</example>
            <example>Иван же не приехал.</example>
            <example>Ольга ж не приехала.</example>
        </rule>
         <rule id="grammar_s_dnem_rojdenja" name="Просторечие: «с днём рожденья»">
            <pattern>
                <token>с</token>
                <token regexp="yes">днём|днем</token>
                <token>рожденья</token>
            </pattern>
            <message>Просторечие. Верно: <suggestion><match no="1" /> <match no="2" /> рождения</suggestion>.</message>           
            <short>Просторечие</short>
            <example correction="с днём рождения">Поздравляю <marker>с днём рожденья</marker>!</example>
            <example>С днём рождения!</example>
        </rule>
        <rule id="grammar_tut_zdes"  name="Просторечие: «тут», «здесь»" default="on"   tags="picky">
            <pattern>
                <token>,</token>
                <marker>
                    <token regexp="yes">тут|здесь</token> 
                </marker>
            </pattern>
            <message>Просторечие. Лучше: <suggestion>в этом случае</suggestion>.</message>           
            <short>Разговорный стиль</short>
            <example correction="в этом случае">Важной характеристикой работы любой программы является её быстродействие, <marker>тут</marker> существенное значение оказывает выбор языка программирования.</example>
            <example>Важной характеристикой работы любой программы является её быстродействие, в этом случае существенное значение оказывает выбор языка программирования.</example>
        </rule>

        <rule id="Two_PREP" name="Два предлога подряд">        
            <antipattern> <!-- exception for rule "PO_NAD" -->
                <token>по</token>
                <token>над</token>
                <token postag_regexp="yes" postag="NN:.*:.*:.*:T|ADJ:.*:.*:T"></token>     
            </antipattern>         
            <pattern>
                <marker>
                  <token postag="PREP"><exception postag="PREP|ABR:.*" negate_pos="yes"  postag_regexp="yes" /><exception case_sensitive="yes" regexp="yes">К|По|У</exception><exception regexp="yes">минус|изо|насчёт|насчет|ради|перед</exception><exception scope="previous" postag="PREP"></exception></token>  <!--   <exception postag="SENT_START" negate_pos="yes" case_sensitive="yes" regexp="yes">[АБГ-ЖИ-НПРСТФ-Я].*</exception>  -->
                  <token postag="PREP"><exception postag="PREP|ABR:.*" negate_pos="yes"  postag_regexp="yes" /><exception case_sensitive="yes" regexp="yes">[А-Я].*</exception><exception case_sensitive="yes" regexp="yes">ПО|свыше</exception><exception regexp="yes">минус|изо|без|перед</exception></token>
                </marker>
                <token negate="yes" regexp="yes">;|:|[\p{Punct}]</token>
            </pattern>
            <message>Два предлога подряд: <suggestion>\1</suggestion> или <suggestion>\2</suggestion></message>         
            <short>Два предлога подряд</short>
            <example correction="за|про">Тренер ругал <marker>за про</marker> дело.</example>
            <example correction="на|под">Тарелка <marker>на под</marker> блюдо.</example>
            <example correction="на|в">Кошка прыгнула <marker>на в</marker> окно.</example>
            <example correction="в|к">Я уверен, что всё изменится <marker>в к</marker> лучшему.</example>
            <example>Тренер ругал за дело.</example>
            <example>Слияние Бухарского и Хивинского ханств произошло военным путём в 1876 году.</example>
            <example>Возвышенность простирается с Ю на С от старой дороги.</example>
            <example>Она преподаёт изо в школе.</example>
            <example>Кот крался по над стенкой. (Некорректный пример)</example> <!-- Incorrect example, but another rule "PO_NAD" must detect it. -->
            <example>Разбил в аварии перед у машины</example>
            <example>К ИЗО ученик подготовился.</example>
            <example correction="В|К"><marker>В к</marker> ране.</example>
        </rule>
                        
        <rule id="Many_PNN" name="Избыточность употребления местоимений">
            <pattern>
                <token skip="-1" postag_regexp="yes" postag="PNN:.*"><exception scope="next">;</exception></token>
                <token skip="-1" postag_regexp="yes" postag="PNN:.*"><exception scope="next">;</exception></token>
                <token skip="-1" postag_regexp="yes" postag="PNN:.*"><exception scope="next">;</exception></token>
                <token skip="-1" postag_regexp="yes" postag="PNN:.*"><exception scope="next">;</exception></token>
                <token skip="-1" postag_regexp="yes" postag="PNN:.*"><exception scope="next">;</exception></token>
                <token postag_regexp="yes" postag="PNN:.*"></token>
            </pattern>
            <message>Загруженность предложения местоимениями.</message>
            <short>Загруженность местоимениями</short>
            <example type="incorrect"><marker>Он её не любил, она его не любила, они многое</marker> знали.</example>
        </rule>
        <rulegroup id="po_povodu_togo" name="Канцелярский штамп: «по поводу того»" default="on"  tags="picky">
            <rule> 
                <pattern>
                    <token>по</token>                  
                    <token>поводу</token>
                    <token>того</token>
                </pattern>
                <message>Канцелярский штамп: <suggestion>о том</suggestion>?</message>
                <short>Канцелярский штамп</short>
                <example correction="о том">Девчата болтали <marker>по поводу того</marker>, как прекрасна летняя ночь.</example>
            </rule>
        </rulegroup>
        <rulegroup id="vozmojno_oshibayas" name="Слова-паразиты: «возможно ошибаясь»">
            <rule> 
                <pattern>
                    <token>,</token>
                    <token>возможно</token>                  
                    <token regexp="yes">ошибаясь|ошибаюсь</token>
                    <token>,</token>
                    <token></token>
                </pattern>
                <message>Слова-паразиты: <suggestion> \5</suggestion>.</message>
                <short>Слова-паразиты</short>
                <example correction=" могу">Я<marker>, возможно ошибаясь, могу</marker> предложить способ решения.</example>
            </rule>
        </rulegroup> 
        <rulegroup id="tak_skazat" name="Слова-паразиты: «так сказать»" default="on"  tags="picky">
            <rule> 
                <pattern>
                    <token>,</token>
                    <token>так</token>                  
                    <token>сказать</token>
                    <token>,</token>
                    <token></token>
                </pattern>
                <message>Слова-паразиты: <suggestion> \5</suggestion>.</message>
                <short>Слова-паразиты</short>
                <example correction=" свое">Каждый напиток имеет<marker>, так сказать, свое</marker> значение.</example>
            </rule>
        </rulegroup>                         
        <rulegroup id="kak_bi" name="Слова-паразиты: «как бы»" default="on"  tags="picky">
            <rule> 
                <pattern>
                    <token>как<exception scope="previous" regexp="yes">,|и|то</exception></token>                  
                    <token>бы</token>
                    <token></token>
                </pattern>
                <message>Слова-паразиты: <suggestion> \3</suggestion>.</message>
                <short>Слова-паразиты</short>
                <example correction=" нравится">Он тебе <marker>как бы нравится</marker>?</example>
            </rule>
        </rulegroup>

        <rule id="KTO_VB_PL" name="Местоимение «кто» и глагол">
            <pattern>
                <token>кто</token>
                <token postag="VB:.*:PL" postag_regexp="yes"><exception postag_regexp="yes" negate_pos="yes" postag="VB:.*:PL"></exception></token>
            </pattern>
            <message suppress_misspelled="yes">Местоимение «кто» употребляется только с глаголами в форме единственного числа: <suggestion><match no="1"></match> <match no="2" postag_regexp="yes" postag="VB:(.*):PL" postag_replace="VB:Past:.*:.*:Masc" ></match></suggestion></message>
            <short>Глагол употребляется в ед. числе</short>
            <example correction="кто ходил">Все, <marker>кто ходили</marker> в лес, остались довольны походом.</example>
            <example>Все, кто ходил в лес, остались довольны походом.</example>
        </rule>         
                                                  
        <rulegroup default="on" id="chto_li" name="Употребление союза «что» в придаточной части при наличии «ли»">
            <rule>
                <pattern>
                    <marker>
                        <token>,</token>
                        <token>что</token>
                    </marker>
                    <token></token>
                    <token min="0" max="2"></token>
                    <token>ли</token>
                </pattern>
                <message>Лишний союз «что»: <suggestion>\1</suggestion></message>

                <short>Лишний союз «что»</short>
                <example>Я не заметил, что находится он в комнате.</example>
                <example correction=",">Я не заметил<marker>, что</marker> находится ли он в комнате.</example>
            </rule>
        </rulegroup>
        
        <rule  id="Tak_kak_to" name="Устойчивое выражение: «Так как ..., то»">  
             <pattern>             
                 <marker>
                     <token>так</token>
                     <token skip="-1"><exception regexp="yes" >как|если|[,;:«]|же|и|или|называем.*|просто|например|опасно</exception><exception postag="PREP|VB:.*" postag_regexp="yes" /></token>
                 </marker>
                     <token>,</token>
                     <token>то</token>
             </pattern>
             <message>Устойчивое выражение: <suggestion>\1 как \2</suggestion>.</message>
             <short>Устойчивое выражение</short>
             <example>Так как отражение от такой границы практически отсутствует, то распределение поля перед ней с хорошей степенью точности совпадает со случаем "открытых" граничных условий, который тождественен бесконечной среде.</example>
             <example>Если это так опасно, то требуется осторожность.</example>
             <example correction="Так как отражение"><marker>Так отражение</marker> от такой границы практически отсутствует, то  распределение поля перед ней с хорошей степенью точности совпадает со случаем "открытых" граничных условий, который тождественен бесконечной среде.</example>
        </rule>          
        
        <rulegroup default="on" id="bolee_ili_menee_k" name="Словосочетание: «более или менее конкретны»">
            <rule>
                <pattern>
                    <token>более</token>
                    <token>или</token>
                    <token>менее</token>
                    <token>конкретны</token>
                </pattern>
                <message>Избыточное определение: <suggestion>\1 \4</suggestion></message>
                <short>Избыточное определение</short>
                <example>Будьте более конкретны</example>
                <example correction="более конкретны">Будьте <marker>более или менее конкретны</marker>.</example>
            </rule>
        </rulegroup>
        
        <rule id="Style_imeet_vid" name="Стиль: «имеет вид» или «получается в виде»">
            <pattern>
                <token>получается</token>
                <token>в</token>
                <token>виде</token>
            </pattern>
            <message>Стиль. Лучше сказать: <suggestion>имеет вид</suggestion>.</message>
            <short>Стиль</short>
            <example correction="имеет вид">Результат вычисления целевой функции <marker>получается в виде</marker> скаляра.</example>
        </rule>
        <rule id="Style_gipoteza_ssno_kotoroj" name="Стиль: «гипотеза, что для создания»"> <!-- гипотеза, согласно которой -->
            <pattern>
                <token inflected="yes">гипотеза</token>
                <token>,</token>
                <token>что</token>
                <token>для</token>
                <token>создания</token>
            </pattern>
            <message>Стиль. Лучше сказать: <suggestion>\1, согласно которой</suggestion>.</message>
            <short>Стиль</short>
            <example correction="гипотезу, согласно которой">Обнаруженная закономерность позволила сформулировать <marker>гипотезу, что для создания</marker> маскирующего покрытия достаточно использовать всего два материала.</example>
        </rule>
     
        <rulegroup default="on" id="prev_st" name="Излишние прилагательные в превосходной степени">
            <rule>
                <pattern>
                    <token skip="1">абсолютно</token>
                    <token postag="ADJ:Sup:.*" postag_regexp="yes"></token>
                </pattern>
                <message>Излишние прилагательные в превосходной степени: <suggestion>\2</suggestion></message>
                <short>Излишние прилагательные в превосходной степени</short>
                <example>Это всегда лучший способ подачи потрясающих идей.</example>
                <example correction="лучший">Это всегда <marker>абсолютно самый лучший</marker> способ подачи потрясающих идей.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="adv_st" name="Неверное образование степени сравнения прилагательного">
            <rule>
                <pattern>
                    <token>абсолютно</token>
                    <token postag="ADJ:Comp" ></token>
                </pattern>
                <message>Неверное образование степени сравнения прилагательного: <suggestion>\2</suggestion></message>
                <short>Избыточное наречие</short>       
                <example correction="лучше">Этот способ всегда <marker>абсолютно лучше</marker> предложенного.</example>
            </rule>
        </rulegroup>
        
      
        <rulegroup default="on" id="O_tom_chto" name="Связка слов: «о том, что»"  tags="picky">    
            <rule>
                <!-- о том, что
                -->
                <pattern>
                    <token>о<exception scope="previous" regexp="yes">&pnct;</exception></token>
                        <token>том</token>
                        <token>,</token>
                        <token>что</token>
                </pattern>
                <message>В большинстве случаев связку слов: «о том» можно исключить: <suggestion>\3 \4</suggestion>.</message>
                <short>Избыточность: «о том» можно исключить</short>
                <example>Помните, что в большинстве случаев связку «о том» можно исключить.</example>
                <example correction=", что">Помните<marker> о том, что</marker> в большинстве случаев связку «о том» можно исключить.</example>
            </rule>
        </rulegroup>     

                        
        <rulegroup default="on" id="DoubleNE" name="Двойное «не»">
             
            <rule>
                <!-- два не подряд
                -->
                <pattern>
                    <token>не</token>
                    <token postag_regexp="yes" regexp="yes">(не)[а-я](.*)<exception regexp="yes">незнаком(.*)|немец(.*)|ненавид(.*)|нескольк(.*)|нес(.*)</exception></token>
                </pattern>
                <filter class="org.languagetool.rules.ru.RussianPartialPosTagFilter" 
                args="no:2 regexp:не(.*) postag_regexp:UNKNOWN   negate_pos:yes"/>     <!-- Test if word without "не" exist -->
                <message>Не ставьте два «не» подряд, если это не оправдано смыслом предложения.</message>
                <short>Не ставьте два «не» подряд</short>
                <example>Эта книга интересная.</example>
                <example>Это не незнакомец.</example>
                <example>Он не немец.</example>
                <example>Это не только не критично, но и оправданно.</example>
                <example>Это не несёт никакой нагрузки.</example>
                <example correction="">Эта книга <marker>не неинтересная</marker>.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="DoubleNOT" name="Двойное отрицание"> 
            <rule>
                <!-- две частицы "не" в предложении
                -->
                <pattern>
                    <marker>
                        <token skip="-1">не<exception  scope="next" regexp="yes">[,:;.!?…]|-|–|—</exception><exception regexp="yes" scope="next">и|только|или</exception></token>
                        <token skip="-1">не<exception  scope="previous" regexp="yes">['"«]</exception></token>
                    </marker>
                    <token regexp="yes">[.!?:;]</token>
                </pattern>
                <message>Стиль: не ставьте два «не» подряд, если это не оправдано смыслом предложения.</message>
                <short>Стиль: два «не» подряд</short>
                <example>Рекомендуется избегать двойных отрицаний.</example>
                <example>Не только не видно нигде следов роскоши, но и те самые комнаты были пусты.</example>
                <example>Если вы не знали меня с этой стороны, то вы вообще меня не знали.</example>
                <example>Заявка не рассматривается и не оценивается.</example>
                <example>Не ставьте два «не» подряд.</example>
                <example correction=""><marker>Не следует пытаться не</marker> избегать двойных отрицаний.</example>
            </rule>
        </rulegroup>
        <rulegroup id="DoubleIH" name="Два «их» в предложении"> 
            <rule>
                <!-- 2 "их" в предложении, need exception in RussianWordRepeatRule.java to more accurate checking.-->
                <pattern>
                        <token skip="-1">их<exception  scope="next" regexp="yes">[,:;.!?…]|-|–|—</exception><exception regexp="yes" scope="next">и|только|или</exception></token>
                    <marker>
                        <token skip="-1">их<exception  scope="previous" regexp="yes">['"«]</exception></token>
                    </marker>
                    <token regexp="yes">[.!?:;]</token>
                </pattern>
                <message>Стиль: не ставьте два «их» в предложении.</message>            
                <example>Не ставьте два «их» подряд.</example>
                <example correction="">Это их идея два <marker>их</marker> подряд.</example>
            </rule>
        </rulegroup>                   
                                 
        <rule id="PREP_ON_END" name="Предлог в конце предложения">
            <pattern case_sensitive="yes">
                <token regexp="yes">для|на|к|от|по|в<exception regexp="yes" scope="previous">[0-9IXVLCDM]*</exception></token>
                <token postag="SENT_END" spacebefore="no">.</token>
            </pattern>
            <message>Предлог в конце предложения не употребляется.</message>
            <short>Предлог в конце предложения</short>
            <example correction=''>Не грубости ради, но порядка <marker>для.</marker></example>
            <example>Не грубости ради, но для порядка.</example>
            <example>А с XII в. — шнеккеры.</example>
            <example>А с XII в.</example>
        </rule>
        <rule id="PNN_ON_END" name="Местоимение в конце предложения" tags="picky">
            <!--      Заканчивать предложение местоимением – дурной стиль, не для этого оно.  -->
            <pattern case_sensitive="yes">
                <token regexp="yes">он|она|оно<exception postag='VB:.*' postag_regexp='yes' scope='previous'></exception><exception scope='previous'>как</exception></token>
                <token postag="SENT_END" spacebefore="no">.</token>
            </pattern>
            <message>Местоимение в конце предложения не употребляется.</message>
            <short>Местоимение в конце предложения</short>
            <example correction=''>Не для этого <marker>оно.</marker></example>
            <example>Оно не для этого.</example>
            <example>Ты ужасный человек, - сказала она.</example>
            <example>Сделать меня таким, как он.</example>
        </rule>
        <rulegroup default="on" id="missing_noun_at_end" name="Опущено существительное" tags="picky">
            <rule>
                <antipattern>
                        <token postag="VB:.*" postag_regexp="yes"></token>
                        <token postag="ADJ:Posit:.*:T" postag_regexp="yes"></token> 
                        <token postag="SENT_END" spacebefore="no">.</token>
                </antipattern>    
                <pattern>
                    <token>
                        <exception postag="NN:.*|ADV|ADJ:Comp|PNN:.*|PREP|SENT_START" postag_regexp="yes"></exception>
                        <exception inflected="yes" regexp="yes">являться|быть|такой</exception>
                        <exception regexp="yes">–|-|—|очень|совсем|крайне|самый|самая|самое|самые|и|или</exception>
                    </token>
                    <marker>  
                        <token postag="ADJ:Posit:.*" postag_regexp="yes">
                            <exception negate_pos="yes" postag_regexp="yes" postag="ADJ:Posit:.*" />
                        </token> 
                        <token postag="SENT_END" spacebefore="no">.</token>
                    </marker>
                </pattern>
                <message>Плохой стиль: опущено существительное в конце предложения.</message>
                <short>Стиль: опущено существительное</short>
                <example>Так он и запил горькую судьбу.</example>
                <example>Он богат.</example>
                <example>Это кольцо является волшебным.</example>
                <example>Такой подход оказался достаточно универсальным.</example>
                <example>Когда он был маленький.</example>
                <example>В случае, если локальные минимумы сильно отличаются друг от друга, то предсказание становится затруднительным.</example>
                <example correction="">Так он и выбрал <marker>красивую.</marker></example>
            </rule>
       </rulegroup>
       <rulegroup default="on" id="noun_genitive_3" name="Более 4 существительных в родительном падеже подряд">
            <rule>
                <pattern>
                    <token postag="NN:.*:.*:R" postag_regexp="yes"><exception negate_pos="yes" postag_regexp="yes" postag="NN:.*:.*:R" /></token>
                    <token postag="NN:(Inanim|Anim|Inanimanim):.*:.*:R" postag_regexp="yes"></token>
                    <token postag="NN:(Inanim|Anim|Inanimanim):.*:.*:R" postag_regexp="yes"></token>
                    <token postag="NN:(Inanim|Anim|Inanimanim):.*:.*:R" postag_regexp="yes"></token>
                    <token postag="NN:(Inanim|Anim|Inanimanim):.*:.*:R" postag_regexp="yes"></token>
                </pattern>
                <message>Более 4 существительных в родительном падеже подряд. Перефразируйте предложение.</message>
                <short>Перефразируйте предложение</short>
                <example>Кнопка выбора пути файла для сохранения цвета фона.</example>
                <example>Один из водных путей экспансии варягов из района проживания.</example>
                <example correction="">Кнопка <marker>выбора файла сохранения цвета фона</marker>.</example>
            </rule>
       </rulegroup>
       <rulegroup default="on" id="kommentirovat_prep" name="Словосочетание: «комментировать» + предлог">
            <rule>
                <pattern>
                    <token inflected="yes">комментировать</token>
                    <token postag="PREP"></token>
                </pattern>
                <message>Дополнение должно быть без предлога.</message>
                <short>Дополнение должно быть без предлога</short>
                <example>Диктор комментирует это событие.</example>
                <example correction="">диктор <marker>комментирует об</marker> этом событии.</example>
            </rule>
        </rulegroup>   
        <rulegroup default="on" id="ugasno_krasivij" name="Словосочетание: «ужасно красивый»">
            <rule>
                <pattern>
                    <token>ужасно</token>
                    <token inflected="yes">хороший</token>
                </pattern>
                <message>Слово «ужасно» не может употребляться со словами, имеющими положительную окраску: <suggestion>очень \2</suggestion>.</message>
                <short>Грамматическая ошибка</short>
                <example>Она очень хороша.</example>
                <example correction="очень хороша">Она <marker>ужасно хороша</marker>.</example>
            </rule>
            <rule>
                <pattern>
                    <token>ужасно</token>
                    <token inflected="yes">красивый</token>
                </pattern>
                <message>Слово «ужасно» не может употребляться со словами, имеющими положительную окраску: <suggestion>очень \2</suggestion>.</message>
                <short>Грамматическая ошибка</short>
                <example>Она очень красива.</example>
                <example correction="очень красива">Она <marker>ужасно красива</marker>.</example>
            </rule>
        </rulegroup>      
        <rulegroup default="on" id="mankirovat_nn" name="Словосочетание: «манкировать» + существительное">
            <rule>
                <pattern>
                    <token inflected="yes">манкировать</token>
                    <token postag="NN:.*:V" postag_regexp="yes"></token>
                </pattern>
                <message suppress_misspelled="yes">Существительное должно быть в творительном падеже: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):V" postag_regexp="yes" postag_replace="NN:$1:$2:$3:T"></match></suggestion>.</message>
                <short>Требуется творительный падеж</short>
                <example>манкировать обязанностями</example>
                <example correction="манкировать обязанностями"><marker>манкировать обязанности</marker></example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes">манкировать</token>
                    <token postag="ADJ:MPR:.*:V" postag_regexp="yes"></token>
                    <token postag="NN:.*:V" postag_regexp="yes"></token>
                </pattern>
                <message suppress_misspelled="yes">Существительное должно быть в творительном падеже: <suggestion><match no="1"></match> <match no="2" postag="ADJ:MPR:(.*):V" postag_regexp="yes" postag_replace="ADJ:MPR:$1:T"></match> <match no="3" postag="NN:(.*):(.*):(.*):V" postag_regexp="yes" postag_replace="NN:$1:$2:$3:T"></match></suggestion>.</message>
                <short>Требуется творительный падеж</short>
                <example>манкировать своими обязанностями</example>
                <example correction="манкировать своими обязанностями"><marker>манкировать свои обязанности</marker></example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="reczenzija_na" name="Словосочетание: «рецензия о»">
            <rule>
                <pattern>
                    <token inflected="yes">рецензия</token>
                    <token>о</token>
                    <token postag="NN:.*:P" postag_regexp="yes"><exception negate_pos="yes" postag_regexp="yes" postag="NN:.*:P" /></token>
                </pattern>
                <message suppress_misspelled="yes">Рецензия пишется на какое-либо произведение: <suggestion><match no="1"></match> на <match no="3" postag="NN:(.*):(.*):(.*):P" postag_regexp="yes" postag_replace="NN:$1:$2:$3:V"></match></suggestion>.</message>
                <short>Требуется предлог «на»</short>
                <example>рецензия на произведение</example>
                <example correction="рецензия на произведение|рецензия на произведенье">Это <marker>рецензия о произведении</marker>.</example>
            </rule>
            
        </rulegroup>        
                
                                
        <rulegroup default="on" id="pretenzia_na" name="Словосочетание: «претензия на»">
            <rule>
                <pattern>
                    <token inflected="yes">претензия</token>
                    <token>на</token>
                    <token postag="NN:.*:V" postag_regexp="yes"></token>
                </pattern>
                <message suppress_misspelled="yes">Нужен предлог «к»: <suggestion><match no="1"></match> к <match no="3" postag="NN:(.*):(.*):(.*):V" postag_regexp="yes" postag_replace="NN:$1:$2:$3:D"></match></suggestion>.</message>
                <short>Требуется творительный падеж</short>
                <example>Пришла претензия к качеству товара.</example>
                <example correction="претензия к качеству">Пришла <marker>претензия на качество</marker> товара.</example>
            </rule>
        </rulegroup>            
                       
          <rulegroup default="on" id="predstavlat_soboj" name="Разговорный стиль: «представлять из себя»">
            <rule>
                <pattern>
                    <token inflected="yes">представлять</token>
                    <token>из</token>
                    <token>себя</token>
                </pattern>
                <message>Разговорный стиль: <suggestion>\1 собой</suggestion>.</message>
                <short>Разговорный вариант</short>
                <example>Летопись представляет собой запись событий.</example>
                <example correction="представляет собой">Летопись <marker>представляет из себя</marker> запись событий.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="nagnat_strahu" name="Устойчивые выражения: «нагнать страху», «натерпеться страху»">
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes">нагнать|натерпеться</token>
                    <token>страха</token>
                </pattern>
                <message>Устойчивое выражение: <suggestion>\1 страху</suggestion>.</message>
                <short>Устойчивое выражение</short>
                <example>Он натерпелся страху.</example>
                <example correction="нагнал страху">Он <marker>нагнал страха</marker>.</example>
            </rule>
        </rulegroup>
         <rulegroup default="on" id="skladivaetsja_oschuschenie" name="Устойчивые выражения: «складывается ощущение»">
            <rule>
                <pattern>
                    <token>складывается</token>
                    <token>ощущение</token>
                </pattern>
                <message>Устойчивое выражение: <suggestion>возникает \2</suggestion>.</message>
                <short>Устойчивое выражение</short>
                <example>возникает ощущение</example>
                <example correction="возникает ощущение"><marker>складывается ощущение</marker></example>
            </rule>
             <rule>
                <pattern>
                    <token>складывалось</token>
                    <token>ощущение</token>
                </pattern>
                <message>Устойчивое выражение: <suggestion>возникало \2</suggestion>.</message>
                <short>Устойчивое выражение</short>
                <example>возникало ощущение</example>
                <example correction="возникало ощущение"><marker>складывалось ощущение</marker></example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="ni_v_koem_sluchae" name="Устойчивые выражения: «ни в коем случае»">
            <rule>
                <pattern>
                    <token>не</token>
                    <token>в</token>
                    <token>коем</token>
                    <token inflected="yes" >случай</token>
                </pattern>
                <message>Устойчивое выражение: <suggestion>ни \2 \3 \4</suggestion>.</message>
                <short>Устойчивое выражение</short>
                <example>Но ни в коем случае нельзя забывать об этом.</example>
                <example correction="ни в коем случае">Но <marker>не в коем случае</marker> нельзя забывать об этом.</example>
            </rule>
        </rulegroup>
        <rulegroup id="Logical_bolee_menee" name="Устойчивое выражение: «более или менее»" tags="picky">
	<rule>
            <pattern>
                <token>более-менее</token>
            </pattern>
            <message>Устойчивое выражение: <suggestion>более или менее</suggestion>.</message>
            
            <short>Устойчивое выражение</short>
            <example correction="Более или менее"><marker>Более-менее</marker>.</example>
            <example>Более или менее.</example>
        </rule>
        <rule>
            <pattern>
                <token>более</token>
		<token>менее</token>
            </pattern>
            <message>Устойчивое выражение: <suggestion>более или менее</suggestion>.</message>
            
            <short>Устойчивое выражение</short>
            <example correction="Более или менее"><marker>Более менее</marker>.</example>
            <example>Более или менее.</example>
        </rule>
	</rulegroup>        
        <rulegroup id="NI_NA_GRAN" name="Цельное выражение: «ни на гран»">
         <rule>
            <pattern>
                <token>ни</token>
                <token>на</token>
                <token>грамм</token>
            </pattern>
            <message>Цельное выражение: <suggestion>ни на гран</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%93%D1%80%D0%B0%D0%BD</url>            
            <short>Цельное выражение</short>
            <example correction="ни на гран"><marker>ни на грамм</marker></example>
            <example>ни на гран</example>
         </rule>
         <rule>
            <pattern>
                <token>ни</token>
                <token>грамма</token>
            </pattern>
            <message>Цельное выражение: <suggestion>ни грана</suggestion>.</message>
            <url>http://ru.wikipedia.org/wiki/%D0%93%D1%80%D0%B0%D0%BD</url>
            <short>Цельное выражение</short>
            <example correction="ни грана"><marker>ни грамма</marker></example>
            <example>ни грана</example>
         </rule>  
        </rulegroup>                    
        <rulegroup default="on" id="NE_PREDSTAVL_VOZM" name="Цельные выражения: «не представляется возможным»">
            <rule>
                <pattern>
                    <token>не</token>
                    <token>предоставляется</token>
                    <token>возможным</token>
                </pattern>
                <message>Словосочетание: <suggestion>\1 представляется \3</suggestion>.</message>
                <short>Цельное выражение</short>
                <example>Количество лошадиных сил определить не представляется возможным.</example>
                <example correction="не представляется возможным">Количество лошадиных сил определить <marker>не предоставляется возможным</marker>.</example>
            </rule>
        </rulegroup>
	<rulegroup default="on" id="Opublikovani_vospominanija" name="Цельные выражения: «опубликованы воспоминания»">
            <rule>
                <pattern>
                    <token regexp="yes" >опубликовано|напечатано|обнародовано|издано</token>
                    <token>воспоминание</token>
                </pattern>
                <message suppress_misspelled="yes">Требуется множественное число: <suggestion><match no="1" postag="PT_Short:(.*):.*" postag_regexp="yes" postag_replace="PT_Short:$1:PL" /> воспоминания</suggestion>.</message>
                <short>Требуется множественное число</short>

                <example correction="опубликованы воспоминания">В книге <marker>опубликовано воспоминание</marker> известного политика.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="Num_plus_Noun" name="Сочетание числительных с существительными">
            <rule>
                <pattern>
                    <token regexp="yes">[1-9]+</token>
                    <token spacebefore="no" regexp="yes">,</token>
                    <token spacebefore="no" regexp="yes">[0-9]+</token>
                    <token postag="NN:.*:PL:R" postag_regexp="yes">
                        <exception negate_pos="yes" postag="NN:.*:PL:R" postag_regexp="yes"></exception>
                        <exception>лет</exception>
                    </token>
                </pattern>
                <message>Существительное с дробным числительным должно употребляться в единственном числе (например 35,5 процента), а не во множественном (35,5 процентов): <suggestion><match no="1"></match><match no="2"></match><match no="3"></match> <match no="4" postag="NN:(.*):PL:R" postag_regexp="yes" postag_replace="NN:$1:Sin:R"></match></suggestion></message>
                <url>http://ru.wikipedia.org/wiki/%D0%A7%D0%B8%D1%81%D0%BB%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5</url>
                <short>Требуется единственное число</short>
                <example>35,5 процента.</example>
                <example correction="35,5 процента"><marker>35,5 процентов</marker>.</example>
            </rule> 
        </rulegroup>
        <rule  id="Num_plus_Noun1" default="off" name="Сочетание числительных с существительными (2)">
                <pattern>
                    <token postag="NumD_S" ><exception scope="previous" regexp="yes">по|–|—</exception><exception scope="previous" spacebefore="no">-</exception></token>
                    <token postag="NN:.*:.*:PL:.*" postag_regexp="yes">
                        <exception negate_pos="yes" postag="NN:.*:.*:PL:.*" postag_regexp="yes"></exception>
                        <exception  postag="NN:.*:.*:Sin:.Nom" postag_regexp="yes"></exception>
                        <exception>лет</exception>                    
                    </token>
                </pattern>
                <message>Существительное должно употребляться в единственном числе, а не во множественном: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):PL:(.*)" postag_regexp="yes" postag_replace="NN:$1:Sin:$2"></match></suggestion></message>
                <short>Требуется единственное число</short>
                <example>1 процент.</example>
                <example>Три тома второго издания книги вышли в 1966 — 1971 годах.</example>
                <example correction="1 процента"><marker>1 процентов</marker>.</example>
        </rule> 
            <!-- TODO: check suggestion in message!!!!!!!!!!! -->
            <!-- comment rule, many false positives используется как множественное, так и единственное число
        <rule default="off" id="Num_plus_Noun2" name="Сочетание числительных с существительными 2"> 
                <pattern>
                    <token postag="NumD_P" ><exception scope="previous" regexp="yes">по|–|—</exception>
                    <exception scope="previous" spacebefore="no">-</exception>
                    </token>
                    <token postag="NN:.*:.*:Sin:.*" postag_regexp="yes">
                        <exception negate_pos="yes" postag="NN:.*:.*:Sin:.*" postag_regexp="yes"></exception>
                        <exception  postag="NN:.*:.*:PL:.*" postag_regexp="yes"></exception>
                        <exception  postag="NN:.*:.*:Sin:D" postag_regexp="yes"></exception>
                        <exception>лет</exception>           
                    </token>
                </pattern>
                <message>Существительное должно употребляться во множественном числе, а не в единственном: <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):Sin:(.*)" postag_regexp="yes" postag_replace="NN:$1:PL:$2"></match></suggestion></message>
                <short>Требуется единственное число</short>
                <example>1 процент.</example>
                <example>Три тома второго издания книги вышли в 1966 — 1977 годах.</example>
                <example>Три тома второго издания книги вышли в 1977 году.</example>
                <example correction="7 процентов"><marker>7 процента</marker>.</example>
         </rule>         
    -->   

        <rulegroup default="on" id="Prep_Soglasno" name="Предлоги: «согласно», «благодаря», «вопреки»">
            <rule>
                <pattern>
                    <token regexp= "yes" >согласно|благодаря|вопреки</token>
                    <token postag="NN:.*:.*:R" postag_regexp="yes">
                        <exception postag="NN:.*:.*:D" postag_regexp="yes"></exception>
                    </token>
                </pattern>
                <message suppress_misspelled="yes">Этот предлог должен употребляться с дательным падежом (<match no="1"></match> чему), а не с родительным (<match no="1"></match> чего): <suggestion><match no="1"></match> <match no="2" postag="NN:(.*):(.*):(.*):R" postag_regexp="yes" postag_replace="NN:$1:$2:$3:D"></match></suggestion></message>
                <short>Требуется дательный падеж</short>
                <example>Отправление поезда согласно расписанию.</example>
                <example>Скорость марсоходов увеличится благодаря системе автономной навигации.</example>
                <example>Вопреки утверждению ФАС дефицит топлива возможен.</example>
                <example correction="согласно расписанию|согласно расписанью">Отправление поезда <marker>согласно расписания</marker>.</example>
                <example correction="благодаря системе">Скорость марсоходов увеличится <marker>благодаря системы</marker> автономной навигации.</example>
                <example correction="Вопреки утверждению|Вопреки утвержденью"><marker>Вопреки утверждения</marker> ФАС дефицит топлива возможен.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="Use_prep_O" name="Предлог «о»">
            <rule> <!-- removed "подозревает о" -->
                <pattern>
                    <token inflected="yes" regexp="yes">понимать|изучать|выяснять|описывать|объяснить|излагать|подчеркнуть|утверждать|обсудить</token>
                    <token regexp="yes">о|об</token>
                </pattern>
                <message>Глагол «\1» с предлогом «о» не употребляется.</message>
                <short>С предлогом «о» не употребляется</short>
                <example>Выяснять про событие.</example>
                <example correction=""><marker>Выяснять о</marker> событии.</example>
                <example correction="">Он <marker>выясняет о</marker> событии.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes">обсуждать|доказывать|отмечать|показать</token>
                    <token regexp="yes">о|об</token>
                </pattern>
                <message>Глагол «\1» не употребляется с предлогами.</message>
                <short>Предлог не нужен</short>
                <example>Отмечать событие.</example>
                <example correction=""><marker>Доказывать об</marker> этом событии.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes">сомневаться|упрекнуть</token>
                    <token regexp="yes">о|об</token>
                </pattern>
                <message>Глагол «\1» с предлогом «о» не употребляется. Возможная замена: <suggestion>\1 в</suggestion></message>
                <short>С предлогом «о» не употребляется</short>
                <example>Сомневаться в доказательстве.</example>
                <example correction="Сомневаться в"><marker>Сомневаться об</marker> этом выводе.</example>
            </rule>
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes">указывать|указать</token>
                    <token regexp="yes">о|об</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"></token>
                </pattern>
                <message suppress_misspelled="yes">Глагол «\1» с предлогом «о» не употребляется. Возможная замена: <suggestion><match no="1"></match> на <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:V"></match></suggestion></message>
                <short>С предлогом «о» не употребляется</short>
                <example>Указать на ошибку.</example>
                <example correction="Указать на ошибку"><marker>Указать об ошибке</marker>.</example>
            </rule>
        </rulegroup>
        
        <rulegroup default="on" id="VB_O_KOM" name="Глагол + «о ком (о чём)»">
            <!-- 
            считать о чём    ->  считать что
            советовать о чём ->  советовать что
            принять меры о чём   ->  принять меры для чего   
            надеяться о чём  ->  надеяться на что
            убедиться о том  ->  убедиться в том
            утверждает о том    ->   утверждает то     
            -->
            <rule>
                <pattern>
                    <token inflected="yes" regexp="yes">считать|советовать</token>
                    <token regexp="yes">о|об</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"></token>
                </pattern>
                <message suppress_misspelled="yes">Глагол «\1» с предлогом «о» не употребляется. Возможная замена: <suggestion><match no="1"></match> <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:V"></match></suggestion></message>
                <short>С предлогом «о» не употребляется</short>
                <example>Он советовал покупку.</example>
                <example correction="советовал покупку">Он <marker>советовал о покупке</marker>.</example>
            </rule>
            
            <rule>
                <pattern>
                    <token inflected="yes">надеяться</token>
                    <token regexp="yes">о|об</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"></token>
                </pattern>
                <message suppress_misspelled="yes">Глагол «\1» с предлогом «о» не употребляется. Возможная замена: <suggestion><match no="1"></match> на <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:V"></match></suggestion></message>
                <short>С предлогом «о» не употребляется</short>
                <example>Он надеялся на удачу.</example>
                <example correction="надеялся на удачу">Он <marker>надеялся об удаче</marker>.</example>
            </rule>
            
            <rule>
                <pattern>
                    <token inflected="yes">убедиться</token>
                    <token regexp="yes">о|об</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"></token>
                </pattern>
                <message suppress_misspelled="yes">Глагол «\1» с предлогом «о» не употребляется. Возможная замена: <suggestion><match no="1"></match> в <match no="3" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:V"></match></suggestion></message>
                <short>С предлогом «о» не употребляется</short>
                <example>Он убедился в надёжности системы.</example>
                <example correction="убедился в надёжности|убедился в надёжность">Он <marker>убедился о надёжности</marker> системы.</example>
            </rule>
            
            <rule>
                <pattern>
                    <token inflected="yes" >принять</token>
                    <token>меры</token>
                    <token regexp="yes">о|об</token>
                    <token postag="NN:.*:.*:.*" postag_regexp="yes"></token>
                </pattern>
                <message suppress_misspelled="yes">Глагол «\1» с предлогом «о» не употребляется. Возможная замена: <suggestion><match no="1"></match> <match no="2"></match> для <match no="4" postag="NN:(.*):(.*):(.*):.*" postag_regexp="yes" postag_replace="NN:$1:$2:$3:R"></match></suggestion></message>
                <short>С предлогом «о» не употребляется</short>
                <example>Он принял меры для безопасности.</example>
                <example correction="принял меры для безопасностей|принял меры для безопасности">Он <marker>принял меры о безопасности</marker>.</example>
            </rule>       
        </rulegroup>
        
        <rule id="PT_BI" name="Причастие с частицей «бы» не употребляется">
            <pattern>
                <token postag_regexp= "yes"  postag = "PT:.*"></token>
                <token>бы</token>
            </pattern>
            <message>Причастие с частицей «бы» не употребляется: <suggestion>\1</suggestion></message>
            <example correction="получивший">Спит ум, может быть <marker>получивший бы</marker> внезапный родник великих свойств.</example>
            <example>Спит ум, может быть получивший  внезапный родник великих свойств.</example>
        </rule>
        <rule id="DPT_BI" name="После деепричастия частица «бы» не употребляется">
            <pattern>
                <token postag='DPT:.*' postag_regexp='yes'><exception postag='DPT:.*' postag_regexp='yes' negate_pos='yes'></exception></token>
                <token>бы</token>
            </pattern>
            <message>После деепричастия частица «бы» не употребляется.</message>
            <example correction=''>Он, <marker>подумав бы</marker>, отказался от этой затеи.</example>
        </rule>
        
        
        <rulegroup default="on" id="strong_m" name="Пропуск обязательных зависимых слов">
            <rule>
                <pattern>
                    <token inflected="yes">содействовать</token>
                    <token>
                        <exception postag=".*:D" postag_regexp="yes"></exception>
                        <exception postag="PNN:.*" postag_regexp="yes"></exception>
                        <exception regexp="yes">также|тоже</exception>
                    </token>
                </pattern>
                <message>Не найдены обязательные зависимые слова: содействовать чему?</message>
                <short>содействовать чему?</short>
                <example>Содействовать выполнению задания.</example>
                <example correction="">
                    <marker>Содействовать и</marker> помогать.</example>
                <example correction="">
                    <marker>Содействовали и</marker> помогали.</example>
            </rule>
            <rule>
                <pattern>
                    <token postag="SENT_START" skip="-1">
                        <exception scope="next" postag=".*:R" postag_regexp="yes"></exception>
                        <exception scope="next" postag="PNN:.*:R.*" postag_regexp="yes"></exception>
                    </token>   <!--   -->
                    <marker>
                        <token inflected="yes">интересовать</token>
                        <token>
                            <exception postag=".*:R" postag_regexp="yes"></exception>
                            <exception postag=".*:Fem:Sin:V" postag_regexp="yes"></exception> 
                            <exception postag="PNN:.*" postag_regexp="yes"></exception>
                            <exception>не</exception> <!-- fast fix -->
                        </token>
                    </marker>
                </pattern>
                <message>Не найдены обязательные зависимые слова: интересовать кого?</message>
                <short>интересовать кого?</short>
                <example>Через несколько минут мы ответим на интересующие слушателей вопросы.</example>
                <example>Мы владеем сокровищами, которые интересуют не только нас.</example>
                <example correction="">Мы ответим на <marker>интересующие вопросы</marker>.</example>
            </rule>
            <rule>
                <antipattern>
                    <token regexp="yes" skip="-1">этот|тот|это|то|эта|та|эти|те</token>
                    <token inflected="yes">нарушать</token>
                    <token>
                        <exception postag=".*:V" postag_regexp="yes"></exception>
                        <exception postag=".*:R" postag_regexp="yes"></exception>
                        <exception postag="PNN:.*" postag_regexp="yes"></exception>
                    </token>  
                </antipattern>
                <antipattern>
                    <token  postag="NN:.*:V" postag_regexp="yes"></token>
                    <token  postag="PNN:.*|NN:.*:Nom" postag_regexp="yes" skip="-1"></token>
                    <token inflected="yes">нарушать</token>
                    <token>
                        <exception postag=".*:V" postag_regexp="yes"></exception>
                        <exception postag=".*:R" postag_regexp="yes"></exception>
                        <exception postag="PNN:.*" postag_regexp="yes"></exception>
                    </token>  
                </antipattern>
                
                <pattern>
                    <token inflected="yes">нарушать</token>
                    <token>
                        <exception postag=".*:V" postag_regexp="yes"></exception>
                        <exception postag=".*:R" postag_regexp="yes"></exception>
                        <exception postag="PNN:.*" postag_regexp="yes"></exception>
                    </token>
                </pattern>
                <message>Не найдены обязательные зависимые слова: нарушать что (чего)? </message>
                <short>нарушать что?</short>
                <example>Вы нарушаете правила.</example>
                <example>Это правило я никогда не нарушал.</example>
                <example>Правило я никогда не нарушал.</example>
                <example correction="">Вы <marker>нарушаете!</marker></example>
            </rule>
            
        </rulegroup>
        
        <rulegroup default="on" id="kosvennaja_rech" name="Косвенная речь и кавычки"> 
          <rule>
            <pattern>
                <token>что</token>
                <token>"</token>
                <token><exception>"</exception></token>
                <token><exception>"</exception></token>
                <token  skip="-1"><exception>"</exception></token>
                <token>"</token>
            </pattern>
            <message>Косвенная речь в кавычки не берётся.</message>
            <url>http://gramota.ru/class/coach/punct/45_192</url>
            <short>Кавычки не нужны</short>
            <example>Мы говорим, что косвенная речь в кавычки не берётся.</example>
            <example correction="">Мы говорим, <marker>что "косвенная речь в кавычки не берётся"</marker>.</example>
          </rule>
            <rule>
            <pattern>
                <token>что</token>
                <token>«</token>
                <token><exception>»</exception></token>
                <token><exception>»</exception></token>
                <token  skip="-1"><exception>»</exception></token>
                <token>»</token>
            </pattern>
            <message>Косвенная речь в кавычки не берётся.</message>
            <url>http://gramota.ru/class/coach/punct/45_192</url>
            <short>Кавычки не нужны</short>
            <example>Мы говорим, что косвенная речь в кавычки не берётся.</example>
            <example correction="">Мы говорим, <marker>что «косвенная речь в кавычки не берётся»</marker>.</example>
          </rule>
        </rulegroup>
        
        <rule default="on" id="OPREDELENIA" name="Избыточные придаточные определения">
            <pattern>
                <token skip="-1" regexp="yes">который|которого|которому|
                    котором|которая|которой|которую|которые|которых|
                    которыми|которое|которым|чей|чьего|чьему|
                    чьим|чья|чьей|чью|чье|чьё|чьем|чьём|чьи</token>
                <token regexp="yes">который|которого|которому|
                    котором|которая|которой|которую|которые|которых|которыми|которое|
                    которым|чей|чьего|чьему|чьим|чья|чьей|
                    чью|чье|чьё|чьем|чьём|чьи</token>
            </pattern>
            <message>Избыточные определения. В правильно составленном предложении не должно быть больше одного придаточного определения.</message>
            <short>Избыточные определения</short>
            <example>Они пошли к реке, по которой плавала лодка.</example>
            <example correction="">Они пошли к реке, по <marker>которой плавала лодка, которая</marker> была окрашена в белый цвет.</example>
        </rule>
        <rule default="on" id="O_KOTORIJ" name="Определения «который»">
             <!-- need test rule -->
            <antipattern>
                <token skip="-1" postag="NN:.*:.*:.*:Nom" postag_regexp="yes" />
                <token postag="NN:.*:PL:Nom" postag_regexp="yes">
                    <exception postag="NN:.*" postag_regexp="yes" negate_pos ="yes"></exception>
                    <exception postag="NN:.*:PL:Nom" postag_regexp="yes" scope ="previous"></exception>
                </token>    
                <token>,</token>               
                <token regexp="yes">который|которого|которому|котором|которая|которой|которую|которое</token>     
            </antipattern>        
            <pattern>
                <token skip="-1" postag="SENT_START"><exception postag="PT_Short:.*|VB:Real:INTR:IMPFV:.*:.*" postag_regexp="yes" scope ="next"></exception></token>
                <marker>
                    <unify negate="yes">
                        <feature id="gender"/>
                        <feature id="number"/>                
                        <token postag="NN:.*:PL:Nom" postag_regexp="yes">
                            <exception postag="NN:.*:Sin:R" postag_regexp="yes" ></exception> <!-- проверить, может нужно менее строгое исключение -->
                            <exception postag="NN:.*" postag_regexp="yes" negate_pos ="yes"></exception>
                            <exception postag="NN:.*:PL:Nom" postag_regexp="yes" scope ="previous"></exception>
                            <exception postag="NN:.*:(Masc|Neut|Fem)" postag_regexp="yes" ></exception> <!-- нет падежа -->
                        </token>
                        <unify-ignore>
                            <token>,</token>
                        </unify-ignore>
                        <token regexp="yes">который|которого|которому|котором|которая|которой|которую|которое</token>
                    </unify>
                </marker>
            </pattern>
            <message>Ошибка в согласовании по числу, возможное исправление: <suggestion>\2, которые</suggestion></message>
            <short>Ошибка в согласовании</short>
            <example>Математика есть часть науки, которой можно было бы продолжать заниматься, проснувшись утром и поняв, что вселенной больше нет.</example>
            <example>В 1979 году в Финском заливе начато строительство дамбы, которая и защищала бы город от наводнений.</example>
            <example>Из неё забирается более 96 % воды, которая проходит обработку на 5 сооружениях.</example>
            <example>Нет такой собаки, которая была бы больше этой.</example>
            <example>Виски, которое стоит попробовать.</example>
            <example correction="звёзды, которые">Яркие <marker>звёзды, которая</marker> сияли.</example>      
        </rule>
        
        <rulegroup default="on" name="Благозвучность" id="BLAGOZVUCHNOST"  tags="picky">
            <rule>
                <pattern case_sensitive="yes">
                    <token regexp="yes">.*([йцкнгшщзхфвпрлджчсмтб]{2,2})</token>
                    <token regexp="yes">([йцкнгшщзхфвпрлджчсмтб]{3,3}).*</token>
                </pattern>
                <message>Сложно произнести пять согласных звука подряд.</message>
                <short>5 согласных подряд</short>
                <example>Гимнаст отлично справился с заданием.</example>
                <example correction=""><marker>Гимнаст справился</marker> с заданием.</example>
            </rule>
        </rulegroup>
    </category>
    
    <category id="TYPOS" name="Проверка орфографии">
        
        <rulegroup default="off" id="Unknown_words" name="Поиск неизвестных слов (без вариантов замены)">
            <rule>
	            <antipattern>
                    <token case_sensitive="yes" regexp="yes">[А-ЯЁ][А-ЯЁ]+</token>
	            </antipattern>
	            <antipattern>
	                    <token postag="UNKNOWN"
	                               regexp="yes">[а-яё]+</token>
	                    <token>.</token>
	            </antipattern>
                <pattern>
                    <marker>
	                    <token postag="UNKNOWN"
	                           regexp="yes">[а-яё]+</token>
                    </marker>
                    <token></token>
                </pattern>
                <message>Слова нет в словаре LanguageTool. Предложить слово в словарь можно на сайте http://myooo.ru/component/option,com_addtodictsuggest/Itemid,135/</message>
                <url>http://www.languagetool.org/ru</url>
                <short>Нет в словаре</short>
                <example>Проверка текста.</example>
                <example>Прове́рка текста.</example>
                <example>ул. Ленина</example>
                <example>Проверка текста и т.п.</example>
                <example correction="">Это только <marker>теест</marker> проверка.</example>
            </rule>
        </rulegroup>
        <rulegroup default="on" id="Kak_budto" name="Сложный союз (частица) «как будто»">
            <rule>
                <pattern case_sensitive="no">
                    <token regexp="yes">какбудто|как-будто</token>
                </pattern>
                <message>Сложный союз (частица) &quot;как будто&quot; пишется раздельно: <suggestion>как будто</suggestion>.</message>
                <short>&quot;Как будто&quot; пишется раздельно</short>
                <example correction="Как будто"><marker>Какбудто</marker> время остановилось.</example>
            </rule>
        </rulegroup>
        <rulegroup id="Defis_to" name="Дефисное правописание: «-то», «-либо»">  
            <rule>   
                <pattern>
                    <marker>
                        <token regexp="yes" >&defis_libo;|то</token>           
                        <token skip="-1">то<exception scope="next">то</exception></token>
                    </marker>
                    <token postag="SENT_END"/>             
                </pattern>
                <message>Слова с частицей «-то» пишем через дефис. Вы имели в виду <suggestion>\1-\2</suggestion> или <suggestion>\1, \2</suggestion>?</message>
                <short>Слова с «-то» пишем через дефис</short>
                <example correction="кто-то|кто, то">Здесь есть <marker>кто то</marker>?</example>
                <example>Здесь есть кто-то?</example>
            </rule>
            <rule>   
                <pattern>
                    <marker>
                        <token regexp="yes" >&defis_libo;|то</token>           
                        <token skip="-1">то</token>
                    </marker>
                    <token>то</token>           
                </pattern>
                <message>Требуется знак препинания или дефис. Вы имели в виду <suggestion>\1: \2</suggestion> или <suggestion>\1-\2</suggestion>?</message>
                <short>Требуется знак препинания</short>
                <example correction="такое: то|такое-то">Выбираю <marker>такое то</marker> сливочное, то шоколадное.</example>
                <example>Выбираю такое: то сливочное, то шоколадное.</example>
            </rule>
            <rule>   
                <pattern>
                    <marker>
                        <token regexp="yes" >&defis_libo;</token>           
                        <token skip="-1">либо<exception scope="next">либо</exception></token>
                    </marker>
                    <token postag="SENT_END" />           
                </pattern>
                <message>Слова с частицей «-либо» пишем через дефис. Вы имели в виду <suggestion>\1-\2</suggestion> или <suggestion>\1, \2</suggestion>?</message>
                <short>Слова с «-либо» пишем через дефис</short>
                <example correction="кто-либо|кто, либо">Здесь есть <marker>кто либо</marker>?</example>
                <example>Здесь есть какая-либо ошибка?</example>
            </rule>
            <rule>   
                <pattern>
                    <marker>
                        <token regexp="yes" >&defis_libo;</token>           
                        <token skip="-1">либо</token>
                    </marker>
                    <token>либо</token>          
                </pattern>
                <message>Требуется знак препинания или дефис. Вы имели в виду <suggestion>\1: \2</suggestion> или <suggestion>\1-\2</suggestion>?</message>
                <short>Требуется знак препинания</short>
                <example correction="какое: либо|какое-либо">Выбирай <marker>какое либо</marker> сливочное, либо шоколадное?</example>
                <example>Выбирай какое: либо сливочное, либо шоколадное?</example>
            </rule>
            <!-- words with «-нибудь» are in /resource/ru/compounds.txt
            <rule>   
                <pattern>
                        <token postag_regexp="yes" postag="PNN:.*|ADV"></token>           
                        <token>нибудь</token>           
                </pattern>
                <message>Слова с частицей «-нибудь» пишем через дефис. Вы имели в виду <suggestion>\1-\2</suggestion>?</message>
                <short>Слова с «-нибудь» пишем через дефис</short>
                <example correction="кто-нибудь">Здесь есть <marker>кто нибудь</marker>?</example>
                <example>Здесь есть кто-нибудь?</example>
            </rule>  -->
        </rulegroup>          

        <rule id="Latin_letters" name="Использование аналогичных по написанию латинских букв">
	    <antipattern>
		    <token regexp="yes">[а-яёіїäѣs’*қәңөєүўҰαΔӀғʌtјЂћњљƣg]+</token>
	    </antipattern>
	    <antipattern>
		    <token regexp="yes">(?!.*[а-яё]).*</token>
	    </antipattern>
	    <antipattern>
		    <token regexp="yes">(?!.*[А-ЯЁ]).*</token>
	    </antipattern>
	    <!-- <antipattern> -->
		<!--     <token negate="yes" regexp="yes">\b[а-яё]+\b</token> -->
	    <!-- </antipattern> -->
	    <!-- <antipattern> -->
		<!--     <regexp negate="yes"> regexp="yes">\b[а-яё]+\b</regexp> -->
	    <!-- </antipattern> -->
	    <pattern>
		    <marker>
		    <token regexp="yes">\p{L}\p{L}+</token>
		    </marker>
	    </pattern>
	    <message>Возможно, нужна буква из кириллицы вместо аналогичной по начертанию латинской или наоборот. Вместо букв из других алфавитов для обозначения ударения используйте символ U+0301 в кодировке Юникод.</message>	    
	    <url>https://ru.wikipedia.org/wiki/%D0%97%D0%BD%D0%B0%D0%BA_%D1%83%D0%B4%D0%B0%D1%80%D0%B5%D0%BD%D0%B8%D1%8F#.D0.92.D0.B2.D0.BE.D0.B4_.D0.B7.D0.BD.D0.B0.D0.BA.D0.B0_.D1.81_.D0.BA.D0.BB.D0.B0.D0.B2.D0.B8.D0.B0.D1.82.D1.83.D1.80.D1.8B</url>
	    <short>Возможно нужна буква из кириллицы вместо аналогичной по начертанию латинской или наоборот</short>
            <example correction="">Книга <marker>прo</marker> Львов.</example>
	    <example correction=""> <marker>Kо</marker> мне приехали.</example>
	    <example>«Far East Network» не передаёт местные новости.</example>
            <example>В XXI веке.</example>
	    <example>о̀колозе́мный</example>
	    <example>имеют температуру менее минус 0,8 ºC на севере</example>
	    <example correction=""> <marker>Bне</marker> леса шумно.</example>
	    <example correction=""> Буду <marker>cо</marker> своими шутками.</example>
        </rule>
        
        <rule id="Latin_single_letter" name="Использование аналогичных по написанию латинских букв">
	    <antipattern>
		    <token  regexp="yes">a|o|b|c|k</token>
		    <token regexp="yes">’|\+|=|-|#</token>
	    </antipattern>
	    <antipattern>
		    <token regexp="yes">’|\+|=|-|#</token>
		    <token  regexp="yes">a|o|b|c|k</token>
	    </antipattern>
	    <antipattern>
		    <token skip="3" regexp="yes">a|o|b|c|k</token>
		    <token regexp="yes">\p{L}+<exception regexp="yes">[а-яё]+</exception><exception regexp="yes">ee|eё</exception></token>
	    </antipattern>

	    <antipattern>
		    <token skip="3" regexp="yes">\p{L}+<exception regexp="yes">[а-яё]+</exception></token>
		    <token regexp="yes">a|o|b|c|k</token>
	    </antipattern>
	    <antipattern>
		    <token regexp="yes" case_sensitive="yes">A|O|B|b|C|k|K
		    <exception scope="previous" postag="SENT_START"/>
		    </token>
	    </antipattern>

	    <pattern>
		    <token  regexp="yes">a|o|b|c|k</token>
	    </pattern>
	    <message>Возможно нужна буква из кириллицы вместо аналогичной по начертанию латинской или наоборот.</message>
	    <example correction="">Книга <marker>o</marker> Львове.</example>
	    <example correction=""><marker>K</marker> тебе приехали.</example>
	    <example correction=""><marker>B</marker> лесу тихо.</example>
            <example correction=""><marker>B</marker> ee голосе появилась горькая нотка.</example>
	    <example correction="">Буду <marker>c</marker> подарками.</example>
    </rule>
    <rulegroup default="off" id="MissingYO" name="Пропущена буква «Ё»">
        <rule>        
            <pattern>
                <marker>
                    <token chunk="MayMissingYO"></token>
                </marker>
            </pattern>
        <message>Возможно пропущена буква «Ё», в словаре найдено слово с буквой «Ё».</message>
        <short>Пропущена «Ё»</short>
        <example>ёжик</example>
        <example correction=""><marker>ежик</marker></example>
        </rule>
    </rulegroup>
    </category>

    <category id="CASING" name="Заглавные буквы">
        
        <rule default="on" id="Cap_Letters_Name" name="Имя">
            <pattern case_sensitive="yes">
                <token postag="NN:Name:.*" postag_regexp="yes">
                    <exception regexp="yes">\p{Lu}.*</exception>
                    <exception regexp="yes">е|мадам|леди|пани|ежи|шоу|обл</exception>
                    <exception negate_pos="yes" postag="NN:Name:.*" postag_regexp="yes"></exception>
                    <exception postag="NN:Anim:.*" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message>Имя пишется с большой буквы: <suggestion><match no="1" case_conversion="startupper"></match></suggestion></message>
            <url>http://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D0%B1%D1%83%D0%BA%D0%B2%D0%B0</url>
            <short>Заглавные буквы</short>
            <example>Он – <marker>Иван</marker>.</example>
            <example correction="Иван">Он – <marker>иван</marker>.</example>
        </rule>
        
        <rule default="on" id="Cap_Letters_SName" name="Отчество">
            <pattern case_sensitive="yes">
                <token postag="NN:Patr:.*" postag_regexp="yes">
                    <exception regexp="yes">\p{Lu}.*</exception>
                    <exception>e</exception>
                    <exception negate_pos="yes" postag="NN:Patr:.*" postag_regexp="yes"></exception>
                    <exception postag="NN:Anim:.*" postag_regexp="yes"></exception>
                </token>
            </pattern>
            <message>Отчество пишется с большой буквы: <suggestion><match no="1" case_conversion="startupper"></match></suggestion></message>
            <url>http://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D0%B1%D1%83%D0%BA%D0%B2%D0%B0</url>
            <short>Заглавные буквы</short>
            <example>Он – <marker>Иванович</marker>.</example>
            <example correction="Иванович">Он – <marker>иванович</marker>.</example>
        </rule>
        <rule default="on" id="Cap_Letters_Fam" name="Фамилия">
            <pattern case_sensitive="yes">
                <token postag="NN:(Patr|Name):.*" postag_regexp="yes"><exception negate_pos="yes" postag="NN:(Patr|Name):.*" postag_regexp="yes"/></token>
                <marker>
                    <token postag="NN:Fam:.*" postag_regexp="yes">
                        <exception regexp="yes">\p{Lu}.*</exception>
                        <exception postag="PNN:.*" postag_regexp="yes"/>
                        <exception postag="NN:Anim:.*" postag_regexp="yes"/>
                        <exception postag="NN:Inanim:.*" postag_regexp="yes"/>
                    </token>
                </marker>
            </pattern>
            <message>Фамилия пишется с большой буквы: <suggestion><match case_conversion="startupper" no="2"/></suggestion></message>
            <url>http://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D0%B1%D1%83%D0%BA%D0%B2%D0%B0</url>
            <short>Заглавные буквы</short>
            <example>Эти гидравлические вибротрамбовки совместимы с гидроприводом любой базовой машины.</example>
            <example>Он – Иван <marker>Иванов</marker>.</example>
            <example correction="Иванов">Он – Иван <marker>иванов</marker>.</example>
        </rule>     
        <rule id="Lower_Letters_after_comma" name="Строчная буква после запятой">
            <pattern case_sensitive="yes">
                <token>,</token>
                <token spacebefore="yes" regexp="yes" postag="VB:.*|DPT:.*" postag_regexp="yes">[А-Я][а-я]*<exception postag="VB:.*|DPT:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
            </pattern>
            <message>После запятой требуется строчная буква: <suggestion>, <match no="2" case_conversion="alllower"></match></suggestion></message>
            <short>Строчная буква</short>
            <example correction=", слушай">Привет, мамочка<marker>, Слушай</marker> меня</example>
        </rule>
        <rulegroup default="on" id="AllCaps" name="Все буквы в слове ЗАГЛАВНЫЕ"  tags="picky">
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START" negate_pos="yes"></token>
                    <marker>
                        <token regexp="yes">([А-ЯЁ]{4,4})[А-ЯЁ].*<exception postag_regexp="yes" postag="ABR:.*" />
                            <exception postag_regexp="yes" postag="NN:(Patr|Name):.*" />
                            <exception regexp="yes" >&zagl;</exception>
                        </token>
                    </marker>
                </pattern>
                <message>Не выделяйте слова ЗАГЛАВНЫМИ буквами: <suggestion><match no="2" case_conversion="alllower"></match></suggestion>.</message>
                <short>Выделение текста ЗАГЛАВНЫМИ буквами</short>
                <example>Не выделяйте текст заглавными буквами.</example>
                <example>Его зовут АЛЁША.</example>
                <example correction="заглавными">Не выделяйте текст <marker>ЗАГЛАВНЫМИ</marker> буквами.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START" negate_pos="yes"></token>  <!-- TO DO: add NN:Fam  -->
                    <marker>
                        <token  postag_regexp="yes" postag="NN:(Patr|Name):.*"  regexp="yes">([А-ЯЁ]{3,3})[А-ЯЁ].*<exception postag_regexp="yes" postag="ABR:.*" />
                            <exception regexp="yes" >&zagl;|ТЕМА|ИКЕА</exception>
                        </token>
                    </marker>
                </pattern>
                <message>Не выделяйте слова ЗАГЛАВНЫМИ буквами: <suggestion><match no="2" case_conversion="firstupper"></match></suggestion>.</message>
                <short>Выделение текста ЗАГЛАВНЫМИ буквами</short>
                <example>Не выделяйте текст заглавными буквами.</example>
                <example correction="Алёша">Его зовут <marker>АЛЁША</marker>.</example>
            </rule>
            <rule>
                <pattern case_sensitive="yes">
                    <token postag="SENT_START"></token>
                    <marker>
                       <token regexp="yes">([А-ЯЁ]{4,4})[А-ЯЁ].*<exception postag_regexp="yes" postag="ABR:.*" />
                       <exception regexp="yes" >&zagl;</exception>
                       </token>
                    </marker>
                </pattern>
                <message>Не выделяйте слова ЗАГЛАВНЫМИ буквами: <suggestion><match no="2" case_conversion="firstupper"></match></suggestion>.</message>
                <short>Выделение текста ЗАГЛАВНЫМИ буквами</short>
                <example>Заглавными буквами не выделяйте текст.</example>
                <example correction="Заглавными"><marker>ЗАГЛАВНЫМИ</marker> буквами не выделяйте текст.</example>
            </rule>  
        </rulegroup>
        <rule id="DotOrCase" name="Точка или заглавная буква" >
            <pattern>
                <token regexp="yes">[а-яё][а-яё-]*</token>
                <token><exception regexp="yes">&pnct;</exception></token>
                <marker>
                    <token case_sensitive="yes" postag='VB:.*' postag_regexp="yes" regexp="yes">[А-ЯЁ][а-яё]*<exception postag="NN:.*|PNN:.*|ADJ:.*" postag_regexp="yes"></exception><exception>Три</exception></token>
                </marker>
                <token><exception regexp="yes">&pnct;</exception></token>
            </pattern>
            <message>Пропущена точка или слово ошибочно написано с прописной буквы.</message>
            <short>Прописная буква или пропущен знак</short>
            <example correction="">В лесу <marker>Родилась</marker> ёлочка.</example>
            <example>В лесу родилась ёлочка.</example>
        </rule>
        <rulegroup default="on" id="B_S_kosvr" name="Большая или маленькая буква в цитате при передаче косвенной речи">
            <rule>
                <pattern case_sensitive="yes">
                    <token>,</token>
                    <marker>
                        <token>что</token>
                        <token regexp="yes">["«]</token>
                        <token regexp="yes">[А-Я].*<exception postag_regexp="yes" postag="NN:.*|ABR:.*|UNKNOWN"></exception></token>
                    </marker>
                    <token></token>
                </pattern>
                <message>Использование большой буквы в цитате при передаче косвенной речи является ошибкой: <suggestion><match no="2"></match> <match no="3"></match><match no="4" case_conversion="alllower"></match></suggestion></message>
                <short>Требуется маленькая буква</short>
                <example>Как сказал А.П. Чехов, что «в человеке должно быть все прекрасно».</example>
                <example correction="что «в">Как сказал А.П. Чехов, <marker>что «В</marker> человеке должно быть все прекрасно».</example>
            </rule>
        </rulegroup>
       

    </category>
   
    <category id="EXTEND" name="Дополнительные правила">
        
         <!--    -->        
        <rulegroup id="Rod_suschestvitelnykh_Neut" name="Несклоняемые существительные иноязычного происхождения среднего рода">
            
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Masc:.*|ADJ:Posit:Fem:.*" postag_regexp="yes"/>                 
                        <token>кашне</token>
                </pattern>
                <message>Несклоняемое существительное иноязычного происхождения, которое относится к среднему роду</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Кашне – среднего рода</short>
                <example correction="">Она вяжет <marker>шерстяной кашне</marker>.</example>
                <example>Она вяжет шерстяное кашне.</example>
            </rule>       
            
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Masc:.*|ADJ:Posit:Fem:.*" postag_regexp="yes"/>                    
                        <token>кашпо</token>                                
                </pattern>
                <message>Несклоняемое существительное иноязычного происхождения, которое относится к среднему роду</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Кашпо – среднего рода</short>
                <example correction="">Для цветка подойдёт <marker>большая кашпо</marker>.</example>
                <example>Для цветка подойдёт большое кашпо.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Masc:.*|ADJ:Posit:Fem:.*" postag_regexp="yes"/>                       
                        <token>трюмо</token>
                </pattern>
                <message>Несклоняемое существительное иноязычного происхождения, которое относится к среднему роду</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Трюмо – среднего рода</short>
                <example correction="">В прихожей стоит <marker>старая трюмо</marker>.</example>
                <example>В прихожей стоит старое трюмо.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Masc:.*|ADJ:Posit:Fem:.*" postag_regexp="yes"/>                  
                        <token>кимоно</token>
                </pattern>
                <message>Несклоняемое существительное иноязычного происхождения, которое относится к среднему роду</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Кимоно – среднего рода</short>
                <example correction="">
                    <marker>Красивая кимоно</marker> из Японии.</example>
                <example>Красивое кимоно из Японии.</example>
            </rule>                       
        </rulegroup>
        
        <rulegroup id="Rod_suschestvitelnykh_Fem_and_Masc" name="Род несклоняемых существительных, обозначающих лиц женского или мужского пола">
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Neut.*|ADJ:Posit:Fem:.*" postag_regexp="yes"/>                        
                        <token>портье</token>
                </pattern>
                <message>Несклоняемые существительные, обозначающие лиц, относятся к мужскому или женскому роду в зависимости от пола обозначаемого лица</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Портье – мужского рода</short>
                <example correction=""><marker>Старое портье</marker> давно работает в нашем отеле.</example>
                <example>Старый портье давно работает в нашем отеле.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Neut.*" postag_regexp="yes"/>                       
                        <token>инженю</token>
                </pattern>
                <message>Несклоняемые существительные, обозначающие лиц, относятся к мужскому или женскому роду в зависимости от пола обозначаемого лица</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Инженю – женского рода</short>
                <example correction="">Её актёрское амплуа – <marker>простодушное инженю</marker>.</example>
                <example>Её актёрское амплуа – простодушная инженю.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Neut.*|ADJ:Posit:Fem:.*" postag_regexp="yes"/>                        
                        <token>рефери</token>
                </pattern>
                <message>Несклоняемые существительные, обозначающие лиц, относятся к мужскому или женскому роду в зависимости от пола обозначаемого лица</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Рефери – мужского рода</short>
                <example correction="">
                    <marker>Молодое рефери</marker> объявляет победителя.</example>
                <example>Известный рефери объявляет победителя.</example>
            </rule>
            
            
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Neut.*|ADJ:Posit:Fem:.*" postag_regexp="yes"/>                        
                        <token>рантье</token>
                </pattern>
                <message>Несклоняемые существительные, обозначающие лиц, относятся к мужскому или женскому роду в зависимости от пола обозначаемого лица</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Рантье – мужского рода</short>
                <example correction=""><marker>Старое рантье</marker> любит деньги.</example>
                <example>Старый рантье любит деньги.</example>
            </rule>           
        </rulegroup>
        <rulegroup id="Rod_suschestvitelnykh_odush_bird_animal" name="Род несклоняемых существительных, обозначающих одушевлённые предметы, птиц, животных">           
            <rule>   
                <pattern>
                        <token postag="ADJ:Posit:Neut:.*" postag_regexp="yes" />           
                        <token>пони</token>
                </pattern>
                <message>Несклоняемые существительные, обозначающие одушевлённые предметы, птиц, животных, относятся к мужскому роду</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Пони – мужского рода</short>
                <example correction="">Какое <marker>забавное пони</marker>.</example>
                <example>Какой забавный пони.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token  postag="ADJ:Posit:Neut:.*" postag_regexp="yes"  />                       
                        <token>колибри</token>
                </pattern>
                <message>Несклоняемые существительные, обозначающие одушевлённые предметы, птиц, животных, относятся к мужскому роду</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Колибри – мужского рода</short>
                <example correction=""><marker>Крошечное колибри</marker> порхает около цветка.</example>
                <example>Крошечный колибри порхает около цветка.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token  postag="ADJ:Posit:Neut:.*" postag_regexp="yes"  />                        
                        <token>шимпанзе</token>
                </pattern>
                <message>Несклоняемые существительные, обозначающие одушевлённые предметы, птиц, животных, относятся к мужскому роду</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Шимпанзе – мужского рода</short>
                <example correction=""><marker>Старое шимпанзе</marker> – вожак стаи.</example>
                <example>Старый шимпанзе – вожак стаи.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token  postag="ADJ:Posit:Neut:.*" postag_regexp="yes"     />  
                        <token>какаду</token>
                </pattern>
                <message>Несклоняемые существительные, обозначающие одушевлённые предметы, птиц, животных, относятся к мужскому роду</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Какаду – мужского рода</short>
                <example correction="">На ветке сидит <marker>белое какаду</marker>.</example>
                <example>На ветке сидит белый какаду.</example>
            </rule>           
        </rulegroup>
        
        <rulegroup id="Rod_suschestvitelnykh_geograph" name="Род несклоняемых существительных, обозначающих географические названия">
            <rule>   
                <pattern>
                        <token>Майами</token>                   
                        <token postag="VB:Past:.*:.*:Neut|VB:Past:.*:.*:Fem|PT:Past:.*:Neut|PT:Past:.*:Fem|PT_Short:.*:.*:Neut|PT_Short:.*:.*:Fem" postag_regexp="yes"/>
                </pattern>
                <message>Род несклоняемых существительных, обозначающих географические названия, определяется по роду существительного – родового понятия</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Майями – мужского рода (город)</short>
                <example correction=""><marker>Майами залито</marker> солнцем.</example>
                <example>Майами залит солнцем.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token>Палермо</token>   
                        <token postag="VB:Past:.*:.*:Neut|VB:Past:.*:.*:Fem|PT:Past:.*:Neut|PT:Past:.*:Fem|PT_Short:.*:.*:Neut|PT_Short:.*:.*:Fem" postag_regexp="yes"/>
                </pattern>
                <message>Род несклоняемых существительных, обозначающих географические названия, определяется по роду существительного – родового понятия</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Палермо – мужского рода (город)</short>
                <example correction=""><marker>Палермо основано</marker> ещё до нашей эры.</example>
                <example>Палермо основан ещё до нашей эры.</example>
            </rule>           
            
            <rule>   
                <pattern>
                        <token>Хуанхэ</token>                 
                        <token postag="ADJ:Short:Neut|VB:Past:.*:.*:Neut|VB:Past:.*:.*:Masc|PT:Past:.*:Neut|PT:Past:.*:Masc|PT_Short:.*:.*:Neut|PT_Short:.*:.*:Masc" postag_regexp="yes"/>
                </pattern>
                <message>Род несклоняемых существительных, обозначающих географические названия, определяется по роду существительного – родового понятия</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Хуанхэ – женского рода (река)</short>
                <example correction=""><marker>Хуанхэ подвержено</marker> наводнениям.</example>
                <example>Хуанхэ подвержена наводнениям.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token>Янцзы</token>                     
                        <token postag="VB:Past:.*:.*:Neut|VB:Past:.*:.*:Masc|PT:Past:.*:Neut|PT:Past:.*:Masc|PT_Short:.*:.*:Neut|PT_Short:.*:.*:Masc" postag_regexp="yes"/>
                </pattern>
                <message>Род несклоняемых существительных, обозначающих географические названия, определяется по роду существительного – родового понятия</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Янцзы – женского рода (река)</short>
                <example correction=""><marker>Янцзы вышло</marker> из берегов.</example>
                <example>Янцзы вышла из берегов.</example>
            </rule>
        </rulegroup>
        <rulegroup id="Postrojenije_slovosochetanij_sobir_noun" name="Сказуемое при подлежащем, выраженном собирательными существительными">      
            <rule>   
                <pattern>
                        <token>молодёжь</token>          
                        <token postag="VB:Past:.*:.*:PL|VB:Fut:PL:P3|VB:Real:PL:P3" postag_regexp="yes"/>
                </pattern>
                <message>Сказуемое должно стоять в той же форме, что и подлежащее</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B3%D0%BB%D0%B0%D1%81%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5</url>
                <short>Ошибка в согласовании</short>
                <example correction=""><marker>Молодёжь собрались</marker> у костра.</example>
                <example>Молодёжь собралась у костра.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token>группа</token>     
                        <token postag="VB:Past:.*:.*:PL|VB:Fut:PL:P3|VB:Real:PL:P3" postag_regexp="yes"/>
                </pattern>
                <message>Сказуемое должно стоять в той же форме, что и подлежащее</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B3%D0%BB%D0%B0%D1%81%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5</url>
                <short>Ошибка в согласовании</short>
                <example correction=""><marker>Группа пришли</marker> на лекцию в полном составе.</example>
                <example>Группа пришла на лекцию в полном составе.</example>
            </rule>            
        </rulegroup>
        
        <rulegroup id="Postrojenije_slovosochetanij_upravlenie1" name="Управление (употребление падежа)">                
            <rule>   
                <pattern>
                        <token>заведующая</token>           
                        <token postag="NN:Inanim:Masc:Sin:R|NN:Inanim:Fem:Sin:R" postag_regexp="yes"/>
                </pattern>
                <message>Ошибка в употреблении падежа, нужен творительный падеж: заведующая чем?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Ошибка в управлении</short>
                <example correction=""><marker>Заведующая детсада</marker> собрала совещание.</example>
                <example>Заведующая детсадом собрала совещание.</example>
            </rule>
            
            <rule>   
                <pattern>
                        <token>в</token>
                        <token>соответствии</token>
                        <token>с</token>                  
                        <token postag="NN:Inanim:Masc:.*:R|NN:Inanim:Fem:.*:R|NN:Inanim:Masc:.*:D|NN:Inanim:Fem:.*:D" postag_regexp="yes"/>
                </pattern>
                <message>Ошибка в употреблении падежа: нужен творительный падеж: в соответствии с чем?</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Ошибка в управлении</short>
                <example correction="">Выполните сборку <marker>в соответствии с инструкции</marker>.</example>
                <example>Выполните сборку в соответствии с инструкцией.</example>
            </rule>            
        </rulegroup>       
      
        <rulegroup id="Obrazovanie_form_suschestvitelnykh_prof" name="Обозначение лиц по профессии, ...">
            
            <rule>   
                <pattern>
                    <token>директорша</token>
                </pattern>
                <message>Названия лиц по профессии, должности, званию сохраняют форму мужского рода даже тогда, когда относятся к женщине</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Требуется мужской род</short>
                <example correction="">Наша <marker>директорша</marker> очень строга.</example>
                <example>Наша директор очень строга.</example>
            </rule>
            
            <rule>   
                <pattern>
                    <token>докторша</token>
                </pattern>
                <message>Названия лиц по профессии, должности, званию сохраняют форму мужского рода даже тогда, когда относятся к женщине</message>
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Требуется мужской род</short>
                <example correction="">Это <marker>докторша</marker> Петрова.</example>
                <example>Это доктор Петрова.</example>
            </rule>
            
            <rule>   
                <pattern>
                    <token>лаборантка</token>
                </pattern>
                <message>Названия лиц по профессии, должности, званию сохраняют форму мужского рода даже тогда, когда относятся к женщине</message>          
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>           
                <short>Требуется мужской род</short>
                <example correction=""><marker>Лаборантка</marker> Иванова в отпуске.</example>
                <example>Лаборант Иванова в отпуске.</example>
            </rule>
            
            <rule>   
                <pattern>
                    <token>врачиха</token>
                </pattern>
                <message>Названия лиц по профессии, должности, званию сохраняют форму мужского рода даже тогда, когда относятся к женщине</message>               
                <url>http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D0%B4_%28%D0%BB%D0%B8%D0%BD%D0%B3%D0%B2%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0%29</url>
                <short>Требуется мужской род</short>              
                <example correction="">На их участке хорошая <marker>врачиха</marker>.</example>
                <example>На их участке хорошая врач.</example>
            </rule>
        </rulegroup>       
       
<!--    
        <rulegroup id="Postrojenije_slovosochetanij_skazuem_Pl" name="Употребление числа сказуемого: мн. ч.">
            <rule>   
                <pattern>
                    <marker>
                        <token postag="VB:Fut:Sin:P3|VB:Real:Sin:P3|VB:Past:.*:.*:Neut" postag_regexp="yes"><exception>составляет</exception></token> 
                        <token regexp="yes">три|четыре|две</token>     
                    </marker>
                </pattern>
                <message>При числительных два, три, четыре сказуемое обычно стоит во мн. числе</message>
                <short>Ошибка в согласовании</short>
                <example type="incorrect">На столе <marker>лежит три</marker> книги.</example>
                <example type="incorrect"><marker>Вошло четыре</marker> человека.</example>
                <example type="incorrect">От нашей школы на соревнования <marker>поехало две</marker> ученицы.</example>
                <example>От нашей школы на соревнования поехали две ученицы.</example>
                <example>Вошли четыре человека.</example>
                <example>На столе лежат три книги.</example>
                <example>Бюджет проекта составляет три миллиона рублей.</example>
            </rule>

            <rule>   
                <pattern>
                    <marker>
                        <token postag="VB:Fut:Sin:P3|VB:Real:Sin:P3|VB:Past:.*:.*:Neut" postag_regexp="yes"><exception>составляет</exception></token> 
                        <token>двадцать</token>
                        <token>два</token>
                    </marker>
                </pattern>
                <message>При числительных два, три, четыре сказуемое обычно стоит во мн. числе</message>
                <short>Ошибка в согласовании</short>
                <example type="incorrect">В ВУЗ <marker>поступило двадцать два</marker> выпускника нашей школы.</example>
                <example>В ВУЗ поступили двадцать два выпускника нашей школы.</example>
            </rule>
        </rulegroup>
-->
        <rulegroup id="Postrojenije_slovosochet_mnogo_malo_nemnogo_nemalo" name="Согласование подлежащего, выраженного оборотом со словами «много, мало, немного, немало», и сказуемого">
            <rule>   
                <pattern>
                    <marker>
                        <token regexp="yes">много|немало|немного|мало<exception scope="previous" postag="PNN:.*|NN:.*:Nom|VB:.*" postag_regexp = "yes"></exception><exception scope="previous" regexp = "yes">,|;|:</exception></token>
                        <token postag="VB:Past:INTR:.*:PL" postag_regexp="yes">  <!-- temp remove |VB:Fut:.*:.*:PL:P3|VB:Real:.*:.*:PL:P3 to avoid false positives -->
                            <exception scope="next" postag="PNN:.*|NN:.*:Nom" postag_regexp = "yes"></exception>
                        </token>
                    </marker>
                </pattern>
                <message>Стиль: если подлежащее выражено оборотом со словами: «много», «мало», «немного», «немало» – сказуемое обычно ставится в форме единственного числа.</message>
                <url>http://new.gramota.ru/spravka/letters?id=64</url>
                <short>Стиль: обычно требуется единственное число</short>
                <example type="incorrect"><marker>Много нашлись</marker> желающих присоединиться.</example>
                <example>Много нашлось желающих присоединиться.</example>
                <example type="incorrect"><marker>Немало были</marker> и отказавшихся.</example>
                <example>Немало было и отказавшихся.</example>
                <example type="incorrect"><marker>Немного пришли</marker> людей его поддержать.</example>
                <example>Немного пришло людей его поддержать.</example>
                <example type="incorrect"><marker>Мало остались</marker> в живых.</example>
                <example>Мало осталось в живых.</example>
                <example>Торговля приносит немало прибыли.</example>
                <example>Они много разговаривали.</example>
                <example>Мы принимали участие в экскурсиях, совершали пешие прогулки, катались верхом и, конечно, много купались, ныряли и загорали.</example>                           
            </rule>
        </rulegroup>
 
        <rulegroup id="Postrojenije_slovosochetanij_skazuem_sing" name="Употребление числа сказуемого: ед. ч."> 
            <rule>   
                <pattern>
                        <token postag="PT_Short:Past:.*:PL|PT_Short:Past:.*:Neut|PT_Short:Past:.*:Masc" postag_regexp="yes"/>
                        <token regexp="yes">тысяча|сотня</token>
                </pattern>
                <message>При словах «тысяча», «сотня», «миллион», «миллиард» сказуемое обычно стоит в ед. ч. и согласуется по роду</message>
                <short>Ошибка в согласовании</short>
                <example correction=""><marker>Получены тысяча</marker> книг для библиотеки.</example>
                <example correction=""><marker>Напечатано сотня</marker> экземпляров.</example>
                <example>Получена тысяча книг для библиотеки.</example>
                <example>Напечатана сотня экземпляров.</example>
            </rule>
 
            <rule>   
                <pattern>
                        <token postag="PT_Short:Past:.*:PL|PT_Short:Past:.*:Neut|PT_Short:Past:.*:Fem" postag_regexp="yes"/>
                        <token regexp="yes">миллион|миллиард</token>
                </pattern>
                <message>При словах «тысяча», «сотня», «миллион», «миллиард» сказуемое обычно стоит в ед. ч. и согласуется по роду</message>
                <short>Ошибка в согласовании</short>
                <example correction="">На благотворительность <marker>выделено миллион</marker> рублей.</example>                
                <example correction="">На благоустройство города <marker>выделено миллиард</marker> рублей.</example>
                <example>На благотворительность выделен миллион рублей.</example>
                <example>На благоустройство города выделен миллиард рублей.</example>
            </rule>
 
        </rulegroup>
            
        <rulegroup id="Obrazovanije_glagoln_form_imperativ" name="Образование повелительного наклонения">
            <rule>   
                <pattern>
                        <token>давайте</token>
                        <token postag_regexp="yes" postag="VB:IMP:.*:.*:PL:P2"/>
                </pattern>
                <message>Ошибка в образовании повелительного наклонения. Правильно: <suggestion>\2</suggestion></message>
                <short>Неправильная форма повелительного наклонения</short>
                <example correction="Посмотрите"><marker>Давайте посмотрите</marker> сюда.</example>
                <example>Посмотрите сюда.</example>
            </rule>

            <rule>   
                <pattern>
                        <token>давай</token>
                        <token postag_regexp="yes" postag="VB:IMP:.*:.*:Sin:P2"/>
                </pattern>
                <message>Ошибка в образовании повелительного наклонения. Правильно: <suggestion>\2</suggestion></message>
                <short>Неправильная форма повелительного наклонения</short>
                <example correction="Принеси"><marker>Давай принеси</marker> мне эту книгу завтра.</example>
                <example>Принеси мне эту книгу завтра.</example>
            </rule>

        </rulegroup>
        
        
        <rulegroup id="Obrazovanie_form_prilagat_sravnit_st" name="Образование степеней сравнения прилагательных">
            <rule>   
                <pattern>
                        <token>самый</token>               
                        <token postag="ADJ:Sup:.*" postag_regexp="yes"><exception regexp="yes">большой|малый|хороший|плохой|лучший</exception></token>                    
                </pattern>
                <message suppress_misspelled="yes">Сложная превосходная степень образуется с полной формой положительной степени прилагательного: <suggestion><match no="1"></match> <match no="2" postag="ADJ:Sup:(.*):(.*)" postag_regexp="yes" postag_replace="ADJ:Posit:$1:$2"></match></suggestion></message>
                <short>Сложная превосходная степень</short>
                <example correction="самый талантливый">Это <marker>самый талантливейший</marker> художник 19-го века.</example>
                <example>Это самый талантливый художник 19-го века.</example>
            </rule>

            <rule>   
                <pattern>
                        <token>самая</token>               
                        <token postag="ADJ:Sup:.*" postag_regexp="yes"><exception regexp="yes">большая|малая|хорошая|плохая|лучшая</exception></token>                    
                </pattern>
                <message suppress_misspelled="yes">Сложная превосходная степень образуется с полной формой положительной степени прилагательного: <suggestion><match no="1"></match> <match no="2" postag="ADJ:Sup:(.*):(.*)" postag_regexp="yes" postag_replace="ADJ:Posit:$1:$2"></match></suggestion></message>
                <short>Сложная превосходная степень</short>
                <example correction="самая красивая">Это <marker>самая красивейшая</marker> девочка в классе.</example>
                <example>Это самая красивая девочка в классе.</example>
            </rule>

            <rule>   
                <pattern>
                        <token>более</token>               
                        <token postag="ADJ:Sup:.*" postag_regexp="yes"/>                    
                </pattern>
                <message suppress_misspelled="yes">Сложная сравнительная степень образуется с полной формой положительной степени прилагательного: <suggestion><match no="1"></match> <match no="2" postag="ADJ:Sup:(.*):(.*)" postag_regexp="yes" postag_replace="ADJ:Posit:$1:$2"></match></suggestion></message>
                <short>Сложная сравнительная степень</short>
                <example correction="более вкусный">Это <marker>более вкуснейший</marker> салат.</example>
                <example>Это более вкусный салат.</example>
            </rule>

            <rule>   
                <pattern>
                        <token>менее</token>               
                        <token postag="ADJ:Sup:.*"  postag_regexp="yes"/>                    
                </pattern>
                <message suppress_misspelled="yes">Сложная сравнительная степень образуется с полной формой положительной степени прилагательного: <suggestion><match no="1"></match> <match no="2" postag="ADJ:Sup:(.*):(.*)" postag_regexp="yes" postag_replace="ADJ:Posit:$1:$2"></match></suggestion></message>
                <short>Сложная сравнительная степень</short>
                <example correction="менее сложная">Это <marker>менее сложнейшая</marker> задача.</example>
                <example>Это менее сложная задача.</example>
            </rule>

        </rulegroup>

        <rulegroup id="Obrazovanie_form_pril_i_mestoimenij" name="Образование местоимений 3 лица ед. и мн. ч.">
            <rule>   
                <pattern>
                        <token>лучше</token>
                        <token>её</token>
                </pattern>
                <message>Образование местоимений 3 лица ед. и мн. ч. Вы имели в виду <suggestion>лучше неё</suggestion>?</message>
                <example correction="лучше неё">Я знаю математику <marker>лучше её</marker>.</example>
                <example>Я знаю математику лучше неё.</example>
            </rule>
            <rule>   
                <pattern>
                    <token postag="SENT_START" />
                    <marker>
                        <token>лучше</token>
                        <token>них</token>
                    </marker>
                </pattern>
                <message>Образование местоимений 3 лица ед. и мн. ч. Вы имели в виду <suggestion>лучше их</suggestion>?</message>
                <example correction="Лучше их"><marker>Лучше них</marker> могут быть только горы.</example>
                <example>Лучше их могут быть только горы.</example>
            </rule>
            <rule>   
                <pattern>
                    <token postag="SENT_START" />
                    <marker>
                        <token>слева</token>
                        <token>от</token>
                        <token>её</token>
                    </marker>
                </pattern>
                <message>Образование местоимений 3 лица ед. и мн. ч. Вы имели в виду <suggestion>слева от неё</suggestion>?</message>
                <example correction="Слева от неё"><marker>Слева от её</marker> будет магазин.</example>
                <example>Слева от неё будет магазин.</example>
            </rule>
            <rule>   
                <pattern>
                    <token postag="SENT_START" />
                    <marker>
                        <token>между</token>
                        <token>неё</token>
                        <token>и</token>
                        <token>моим</token>
                    </marker>
                </pattern>
                <message>Образование местоимений 3 лица ед. и мн. ч. Вы имели в виду <suggestion>между её и моим</suggestion>?</message>
                <example correction="Между её и моим"><marker>Между неё и моим</marker> произношением нет разницы.</example>
                <example>Между её и моим произношением нет разницы.</example>
            </rule>
        </rulegroup> 

        <rulegroup id="Obrazovanije_slozhnyh_slov" name="Образование сложных слов">
            <rule>   
                <pattern>
                        <token>четверть</token>           
                        <token inflected="yes">финал</token>           
                </pattern>
                <message>Образование сложных слов. Вы имели в виду <suggestion>четверть\2</suggestion>?</message>
                <short>«Четвертьфинал» пишется слитно</short>
                <example correction="четвертьфинал">Команда вышла в <marker>четверть финал</marker>.</example>
                <example>Команда вышла в четвертьфинал.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>сто</token>           
                        <token>дневное</token>           
                </pattern>
                <message> Образование сложных слов. Вы имели в виду <suggestion>стодневное</suggestion>?</message>
                <short>«Стодневное» пишется слитно</short>
                <example correction="стодневное">Это было <marker>сто дневное</marker> путешествие.</example>
                <example>Это было стодневное путешествие.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>пол</token>           
                        <token>листа</token>           
                </pattern>
                <message>Если в сложном слове с корнем «пол» второе слово начинается с согласной «л», то пишем его через дефис. Вы имели в виду <suggestion>пол-листа</suggestion>?</message>
                <short>«Пол-листа» пишем через дефис</short>
                <example correction="пол-листа">Она исписала <marker>пол листа</marker>.</example>
                <example>Она исписала пол-листа.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>пол</token>           
                        <token>луковицы</token>           
                </pattern>
                <message>Если в сложном слове с корнем «пол» второе слово начинается с согласной «л», то пишем его через дефис. Вы имели в виду <suggestion>пол-луковицы</suggestion>?</message>
                <short>«Пол-луковицы» пишем через дефис</short>
                <example correction="пол-луковицы">Для этого блюда возьмите <marker>пол луковицы</marker>.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>пол</token>           
                        <token>урока</token>           
                </pattern>
                <message>Если в сложном слове с корнем «пол» второе слово начинается с гласной, то пишем его через дефис. Вы имели в виду <suggestion>пол-урока</suggestion>?</message>
                <short>«Пол-урока» пишем через дефис</short>
                <example correction="Пол-урока"><marker>Пол урока</marker> мы писали диктант.</example>
                <example>Пол-урока мы писали диктант.</example>
            </rule>   
        </rulegroup>
        
        <rulegroup id="missing_prep_v_vide" name="Пропущен предлог: «в виде»">
            <rule>
                <antipattern>
                    <token postag="SENT_START" skip="-1"></token>
                    <token skip="-1">в</token>
                    <token>виде</token>  
                </antipattern> 
                <pattern>
                    <token postag="NN:.*" postag_regexp="yes"><exception postag="NN:.*" postag_regexp="yes" negate_pos="yes"></exception></token>
                    <token>виде</token>
                </pattern>
                <message>Пропущен предлог. Ожидается: <suggestion>\1 в \2</suggestion>?</message>
                <short>«в виде»?</short>
                <example correction="условие в виде">Здесь используется граничное <marker>условие виде</marker> идеально поглощающего слоя.</example>
                <example>Здесь используется граничное условие в виде идеально поглощающего слоя.</example>
                <example>Они завоевали призвание в самом популярном в Великобритании и мире виде спорта — футболе.</example>
            </rule>   
        </rulegroup>    

        <rulegroup id="Nepraviln_pristavki" name="Неправильное использование предлогов">

            <rule>   
                <pattern>
                        <token inflected="yes">заскочить</token>
                        <token>на</token>
                </pattern>
                <message>Неправильное использование предлогов. Вы имели в виду <suggestion>вскочить на</suggestion>?</message>
                <short>Правильно «вскочить на»</short>
                <example correction="вскочить на">Он собрался <marker>заскочить на</marker> стул.</example>
                <example>Он собрался вскочить на стул.</example>
            </rule>   
        </rulegroup>         
         
        <rulegroup id="Lishnij_sojuz" name="Лишний союз">
            <rule>   
                <pattern>
                        <token postag="CONJ"/>
                        <token>однако</token>
                        <token>не</token>
                </pattern>
                <message>Лишний союз. Вы имели в виду <suggestion>однако не</suggestion>?</message>
                <short>Правильно «однако не»</short>
                <example correction="однако не">Она знала, что может опоздать, <marker>но однако не</marker> вызвала такси.</example>
                <example>Она знала, что может опоздать, однако не вызвала такси.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token postag="CONJ"/>
                        <token>тем</token>
                        <token>более</token>
                        <token>что</token>
                </pattern>
                <message>Лишний союз. Вы имели в виду <suggestion>тем более что</suggestion>?</message>
                <short>Правильно «тем более что»</short>
                <example correction="тем более что">Мы все равно не смогли бы пойти, <marker>и тем более что</marker> билеты уже раскуплены.</example>
                <example>Мы все равно не смогли бы пойти, тем более что билеты уже раскуплены.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>и</token>
                        <token>долго</token>
                        <token>и</token>
                        <token>упорно</token>
                </pattern>
                <message>Лишний союз. Вы имели в виду <suggestion>долго и упорно</suggestion>?</message>
                <short>Правильно «долго и упорно»</short>
                <example correction="долго и упорно">Он шел к цели <marker>и долго и упорно</marker>.</example>
                <example>Он шел к цели долго и упорно.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token postag="CONJ"/>
                        <token>тем</token>
                        <token>не</token>
                        <token>менее</token>
                </pattern>
                <message>Лишний союз. Вы имели в виду <suggestion>тем не менее</suggestion>?</message>
                <short>Правильно 'тем не менее'</short>
                <example correction="тем не менее">Утро было солнечным, <marker>однако тем не менее</marker> вечером ударил мороз.</example>
                <example>Утро было солнечным, тем не менее, вечером ударил мороз.</example>
            </rule>   
        </rulegroup>


        <rulegroup id="Upotreblenije_predlogov" name="Употребление предлогов">
            <rule>   
                <pattern>
                        <token inflected="yes">описывать</token>
                        <token>про</token>          
                </pattern>
                <message>Описывать что-то, а не про что-то. Вы имели в виду <suggestion>описывать</suggestion>?</message>
                <short>Лишний предлог</short>
                <example correction="описывать">Эта книга <marker>описывает про</marker> события, которые происходили в прошлом веке.</example>
                <example>Эта книга описывает события, которые происходили в прошлом веке.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>от</token>
                        <token>утра</token>
                        <token>до</token>
                        <token>вечера</token>
                </pattern>
                <message>Неправильный предлог. Вы имели в виду <suggestion>с утра до вечера</suggestion>?</message>
                <short>Правильно «с утра»</short>
                <example correction="С утра до вечера"><marker>От утра до вечера</marker> она трудилась в редакции.</example>
                <example>С утра до вечера она трудилась в редакции.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token inflected="yes">оплатить</token>
                        <token>за</token>          
                </pattern>
                <message>Оплатить что-то, а не за что-то. Вы имели в виду <suggestion>оплатить</suggestion>?</message>
                <short>Лишний предлог</short>
                <example correction="оплатить">Ты забыл <marker>оплатить за</marker> проезд.</example>
                <example>Ты забыл оплатить проезд.</example>
            </rule>   
        </rulegroup>

        <rulegroup id="skolko_vremeni" name="Словосочетание: «сколько времени»">
            <rule>   
                <pattern>
                        <token>сколько</token>
                        <token>время</token>
                </pattern>
                <message>Правильно <suggestion>сколько времени</suggestion> или <suggestion>который час</suggestion> ?</message>
                <short>Несогласованная фраза</short>
                <example correction="Сколько времени|Который час"><marker>Сколько время</marker>?</example>
                <example>Который час?</example>
            </rule>
        </rulegroup>
        
        <rulegroup id="Kontrol_za_nad" name="«Контроль за» или «контроль над»">
            <rule>   
                <pattern>
                        <token>контроль</token>
                        <token>за</token>
                        <token>деятельностью</token>
                </pattern>
                <message>В официальной и профессионально-технической речи – «контроль чего-либо». Вы имели в виду: <suggestion>контроль деятельности</suggestion>?</message>
                <url>http://new.gramota.ru/spravka/trudnosti?layout=item&amp;id=36_161</url>
                <short>Лучше «контроль деятельности»</short>
                <example correction="Контроль деятельности"><marker>Контроль за деятельностью</marker> нижестоящих органов.</example>
                <example>Контроль деятельности нижестоящих органов.</example>
            </rule>
            <rule>   
                <pattern>
                        <token>контроль</token>
                        <token>за</token>
                        <token>предприятием</token>
                </pattern>
                <message>При отвлеченных существительных – «контроль над чем-либо». Вы имели в виду: <suggestion>контроль над предприятием</suggestion>?</message>
                <url>http://new.gramota.ru/spravka/trudnosti?layout=item&amp;id=36_161</url>
                <short>Правильно «контроль над предприятием»</short>
                <example correction="контроль над предприятием">Приобрести <marker>контроль за предприятием</marker>.</example>
                <example>Приобрести контроль над предприятием.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>контроль</token>
                        <token>над</token>
                        <token>качеством</token>
                        <token regexp="yes">работы|работ</token>
                </pattern>
                <message>При существительных, обозначающих действие или признак – пишем «контроль за» (за качеством работы, за работой станка): <suggestion>\1 за \3 \4</suggestion></message>
                <url>http://new.gramota.ru/spravka/trudnosti?layout=item&amp;id=36_161</url>
                <short>Правильно «контроль за качеством работы»</short>
                <example correction="контроль за качеством работы">Осуществлять <marker>контроль над качеством работы</marker>. </example>
                <example>Осуществлять контроль за качеством работы. </example>
            </rule>   
            <rule>   
                <pattern>
                        <token>контроль</token>
                        <token>за</token>
                        <token postag_regexp="yes" postag="NN:(Anim|Fam|Name|Patr):.*"></token>
                </pattern>
                <message>При одушевленных существительных – пишем «контроль над». Вы имели в виду: <suggestion>\1 над \3</suggestion>?</message>
                <url>http://new.gramota.ru/spravka/trudnosti?layout=item&amp;id=36_161</url>
                <short>Правильно «контроль над кем-либо»</short>
                <example correction="контроль над специалистами">Осуществлять <marker>контроль за специалистами</marker> на предприятии.</example>
                <example>Осуществлять контроль над специалистами на предприятии.</example>
            </rule>   
        </rulegroup>

        <rulegroup id="Skazuem_sovmestnoje_dejstvije" name="Согласование сказуемого с подлежащим, выраженным счётным оборотом, при подчёркнутой совместности действия" default="off">
            <rule>   
                <pattern>
                        <token postag="VB:Past:.*:.*:PL|VB:Fut:.*:.*:PL:P3|VB:Real:.*:.*:PL:P3" postag_regexp="yes"/>
                        <token>двадцать</token>
                </pattern>
                <message>Если подлежащее выражено счётным оборотом, и подчёркивается совместность действия, сказуемое ставим в единственном числе.</message>
                <short>Ошибка в согласовании</short>
                <example correction="">В аудитории <marker>сидели двадцать</marker> студентов.</example>
                <example>В аудитории сидело двадцать студентов.</example>
            </rule>
            <rule>   
                <pattern>
                        <token postag="VB:Past:.*:.*:PL|VB:Fut:.*:.*:PL:P3|VB:Real:.*:.*:PL:P3" postag_regexp="yes"/>
                        <token>десять</token>
                </pattern>
                <message>Если подлежащее выражено счётным оборотом, и подчёркивается совместность действия, сказуемое ставим в единственном числе.</message>
                <short>Ошибка в согласовании</short>
                <example correction="">На семинар <marker>пришли десять</marker> человек.</example>
                <example>На семинар пришло десять человек.</example>
            </rule>
            <rule>   
                <pattern>
                        <token postag="VB:Past:.*:.*:PL|VB:Fut:.*:.*:PL:P3|VB:Real:.*:.*:PL:P3" postag_regexp="yes"/>
                        <token>двадцать</token>
                        <token>пять</token>
                </pattern>
                <message>Если подлежащее выражено счётным оборотом, и подчёркивается совместность действия, сказуемое ставим в единственном числе.</message>
                <short>Ошибка в согласовании</short>
                <example correction="">Вдоль стены <marker>стояли двадцать пять</marker> стульев.</example>
                <example>Вдоль стены стояло двадцать пять стульев.</example>
            </rule>
            <rule>   
                <pattern>
                    <marker>
                        <token postag="VB:Past:.*:.*:PL|VB:Fut:.*:.*:PL:P3|VB:Real:.*:.*:PL:P3" postag_regexp="yes"/>
                        <token>восемь</token>
                    </marker>
                    <token min="0" max="2"></token>
                    <token>:</token>
                </pattern>
                <message>Если подлежащее выражено счётным оборотом, и подчёркивается совместность действия, сказуемое ставим в единственном числе.</message>
                <short>Ошибка в согласовании</short>
            <!--    <example correction="">На арену <marker>вышли восемь</marker> акробатов.</example> -->
                <example correction="">В Арктический совет <marker>входят восемь</marker> приарктических стран: Дания, Финляндия, Исландия, Канада, Норвегия, Россия, Швеция, США.</example>
                <example>На арену вышло восемь акробатов.</example>
            </rule> 
        </rulegroup>

        <rulegroup id="Predlogi_iz_s" name="Предлоги: «из» и «с»">
            <rule>   
                <pattern>
                       <token>с</token>          
                        <token>школы</token>
                </pattern>
                <message>Предлоги: «из» и «с» имеют антонимы (для «из» это «в», для «с» это «на»). По этим парам можно определить, какой предлог правильный. Например, если «В школу» – то «ИЗ школы»: <suggestion>из \2</suggestion></message>
                <short>Правильно «из школы»</short>
                <example correction="из школы">Вернувшись <marker>с школы</marker>, она сразу села читать. </example>
                <example>Вернувшись из школы, она сразу села читать. </example>
            </rule>   
            <rule>   
                <pattern>
                        <token>с</token>          
                        <token>командировки</token>
                </pattern>
                <message>Предлоги: «из» и «с» имеют антонимы (для «из» это «в», для «с» это «на»). По этим парам можно определить, какой предлог правильный. Например, если «В командировку» – то «ИЗ командировки»: <suggestion>из \2</suggestion></message>
                <short>Правильно «из командировки»</short>
                <example correction="из командировки">Они вернулись <marker>с командировки</marker> еще вчера.</example>
                <example>Они вернулись из командировки еще вчера.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>из</token>          
                        <token>Кавказа</token>
                </pattern>
                <message>Предлоги: «из» и «с» имеют антонимы (для «из» это «в», для «с» это «на»). По этим парам можно определить, какой предлог правильный Например, если «НА Кавказ» – то «С Кавказа»: <suggestion>с \2</suggestion></message>
                <short>Правильно «с Кавказа»</short>
                <example correction="с Кавказа">Мой дед родом <marker>из Кавказа</marker>.</example>
                <example>Мой дед родом с Кавказа.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>с</token>          
                        <token>армии</token>
                </pattern>
                <message>Предлоги: «из» и «с» имеют антонимы (для «из» это «в», для «с» это «на»). По этим парам можно определить, какой предлог правильный. Например, если «В армию» – то «ИЗ армии»<suggestion>из \2</suggestion></message>
                <short>Правильно «из армии»</short>
                <example correction="из армии">Он пришел <marker>с армии</marker> на прошлой неделе.</example>
                <example>Он пришел из армии на прошлой неделе.</example>
            </rule>   
        </rulegroup>


        <rulegroup id="Trudn_sluchai_upravl" name="Трудные случаи управления">
            <rule>   
                <pattern>
                        <token>жажда</token>
                        <token>к</token>
                </pattern>
                <message>Трудный случай управления: правильно – жажда чего-то, а не к чему-то</message>
                <short>Ошибка в управлении</short>
                <example correction=""><marker>Жажда к</marker> власти погубила его.</example>
                <example>Жажда власти погубила его.</example>
            </rule>   
        </rulegroup>

        <rulegroup id="Sklonenije_suschestvit_PL" name="Склонение некоторых существительных во множ. числе">
           <rule>   
                <pattern>
                        <token>листья</token>                  
                        <token>бумаги</token>                  
                </pattern>
                <message>Для различения лексич. значений некоторых существительных во мн.ч. используют разные окончания: «-ы»/«-и» или «-а»/«-я». Вы имели в виду <suggestion>листы бумаги</suggestion>?</message>
                <short>Правильно «листы бумаги»</short>
                <example correction="Листы бумаги"><marker>Листья бумаги</marker> разлетелись по комнате.</example>
                <example>Листы бумаги разлетелись по комнате.</example>
            </rule>   


            <rule>   
                <pattern>
                        <token>листы</token>                  
                        <token>деревьев</token>                  
                </pattern>
                <message>Для различения лексич. значений некоторых существительных во мн.ч. используют разные окончания: «-ы»/«-и» или «-а»/«-я». Вы имели в виду <suggestion>листья деревьев</suggestion>?</message>
                <short>Правильно «листья деревьев»</short>
                <example correction="Листья деревьев"><marker>Листы деревьев</marker> пожелтели.</example>
                <example>Листья деревьев пожелтели.</example>
            </rule>   


            <rule>   
                <pattern>
                        <token>коренья</token>                  
                        <token>дерева</token>                  
                </pattern>
                <message>Для различения лексич. значений некоторых существительных во мн.ч. используют разные окончания: «-ы»/«-и» или «-а»/«-я». Вы имели в виду <suggestion>корни дерева</suggestion>?</message>
                <short>Правильно «корни дерева»</short>
                <example correction="Корни дерева"><marker>Коренья дерева</marker> высохли.</example>
                <example>Корни дерева высохли.</example>
            </rule>   


            <rule>   
                <pattern>
                        <token>болят</token>                  
                        <token>зубья</token>                  
                </pattern>
                <message>Для различения лексич. значений некоторых существительных во мн.ч. используют разные окончания: «-ы»/«-и» или «-а»/«-я». Вы имели в виду <suggestion>болят зубы</suggestion>?</message>
                <short>Правильно «болят зубы»</short>
                <example correction="болят зубы">У него <marker>болят зубья</marker>.</example>
                <example>У него болят зубы.</example>
            </rule>   

        </rulegroup>


        <rulegroup id="Okonch_susch_masc_Predlozhn_opredeliteln" name="Окончание «-у» в предложн. падеже у сущ. муж. р. при выражении определительных отношений">


            <rule>   
                <pattern>
                        <token postag="NN:.*:.*:.*" postag_regexp="yes"/>
                        <token>на</token>                  
                        <token>мехе</token>                  
                </pattern>
                <message>При выражении определительных отношений у сущ. муж. рода в предложн. падеже пишем окончание «-у». Вы имели в виду <suggestion>\1 на меху</suggestion>?</message>
                <short>Правильно «на меху»</short>
                <example correction="сапоги на меху">Она купила <marker>сапоги на мехе</marker>.</example>
                <example>Она купила сапоги на меху.</example>
            </rule>   

            <rule>   
                <pattern>
                        <token postag="NN:.*:.*:.*" postag_regexp="yes"/>
                        <token>в</token>                  
                        <token>снеге</token>                  
                </pattern>
                <message>При выражении определительных отношений у сущ. муж. рода в предложн. падеже пишем окончание «-у». Вы имели в виду <suggestion>\1 в снегу</suggestion>?</message>
                <short>Правильно «в снегу»</short>
                <example correction="одежда в снегу">Была вся <marker>одежда в снеге</marker>.</example>
                <example>Была вся одежда в снегу.</example>
            </rule>   

            <rule>   
                <pattern>
                        <token postag="NN:.*:.*:.*" postag_regexp="yes"/>
                        <token>в</token>                  
                        <token>меле</token>                  
                </pattern>
                <message>При выражении определительных отношений у сущ. муж. рода в предложн. падеже пишем окончание «-у». Вы имели в виду <suggestion>\1 в мелу</suggestion>?</message>
                <short>Правильно «в мелу»</short>
                <example correction="руки в мелу">Были его <marker>руки в меле</marker>.</example>
                <example>Его руки были в мелу.</example>
            </rule>   

            <rule>   
                <pattern>
                        <token postag="NN:.*:.*:.*" postag_regexp="yes"/>
                        <token>в</token>                  
                        <token>пухе</token>                  
                </pattern>
                <message>При выражении определительных отношений у сущ. муж. рода в предложн. падеже пишем окончание «-у». Вы имели в виду: <suggestion>\1 в пуху</suggestion>?</message>
                <short>Правильно «в пуху»</short>
                <example correction="покрывало в пуху">Было <marker>покрывало в пухе</marker>.</example>
                <example>Покрывало было в пуху.</example>
            </rule>   
        </rulegroup>
         
        <rulegroup id="Paronimy" name="Паронимы">
            <rule>   
                <pattern>
                        <token inflected="yes">эффектный</token>
                        <token inflected="yes">средство</token>
                </pattern>
                <message>Необходимо различать паронимы – близкие по звучанию, но разные по смыслу слова. Вы имели в виду: <suggestion><match no="1" regexp_match="([Ээ]ффектн)(.*)" regexp_replace="эффективн$2"></match> <match no="2"></match></suggestion>?</message>
                <short>Правильно «эффективное средство»</short>
                <example correction="Эффективное средство"><marker>Эффектное средство</marker> от простуды.</example>
                <example>Эффективное средство от простуды.</example>
            </rule>   

            <rule>   
                <pattern>
                    <token inflected="yes">поставить</token>
                    <token inflected="yes">роспись</token>
                </pattern>
                <message>Необходимо различать паронимы – близкие по звучанию, но разные по смыслу слова. Вы имели в виду: <suggestion><match no="1"></match> <match no="2" regexp_match="([Рр]осп)(.*)" regexp_replace="подп$2"></match></suggestion>?</message>
                <short>Правильно «поставить подпись»</short>
                <example correction="поставить подпись">Здесь нужно <marker>поставить роспись</marker>.</example>
                <example>Здесь нужно поставить подпись.</example>
            </rule>   

            <rule>   
                <pattern>
                    <token inflected="yes">вздохнуть</token>
                    <token inflected="yes">воздух</token>
                </pattern>
                <message>Необходимо различать паронимы – близкие по звучанию, но разные по смыслу слова. Вы имели в виду: <suggestion><match no="1" regexp_match="([Вв]здох)(.*)" regexp_replace="вдох$2"></match> <match no="2"></match></suggestion>?</message>
                <short>Правильно «вдохнуть воздух»</short>
                <example correction="вдохнул воздух">Он <marker>вздохнул воздух</marker>.</example>
                <example>Он вдохнул воздух.</example>
            </rule>   

            <rule>   
                <pattern>
                    <token inflected="yes">вздыхать</token>
                    <token inflected="yes">воздух</token>
                </pattern>
                <message>Необходимо различать паронимы – близкие по звучанию, но разные по смыслу слова. Вы имели в виду: «вдохнуть воздух»?</message>
                <short>Правильно «вдохнуть воздух»</short>
                <example correction="">Он <marker>вздыхал воздух</marker>.</example>
                <example>Он вдохнул воздух.</example>
            </rule>   

            <rule>   
                <pattern>
                    <token inflected="yes">различие</token>
                    <token>от</token>
                </pattern>
                <message>Необходимо различать паронимы – близкие по звучанию, но разные по смыслу слова. Вы имели в виду: <suggestion><match no="1" regexp_match="([Рр]азлич)(.*)" regexp_replace="отлич$2"></match> <match no="2"></match></suggestion>?</message>
                <short>Правильно «отличие от»</short>
                <example correction="отличие от">Его <marker>различие от</marker> предыдущего варианта незначительно.</example>
                <example>Его отличие от предыдущего варианта незначительно.</example>
            </rule>   

            <rule>   
                <pattern>
                    <token inflected="yes">представить</token>
                    <token>в</token>
                    <token>пользование</token>
                </pattern>
                <message>Необходимо различать паронимы – близкие по звучанию, но разные по смыслу слова. Вы имели в виду: <suggestion><match no="1" regexp_match="([Пп]редстав)(.*)" regexp_replace="предостав$2"></match> <match no="2"></match> <match no="3"></match></suggestion>?</message>
                <short>Правильно «предоставить в пользование»</short>
                <example correction="предоставить в пользование">Мы можем <marker>представить в пользование</marker> эти словари. </example>
                <example>Мы можем предоставить в пользование эти словари. </example>
            </rule>   
        </rulegroup>
  
        <rulegroup id="Tavtologija" name="Тавтология">
            <rule>   
                <pattern>
                        <token>следует</token>
                        <token>сказать</token>
                        <token>следующее</token>
                        <token>,</token>
                        <token>что</token>
                </pattern>
                <message>Это тавтология – неоправданное повторение однокоренных или созвучных слов. Вы имели в виду: <suggestion>следует сказать, что</suggestion>?</message>
                <short>Правильно «следует сказать, что»</short>
                <example correction="Следует сказать, что"><marker>Следует сказать следующее, что</marker> данное исключение только подтверждает правило.</example>
                <example>Следует сказать, что данное исключение только подтверждает правило.</example>
            </rule>   

            <rule>   
                <pattern>
                        <token>рост</token>
                        <token>авторитета</token>
                        <token>растёт</token>
                </pattern>
                <message>Это тавтология – неоправданное повторение однокоренных или созвучных слов. Вы имели в виду: <suggestion>авторитет растёт</suggestion>?</message>
                <short>Правильно «авторитет растёт»</short>
                <example correction="авторитет растёт">Ваш <marker>рост авторитета растёт</marker>.</example>
                <example>Ваш авторитет растёт. </example>
            </rule>   

            <rule>   
                <pattern>
                        <token>вновь</token>
                        <token inflected="yes">возобновить</token>
                </pattern>
                <message>Это тавтология – неоправданное повторение однокоренных или созвучных слов. Вы имели в виду: <suggestion>\2</suggestion>?</message>
                <short>Правильно «возобновить»</short>
                <example correction="возобновить">Мы планируем <marker>вновь возобновить</marker> выпуск этих товаров.</example>
                <example>Мы планируем возобновить выпуск этих товаров.</example>
            </rule>   

            <rule>   
                <pattern>
                    <token inflected="yes">смеяться</token>
                    <token>громким</token>
                    <token>смехом</token>
                </pattern>
                <message>Это тавтология – неоправданное повторение однокоренных или созвучных слов. Вы имели в виду: <suggestion>громко смеяться</suggestion>?</message>
                <short>Правильно «громко смеяться»</short>
                <example correction="громко смеяться">В библиотеке нельзя <marker>смеяться громким смехом</marker>.</example>
                <example>В библиотеке нельзя громко смеяться.</example>
            </rule>   


        </rulegroup>


        <rulegroup id="Chastitsa_NI_v_ustojchiv_vyrazh" name="Частица «ни» в устойчивых выражениях">
            <rule>   
                <pattern>
                        <token>не</token>
                        <token>свет</token>
                        <token>не</token>                  
                        <token>заря</token>                  
                </pattern>
                <message>Частица «ни» в устойчивых выражениях. Запятая не ставится. Вы имели в виду: <suggestion>ни свет ни заря</suggestion>?</message>
                <short>Правильно «ни свет ни заря»</short>
                <example correction="ни свет ни заря">Дети проснулись <marker>не свет не заря</marker>.</example>
                <example>Дети проснулись ни свет ни заря.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>не</token>
                        <token>днем</token>
                        <token>не</token>                  
                        <token>ночью</token>                  
                </pattern>
                <message>Частица «ни» в устойчивых выражениях. Запятая не ставится. Вы имели в виду: <suggestion>ни днем ни ночью</suggestion>?</message>
                <short>Правильно «ни днем ни ночью»</short>
                <example correction="Ни днем ни ночью"><marker>Не днем не ночью</marker> нет от них покоя.</example>
                <example>Ни днем ни ночью нет от них покоя.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>не</token>
                        <token>много</token>
                        <token>не</token>                  
                        <token>мало</token>                  
                </pattern>
                <message>Частица «ни» в устойчивых выражениях. Запятая не ставится. Вы имели в виду: <suggestion>ни много ни мало</suggestion>?</message>
                <short>Правильно «ни много ни мало»</short>
                <example correction="ни много ни мало">Он заработал <marker>не много не мало</marker> миллион.</example>
                <example>Он заработал ни много ни мало миллион.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>не</token>
                        <token>пуха</token>
                        <token>не</token>                  
                        <token>пера</token>                  
                </pattern>
                <message>Частица «ни» в устойчивых выражениях. Запятая не ставится. Вы имели в виду <suggestion>ни пуха ни пера</suggestion>?</message>
                <short>Правильно «ни пуха ни пера»</short>
                <example correction="ни пуха ни пера">Пожелать <marker>не пуха не пера</marker>.</example>
                <example>Пожелать ни пуха ни пера.</example>
            </rule>   
        </rulegroup>

        <rulegroup id="Chastitsa_NI_usilen_negat" name="Частица «ни» для усиления отрицания">
            <rule>   
                <pattern>
                        <token>нет</token>
                        <token>не</token>
                        <token postag="NN:.*:Masc:Sin:R|NN:.*:Fem:Sin:R|NN:.*:Neut:Sin:R" postag_regexp="yes"/>
                </pattern>
                <message>Частица «ни» для усиления отрицания. Вы имели в виду <suggestion>нет ни \3</suggestion>?</message>
                <short>Правильно «нет ни…»</short>
                <example correction="нет ни копейки">У меня с собой <marker>нет не копейки</marker>.</example>
                <example>У меня с собой нет ни копейки.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>не</token>
                        <token>было</token>
                        <token>не</token>
                        <token postag="NN:.*:Masc:Sin:R|NN:.*:Fem:Sin:R|NN:.*:Neut:Sin:R" postag_regexp="yes"/>
                </pattern>
                <message>Частица «ни» для усиления отрицания. Вы имели в виду <suggestion>не было ни \4</suggestion>?</message>
                <short>Правильно «не было ни…»</short>
                <example correction="не было ни цента">У него <marker>не было не цента</marker>.</example>
                <example>У него не было ни цента.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>не</token>
                        <token inflected="yes">сделать</token> 
                        <token>не</token>
                        <token postag="NN:.*:Sin:R|NN:.*:Sin:D" postag_regexp="yes"/>
                </pattern>
                <message>Частица «ни» для усиления отрицания. Вы имели в виду <suggestion>не \2 ни \4</suggestion>?</message>
                <short>Правильно «не сделать ни…»</short>
                <example correction="не сделала ни шагу">Она <marker>не сделала не шагу</marker>.</example>
                <example>Она не сделала ни шагу.</example>
            </rule>   
            <rule>   
                <pattern>
                        <token>не</token>
                        <token inflected="yes">заплатить</token> 
                        <token>не</token>
                        <token postag="NN:.*:Masc:Sin:R|NN:.*:Fem:Sin:R|NN:.*:Neut:Sin:R" postag_regexp="yes"/>
                </pattern>
                <message>Частица «ни» для усиления отрицания. Вы имели в виду <suggestion>не \2 ни \4</suggestion>?</message>
                <short>Правильно «не заплатить ни…»</short>
                <example correction="не заплатили ни рубля">Им <marker>не заплатили не рубля</marker>.</example>
                <example>Им не заплатили ни рубля.</example>
            </rule>   

        </rulegroup>


        <rulegroup id="Dvojnoe_negate_s_NE" name="Двойное отрицание с частицей «не»">
            <rule>
                <antipattern>
                    <marker>
                        <token>не</token>
                        <token inflected="yes">мочь</token>
                        <token>ни</token>
                        <token postag_regexp="yes" postag="VB:INF:.*" skip="-1"/>
                    </marker>
                    <token>,</token>
                    <token>ни</token> 
                </antipattern>   
   
                <pattern>
                    <marker>
                        <token>не</token>
                        <token inflected="yes">мочь</token>
                        <token>ни</token>
                        <token postag_regexp="yes" postag="VB:INF:.*" />
                    </marker>
                <!--    
                <token negate="yes">,</token>
                <token negate="yes">ни</token>
                -->                         
                </pattern>
                <message>Двойное отрицание с частицей «не»: <suggestion>не \2 не \4</suggestion></message>
                <short>Правильно два «НЕ»</short>
                <example correction="не мог не заметить">Он <marker>не мог ни заметить</marker> этого.</example>
                <example>Он не мог не заметить этого.</example>
                <example>Я не могу ни сделать превью, ни на рендер отправить.</example>
            </rule>   

          
            <rule>   
                <pattern>
                        <token>невозможно</token>
                        <token>ни</token>
                        <token postag_regexp="yes" postag="VB:INF:.*" />
                </pattern>
                <message>Двойное отрицание с частицей «не»: <suggestion>\1 не \3</suggestion></message>
                <short>Правильно два «НЕ»</short>
                <example correction="Невозможно не признать"><marker>Невозможно ни признать</marker> этого.</example>
                <example>Невозможно не признать этого.</example>
            </rule>   

        </rulegroup>

        <rulegroup id="Parnoje_upotrebl_NI" name="Парное употребление частицы «ни»">
            <rule>   
                <pattern>
                      <marker>
                        <token>не</token>
                        <token postag_regexp = "yes" postag ="NN:.*:.*:.*|PNN:.*:.*"></token>
                        <token>,</token>
                        <token>не</token>
                        <token postag_regexp = "yes" postag ="NN:.*:.*:.*|PNN:.*:.*"></token>
                      </marker>
                      <token negate="yes">и</token>
                </pattern>
                <message>Здесь необходимо парное употребление частицы «ни»: <suggestion>ни \2\3 ни \5</suggestion></message>
                <short>Правильно два «НИ»</short>
                <example correction="ни матери, ни отца">Он не помнил <marker>не матери, не отца</marker>.</example>
                <example>Он не помнил ни матери, ни отца.</example>
            </rule>
            <rule>   
                <pattern>
                      <marker>
                        <token>не</token>
                        <token postag_regexp="yes" postag="VB:INF:.*" />
                        <token>,</token>
                        <token>не</token>
                        <token postag_regexp="yes" postag="VB:INF:.*" />
                      </marker>
                      <token negate="yes">и</token>
                </pattern>
                <message>Здесь необходимо парное употребление частицы «ни»: <suggestion>ни \2\3 ни \5</suggestion></message>
                <short>Правильно два «НИ»</short>
                <example correction="ни видеть, ни знать">Не хочу его <marker>не видеть, не знать</marker>.</example>
                <example>Не хочу его ни видеть, ни знать.</example>
                <example>Не устанавливать, не подключать и не пользоваться электробытовыми приборами.</example>
            </rule>   
            <rule>   
                <pattern>
                      <marker>                  
                        <token>не</token>
                        <token postag="Ord:.*:.*" postag_regexp="yes"/>
                        <token>,</token>
                        <token>не</token>
                        <token postag="Ord:.*:.*" postag_regexp="yes"/>
                      </marker>
                      <token negate="yes">и</token>
                </pattern>
                <message>Здесь необходимо парное употребление частицы «ни»: <suggestion>ни \2\3 ни \5</suggestion></message>
                <short>Правильно два «НИ»</short>
                <example correction="ни первого, ни второго">Он не знал <marker>не первого, не второго</marker>.</example>
                <example>Он не знал ни первого, ни второго.</example>
            </rule>   
            <rule>   
                <pattern>
                      <marker>
                        <token>не</token>
                        <token postag="ADJ:Short:.*" postag_regexp="yes"/>
                        <token>,</token>
                        <token>не</token>
                        <token postag="ADJ:Short:.*" postag_regexp="yes"/>
                      </marker>
                      <token negate="yes">и</token>
                </pattern>
                <message>Здесь необходимо парное употребление частицы «ни»: <suggestion>ни \2\3 ни \5</suggestion></message>
                <short>Правильно два «НИ»</short>
                <example correction="ни красив, ни богат">Он не был <marker>не красив, не богат</marker>.</example>
                <example>Он не был ни красив, ни богат.</example>
            </rule>   

        </rulegroup>

        <rulegroup id="Predlogi_vsledstvije_napodobije" name="Предлоги: «наподобие»">
            <rule>   
                <pattern>
                        <token>на</token>
                        <token>подобии</token>
                        <token regexp="yes">тех|этих|этой|того|той|моей|твоей|вашей|нашей|их|его|этого|ее|моих|твоих|ваших|наших</token>
                </pattern>
                <message>Это предлог «в» с существительным на «–ие» в винит. падеже, окончание которого совпадает с окончанием этого существительного в им. падеже. Пишется слитно. Вы имели в виду <suggestion>наподобие \3</suggestion>?</message>
                <short>Правильно «наподобие»</short>
                <example correction="наподобие тех">Он купил шляпу <marker>на подобии тех</marker>, что носили в прошлом веке.</example>
                <example>Он купил шляпу наподобие тех, что носили в прошлом веке.</example>
            </rule>   

            <rule>   
                <pattern> 
                        <token>в</token>
                        <token>следствии</token>
                        <token regexp="yes">этого|чего|этих|этой|того|той|которого|которой|которых|моей|твоей|вашей|нашей|их|его|ее|моих|твоих|ваших|наших</token>
                </pattern>
                <message>Это предлог «в» с существительным на «–ие» в винит. падеже, окончание которого совпадает с окончанием этого существительного в им. падеже. Пишется слитно. Вы имели в виду <suggestion>вследствие \3</suggestion>?</message>
                <short>Правильно «вследствие»</short>
                <example correction="Вследствие чего"><marker>В следствии чего</marker> они были вынуждены обратиться в суд.</example>
                <example>Вследствие чего они были вынуждены обратиться в суд.</example>
            </rule>   

            <rule>   
                <pattern>
                        <token>в</token>
                        <token>следствие</token>
                        <token regexp="yes">этого|чего|которого|которой|которых|этих|этой|того|той|моей|твоей|вашей|нашей|их|его|ее|моих|твоих|ваших|наших</token>
                </pattern>
                <message>Это предлог «в» с существительным на «–ие» в винит. падеже, окончание которого совпадает с окончанием этого существительного в им. падеже. Пишется слитно. Вы имели в виду <suggestion>вследствие \3</suggestion>?</message>
                <short>Правильно «вследствие»</short>
                <example correction="Вследствие этого"><marker>В следствие этого</marker> произошёл сбой в системе.</example>
                <example>Вследствие этого произошёл сбой в системе.</example>
            </rule>   

        </rulegroup>

        <rulegroup id="Predlog_v_zakluchenije" name="Предлог «в заключение»">

            <rule>   
                <pattern>
                        <token>в</token>
                        <token>заключении</token>
                        <token regexp="yes">этого|чего|всего|которых|этой|того|той|моей|твоей|вашей|нашей|своей|своего|выступления|мероприятия|собрания|встречи|концерта|эфира|вышесказанного|позвольте|вышеупомянутого</token>
                </pattern>
                <message>Это предлог «в» с существительным на «–ие» в винит. падеже, окончание которого совпадает с окончанием этого существительного в им. падеже. Вы имели в виду <suggestion>в заключение \3</suggestion>?</message>
                <short>Правильно «в заключение»</short>
                <example correction="В заключение выступления"><marker>В заключении выступления</marker> он прочёл стихи.</example>
                <example>В заключение выступления он прочёл стихи. </example>
            </rule>   
        </rulegroup>

        <rulegroup id="Adv_vposledstvii" name="Наречие «впоследствии»">
            <rule>   
                <pattern>
                    <marker>
                        <token>в</token>
                        <token>последствии</token>
                    </marker>                    
                        <token postag_regexp = "yes" postag ="NN:.*:Masc:.*:.*|NN:.*:Fem:.*:.*|PNN:.*:.*"></token>                    
                </pattern>
                <message>Наречие «впоследствии» образовано сочетанием предлога «в» с существительным «последствие» в предложном падеже. Пишется слитно. Вы имели в виду <suggestion>впоследствии</suggestion>?</message> 
                <short>Правильно «впоследствии»</short>
                <example correction="Впоследствии"><marker>В последствии</marker> мы узнали правду.</example>
                <example>Впоследствии мы узнали правду.</example>
            </rule>   

            <rule>   
                <pattern>
                    <marker>
                        <token>в</token>
                        <token>последствие</token>
                    </marker>                   
                        <token postag_regexp = "yes" postag ="NN:.*:Masc:.*:.*|NN:.*:Fem:.*:.*|PNN:.*:.*"></token>
                </pattern>
                <message>Наречие «впоследствии» образовано сочетанием предлога «в» с существительным «последствие» в предложном падеже. Пишется слитно. Вы имели в виду <suggestion>впоследствии</suggestion>?</message> 
                <short>Правильно «впоследствии»</short>
                <example correction="Впоследствии"><marker>В последствие</marker> девушка часто вспоминала об этом.</example>
                <example>Впоследствии девушка часто вспоминала об этом.</example>
            </rule>   
        </rulegroup>
    </category> 
</rules>




© 2015 - 2025 Weber Informatics LLC | Privacy Policy