рд╕рд┐рдореНрдлрдиреА 2 рдкрд░ рдкрд░рд┐рдЪрдпрд╛рддреНрдордХ рд▓реЗрдЦ рдХреА рдирд┐рд░рдВрддрд░рддрд╛ред
рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ , рд░рд┐рдХреЙрд░реНрдб рд╕рдВрдкрд╛рджрди рдлрд╝реЙрд░реНрдо рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рджреВрд╕рд░реЗ рднрд╛рдЧ рдореЗрдВ рд╣рдо рд░рд┐рдХреЙрд░реНрдб рд╕реВрдЪреА рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВрдЧреЗред рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯ рдФрд░ рд░рд┐рдХреЙрд░реНрдб рдирд┐рдпрдВрддреНрд░рдХ рдХреА рд╕реВрдЪреА рдореЗрдВ рдЬреЛ рд╕рд┐рджреНрдзрд╛рдВрдд: рдЙрддреНрдкрдиреНрди: рдХреНрд░реВрдб рдХрдорд╛рдВрдб рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рдХрдо рд╕реЗ рдХрдо рд░рд┐рдХреЙрд░реНрдб рдФрд░ рдкреЗрдЬ-рдмрд╛рдп-рдкреЗрдЬ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рдирд╣реАрдВ рд╣реИред
рдЦреЛрдЬ рдкреНрд░рдкрддреНрд░ рдХреЗ рд▓рд┐рдП рдХрдХреНрд╖рд╛рдПрдВ
рдЖрдЗрдП рдПрдХ рдЦреЛрдЬ рдлрд╝реЙрд░реНрдо рдЬреЛрдбрд╝рдХрд░ рд╢реБрд░реВ рдХрд░реЗрдВред рдЦреЛрдЬ рдлрд╝реЙрд░реНрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рдбреЛрдореЗрди рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдПрдХ рд╡рд░реНрдЧ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЦреЛрдЬ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЧрдП рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдорд╛рдЪрд╛рд░ рд╕реВрдЪреА рдХреЗ рд▓рд┐рдП, рдпрд╣ "рдЦреЛрдЬ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛" рд╣реЛрдЧрд╛, рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреА рд╕реВрдЪреА рд╕реЗ рдЪрдпрди рдХрд░рдирд╛ рдФрд░ рд╕рдорд╛рдЪрд╛рд░ рдХреА рддрд╛рд░реАрдЦ рддрдХ рдЦреЛрдЬрдирд╛ред рдЖрдкрдХреЛ рдПрдХ рдЦреЛрдЬ рдлрд╝реЙрд░реНрдо рд╡рд░реНрдЧ рдмрдирд╛рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕рд┐рдореНрдлрдиреА рдореЗрдВ рдРрд╕реА рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдкреНрд▓реЗрд╕рдореЗрдВрдЯ рд╡рд┐рдирд┐рдпрдорд┐рдд рдирд╣реАрдВ рд╣реИ, рдореИрдВ рдЦреЛрдЬ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдирд╛рдорд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ
- {рдкреНрд░рддрд┐рдмрдВрдз рдирд╛рдо} / рдЗрдХрд╛рдИ / рдЦреЛрдЬ / {рдЗрдХрд╛рдИ рдирд╛рдо} - рдЦреЛрдЬ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП
- {Ban name} / Form / Search / {Entity name} - рд╕рд░реНрдЪ рдлреЙрд░реНрдо рдХреЗ рд▓рд┐рдП
рдмрдВрдбрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ (рдмрдВрдбрд▓ рдмрдирд╛рдиреЗ рдХреА рд╢реБрд░реБрдЖрдд,
рдкрд╣рд▓рд╛ рднрд╛рдЧ рджреЗрдЦреЗрдВ) рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:

рд╕рдорд╛рдЪрд╛рд░ рдЦреЛрдЬ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдбреЛрдореЗрди рдСрдмреНрдЬреЗрдХреНрдЯ
рдлрд╝реЙрд░реНрдо рд╕рдмрдорд┐рдЯ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдбреЗрдЯрд╛ рдХреЛ рдбреЛрдореЗрди рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд░ рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реВрдЪреА рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд░реНрддреЛрдВ рдХреЛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
<?php namespace Test\NewsBundle\Entity\Search; use Symfony\Component\Validator\Constraints as Assert; class News { public $search; public $category; public $dateFrom; public $dateTo; }
рд╕рдорд╛рдЪрд╛рд░ рдЦреЛрдЬ рдкреНрд░рдкрддреНрд░
рдХреНрдпреЛрдВрдХрд┐ рдЦреЛрдЬ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдбреЛрдореЗрди рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП, рдбреЗрдЯрд╛рдмреЗрд╕ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрдиреЗрдХреНрд╢рди рдХреЛ рд╡рд░реНрддрдиреА рдирд╣реАрдВ рджреА рдЬрд╛рддреА рд╣реИ, рд╢реНрд░реЗрдгреА рдлрд╝реАрд▓реНрдб (рдбреНрд░реЙрдк-рдбрд╛рдЙрди рд╕реВрдЪреА) рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЙрд╕ рдЗрдХрд╛рдИ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реВрдЪреА рдХреЛ рдкреЙрдкреНрдпреБрд▓реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдлрд╝реАрд▓реНрдб рдЬрд┐рд╕рдореЗрдВ рджрд┐рдирд╛рдВрдХ рджрд░реНрдЬ рдХреА рдЬрд╛рддреА рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝реАрд▓реНрдб (рдкреИрд░рд╛рдореАрдЯрд░ рд╡рд┐рдЬреЗрдЯ = single_text) рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд░реНрдЧ = рджрд┐рдирд╛рдВрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдкрд╛рда рдлрд╝реАрд▓реНрдб рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ
jQueryUI рдореЗрдВ рдЪрдпрдирдХрд░реНрддрд╛ (рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдмрд╛рдж рдореЗрдВ рд╡рд░реНрдгрд┐рдд) рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
CSRF рд╕реБрд░рдХреНрд╖рд╛ рдлрд╝реЙрд░реНрдо рдкрд░ рдЕрдХреНрд╖рдо рд╣реИ, рддрд╛рдХрд┐ рдлрд╝реЙрд░реНрдо рд╕рдмрдорд┐рдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж URL рдореЗрдВ рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрд░рд╛рдореАрдЯрд░ рди рд╣реЛред
<?php namespace Test\NewsBundle\Form\Search; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilder; class NewsType extends AbstractType { public function buildForm(FormBuilder $builder, array $options) { $builder->add('search', 'search', array('required' => false, 'label' => ' ')) ->add('category', 'entity', array( 'label' => '', 'required' => false, 'class' => 'Test\\NewsBundle\\Entity\\NewsCategory')) ->add('dateFrom', 'date', array( 'label' => '', 'widget' => 'single_text', 'format' => 'yyyy-MM-dd', 'attr' => array('class' => 'date'), 'required' => false)) ->add('dateTo', 'date', array( 'label' => '', 'widget' => 'single_text', 'format' => 'yyyy-MM-dd', 'attr' => array('class' => 'date'), 'required' => false)); } public function getDefaultOptions(array $options) { return array( 'csrf_protection' => false, ); } function getName() { return 'searchorg'; } }
рдирд┐рдпрдВрддреНрд░рдХ
Test / NewsBundle / рдХрдВрдЯреНрд░реЛрд▓рд░ / NewsController рдХрдВрдЯреНрд░реЛрд▓рд░ рдореЗрдВ, рд╣рдо рдЗрдВрдбреЗрдХреНрд╕рдПрд╢рди () рдореЗрдердб рдХреЗ рд▓рд┐рдП рдмрдирд╛рдИ рдЧрдИ рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред
.. use Test\NewsBundle\Entity\Search\News as SearchNews; use Test\NewsBundle\Form\Search\NewsType as SearchNewsType; class NewsController extends Controller { public function indexAction() {
)); .. use Test\NewsBundle\Entity\Search\News as SearchNews; use Test\NewsBundle\Form\Search\NewsType as SearchNewsType; class NewsController extends Controller { public function indexAction() {
)); .. use Test\NewsBundle\Entity\Search\News as SearchNews; use Test\NewsBundle\Form\Search\NewsType as SearchNewsType; class NewsController extends Controller { public function indexAction() {
рдЦреЛрдЬ рдлрд╝реЙрд░реНрдо рдФрд░ рд░рд┐рдХреЙрд░реНрдб рд╕реВрдЪреА рдЯреЗрдореНрдкрд▓реЗрдЯ
рдЕрдЧрд▓рд╛, рд╣рдо рдЯреЗрд╕реНрдЯ / рдиреНрдпреВрдЬрд╝рдмрдВрдбрд▓ / рд╕рдВрд╕рд╛рдзрди / рд╡рд┐рдЪрд╛рд░ / рд╕рдорд╛рдЪрд╛рд░ / index.html.twig рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдлреЙрд░реНрдо рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреЛрдб рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред
{% extends '::base.html.twig' %} {% block body %} <h1></h1> {% form_theme search_form 'form_table_layout.html.twig' %} <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js"></script> <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.0/themes/redmond/jquery-ui.css"> <script> $(function() { $("form input.date").datepicker({ dateFormat: 'yy-mm-dd'}); }); </script> <form action="{{ path('news') }}" method="get"> {{ form_errors(search_form) }} <table> {{ form_row(search_form.search) }} {{ form_row(search_form.category)}} <tr> <td colspan="2"> </td> </tr> {{ form_row(search_form.dateFrom)}} {{ form_row(search_form.dateTo)}} {{ form_rest(search_form) }} </table> <button type="submit"></button> </form> <table class="records_list"> <thead> <tr> <th>Id</th> <th></th> <th></th> <th></th> <th></th> <th></th> </tr> </thead> <tbody> {% for entity in entities %} <tr> <td><a href="{{ path('news_show', { 'id': entity.id }) }}">{{ entity.id }}</a></td> <td>{{ entity.title }}</td> <td>{{ entity.announce }}</td> <td>{{ entity.newsCategory }}</td> <td>{{ entity.pubDate|date('Ym-d') }}</td> <td> <ul> <li><a href="{{ path('news_show', { 'id': entity.id }) }}"></a></li> <li><a href="{{ path('news_edit', { 'id': entity.id }) }}"></a></li> </ul> </td> </tr> {% endfor %} </tbody> </table> <ul> <li> <a href="{{ path('news_new') }}"> </a> </li> </ul> {% endblock %}
рдЕрдм рд╕рдорд╛рдЪрд╛рд░ рд╕реВрдЪреА рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

рдкреЗрдЬ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдмрдВрдбрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛
рдЕрдм рдЖрдкрдХреЛ рдкреЗрдЬ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЬреЛрдбрд╝рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдкрдирд╛ рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд░реЗрдбреА-рдореЗрдб рдмрдВрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
KnpPaginatorBundle ред рдЗрд╕ рдмрдВрдбрд▓ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╛рдЗрд▓ рдореЗрдВ рдбрд┐рдкреНрд╕ рдЬреЛрдбрд╝реЗрдВ:
[knp-components] git=http:
рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдореЗрдВ рдЯрд╛рдЗрдк рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
php bin/vendors install --reinstall
рдмрд┐рди / рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ
Git рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рдЗрд╕реЗ рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдирдП рдмрдВрдбрд▓реЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдПрдкреНрд▓рд┐рдХреЗрд╢рди / autoload.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрдкрдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛:
$loader->registerNamespaces(array( 'Knp\\Component' => __DIR__.'/../vendor/knp-components/src', 'Knp\\Bundle' => __DIR__.'/../vendor/bundles',
рдПрдкреНрд▓рд┐рдХреЗрд╢рди / AppKernel.php рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП
public function registerBundles() { return array(
рдирд┐рдпрдВрддреНрд░рдХ рд╕рдВрд╢реЛрдзрди
рдХрдВрдЯреНрд░реЛрд▓рд░ рдЯреЗрд╕реНрдЯ / рдиреНрдпреВрдЬрд╝рдмрдВрдбрд▓ / рдХрдВрдЯреНрд░реЛрд▓рд░ / рдиреНрдпреВрдЬрд╝рдХрдВрдЯреНрд░реЛрд▓рд░ рдореЗрдВ, рдХреНрд╡реЗрд░реАрдкрд╛рдЗрдмреНрд▓реЗрд╕реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреНрд╡реЗрд░реА рдЬреЗрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж indexAction () рд╡рд┐рдзрд┐ рдореЗрдВ KnpPaginator рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬреЛрдбрд╝реЗрдВред рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдХреА рдорд╛рдирдХ рд╕реВрдЪреА рдХреЗ рдмрдЬрд╛рдп, рд╣рдо рдкреЗрдЬрд┐рдиреЗрдЯрд░ рдХреНрд▓рд╛рд╕ рдХреА рдПрдХ рд╡рд╕реНрддреБ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВред
$paginator = $this->get('knp_paginator'); $pagination = $paginator->paginate( $qb->getQuery(), $this->get('request')->query->get('page', 1), 10 ); return array('entities' => $pagination, 'search_form' => $searchForm->createView());
рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕рдВрд╢реЛрдзрди
рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЯреЗрд╕реНрдЯ / рдиреНрдпреВрдЬрд╝рдмрдВрдбрд▓ / рд░рд┐рд╕реЛрд░реНрд╕ / рд╡реНрдпреВ / рдиреНрдпреВрдЬрд╝ / рдЗрдВрдбреЗрдХреНрд╕.рдиреЗрдЯ рдореЗрдВ, рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд╕рд╛рде рдЯреЗрдмрд▓ рдХреЗ рдиреАрдЪреЗ, рд╣рдо рдкреЗрдЬреЗрдЯ рдЯреИрдЧ рдореЗрдВ рдПрдХ рдХреЙрд▓ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ:
<div id="navigation"> {{ entities.render()|raw }} </div>
рдЕрдм рд╕рдорд╛рдЪрд╛рд░ рд╕реВрдЪреА рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:

рд░рд┐рдХреЙрд░реНрдб рд╕реВрдЪреА рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдЕрдм рдЦреЛрдЬ рдлрд╝реЙрд░реНрдо рдФрд░ рдкреГрд╖реНрда-рджрд░-рдкреГрд╖реНрда рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреНрд░рд╕реНрддреБрдд рдХреЛрдб рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕реБрдзрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреА рдорд╛рддреНрд░рд╛ рдмрд╣реБрдд рдмрдбрд╝реА рдирд╣реАрдВ рд╣реИред