Google Analytics рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдмрд┐рдирд╛ рддреГрддреАрдп-рдкрдХреНрд╖ рдбреЛрдореЗрди рдореЗрдВ рдЯреНрд░реИрдХ рдХрд░рдирд╛



рд▓реЗрдЦ рдХрд┐рд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ?



рдкреНрд░реЗрд╖рд┐рдд рдХреНрдпреЛрдВ?


рдЦрд░реАрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреБрдЧрддрд╛рди рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рджреМрд░рд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рдЦреЛрдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рд╛рде рд╣реА рд╕рд╛рде рд╕рд╛рдЗрдЯреЛрдВ рдХреА рд╣рдорд╛рд░реА рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдирдХреА рдпрд╛рддреНрд░рд╛рдПрдВ рднреАред

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдмрд┐рдирд╛ рдХреНрдпреЛрдВ?



рд╡рд┐рдзрд┐ рдХрд╛ рд╕рд╛рд░ рд╕рд░рд▓ рд╣реИред рд╣рдо __utm рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рднреА рдХреБрдХреАрдЬрд╝ рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЛрдореЗрди рдХреЗ url рдореЗрдВ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рдХреБрдЫ рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИред рд╣рдо рд╡рд┐рдЪрд░рдг рдХрд░рддреЗ рд╣реИрдВред рдЕрдВрддрд┐рдо рдкреИрд░рд╛рдореАрдЯрд░ __utmk рдЬреЛрдбрд╝реЗрдВ, рдЬреЛ рдЕрдиреНрдп рд╕рднреА Google рд╡рд┐рд╢реНрд▓реЗрд╖рд┐рдХреА рдХреБрдХреАрдЬрд╝ рдХрд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╣реИрд╢ рд╣реИред рдмрдзрд╛рдИ рд╣реЛ, рд╣рдордиреЗ Google Analytics рдХреА рдкреНрд░рд╕рд┐рджреНрдз g.js рдлрд╝рд╛рдЗрд▓ рдореЗрдВ _link рдлрд╝рдВрдХреНрд╢рди рдХреНрдпрд╛ рдХрд┐рдпрд╛ рд╣реИред
рдФрд░ рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдкрдХреЗ рдирд┐рдпрдВрддреНрд░рдХ рдиреЗ рдЕрдиреНрдп рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рд╕рдВрдХреНрд░рдордг рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рд╕рднреА рд▓рд┐рдВрдХ рдХреЗ рд▓рд┐рдП рдлрд╝реЙрд░реНрдо рдХрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ :

onclick="_gaq.push(['_link', 'https://www.payment-system.com?contractId=example']); return false;" 


рдпрджрд┐ рдЖрдкрдХреЛ utmk рдХреБрдВрдЬреА рдХреЗ рд▓рд┐рдП рд╣реИрд╢ рдЬреЗрдирд░реЗрд╢рди рд╕реЛрд░реНрд╕ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ github рдкрд░ рдЬрд╛рдПрдВ ред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдХрд╣рд╛рдиреА рд╣реИред



1. рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдкреНрд░рд╛рдкреНрдд:
"рд╕рд╛рдЗрдЯ рд╕реЗ рднреБрдЧрддрд╛рди рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП Google рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкрд░ рдЬрд╛рдПрдВ"
рд╡рд┐рд╡рд░рдг:
"рд╣рдо рдЬрд╛рдирдХрд╛рд░реА рдЦреЛ рд░рд╣реЗ рд╣реИрдВ [рдореИрдВ рдХрд╣рд╛рдБ рд╕реЗ рдЖрдпрд╛ рдерд╛, рдореИрдВ рдХреНрдпрд╛ рджреЗрдЦ рд░рд╣рд╛ рдерд╛, рдореИрдВ рдХреИрд╕реЗ рдЦрд░реАрдж рдмрдЯрди рдорд┐рд▓рд╛] рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рд╣рдорд╛рд░реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХреЛ рдЦрд░реАрджрд╛ред

Analytics рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдлрд╝реЙрд░реНрдо рдХреЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ:

 onclick="_gaq.push(['_link', 'http://another-domain.com']); return false;" 

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

рдПрдХ рдбреЛрдореЗрди рд╕реЗ рдПрдХ рд╕рддреНрд░ рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдЕрдиреНрдп рдбреЛрдореЗрди рдкрд░ рдареАрдХ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рдХреНрд▓рд┐рдХ рдпрд╛ рдлрд╝реЙрд░реНрдо рд╕рдмрдорд┐рдЯ рдХрд░рдиреЗ рдпрд╛ _getLinkerURL рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред


рдФрд░ рдРрд╕рд╛ рд╣реИред рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреНрд▓рд┐рдХ, рдлрд╝реЙрд░реНрдо рд╕рдмрдорд┐рд╢рди, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд┐рдзрд┐ред рдХреЗрд╡рд▓? рдХреЗрд╡рд▓! рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ?



рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдСрдирдХреНрд▓рд┐рдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реЗрдЯ рд╣реЛрддреА рд╣реИред

рд╣рдо рдЦреЛрдЬ рдЗрдВрдЬрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯ рдЦреЛрдЬреЗрдВрдЧреЗ, рд▓рд┐рдВрдХ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░реЗрдВрдЧреЗ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рд╕реЗ рдХреБрдХреА рдбреЗрдЯрд╛ рд╣реИ:
 __utma 31500988.382379344.1389384850.1389388916.1389389624.3 __utmb 31500988.1.10.1389389624 __utmc 31500988 __utmz 31500988.1389389624.3.2.utmcsr=yandex|utmccn=(organic)|utmcmd=organic|utmctr=_ 

рдпрд╣рд╛рдБ рдкреНрд░рддреНрдпреЗрдХ рдХреБрдХреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝реЗрдВред

рдЖрдЗрдП рдПрдХ рдкрд░реАрдХреНрд╖рдг HTML рд▓рд┐рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреБрдЧрддрд╛рди рдкреНрд░рдгрд╛рд▓реА рдкрд░ рдЬрд╛рдПрдВ рдЬреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рд╡рд░реНрдгрд┐рдд _gaq.push ('рд▓рд┐рдВрдХ' ... рдХрд╣рддрд╛ рд╣реИред
рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ (рдпрд╣ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдкреИрд░рд╛рдореАрдЯрд░ URL рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдереЗ:

 __utma 31500988.382379344.1389384850.1389388916.1389389624.3 __utmb 31500988.1.10.1389389624 __utmc 31500988 __utmz 31500988.1389389624.3.2.utmcsr=yandex|utmccn=(organic)|utmcmd=organic|utmctr=_ __utmk 88022362 __utmv - __utmx - 

рдХреБрдХреАрдЬрд╝ рднреА (рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рджреВрд╕рд░реЗ рдбреЛрдореЗрди рдкрд░) utma, utmb, utmc рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг utmz рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдереЗ, рдЬрд┐рд╕рдореЗрдВ рдореВрд▓реНрдп utmcsr = yandex | utmccn = (рдХрд╛рд░реНрдмрдирд┐рдХ) | utmcmd = рдХрд╛рд░реНрдмрдирд┐рдХред Utmctr = our_query

рдлрд┐рд░ рд╡рд╣ рдПрдХ рдЧрддрд┐рд░реЛрдз рдкрд░ рдкрд╣реБрдВрдЪ рдЧрдпрд╛, рдЬрд┐рд╕рдиреЗ рдПрдХ рдЧреНрд░рд╛рд╣рдХ рдХреЗ рдмрд┐рдирд╛ рдпреВрдЖрд░рдПрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреНрдЮрд╛рдд рдХреБрдХреАрдЬрд╝ рдХреЗ 4 рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рд╡реЗ рдЬрд┐рджреНрджреА рд░реВрдк рд╕реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдкрдЯрд░рд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗред
Ga.js, ga_debug.js рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг, рдпрд╛ рдпреЛрдВ рдХрд╣реЗрдВ рдХрд┐, рдЙрдирдХреЗ minification рдиреЗ рдХреЛрдИ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджрд┐рдпрд╛, рдмреНрдпреВрдЯреАрдлреБрд▓рд┐рдЯреА ga.js рдмрдирд╛рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рд╕реЗ рднреА рдХреБрдЫ рдирд╣реАрдВ рд╣реБрдЖред

рдЪреМрдХрд╕ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╣реА рджреЗрдЦ рдЪреБрдХреЗ рд╣реИрдВ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд╛рдж 3 рдирдП рдкреИрд░рд╛рдореАрдЯрд░ рдЕрдиреБрд░реЛрдз рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ:

 __utmk 88022362 __utmv - __utmx - 

рдореИрдВрдиреЗ рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рджред рдереЛрдбрд╝рд╛ рдЦреЛрджрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдкрд░ рд╣реИрдмрд░ рдХреЗ рд╕рдорд╛рди рд▓реЗрдЦ рдкрд░ рдЖрдпрд╛ред

рдпреЗ Adobe Flash рдХреЗ рд▓рд┐рдП Google Analytics рдЯреНрд░реИрдХрд┐рдВрдЧ рдкрд░ рдЫрд╛рдВрдЯреЗ рдЧрдПред
рдпрд╣ рдЫреЛрдЯреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдорд▓рд╛ рд╣реИред рдкрддрд╛ рдХрд░реЗрдВ рдХрд┐ рд╕рднреА рдХреБрдХреАрдЬрд╝ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рд╣реИрд╢ рдмрдирддрд╛ рд╣реИ рдФрд░ __utmk рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдЬрд╛рд╡рд╛ рд╣реИрд╢ рдкреАрдврд╝реА рд╕рдорд╛рд░реЛрд╣:
 /** * Generate hash for input string. This is a global method, since it does not need * to access any instance variables, and it is being used everywhere in the GATC module. * @param input Input string to generate hash value on. * @return Hash value of input string. If input string is undefined, or empty, return hash value of 1. */ public function generateHash( input:String ):int { var hash:int = 1; // hash buffer var leftMost7:int = 0; // left-most 7 bits var pos:int; // character position in string var current:int; // current character in string // if input is undef or empty, hash value is 1 if(input != null && input != "") { hash = 0; // hash function for( pos = input.length - 1 ; pos >= 0 ; pos-- ) { current = input.charCodeAt(pos); hash = ((hash << 6) & 0xfffffff) + current + (current << 14); leftMost7 = hash & 0xfe00000; if(leftMost7 != 0) { hash ^= leftMost7 >> 21; } } } return hash; } 


PHP рдореЗрдВ ред

рдЕрдВрдд рдореЗрдВ, рд╣рдо рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рдорд╛рди рдЯреНрд░реИрдХ рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП, рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдк (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ - ga.js - рд▓рд┐рдВрдХ () рдФрд░ php рдЬрдирд░реЗрдЯрд╣реИрд╢) __utmk рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдХреБрдВрдЬреА рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдЯреНрд░реИрдХ рдерд░реНрдб-рдкрд╛рд░реНрдЯреА рдбреЛрдореЗрди рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

рдирд┐рд╖реНрдХрд░реНрд╖:


рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрд░реЙрд╕-рдбреЛрдореЗрди рдЯреНрд░реИрдХрд┐рдВрдЧ рдХрд╛ рдПрдХ рдирдпрд╛ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ рдмреЗрд╣рддрд░ рдирд╣реАрдВ рд╣реИ, рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реИ, рдмрд╕ рдЕрд▓рдЧ рд╣реИ (рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб)ред

Source: https://habr.com/ru/post/In208706/


All Articles