рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ, рдореЗрд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЬрд╛рд╡рд╛ рдХреЛ рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓, рд╕рд░рд▓ рдФрд░ рдЙрд╕реА рд╕рдордп рд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдХрд╛рдлреА рд▓рдЪреАрд▓рд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЪрд╛рд░ рдЖрдпрд╛ред рдЗрд╕ рддрд░рд╣ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╢рд╛рдпрдж рдПрдХ рдордзреНрдпрдо рдФрд░ рдЫреЛрдЯреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕рдЪ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдЖрдк рднрд╛рд░реА
рд▓реЙрдЧ 4j рдХреЗ рдмрд┐рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд╕реНрддреБрддрдГ рдПрдХ рд╕рдкреНрддрд╛рд╣ рдореЗрдВ, рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЬрд╛рд╡рд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рд╕рд░рд▓ рдирд╛рдо рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд
рд╣реБрдЖ -
рд▓реЙрдЬреА ред
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
import static logy.Logy.*; public class Test { public void test() { String s[] = {"a", "b"}; warn("Can't find", quote(upper("c")), "in", group(quote(upper(scalar(s))))); } }
рдирд┐рд╖реНрдХрд░реНрд╖:
29.06.2012 1:19:25 Test.test [WARN] :: Can't find "C" in ["A", "B"]
рдореЗрд░реЗ рд▓рд┐рдП, рдпрд╣ рдмрд╣реБрдд рдкрдардиреАрдп рд▓рдЧрддрд╛ рд╣реИ, рд╕рд┐рдВрдЯреИрдХреНрдЯрд┐рдХ рд╢реБрдЧрд░,
рдбреАрдПрд╕рдПрд▓ рдЬреИрд╕реА рдПрдкреАрдЖрдИ рдФрд░ рдХреЙрд▓ рдХреЗ рд╕рдордп рд▓реЙрдЧрд┐рдВрдЧ рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдЧрддрд┐рд╢реАрд▓ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж (рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╝реАрд▓реНрдб рдХреЗ рдмрд┐рдирд╛
public static final Logger logger = ...
рдХрдХреНрд╖рд╛ рдореЗрдВ
public static final Logger logger = ...
)ред
рд╢реАрд░реНрд╖рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рд╢рдмреНрдж "рд▓реЛрдЧреА" - рдЕрдВрдЧреНрд░реЗрдЬреА рд╕реЗ "рдЧреВрдВрдЧрд╛" рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рд╣реИред рдПрдХ рдУрд░, рдирд╛рдо рдХреЛ "рд▓реЙрдЧ" рдХреЗ рд░реВрдк рдореЗрдВ рдХрдо рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рджреВрд╕рд░реА рдУрд░, рдпрд╣ рд╕рдВрдХреАрд░реНрдгрддрд╛ (рдПрдХ рдЕрдЪреНрдЫреЗ рдЕрд░реНрде рдореЗрдВ) рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рд╕рд╛рджрдЧреА рдкрд░ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИред
рд╕реБрд╡рд┐рдзрд╛рдПрдБ / рд╕реБрд╡рд┐рдзрд╛рдПрдБ
- рд╕рдВрдХрд▓рд┐рдд JAR рдлрд╝рд╛рдЗрд▓ рдореЗрдВ 17 kb рд▓реЗрддрд╛ рд╣реИ
- рдХреЛрдИ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ
- DSL- рдЬреИрд╕реЗ API: рдЙрджреНрдзрд░рдг, рд╕рдореВрд╣, рдКрдкрд░реА, рдирд┐рд░реНрдпрд╛рдд, ...
- рд▓реЙрдЧрд┐рдВрдЧ рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдЧрддрд┐рд╢реАрд▓ рдкрд░рд┐рднрд╛рд╖рд╛ (рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рдХреА рд╕реНрдкрд╖реНрдЯ рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд┐рдирд╛)
- рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд▓реЙрдЧрд┐рдВрдЧ / stdout / stderr
- рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдореБрдЦреМрдЯрд╛ рд╕рдорд░реНрдерди ("*")
- рд╕реАрдорд╛ рдореЗрдВ рд╡рд┐рдиреНрдпрд╛рд╕ "рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░" ... "рд╡рд┐рдзрд┐"
рдПрдкреАрдЖрдИ
рд▓реЙрдЬреА рдПрдкреАрдЖрдИ рд╕реНрдерд┐рд░ рддрд░реАрдХреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ
рдкреИрд░рд╛рдореАрдЯрд░реНрд╕ рдХреА рдЪрд░ рд╕рдВрдЦреНрдпрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕реЗ рдПрдХ рд▓рд╛рдЗрди рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
import static logy.Logy.*;
5 рд╕рдВрджреЗрд╢ рд╕реНрддрд░, рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рдХреНрд░рдо рдореЗрдВ: "рдбрд┐рдмрдЧ", "рдареАрдХ", "рдЬрд╛рдирдХрд╛рд░реА", "рдЪреЗрддрд╛рд╡рдиреА", "рддреНрд░реБрдЯрд┐", рд╕рдорд╛рди рд╡рд┐рдзрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдП рдЧрдП рд╣реИрдВред
рдПрдХ рдЙрджрд╛рд╣рд░рдг:
error("Files", quote("file1", "file2"), "not found!").
рдирд┐рд╖реНрдХрд░реНрд╖:
Files "file1" "file2" not found!
"рдирд┐рд░реНрдпрд╛рдд" рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдирд┐рд░реНрдпрд╛рдд рдХрд░реЗрдВред
рдПрдХ рдЙрджрд╛рд╣рд░рдг:
String s = export("The", quote(upper("message")), "can't be delivered!"); System.out.println(s);
рдирд┐рд╖реНрдХрд░реНрд╖:
The "MESSAGE" can't be delivered!
рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдореЗрдВ рдХреЛрдЯреЗрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ред
рдПрдХ рдЙрджрд╛рд╣рд░рдг:
int arr[] = {1, 2, 3, 4}; info("Quotted values:", quote(scalar(arr), "a", "b"));
рдирд┐рд╖реНрдХрд░реНрд╖:
Quotted values: "1" "2" "3" "4" "a" "b"
"рд╕рдореВрд╣" рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╕рдореВрд╣рдиред
String s[]= {"a", "b", "c"}; info("Grouped values:", group(scalar(s), 1, "d"));
рдирд┐рд╖реНрдХрд░реНрд╖:
Grouped values: [a, b, c, 1, d]
"рдКрдкрд░реА" рдФрд░ "рдирд┐рдЪрд▓реЗ" рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░рдЬрд┐рд╕реНрдЯрд░ рдХреЛ рдмрджрд▓рдирд╛ред
рдПрдХ рдЙрджрд╛рд╣рд░рдг:
String s[]= {"a", "b", "c"}; info("Uppered values:", upper(scalar(s))); info("Lowered values:", lower("A", "B", "C"));
рдирд┐рд╖реНрдХрд░реНрд╖:
Uppered values: ABC
Lowered values: abc
"рд╕реНрдХреЗрд▓рд░" рдФрд░ "рд╕рд░рдгреА" рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХрд╛ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдгред
рдПрдХ рдЙрджрд╛рд╣рд░рдг:
int arr[] = {1, 2, 3, 4}; info("Quotted array:", quote(array(arr))); info("Quotted values:", quote(scalar(arr)));
рдирд┐рд╖реНрдХрд░реНрд╖:
Quotted array: "[1, 2, 3, 4]"
Quotted values: "1" "2" "3" "4"
рд╡рд┐рдиреНрдпрд╛рд╕
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЗрдВ рдирд┐рдореНрди рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИрдВ:
- "#" рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ
- "VARIABLE @ SCOPE = VALUE" рдлрд╝реЙрд░реНрдо рдХреЗ рддреАрди
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рд░реВрдк рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреНрд░рд┐рдкрд▓ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:
format@=%date% %time %class% [%level%] %%%
рдЬрд╣рд╛рдБ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдВрджрд░реНрдн рдЪрд░ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ:
- % рд╕реНрдХреЛрдк% - рдЙрд╕ рдкрде рдХрд╛ рдкреВрд░реНрдг рдкрде рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдХреЛ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
- % рд╡рд░реНрдЧ% - рдЙрд╕ рд╡рд┐рдзрд┐ рдХрд╛ рдкреВрд░реНрдг рдкрде рдЬрд┐рд╕ рд╡рд┐рдзрд┐ рд╕реЗ рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдХреЛ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
- % рд╡рд┐рдзрд┐% - рдЙрд╕ рд╡рд┐рдзрд┐ рдХрд╛ рдирд╛рдо рдЬрд┐рд╕рд╕реЗ рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ
- % рддрд╛рд░реАрдЦ% - рддрд┐рдерд┐, рдЙрд╕ рд╕рдордп рдЬрдм рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдХреЛ рдмреБрд▓рд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╡рд░реНрддрдорд╛рди рд▓реЛрдХреЗрд▓ рдХреЗ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ
- % рд╕рдордп% - рдЙрд╕ рд╕рдордп рдЬрдм рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдХреЛ рдмреБрд▓рд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рд╡рд░реНрддрдорд╛рди рд▓реЛрдХреЗрд▓ рдХреЗ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ
- % рд╕реНрддрд░% - рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рд╕рдВрджреЗрд╢ рд╕реНрддрд░
- %%% - рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рд╕рдВрджреЗрд╢
рдЪрд░ рдХреА рдЧреБрдВрдЬрд╛рдЗрд╢ рд╕реЗрдЯ рдХрд░рддреЗ рд╕рдордп рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛ рдорд╛рд░реНрдЧ рдореЗрдВ "*" рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реЛрддрд╛ рд╣реИред
рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдк рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкрд░реАрдХреНрд╖рдг рдХрдХреНрд╖рд╛рдУрдВ рд╕реЗ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЕрдиреНрдп рдХрдХреНрд╖рд╛рдУрдВ рд╕реЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХреЗрд╡рд▓ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд▓реЙрдЧ рдХрд░рддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдЬрдбрд╝ рдореЗрдВ, рдирд┐рдореНрди рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде "properties.logy" рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:
рдпреЛрдЬрдирд╛рдУрдВ
рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд▓реЙрдЬреА рд╣рдореЗрд╢рд╛ рдПрдХ рдиреНрдпреВрдирддрд░ рдЙрдкрдХрд░рдг рдмрдиреЗ рд░рд╣реЗ, рдЬреЛ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдПрдХ рд╕рдВрдХреАрд░реНрдг рд╕реЗрдЯ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдирд╣реАрдВ рдбрд╛рд▓рд╛ рдЬрд╛рдПрдЧрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдбреЗрдЯрд╛рдмреЗрд╕, рдиреЗрдЯрд╡рд░реНрдХ рдЖрджрд┐ рдореЗрдВ рд▓реЙрдЧрд┐рдВрдЧ рд╕рдорд░реНрдердиред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рдХреНрд╖рд┐рдд рджрд░реНрд╢рдХ рдЫреЛрдЯреЗ рдФрд░ рдордзреНрдпрдо рдЖрдХрд╛рд░ рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИрдВ рдЬрд╣рд╛рдВ рдРрд╕реЗ рдЕрд╡рд╕рд░реЛрдВ рдХреА рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИред
рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓реЙрдЬреА рдХреА рдХрдореА рд╣реИ, рд╡рд╣ рд╣реИ) рдЙрдкрдпреЛрдЧ рдХреЗ рдПрдХ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдХрдИ рд▓реЙрдЧрд░реНрд╕ рдХрд╛ рд╕рдорд░реНрдерди (рдЕрдм, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдХреЗрд╡рд▓ рдПрдХ); рдЦ) рдПрдХ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕рд╣реА рд╕рдВрдЪрд╛рд▓рди (рд╕рдЪ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХреА, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛрдВрдЧреА, рдЦрд╛рд╕рдХрд░ рдЬрдм рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд▓реЙрдЧрд┐рдВрдЧ рд╣реЛрддреА рд╣реИ)ред
рдореИрдВ
0.2.0
рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдпреЗ рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛
0.2.0
ред
рдкреБрдирд╢реНрдЪ
рдмреЗрд╢рдХ, рдореИрдВрдиреЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХреАред рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдкреНрд░рд▓реЗрдЦрди (рд▓реЗрдЦрди рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ)
GitHub рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреГрд╖реНрда рдкрд░ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдореБрдЭреЗ рдлреАрдбрдмреИрдХ, рдХрд╛рдВрдЯреЗ, рдкреВрд▓ рдЕрдиреБрд░реЛрдз рдФрд░ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдкрд░ рдмрд╣реБрдд рдЦреБрд╢реА рд╣реЛрдЧреАред
рдПрдирд╛рд▓реЙрдЧреНрд╕ рдХреЗ рд▓рд┐рдП рдХреЗ рд░реВрдк рдореЗрдВред рдореИрдВрдиреЗ рд╡реНрдпрд░реНрде рдЗрд╕ рдкреНрд░рд╢реНрди рдХреЛ рдЕрдВрдд рдореЗрдВ рдирд╣реАрдВ рдЫреЛрдбрд╝рд╛ рд╣реИред рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдФрд░ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░рддрд╛ред рд╢рд╛рдпрдж рдЗрд╕рд▓рд┐рдП рдХрд┐ рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдХреБрдЫ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдпрд╛, рдореИрдВ рд╕рд┐рд░реНрдл "рд╣рд╛рдВ, рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдХреЗ рдмрд╣рд╛рдиреЗ рдЦреЛрдЬ рд░рд╣рд╛ рд╣реВрдБ, рдореИрдВ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБ рдФрд░ рдЦрд╛рдКрдВрдЧрд╛" рдореЗрд░реЗ рд╕рд┐рд░ рдореЗрдВ рд╣рд░ рдирдП рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рд╛рдордиреЗ рдЬреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рднреВрдЦрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдЬреНрдЮрд╛рдд рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рдирдпрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реИ, рдпрд╣ рджреВрд╕рд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред