# Path: pymorphy/py3k.py
# PY3 = sys.version_info[0] == 3
# 
# Path: pymorphy/django_conf.py
#     PYMORPHY_DICTS = settings.PYMORPHY_DICTS
# MARKER_OPEN = getattr(settings, 'PYMORPHY_MARKER_OPEN', '\[\[')
# MARKER_CLOSE = getattr(settings, 'PYMORPHY_MARKER_CLOSE', '\]\]')
# 
# Path: pymorphy/contrib/tokenizers.py
# SPACE_REGEX = re.compile('[^\w_-]|[+]', re.U)
# GROUPING_SPACE_REGEX = re.compile('([^\w_-]|[+])', re.U)
# def extract_tokens(text):
# def extract_words(text):
# 
# Path: pymorphy/contrib/word_case.py
# def restore_word_case(word, original_word):
#     """
#     Восстанавливает регистр слова (расположение строчных-заглавных букв).
# 
#     * word - слово, у которого требуется восстановить
#       регистр (в любом регистре);
#     * original_word - исходное слово (в исходном регистре);
# 
#     Пример:
# 
#     >>> from pymorphy.contrib.word_case import restore_word_case
#     >>> print restore_word_case(u'ЛЮДИ', u'Человек')
#     Люди
# 
#     Если сопоставить регистр слов не удается, то результат возвращается
#     в нижнем регистре.
#     """
#     if '-' in original_word:
#         parts = zip(word.split('-'), original_word.split('-'))
#         return '-'.join(restore_word_case(*p) for p in parts)
# 
#     if original_word.isupper():
#         return word.upper()
#     elif original_word.islower():
#         return word.lower()
#     elif original_word.istitle():
#         return word.title()
#     else:
#         return word.lower()


import re
from django import template
from pymorphy.py3k import text_type
from pymorphy.django_conf import default_morph, MARKER_OPEN, MARKER_CLOSE
from pymorphy.contrib import tokenizers
from pymorphy.contrib.word_case import restore_word_case
#coding: utf-8
from __future__ import unicode_literals, absolute_import


register = template.Library()

markup_re = re.compile('(%s.+?%s)' % (MARKER_OPEN, MARKER_CLOSE), re.U)

def _process_phrase(phrase, process_func, *args, **kwargs):
    """ обработать фразу """
    words = tokenizers.extract_tokens(phrase)
    result=""
    try:
        for word in words:

# Path: pymorphy/py3k.py
# PY3 = sys.version_info[0] == 3
# 
# Path: pymorphy/django_conf.py
#     PYMORPHY_DICTS = settings.PYMORPHY_DICTS
# MARKER_OPEN = getattr(settings, 'PYMORPHY_MARKER_OPEN', '\[\[')
# MARKER_CLOSE = getattr(settings, 'PYMORPHY_MARKER_CLOSE', '\]\]')
# 
# Path: pymorphy/contrib/tokenizers.py
# SPACE_REGEX = re.compile('[^\w_-]|[+]', re.U)
# GROUPING_SPACE_REGEX = re.compile('([^\w_-]|[+])', re.U)
# def extract_tokens(text):
# def extract_words(text):
# 
# Path: pymorphy/contrib/word_case.py
# def restore_word_case(word, original_word):
#     """
#     Восстанавливает регистр слова (расположение строчных-заглавных букв).
# 
#     * word - слово, у которого требуется восстановить
#       регистр (в любом регистре);
#     * original_word - исходное слово (в исходном регистре);
# 
#     Пример:
# 
#     >>> from pymorphy.contrib.word_case import restore_word_case
#     >>> print restore_word_case(u'ЛЮДИ', u'Человек')
#     Люди
# 
#     Если сопоставить регистр слов не удается, то результат возвращается
#     в нижнем регистре.
#     """
#     if '-' in original_word:
#         parts = zip(word.split('-'), original_word.split('-'))
#         return '-'.join(restore_word_case(*p) for p in parts)
# 
#     if original_word.isupper():
#         return word.upper()
#     elif original_word.islower():
#         return word.lower()
#     elif original_word.istitle():
#         return word.title()
#     else:
#         return word.lower()


# Path: pymorphy/templatetags/pymorphy_tags.py
import re
from django import template
from pymorphy.py3k import text_type
from pymorphy.django_conf import default_morph, MARKER_OPEN, MARKER_CLOSE
from pymorphy.contrib import tokenizers
from pymorphy.contrib.word_case import restore_word_case

#coding: utf-8
from __future__ import unicode_literals, absolute_import


register = template.Library()

markup_re = re.compile('(%s.+?%s)' % (MARKER_OPEN, MARKER_CLOSE), re.U)

def _process_phrase(phrase, process_func, *args, **kwargs):
    """ обработать фразу """
    words = tokenizers.extract_tokens(phrase)
    result=""
    try:
        for word in words:

            if tokenizers.GROUPING_SPACE_REGEX.match(word):