What Does the Cow Say? What Does the Cow Say?
Simple
EN FR Russian

Пусть понесется Мууу по просторам интернета.

Скромная молодая корова желает общения и даже научилась произносить несколько слов. Но для этого её нужно очень попросить, потому что она очень стеснительная. [Ходят слухи](http://ru.wikipedia.org/wiki/Cowsay) что под маской коровы скрывается пингвин Тукс, но мы в это не верим.

Имеющийся текст, нужно подготовить для коровы, давайте посмотрим, что нам потребуется.
  • Тело коровы неизменно, меняется только то, что она говорит.
  • Пробелы, идущие подряд, заменяются одним пробелом.
  • Верхняя часть цитаты начинается с пробела, состоит из нижних подчеркиваний и заканчивается на один символ раньше, чем тело цитаты.
  • Каждая линия в теле цитаты состоит из следующих частей: рамка цитаты, пробел, текст цитаты, пробел, рамка цитаты.
  • Если длина текста меньше 40 символов, то все поместится в одну строку и границей цитаты будут: <>.
  • Строки длиннее нужно разбивать по следующим правилам:
    • Максимальная длина текста 39 символов, если есть пробелы в тексте, то разделение происходит по ближнему пробелу к правому краю ...
    • Между первой и второй: ||
    • И последняя: \/
  • Нижняя граница из рамочки такая же, как и верхняя только используется знак минуса.
  • В общем нужно повторить поведение консольной утилиты cowsay. В поведении утилиты есть несколько ситуаций, которые являются исключением из описанных правил, но мы делаем вид, что все в порядке потому, что тестов на них нет и не будет.
     ______________________________
    / Утверждаю:не глупы коровы!    \
    | Безусловно , человек велик,    |
    | Но коровы тоже ценят слово,    |
    | С ними общий я нашел язык.     |
    |                                |
    | Для меня радушие не внове,     |
    | Я не зря в себе его хранил.    |
    | Проходя по стойлу,я корове     |
    | Ласковое слово обронил.        |
    |                                |
    | И корова это оценила.          |
    | Грустно,но от всей души зато.  |
    | Чуть помедлив,тоже обронила... |
    \ Только к сожалению,не то.      /
     -------------------------------
            \   ^__^
             \  (oo)\_______
                (__)\       )\/\
                    ||----w |
                    ||     ||


    
Александр Иванов. "Диалог с коровой"

Ввод: Текст, как строка (str).

Вывод: Результат с коровой для консоли, как строка (str).

Подсказка: В питоне есть прекрасные способы форматирования текста (2.7, 3.3) Обратите внимание на r перед строкой с шаблоном коровы. Это специальный знак, который говорит нам, что данная стока сырая и специальные символы в ней обрабатываются по другому.

Примеры:

cowsay('Your bunny wrote') == r'''
 __________________
< Your bunny wrote >
 ------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
'''
cowsay('A longtextwithonlyonespacetofittwolines.') == r'''
 ________________________________________
/ A                                      \
\ longtextwithonlyonespacetofittwolines. /
 ----------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
'''

cowsay('Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.') == r'''
 _________________________________________
/ Lorem ipsum dolor sit amet, consectetur \
| adipisicing elit, sed do eiusmod tempor |
| incididunt ut labore et dolore magna    |
\ aliqua.                                 /
 -----------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
'''

    

Связь с реальной жизнью: Оригинальная Cowsays была написанна на перле, и использовалась как консольная утилита для юникс систем. В разных приложениях корова извещала пользователей о том, что их домашняя директория заполненна, пришло письмо на электронную почту и прочих важных и не очень вещах. Сейчас мы напишем свою простенькую реализацию этой консольной утилиты. А заодно вы научитесь работать с форматирование текста.

Предусловия: Длина текста в промежутке от 1 до 858 символов; text не может состоять из одних пробелов;
text состоит из символов ASCII, цифр и знаков препинания.

You should be an authorized user in order to see the full description and start solving this mission.