рдпрд╣ рдЬреНрдЮрд╛рдд рд╣реИ рдХрд┐ рдПрдХ рдХрдордЬреЛрд░ Arduino рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдЦреБрдж рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдкрд╛рд╕ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИредрдФрд░ рдЕрдЧрд░ рдЖрдк рдЗрд╕ рдХрд╛рд░реНрдп рдХреЛ рджреВрд╕рд░реА рддрд░рдл рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ?... рдФрд░ рд╕рдордп рдореЗрдВ рд╢реВрдЯрд┐рдВрдЧ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмрдврд╝рд╛рдПрдВредрд╣реЗрд╣, рдХрдИ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдиреЗ рд▓рд┐рдП рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рдЪреБрдХреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рддрдХрдиреАрдХ рдХреЛ рдЯрд╛рдЗрдорд▓реИрдкреНрд╕ (рдзреАрдореА рдЧрддрд┐ рд╡рд╛рд▓реА рдПрдХрд▓-рдлреНрд░реЗрдо рд╢реВрдЯрд┐рдВрдЧ) рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдпрд╣ рдПрдХ рд╡реАрдбрд┐рдпреЛ рд╢реВрдЯрд┐рдВрдЧ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рд╢реВрдЯрд┐рдВрдЧ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдПрдХ рд╡реАрдбрд┐рдпреЛ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИредрдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ, рд╢реБрд░реВ рдореЗрдВ рдореИрдВрдиреЗ рдзреАрдореА рдЧрддрд┐ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рдИ рдереАред рдореИрдВ рд╕рд┐рд░реНрдл рдЕрдкрдиреЗ arduins рдХреЗ рд▓рд┐рдП рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдкрдВрдЬреАрдХрд░рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЬрд┐рд╕рдореЗрдВ рдлрд╝реЛрдЯреЛ рднреА рд╢рд╛рдорд┐рд▓ рдереЗред рдЦреИрд░, рдлрд┐рд░ рдмрдВрдж рдФрд░ рдЪрд╛рд▓реВред рдпрджрд┐ рдореЗрд░рд╛ рдкрд╛рдардХ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ, рддреЛ рд╡рд╣ рдХреЗрд╡рд▓ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИ (рдХреНрд░реЛрдо рд╕реЗ рдиреАрдЪреЗ рдЬрд╛рдПрдВ)редрдореЗрд░реА рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдХреНрдпрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:- Arduino рдореЗрдЧрд╛ рдмреЛрд░реНрдб
- рдХреИрдорд░реЗ рдХрд╛ рдЬреЗрдкреАрдИрдЬреА рдореЙрдбреНрдпреВрд▓;
- рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдФрд░ MongoDB рдбреЗрдЯрд╛рдмреЗрд╕;
- HTML рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдореЗрдЬрдмрд╛рдиреА рдХреЗ рд▓рд┐рдП WEB рд╕рд░реНрд╡рд░;
рдЬрдм arduina рдЕрдкрдирд╛ рдбреЗрдЯрд╛ рд╕рд░реНрд╡рд░ рдХреЛ рднреЗрдЬрддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдЕрдкрдирд╛ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдкреНрд░рддреНрдпреЗрдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИредрдкреИрд░рд╛рдореАрдЯрд░ рднреЗрдЬрд╛ рдЧрдпрд╛ рдерд╛ - рдПрдХ рд░рд┐рдХреЙрд░реНрдб рднрдВрдбрд╛рд░ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рджреЛ рдФрд░ рдмрд╛рд░ рднреЗрдЬреЗ рдЧрдП рдереЗ - рджреЛ рдФрд░ рд░рд┐рдХреЙрд░реНрдб рд╕рд╣реЗрдЬреЗ рдЧрдП рдереЗредрд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рд╕рднреА рдХрд╛рдо рдПрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо (рдмрд╛рдж рдореЗрдВ рдордзреНрдпрд╕реНрде рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рд╕реНрдерд┐рд░ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрд╕реА рд╕рдордп, WEB рд╕рд░реНрд╡рд░ рд╕реНрд╡рдпрдВ рдХреЗрд╡рд▓ рд╕реНрдереИрддрд┐рдХ рд╕рд╛рдордЧреНрд░реА рджреЗрддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рд╕рднреА рдЧреНрд░рд╛рд╣рдХ рд▓реЛрдХрдкреНрд░рд┐рдп MQTT рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рдорд╛рди рдордзреНрдпрд╕реНрде рдХреЗ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реВрдЪрдирд╛ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред MQTT рд╕реЗ рдореБрдЦреНрдп рдЕрдВрддрд░ рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдордзреНрдпрд╕реНрде рдбреЗрдЯрд╛ рд╡реЗрдпрд░рд╣рд╛рдЙрд╕ рдХреЗ рд╕рд╛рде рд╕реАрдзреЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рддрдереНрдп рдЗрдВрдЯрд░реИрдХреНрд╢рди рд╕реНрдХреАрдо рдХреЛ рд╕рд░рд▓ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдиреЗрдЯрд╡рд░реНрдХ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИредрдЕрдкрдиреЗ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрдирд╛рдИ:рдпрд╣ рдиреЗрдЯрд╡рд░реНрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд▓рд╛рдЗрдВрдЯ рдмрдирд╛рддрд╛ рд╣реИ:var client = new MgtClient("localhost", "login", "password", onDebugLog);
рдХрд╛рд░реНрдп рддрд░реНрдХ:- рдиреЗрдЯрд╡рд░реНрдХ рдкрддрд╛ рдЬрд┐рд╕ рдкрд░ рдордзреНрдпрд╕реНрде рдХрд╛рд░реНрдпрдХреНрд░рдо рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЖрдк рдХреЗрд╡рд▓ рдЖрдИрдкреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "127.0.0.1";
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд▓реЙрдЧрд┐рди;
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдкрд╛рд╕рд╡рд░реНрдб
- рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди, рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП;
рдбрд┐рдмрдЧрд┐рдВрдЧ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддрд╛ рд╣реИ:function onDebugLog(aStr) {
console.log((new Date()).getTimeString() + ' ' + aStr + '\n');
}
рдЕрднреА рддрдХ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реБрдИ? рдЖрдЧреЗ рдпрд╣ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛редрднрдВрдбрд╛рд░рдг рдЕрдиреБрд░реЛрдз рд╕рдВрд░рдЪрдирд╛:var request = {
name: " 1",
placeId: 1,
beginTime: 1458108472000,
endTime: 1458194872000,
limit: 10000
};
рдЕрднреА рддрдХ рдЙрд▓рдЭрди рдореЗрдВ рдирд╣реАрдВ?рдлрд┐рд░ рдпрд╣рд╛рдВ рдЕрдиреБрд░реЛрдз рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рд╣реИ:var result = {
times: [],
values: [],
position: 20,
status: "progress",
progress: 91
};
рд╣рд╛рдБ, рдХреНрдпрд╛ рдпрд╣ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИ?"рд╕реНрдерд┐рддрд┐" рдлрд╝реАрд▓реНрдб рдХреА рд╕реНрдерд┐рддрд┐:- "рд╣реЛ рдЧрдпрд╛" - рд╡рд╣ рд╕рдм рдХреБрдЫ рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖ рдЬреЛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдпрд╛ рддреЛ рдкреВрд░реЗ рд╕рдордп рд╕реАрдорд╛ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╛ рдХрд╛рдо рдХрд┐рдП рдЧрдП рд░рд┐рдХреЙрд░реНрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рд╕реАрдорд╛);
- "рдкреНрд░рдЧрддрд┐" - рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдбреЗрдЯрд╛ рдХрд╛ рдЕрдВрддрд┐рдо рдЯреБрдХрдбрд╝рд╛ рдирд╣реАрдВ рд╣реИ, рдбрд╛рдЙрдирд▓реЛрдб рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрднреА рддрдХ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдИ рд╣реИ;
- "рдПрдмреЙрд░реНрдЯ" - рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдмрд╛рдзрд┐рдд рд╣реЛ рдЧрдпрд╛ рдерд╛ (рдХрд╛рдо рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреА рдХреБрд▓ рдорд╛рддреНрд░рд╛ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз), рдЖрдк рд▓рд╛рдкрддрд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреБрд░рдВрдд рдПрдХ рдирдпрд╛ рдЕрдиреБрд░реЛрдз рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ;
- "рд╡рд┐рдлрд▓" - рдХреБрдЫ рдЧрд▓рдд рд╣реЛ рдЧрдпрд╛ (рд╢рд╛рдпрдж рдЖрдЙрдЯрд▓реЗрдЯ рдореЗрдВ рдХреЛрдИ рдХрд░рдВрдЯ рдирд╣реАрдВ рд╣реИ?)
рдХреНрдпрд╛ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдм рд╣реИ? рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдирд╣реАрдВредрдЕрдиреБрд░реЛрдзрд┐рдд рдкреИрд░рд╛рдореАрдЯрд░ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред- рдпрджрд┐ рдкреИрд░рд╛рдореАрдЯрд░ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╣реИ, рддреЛ рд╕рдВрдЦреНрдпрд╛рдПрдБ рдорд╛рдиреЛрдВ рдХреА рд╕рд░рдгреА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреАред
- рдпрджрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ, рддреЛ рдорд╛рдиреЛрдВ рдХреА рд╕рд░рдгреА рдореЗрдВ рддрд╛рд░ рд╣реЛрдВрдЧреЗред
- рдпрджрд┐ рдмреВрд▓рд┐рдпрди рд╣реИ, рддреЛ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рд╕рд░рдгреА "рд╕рд╣реА" рдпрд╛ "рдЧрд▓рдд" рд╣реЛрдЧрд╛ред
- рдпрджрд┐ рдпрд╣ рджреНрд╡рд┐рдЖрдзрд╛рд░реА (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЬреЗрдкреАрдИрдЬреА рдЫрд╡рд┐) рд╣реИ, рддреЛ рдмрд╛рдЗрдЯ рд╕рд░рдгрд┐рдпреЛрдВ рдореВрд▓реНрдпреЛрдВ рдХреА рд╕рд░рдгреА рдореЗрдВ рд╣реЛрдЧреАред
- рдпрджрд┐ рдпрд╣ рдПрдХ рдШрдЯрдирд╛ рд╣реИ, рддреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рддрд░реАрдХреЗ рд╕реЗ рдЧрдард┐рдд рд░рд┐рдЯрд░реНрди рдРрд░реЗред
рдПрдХрд▓ рдИрд╡реЗрдВрдЯ рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:var event = [
" ",
"",
27.5,
"",
true,
...
"",
1458108472000
];
рдЕрд░реНрдерд╛рддреН, рдкреНрд░рддреНрдпреЗрдХ рдИрд╡реЗрдВрдЯ рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рдПрдХ рдордирдорд╛рдирд╛ рд╕реЗрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╕рдордЧреНрд░ рдЪрд┐рддреНрд░ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рд╕рдореВрд╣рди рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИредрдЙрдлрд╝, рд╕рдмрд╕реЗ рдореБрд╢реНрдХрд┐рд▓ рд╣рд┐рд╕реНрд╕рд╛ рдЦрддреНрдо рд╣реЛ рдЧрдпрд╛ рд╣реИредрдФрд░ рдЗрд╕рд▓рд┐рдП рдЦреБрдж рднреЗрдЬрдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рджрд┐рдЦрддрд╛ рд╣реИ:
client.readArchive(aRequest, onReadArchive);
рдЙрддреНрддрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд▓рдЯрд╛ рдХрд╛рд░реНрдп рдХрд░реЗрдВ:
onReadArchive(aResult) {
return false;
}
рдЕрдВрдд рдореЗрдВ, рд╣рдо рд╕реНрд╡рдпрдВ рд╡реАрдбрд┐рдпреЛ рд╕рдВрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдЖрдПредрд╡реАрдбрд┐рдпреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ Whammy рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдпрд╣рд╛рдВ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдгредрд╡реАрдбрд┐рдпреЛ рдмрдирд╛рдиреЗ рд╡рд╛рд▓рд╛ рдлрд╝рдВрдХреНрд╢рди:
<script src="whammy.js"></script>
<canvas id="canvas" style="display:none"></canvas>
<video id="player" controls autoplay loop></video>
function createVideo() {
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
canvas.width = '640';
canvas.height = '480';
var framerate = 10;
var quality = 0.8;
var video = new Whammy.Video(framerate, quality);
for (var i = 0; i < images.length; i++) {
var image = images[i];
context.globalAlpha = 1;
context.drawImage(image, 0, 0, 640, 480);
video.add(context);
}
var output = video.compile();
var url = URL.createObjectURL(output);
document.getElementById('player').src = url;
}
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЖрдк рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЗрд░рд╛ рдкрд╕рдВрджреАрджрд╛ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рд╡реЗрдмрдкреА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдХреИрд╕реЗ рдмрджрд▓рдирд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рд░реВрдкрд╛рдВрддрд░рдг рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдпрджреНрдпрдкрд┐ рдореБрдЭреЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдорд┐рд▓рд╛, рдпрд╣ рдЗрддрдиреА рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реБрдЖ (рдФрд░ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рдлреНрд░реЗрдо рдереЗ) рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреНрд░реЛрдо рдЗрдВрдЬрди рдХреЗ рд╕рд╛рде рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ, рдпрд╣ рдмрд╛рдд рдХрд╛рдо рдХрд░реЗрдЧреАредрдпрд╣рд╛рдВ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВрдиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛редрдкреВрд░реНрдг рдкреНрд░рд▓реЗрдЦрди рдХреЗ рдмрд┐рдирд╛, рдореИрдВ рдЕрдкрдиреЗ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВредрдЕрдиреБрдЪреНрдЫреЗрдж 1рдЕрдиреБрдЪреНрдЫреЗрдж 2рдЦреИрд░, рдпрд╣ рд╕рдм, рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреБрдЫ рдирд╣реАрдВ рд╣реИред