1. Perl6 рдореЗрдВ рдЪрд░ рдФрд░ рд╢рд╛рдмреНрджрд┐рдХ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ2. рдкрд░реНрд▓ 6 - рдЪрд░, рдЕрдирд╛рдо рдмреНрд▓реЙрдХреЛрдВ рдкрд░ рд╕рдВрдЪрд╛рд▓рди3. рдкрд░реНрд▓ 6 - рд╕рд╢рд░реНрдд рдХрдерди, рд▓реВрдк4. рдкрд░реНрд▓ 6 - рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ5. рдкрд░реНрд▓ 6 - рдХрдХреНрд╖рд╛рдПрдВ6. рдкрд░реНрд▓ 6 - рдЖрдИ / рдУ рдореЙрдбреНрдпреВрд▓7. рдкрд░реНрд▓ 6 - рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ, рд╢реНрд╡реЗрдд рд╕реНрдерд╛рди, рдХреЛрд╖реНрдардХ8. рдкрд░реНрд▓ 6 - рдСрдкрд░реЗрдЯрд░ рдУрд╡рд░рд▓реЛрдбрд┐рдВрдЧ9. рдкрд░реНрд▓ 6 - рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВрдиреЗ рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХрд╛ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдерд╛ред рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдХреБрдЫ рд▓рд┐рдкрд┐рдпрд╛рдБ рдмрдЪ рдЧрдИрдВ, рдФрд░ рдореЗрд░реА рдХрдИ рд▓рд┐рдкрд┐рдпрд╛рдБ рдЙрдирдХреА рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдкрд░ рдорд░ рдЧрдИрдВред рд╢рд╛рдпрдж рдЕрдм рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рд▓рд┐рдП рд╢рд┐рдХрд╛рд░ рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рдХреА рдЬрд╛рдПред рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╣рдореЗрдВ рдЙрдирдХреЗ рд╕рд╛рде рдкрдХрдбрд╝реЗрдВрдЧреЗ, рд╣рдо рдПрдХ рдХрдЯреМрддреА рдХреЗ рддрд╣рдд рдорд┐рд▓рддреЗ рд╣реИрдВред
рдФрд░ рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд╣реИ:
sub Func($a) { my $temp = $a*2; } Func "Test";
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рд╣реЛрдЧрд╛, "рдЯреЗрд╕реНрдЯ" рд▓рд╛рдЗрди рд╕реЗ рджрд╢рдорд▓рд╡ рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рд╣рдореЗрдВ рдПрдХ рдЕрдкрд╡рд╛рдж рдорд┐рд▓реЗрдЧрд╛ред
рдПрдХ рдЕрдкрд╡рд╛рдж рд╣реИрдВрдбрд▓рд░ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рд░реНрдорд╛рдг рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛:
sub Func($a) { my $temp = $a*2; say "Test work"; CATCH { default { say "Something is wrong!"; } } } Func "Test"; say "Another test work";
C ++ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЫрдареЗ рдореЛрддреА рдореЗрдВ, рдЕрдкрд╡рд╛рдж рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдмреНрд▓реЙрдХ рдХреЛ рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрджрд░ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЕрдкрд╡рд╛рдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп, рд╣рдо рдЖрдЙрдЯрдкреБрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:
Something is wrong! Another test work
рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЬрд┐рд╕ рдЦрдВрдб рдореЗрдВ рдЕрдкрд╡рд╛рдж рд╣реЛрддрд╛ рд╣реИ рд╡рд╣ рдЕрдкрдирд╛ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ (рдФрд░ рдпрд╣ рдХрд╣рдирд╛ рдереЛрдбрд╝рд╛ рдЧрд▓рдд рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдж рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ), рдФрд░ CATCH рдмреНрд▓реЙрдХ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд▓рд╛рдЗрди рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдХреБрдЫ рдЧрд▓рдд рд╣реИред CATCH рдмреНрд▓реЙрдХ рдХреЛ рдЕрдВрдЬрд╛рдо рджреЗрдиреЗ рдХреЗ рдмрд╛рдж, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬрд╛рд░реА рд░рд╣рддреА рд╣реИ рдФрд░ рдЕрдЧрд▓реЗ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдЙрд╕ рдмреНрд▓реЙрдХ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЕрдкрд╡рд╛рдж рд╣реБрдЖ рдерд╛ред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдо рд╕реНрдХреНрд░реАрди рдкрд░ рд╢рд┐рд▓рд╛рд▓реЗрдЦ "рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдп" рдирд╣реАрдВ рджреЗрдЦрддреЗ рд╣реИрдВред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдорд╛рд░рд╛ CATCH рдмреНрд▓реЙрдХ рдПрдХ рдирд┐рдпрдорд┐рдд "рд╕реНрд╡рд┐рдЪ" рд╣реИред рдФрд░ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ:
sub Func($a) { my $temp = $a*2; say "Test work"; CATCH { when X::Syntax::Name::Null { say "I will never say it =("; } default { say "Something is wrong! "~$_.WHAT.gist; } } } Func "Test"; say "Another test work";
рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдорд╛рд░реЗ рдЕрдкрд╡рд╛рдж рдХрд╛ рдкрд╛рда рдкрдврд╝рддрд╛ рд╣реИ, "рдореИрдВ рдРрд╕рд╛ рдХрднреА рдирд╣реАрдВ рдХрд╣реВрдВрдЧрд╛ред" рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рдРрд╕реА рдХреНрд░рд┐рдпрд╛рдПрдВ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдЕрдкрд╡рд╛рдж рд╣реЛрддрд╛ рд╣реИред рд╕рднреА рд╕рдорд╛рди, рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рдЕрдкрд╡рд╛рдж рд╣реИ, рдореИрдВрдиреЗ
"$_.WHAT.gist"
рдЬреЛрдбрд╝рд╛ред рдЬрдм рдЖрдк CATCH рдмреНрд▓реЙрдХ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ $ рдкрдХрдбрд╝рд╛ рдЧрдпрд╛ рдЕрдкрд╡рд╛рдж рдСрдмреНрдЬреЗрдХреНрдЯ $ _ рдЪрд░ рдореЗрдВ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд░ рд╣рдо рдЗрд╕рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд▓рд╛рдЗрди рдореЗрдВ рд▓рд╛рддреЗ рд╣реИрдВ (рдбрд┐рдмрдЧ рдХреЗ рд▓рд┐рдП .gist рдлрд╝рдВрдХреНрд╢рди, рдЬреЛ рдЖрдкрдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЕрдВрджрд░ рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдореИрдВ рдпрд╣рд╛рдВ рдЗрд╕рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛)ред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЕрдм рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рд╖реНрдХрд░реНрд╖ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:
Something is wrong! (X::Str::Numeric) Another test work
рдЕрдм рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рд╕ рд╡рд┐рд╢реЗрд╖ рдЕрдкрд╡рд╛рдж рдХреЛ рдкрдХрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред рд╣рдо рдЙрдирдХреЗ рдирд╛рдо рдХреА рдирдХрд▓ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рдЕрдкрд╡рд╛рдж рдХрд╛ рд╡рд┐рд╡рд░рдг
рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП
рдзрд░реНрдорд╕рднрд╛ рдореЗрдВ рдЬрд╛рддреЗ
рд╣реИрдВ ред (
рдпрд╣рд╛рдВ рд╣рдорд╛рд░реЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реАрдзрд╛ рд▓рд┐рдВрдХ рд╣реИ )ред рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╣рдо рдПрдХ рдФрд░ рдмреНрд▓реЙрдХ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм:
sub Func($a) { my $temp = $a*2; say "Test work"; CATCH { when X::Syntax::Name::Null { say "I will never say it =("; } when X::Str::Numeric { say "String convertation error!"; } default { say "Something is wrong! "~$_.WHAT.gist; } } } Func "Test"; say "Another test work";
рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдо рдирд┐рд╖реНрдХрд░реНрд╖ рджреЗрдЦреЗрдВрдЧреЗ:
String convertation error! Another test work
рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рд╣рдо рд╡рд╕реНрддреБ рдХреЗ рд╕рднреА рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЪрд░ $ _ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдкрд╡рд╛рдж рдХреЗ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдлрд╝реАрд▓реНрдб рдлрд┐рд░ рд╕реЗ рджрд┐рдЦрддреЗ рд╣реИрдВред
-рдЕрдм, рдХреБрдЫ рдореИрдВ рд╢рд┐рдХрд╛рд░ рд╕реЗ рдердХ рдЧрдпрд╛ рд╣реВрдБ, рд╢рд╛рдпрдж рд╣рдо рдЬрд╛рд▓ рд╕реЗрдЯ рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдмрд╛рдХреА?
рдПрдХ рд╡рд┐рд╢реЗрд╖ рдХреЛрд╢рд┐рд╢ рднреА рд╣реИ {} рдмреНрд▓реЙрдХ рдЬрд┐рд╕рдХреЗ рдЕрдВрджрд░ "рдЕрджреГрд╢реНрдп" CATCH рдмреНрд▓реЙрдХ рд╣реИ, рдФрд░ рдпрджрд┐ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрджрд░ рдХреЛрдИ рдЕрдкрд╡рд╛рдж рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдирд╣реАрдВ рдХрд░реЗрдЧреА рдФрд░ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рдмрд╛рдж рдЕрдЧрд▓реЗ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде рдирд┐рд╖реНрдкрд╛рджрди рдЬрд╛рд░реА рд░рд╣реЗрдЧрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдк рдХреЗрд╡рд▓ рдЙрди рд╕рднреА рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╣рдо рднрд░ рдореЗрдВ рдЖрддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреЛрдИ рднреА рдЖрдкрдХреЛ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрджрд░ рдЕрдкрдирд╛ CATCH рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдордирд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдмрд╕ рдЗрд╕рдореЗрдВ рдореМрдЬреВрдж рдореМрдЬреВрджрд╛ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░ рджреЗрдЧрд╛ред рдХреЛрд╢рд┐рд╢ рдХреЗ рдЕрдВрджрд░ рдЕрдкрдиреЗ рдЦреБрдж рдХреЗ CATCH рдмреНрд▓реЙрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдмрд╕ рдпрд╣ рджрд░реНрд╢рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ рдХрд┐ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрджрд░ рдХреЛрдИ рдЕрдкрд╡рд╛рдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдХреЛрдИ рдЕрдиреНрдп рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред
-рдФрд░ рдЕрдЧрд░ рд╡рд╣ рднрд╛рдЧрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ?
рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рджреМрд░рд╛рди, рд╣рдо рдПрдХ рдФрд░ рдПрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдХрдм рдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмреНрд▓реЙрдХ, рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрддрд╛ рд╣реИ, рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдмреНрд▓реЙрдХ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдЕрдВрджрд░ рдЖрдк рдлрд┐рд░ рд╕реЗ CATCH рдмреНрд▓реЙрдХ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
sub Func($a) { try { my $temp = $a*2; say "Test work"; CATCH { when X::Str::Numeric { die "test"; CATCH { default { say "Another die action"; } } } default { say "Something is wrong! "~$_.WHAT.gist; } } } } Func "Test"; say "Another test work";
-рдФрд░ рдЪрд▓реЛ рдЕрдкрд╡рд╛рджреЛрдВ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреЛ рд╡рд╢ рдореЗрдВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ?
рд╢рд╛рдпрдж рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЦреБрдж рдХреЛ рдЕрдкрд╡рд╛рдж рдмрдирд╛рдиреЗ рдХреЗ рдХреБрдЫ рддрд░реАрдХреЗ рд╣реИрдВ:
рдкрд╣рд▓рд╛ рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╣реА 'рдбрд╛рдИ' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рджреЗрдЦрд╛ рд╣реИ:
{ die "I'm diying..."; CATCH { default { say "I will save you!"; } } }
рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛ рдлреЗрдВрдХ рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рд╣реИ:
{ X::Str::Numeric.throw; CATCH { default { say "More exception!?!"; } } }
рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЖрдкрдХреА рдХрдХреНрд╖рд╛ рдХреЛ рдЕрдкрд╡рд╛рдж рд╡рд░реНрдЧ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рд▓реЗрдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣рдо рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЕрдкрд╡рд╛рдж рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рд╣рдо рдмрд┐рдирд╛ рдЙрджрд╛рд╣рд░рдг рдХреЗ рдХрд░реЗрдВрдЧреЗред
рдЗрд╕ рдкрд░, рдореИрдВ рдЕрдкрд╡рд╛рджреЛрдВ рдХреА рдХреНрд░реВрд░ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЕрд╕реНрддрд┐рддреНрд╡ рдкрд░ рдЕрдкрдиреЗ рдЫреЛрдЯреЗ рдЧрд╛рдЗрдб рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдк рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред