рд╕рд╛рдордЧреНрд░реА рдкрд░ рдЬрд╛рдПрдВ

YOLOv5 ЁЯЪА AWS рдбреАрдк рд▓рд░реНрдирд┐рдВрдЧ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдкрд░: рдЖрдкрдХреА рдкреВрд░реА рдЧрд╛рдЗрдб

рдПрдХ рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рдЧрд╣рди рд╕реАрдЦрдиреЗ рдХрд╛ рдорд╛рд╣реМрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдирдП рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдард┐рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдбрд░реЛ рдордд! ЁЯЫая╕П рдЗрд╕ рдЧрд╛рдЗрдб рдХреЗ рд╕рд╛рде, рд╣рдо рдЖрдкрдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓реЗрдВрдЧреЗ YOLOv5 рдКрдкрд░ рдФрд░ рдПрдХ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдбреАрдк рд▓рд░реНрдирд┐рдВрдЧ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдкрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рдЕрдореЗрдЬрд╝реЕрди рд╡реЗрдм рд╕рд░реНрд╡рд┐рд╕реЗрдЬ (рдПрдбрдмреНрд▓реНрдпреВрдПрд╕) рдХреА рд╢рдХреНрддрд┐ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдХрд░, рдпрд╣рд╛рдВ рддрдХ рдХрд┐ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдирдП рд▓реЛрдЧ рднреА рдЬрд▓реНрджреА рдФрд░ рд▓рд╛рдЧрдд рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред AWS рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреА рдорд╛рдкрдиреАрдпрддрд╛ рдкреНрд░рдпреЛрдЧ рдФрд░ рдЙрддреНрдкрд╛рджрди рдкрд░рд┐рдирд┐рдпреЛрдЬрди рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХрджрдо рд╕рд╣реА рд╣реИред

рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рдХреНрд╡рд┐рдХрд╕реНрдЯрд╛рд░реНрдЯ рд╡рд┐рдХрд▓реНрдк YOLOv5 рд╣рдорд╛рд░реЗ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ Colab рдиреЛрдЯрдмреБрдХ Colab рдореЗрдВ рдЦреЛрд▓реЗрдВ рдХрд╛рдЧрд▓ рдореЗрдВ рдЦреЛрд▓реЗрдВ, рдЬреАрд╕реАрдкреА рдбреАрдк рд▓рд░реНрдирд┐рдВрдЧ рд╡реАрдПрдо, рдФрд░ рд╣рдорд╛рд░реА рдбреЙрдХрд░ рдЫрд╡рд┐ рдкрд░ рдбреЙрдХрд░ рд╣рдм рдбреЙрдХрд░ рдкреБрд▓.

рдЪрд░рдг 1: AWS рдХрдВрд╕реЛрд▓ рд╕рд╛рдЗрди-рдЗрди

рдЦрд╛рддрд╛ рдмрдирд╛рдХрд░ рдпрд╛ https://aws.amazon.com/console/ рдкрд░ AWS рдХрдВрд╕реЛрд▓ рдореЗрдВ рд╕рд╛рдЗрди рдЗрди рдХрд░рдХреЗ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВред рдПрдХ рдмрд╛рд░ рд▓реЙрдЧ рдЗрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЕрдкрдиреЗ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдФрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП EC2 рд╕реЗрд╡рд╛ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред

рдЗрд▓реЗрдХреНрдЯреНрд░реЕрд╛рдирд┐рдХ рдЙрдкрдХрд░рдг

рдЪрд░рдг 2: рдЕрдкрдирд╛ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВ

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

рд▓рд╛рдБрдЪ

рд╕рд╣реА рдЕрдореЗрдЬрд╝реЕрди рдорд╢реАрди рдЫрд╡рд┐ (рдПрдПрдордЖрдИ) рдХрд╛ рдЪрдпрди рдХрд░рдирд╛

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

рдПрдПрдордЖрдИ рдЪреБрдиреЗрдВ

рдПрдХ рдЖрд╡реГрддреНрддрд┐ рдкреНрд░рдХрд╛рд░ рдЪреБрдирдирд╛

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

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

рдЙрдкрд▓рдмреНрдз GPU рдЖрд╡реГрддреНрддрд┐ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд▓рд┐рдП, EC2 рдЖрд╡реГрддреНрддрд┐ рдкреНрд░рдХрд╛рд░реЛрдВ рдкрд░ рдЬрд╛рдПрдБ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рддреНрд╡рд░рд┐рдд рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреЗ рддрд╣рддред

рдкреНрд░рдХрд╛рд░ рдЪреБрдиреЗрдВ

GPU рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, GPU рдирд┐рдЧрд░рд╛рдиреА рдФрд░ рдЕрдиреБрдХреВрд▓рди рджреЗрдЦреЗрдВред рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рдг рдХреЗ рд▓рд┐рдП, рдСрди-рдбрд┐рдорд╛рдВрдб рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рдг рдФрд░ рд╕реНрдкреЙрдЯ рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рдг рджреЗрдЦреЗрдВред

рдЕрдкрдиреА рдЖрд╡реГрддреНрддрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛

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

рд╕реНрдкреЙрдЯ рдЕрдиреБрд░реЛрдз

рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЪрд░рдг 4-7 рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛рдиреБрд╕рд╛рд░ рдЕрдкрдиреА рдмрд╛рдХреА рдЗрдВрд╕реНрдЯреЗрдВрд╕ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рдпрд╛рдж рд░рдЦреЗрдВред

рдЪрд░рдг 3: рдЕрдкрдиреА рдЖрд╡реГрддреНрддрд┐ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ

рдПрдХ рдмрд╛рд░ рдЖрдкрдХрд╛ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдЪрд▓рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕рдХреЗ рдЪреЗрдХрдмреЙрдХреНрд╕ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ SSH рдЬрд╛рдирдХрд╛рд░реА рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрдиреЗрдХреНрдЯ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдЕрдкрдиреЗ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд SSH рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдЬреЛреЬрдирд╛

рдЪрд░рдг 4: рд░рдирд┐рдВрдЧ YOLOv5

рдЕрдкрдиреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд┐рдпрд╛ рд╣реИ, рдЕрдм рдЖрдк рдХреНрд▓реЛрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ YOLOv5 рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдФрд░ рдПрдХ рдХреЗ рднреАрддрд░ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ Python 3.8 рдпрд╛ рдмрд╛рдж рдХрд╛ рд╡рд╛рддрд╛рд╡рд░рдгред YOLOv5рдХреЗ рдореЙрдбрд▓ рдФрд░ рдбреЗрдЯрд╛рд╕реЗрдЯ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд╡реАрдирддрдо рд░рд┐рд▓реАрдЬрд╝ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред

git clone https://github.com/ultralytics/yolov5  # clone repository
cd yolov5
pip install -r requirements.txt  # install dependencies

рдЕрдкрдиреЗ рдкрд░рд┐рд╡реЗрд╢ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд╕рд╛рде, рдЖрдк рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдорд╛рдиреНрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдирд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ YOLOv5 рдореЙрдбрд▓:

# Train a model on your data
python train.py

# Validate the trained model for Precision, Recall, and mAP
python val.py --weights yolov5s.pt

# Run inference using the trained model on your images or videos
python detect.py --weights yolov5s.pt --source path/to/images

# Export the trained model to other formats for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite

рд╡реИрдХрд▓реНрдкрд┐рдХ рдЕрддрд┐рд░рд┐рдХреНрдд

рдЕрдзрд┐рдХ рд╕реНрд╡реИрдк рдореЗрдореЛрд░реА рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреЛ рдмрдбрд╝реЗ рдбреЗрдЯрд╛рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджреНрдзрд╛рд░рдХрд░реНрддрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЪрд▓рд╛рдПрдВ:

sudo fallocate -l 64G /swapfile  # allocate 64GB swap file
sudo chmod 600 /swapfile  # modify permissions
sudo mkswap /swapfile  # set up a Linux swap area
sudo swapon /swapfile  # activate swap file
free -h  # verify swap memory

рдФрд░ рдмрд╕! ЁЯОЙ рдЖрдкрдиреЗ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ AWS рдбреАрдк рд▓рд░реНрдирд┐рдВрдЧ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдмрдирд╛рдпрд╛ рд╣реИ рдФрд░ рдЪрд▓рд╛рдПрдВ YOLOv5. рдЪрд╛рд╣реЗ рдЖрдк рдСрдмреНрдЬреЗрдХреНрдЯ рдбрд┐рдЯреЗрдХреНрд╢рди рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░ рд░рд╣реЗ рд╣реЛрдВ рдпрд╛ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХрд░ рд░рд╣реЗ рд╣реЛрдВ, рдпрд╣ рд╕реЗрдЯрдЕрдк рдЖрдкрдХреЗ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЦреБрд╢ рдкреНрд░рд╢рд┐рдХреНрд╖рдг, рдорд╛рдиреНрдп рдФрд░ рддреИрдирд╛рддреА! рдпрджрд┐ рдЖрдк рд░рд╛рд╕реНрддреЗ рдореЗрдВ рдХрд┐рд╕реА рднреА рд╣рд┐рдЪрдХреА рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдордЬрдмреВрдд рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдкреНрд░рд▓реЗрдЦрди рдФрд░ рд╕рдХреНрд░рд┐рдп Ultralytics рд╕рдореБрджрд╛рдп рдЖрдкрдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рд╣реИред



2023-11-12 рдмрдирд╛рдпрд╛ рдЧрдпрд╛, рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ 2023-12-03
рд▓реЗрдЦрдХ: рдЧреНрд▓реЗрди-рдЬреЛрдЪрд░ (2)

рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ