рдкреЗрддреНрд░реЛрд╡рд┐рдЪ рд░реВрд╕реА рдирд╛рдореЛрдВ рдХреЛ рдШрдЯрд╛рддрд╛ рд╣реИ

рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЕрдХреНрд╕рд░ рд░реВрд╕реА рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдирд╛рдо рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ? рд╡рд┐рдЬреНрдЮрд╛рдкрди рднреЗрдЬрддреЗ рд╕рдордп, рдкреЗрдЬ рдмрдирд╛рддреЗ рд╕рдордп рдФрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╕рдордп, рд╡рд┐рдЬреНрдЮрд╛рдкрди рдмрдирд╛рддреЗ рд╕рдордп? рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЖрдкрдХреЛ рдирд╛рдорд╛рдВрдХрд┐рдд рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЪрдХрдорд╛ рдФрд░ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ - рдкреНрдпреЛрддреНрд░ рд╕рд░реНрдЧреЗрдпреЗрд╡рд┐рдЪ рдЗрд╡рд╛рдиреЛрд╡ ред

рдпрд╣ рд╣рдореЗрд╢рд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рд╣рдореЗрд╢рд╛ рд╕реБрдВрджрд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рд╣рдореЗрд╢рд╛ рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рд░реВрд╕реА рднрд╛рд╖рд╛ рд╕рдореГрджреНрдз рдЖрдХреГрддрд┐ рд╡рд┐рдЬреНрдЮрд╛рди рдХреЗ рд╕рд╛рде рднреЗрдВрдЯ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдХреБрдЫ рд╣рдж рддрдХ рдЗрд╕рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЬрдЯрд┐рд▓ рдмрдирд╛рддреА рд╣реИред рд╣рд░ рдХреЛрдИ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдорд╛рдирд╡рд╢рд╛рд╕реНрддреНрд░ , рдЬреИрд╕рд╛ рдХрд┐ рд╕рдВрдЬреНрдЮрд╛ рджреНрд╡рд╛рд░рд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИ, рд╢рдмреНрдж рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рднреА рдирд┐рдпрдореЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реИред

рд░реВрдмреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ - рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд░реВрд╕реА рдмреЛрд▓рдиреЗ рд╡рд╛рд▓реЗ рдирд╛рдореЛрдВ, рдЙрдкрдирд╛рдо рдФрд░ рд╕рдВрд░рдХреНрд╖рдХ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣рд▓реНрдХрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИред



рджрд┐рд▓


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

рдХреЗ рдЙрдкрдпреЛрдЧ


рдореВрд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рдордЭрдиреЗ рдореЗрдВ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред

petrovich = Petrovich.new(:male) petrovich.lastname('', :dative) # =>  petrovich.firstname('', :dative) # =>  petrovich.middlename('', :dative) # =>  

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рджреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВ рдЬреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ: рдлрд░реНрд╢ рдХреЛ Petrovich рд╡рд░реНрдЧ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЛ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдорд╛рдорд▓реЗ рдХреЛ рдШреЛрд╖рдгрд╛ рдкрджреНрдзрддрд┐ рдХреЗ рджреВрд╕рд░реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдирд╛рдо рдХрд╛ рд▓рд┐рдВрдЧред рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ рддреАрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реИ:

рджреВрд╕рд░реЗ, рдЖрд╡рд╢реНрдпрдХ рдорд╛рдорд▓рд╛ред рдорд╛рдиреНрдп рдорд╛рдорд▓реЗ рдЬреЛ рд╢рдмреНрдж рдмрджрд▓рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдорд╛рдорд▓рд╛рдЪрд░рд┐рддреНрд░ рд╕рдВрдмрдВрдзреА рдкреНрд░рд╢реНрдирдкрдж
рд╕рдВрдмрдВрдзрдХрд╛рд░рдХрдХреМрди? рдХреНрдпрд╛?genitive
рд╕рдВрдкреНрд░рджрд╛рди рдХрд╛рд░рдХрдХрд┐рд╕рд╕реЗ рдХрд░реЗрдВ? рдХреНрдпрд╛?dative
рдХрд░реНрдо рдХрд╛рд░рдХрдХреМрди? рдХреНрдпрд╛?accusative
рдкрдВрдЪрдореА рд╡рд┐рднрдХреНрддрд┐рдХрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛? рдХреНрдпрд╛?instrumental
рд╕рдВрдмрдВрдзрдмреЛрдзрдХ рдкреВрд░реНрд╡рд╕рд░реНрдЧ-рд╕рдВрдмрдВрдзреАрдХрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ? рдХрд┐рд╕ рдмрд╛рд░реЗ рдореЗрдВ?prepositional
Petrovich::Extension рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХрд┐рд╕реА рднреА рд╡рд░реНрдЧ рдореЗрдВ рдорд┐рд▓рд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИред ActiveRecord рдФрд░ рд╕рдорд╛рди ORM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧреА рд╣реИред

 class User < ActiveRecord::Base include Petrovich::Extension petrovich :firstname => :my_firstname, :middlename => :my_middlename, :lastname => :my_lastname, :gender => :my_gender def my_firstname '' end def my_middlename '' end def my_lastname '--' end #     ,    #    .      , #        . def my_gender :male # :male, :female  :androgynous end end 

petrovich рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЕрдВрддрд┐рдо рдирд╛рдо, рдкреНрд░рдердо рдирд╛рдо рдФрд░ рдордзреНрдп рдирд╛рдо рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рддрд░реАрдХреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИрдВред рдпрд╣ рдЙрджрд╛рд╣рд░рдг рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ my_firstname рд╡рд┐рдзрд┐ рдкрд╣рд▓реЗ рдирд╛рдо рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИ, my_lastname рд╡рд┐рдзрд┐ рдЕрдВрддрд┐рдо рдирд╛рдо рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИ, рдФрд░ my_middlename рд╡рд┐рдзрд┐ рдордзреНрдп рдирд╛рдо рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИред рдХреБрдЫ рднреА рдирд╣реАрдВ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдПрдХ рдирд┐рдпрдорд┐рдд рд╡рд░реНрдЧ рдореЗрдВ рдорд┐рд╢реНрд░рдг рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИ, рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдорд╛рдорд▓реЛрдВ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рд▓рдХреНрд╖реНрдп рд╡рд░реНрдЧ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛ред

 user = User.new user.my_firstname # =>  user.my_firstname_genitive # =>  user.my_middlename_genitive # =>  user.my_lastname_genitive # => -- 

рд░реВрд╕реА рд╡рд░реНрддрдиреА рдХреА рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕рдЯреАрдХрддрд╛ рдХрд╛ рдЖрдХрд▓рди


рд╢рд╛рд▓реАрдирддрд╛ рдХреЗ рд▓рд┐рдП, рд╢рдмреНрджреЛрдВ рдХреА рдШреЛрд╖рдгрд╛ рдХреА рд╕рдЯреАрдХрддрд╛ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдПрдУрдЯреА рд░реВрдкрд╛рддреНрдордХ рд╢рдмреНрджрдХреЛрд╢ рд╕реЗ рдЙрдкрдирд╛рдо рдФрд░ рдЙрдирдХреЗ рд░реВрдкреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдХреЛ рд╕рдВрджрд░реНрдн рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕реВрддреНрд░ рджреНрд╡рд╛рд░рд╛ 88,314 рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдЯреАрдХрддрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛

ред

рдЬрд╣рд╛рдВ рдорд╛рдорд▓рд╛ рд╣реИ, рд▓рд┐рдВрдЧ рд▓рд┐рдВрдЧ рд╣реИ, V рдорд╛рдорд▓рд╛ рд╣реИ, рд▓рд┐рдВрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдорд╛рдорд▓реЗ рдФрд░ рд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╡рд┐рднрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдПрди рдорд╛рдорд▓рд╛, рд▓рд┐рдВрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдорд╛рдорд▓реЗ рдФрд░ рд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рд╣реИред

рд▓реЗрдЦрди рдХреЗ рд╕рдордп, 88,314 рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ 99.6614% рдХреА рдФрд╕рдд рд╕рдЯреАрдХрддрд╛ рд╣реИред рд╡рд┐рд╡рд░рдг рдиреАрдЪреЗ рджреА рдЧрдИ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореБрдХрд╛рдмрд▓рд╛ рдореЗрдВ рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреА рд╣реИред
рд▓рд┐рдВрдЧ / рдкреНрд░рдХрд░рдгрд╕рдВрдмрдВрдзрдХрд╛рд░рдХрд╕рдВрдкреНрд░рджрд╛рди рдХрд╛рд░рдХрдХрд░реНрдо рдХрд╛рд░рдХрдкрдВрдЪрдореА рд╡рд┐рднрдХреНрддрд┐рд╕рдВрдмрдВрдзрдмреЛрдзрдХ рдкреВрд░реНрд╡рд╕рд░реНрдЧ-рд╕рдВрдмрдВрдзреА
рдирд░99.7137%99.7386%99.7635%97.9858%99.7261%
рдорд╣рд┐рд▓рд╛99.9102%99.9401%99.9701%99.4636%99.9401%

рдЖрд╡рд╢реНрдпрдХ рд╡рд╕реНрддреБрдПрдБ


GitHub рдкрд░ рднрдВрдбрд╛рд░ рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ / рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ-рд░реВрдмреА рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ ред рдкреБрд╕реНрддрдХрд╛рд▓рдп MIT рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреА рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓реЗрдЦрдХ рдПрдВрдбреНрд░реА рдХреЛрдЬрд╝рд▓реЛрд╡ ( рдмреЛрдВрдЪ ) рдФрд░ рджрд┐рдорд┐рддреНрд░реА рдЙрд╕реНрддрд╛рд▓реЛрд╡ ( рдбрд╕реНрдЯрд╛рд▓реЛрд╡ ) рд╣реИрдВред

рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдпрд╛ рдЬреЗрдордлрд╛рдЗрд▓ рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рд░реЗрдЦрд╛ рдЬреЛрдбрд╝реЗрдВред

рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕


рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ "рдИрд╡рд┐рд▓ рдорд╛рд░реНрдЯрд┐рдпрдВрд╕ " рд╕реЗ рдЖрдВрджреНрд░реЗрдИ рд╕реАрдЯрдирд┐рдХ ( рдЗрд╕реНрдХрд┐рди ) рдиреЗ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрдирд╛рдпрд╛ рдЬреЛ рдЖрдкрдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рд╕реАрдзреЗ рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред



рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╡рд░реНрддрдорд╛рди рдореЗрдВ http://petrovich.nlpub.ru/ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИред

рдкреЛрд░реНрдЯрд┐рдВрдЧ


рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдЕрдкрдиреА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░реЗрдВрдЧреЗред рд╣рдо рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐рд╕реА рднреА рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджреЗрдиреЗ рдореЗрдВ рдкреНрд░рд╕рдиреНрди рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдкреЛрд░реНрдЯрд┐рдВрдЧ рдХреЛ рд╣рдорд╛рд░реЗ рдирд┐рдпрдо рдЖрдзрд╛рд░ рд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЕрдВрдд рддрдХ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ рдХреЗ рд╕рд╛рде рдЪрд┐рддреНрд░ рдкреЗрдЯреНрд░реЛрд╡рд┐рдЪ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЙрдорд┐рдХреНрд╕ рдХреЗ рд▓реЗрдЦрдХ рдЖрдВрджреНрд░реЗрдИ рдмрд┐рд▓реНрдЬрд╝реЛ рдХреЗ рд╣реИрдВред

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


All Articles