рд╕рд╛рдЗрдХрд┐рд▓ рдХреЗ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдореЗрдВ рд▓рд┐рдкреНрдд рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╢рд╛рдирджрд╛рд░ рд╡рд┐рд╖рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдЕрдкрдиреА рднрд╛рд╖рд╛, рджреБрднрд╛рд╖рд┐рдпреЛрдВ рдФрд░ рд╕рдВрдХрд▓рдХ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЕрдиреНрдп рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рд╕рд╣рдЬ рд░реВрдк рд╕реЗ рдмрдирд╛рдиреЗ рдпрд╛ рдХреНрд░рд┐рдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдбрд░реНрд╕ рдХреЗ рджрд┐рд▓реЛрдВ рдореЗрдВ рдЦреМрдл рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИ - рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЬрдЯрд┐рд▓, рдЪрдордХреАрд▓рд╛, рд▓реЗрдХрд┐рди рдмреЗрд╣рдж рд░реЛрдорд╛рдВрдЪрдХ рд╣реИред
рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рджреБрднрд╛рд╖рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВ, рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдПрдХ рд▓реВрдк рдореЗрдВ рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕реНрд╡рд┐рдЪ рд╣реЛрддрд╛ рд╣реИред рджрд┐рд▓рдЪрд╕реНрдк, рдЖрд░рд╛рдо рд╕реЗ, рд▓реЗрдХрд┐рди рдбрд░рдкреЛрдХ рдФрд░ рдмрд╣реБрдд рдзреАрдорд╛ред рдореИрдВ рдХреБрд╢рд▓рддрд╛ рд╕реЗ JIT'it рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдФрд░ рдлреБрд░реНрддреАрд▓рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ рдЕрдзрд┐рдорд╛рдирддрдГ, рдЙрд╕рдиреЗ рдЦреБрдж рд╕реНрдореГрддрд┐ рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛ред
рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рд╕рдорд╛рдзрд╛рди .NET рдХреЛ рд▓рдХреНрд╖реНрдп рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд░реВрдк рдореЗрдВ рдЪреБрдирдирд╛ рд╣реИред рдЪрд▓реЛ рдЕрдЧрд▓реА рдмрд╛рд░ рд▓реЗрдХреНрд╕рд┐рдХрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЫреЛрдбрд╝ рджреЗрдВ, рдФрд░ рдЖрдЬ рдЖрдЗрдП рдПрдХ рд╕рд░рд▓рддрдо рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдЬреЛ рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдирд┐рд╖реНрдкрд╛рджрди рдмрдирд╛рддрд╛ рд╣реИ:

рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдирд╛рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдФрд░ рдХрдВрд╕реЛрд▓ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдирдорд╕реНрдХрд╛рд░,% рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо%ред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ:
- C # рдХреЛрдб рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рдФрд░ csc.exe рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛: рд╕рд░рд▓ рд▓реЗрдХрд┐рди рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ
- рдЯреЗрдХреНрд╕реНрдЯ рдлреЙрд░реНрдо рдореЗрдВ IL-рдХреЛрдб рдмрдирд╛рдирд╛ рдФрд░ ilasm.exe рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛: рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рд╕реЗ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдХрд╛рд░рдг рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ
- рдкрд░рд╛рд╡рд░реНрддрди рдпрд╛ рд╕реЗрд╕рд┐рд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реАрдзреЗ рдЕрд╕реЗрдВрдмрд▓реА рдмрдирд╛рдирд╛
рдмрд╕ рдЖрдЦрд┐рд░реА рд╡рд┐рдХрд▓реНрдк рдореИрдВрдиреЗ рдЪреБрдирд╛ред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рд╕реЗрд╕рд┐рд▓ рдХреНрдпрд╛ рдкрд░рд╛рд╡рд░реНрддрди рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рд╕реЗрд╕рд┐рд▓ рдкрд░ рдПрдХ рдЙрджрд╛рд╣рд░рдг рднрд░ рдореЗрдВ рдЖрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕рдХрд╛ рд╕рдЯреАрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реВрдБрдЧрд╛ред
Mono.Cecil рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд╕рд╛рде рдмрд╛рдЗрдЯреНрд╕ рдХреА рдПрдХ рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХреА рдорджрдж рд╕реЗ, рдЖрдк рджреЛрдиреЛрдВ рдЕрдкрдиреА рдЕрд╕реЗрдВрдмрд▓реА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдореМрдЬреВрджрд╛ рд▓реЛрдЧреЛрдВ рдХреЛ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЙрди рд╡рд░реНрдЧреЛрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ (рдЖрдорддреМрд░ рдкрд░) рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИрдВред
рдмрд╛рддрдЪреАрдд рдХрд╛ рд╡рд┐рд╖рдп
рдпрд╣рд╛рдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рддреИрдпрд╛рд░ рдХреЛрдб (рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬрдирд░реЗрдЯрд░ рд╡рд┐рдзрд┐ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рд╡рд░реНрдЧ, рд░реВрдк, рдФрд░ рдмрд╛рдХреА рд╕рдм рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рдмрд┐рдирд╛):
using Mono.Cecil; using Mono.Cecil.Cil; public void Compile(string str) {
рдЕрдм рдЦреМрдлрдирд╛рдХ рджрд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рдордзреНрдп рднрд╛рдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рд╕реЗ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред
рд╡рд╣рд╛рдВ рдХреНрдпрд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИ?
C # рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛, рдПрдХ рд╣реА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛ (рдореИрдВ рдХрдХреНрд╖рд╛ рд╡рд┐рд╡рд░рдг рдХреЛ рдЫреЛрдбрд╝ рджреВрдБрдЧрд╛):
static public void Main() { Console.WriteLine("Hello, " + "username"); Console.ReadLine(); }
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рджреЛ рд▓рд╛рдЗрдиреЗрдВ рд▓реЗрддреЗ рд╣реИрдВ, рдкрд╣рд▓рд╛ рдПрдХ рд╕реНрдерд┐рд░ рд╣реИ, рджреВрд╕рд░рд╛ рд╕рдВрдХрд▓рди рдЪрд░рдг рдкрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕реНрдерд┐рд░ рднреА рдмрди рдЬрд╛рддрд╛ рд╣реИ, рд╣рдо рдЙрдиреНрд╣реЗрдВ рд╕реНрдЯреИрдХ рдкрд░ рд░рдЦ рджреЗрддреЗ рд╣реИрдВред String.Concat рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдвреЗрд░ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ Console.WriteLine рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЙрд╕рдХреЗ рдмрд╛рдж, рддрд╛рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рди рд╣реЛ, рд╣рдореЗрдВ Console.ReadLine () рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдЪреВрдБрдХрд┐ рдпрд╣ рдПрдХ рд░реАрдб рд▓рд╛рдЗрди рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рд╣рдо рдЗрд╕реЗ рд╕реНрдЯреИрдХ рд╕реЗ рдмрд╛рд╣рд░ рдлреЗрдВрдХ рджреЗрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЙрдкрд▓рдмреНрдзрд┐ рдХреА рднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЪрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВред рд▓рдЧрднрдЧ рдореЗрди рдХрд╛ рдПрдХ рджреЗрд╢реА рдХрд╛рд░реНрдпред
Bytecode рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рд╣рдо .NET рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдмрдирд╛рддреЗ рд╣реИрдВ, рдФрд░ рд╡рд┐рдзрд┐ рдХрд╛ рд╢рд░реАрд░, рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЗрд╕рдХреЗ рдХрдорд╛рдВрдб рдХреЗ рд╣реЛрддреЗ рд╣реИрдВред .NET рдПрдХ рд╕реНрдЯреИрдХреНрдб рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рднреА рдСрдкрд░реЗрд╢рди рд╕реНрдЯреИрдХ рдкрд░ рдкрдбрд╝реЗ рдСрдкрд░реЗрдВрдб рдХреЗ рд╕рд╛рде рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЙрдирдХреА рдкреВрд░реА рд╕реВрдЪреА
рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рдкрд░ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдХреЗрд╡рд▓ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛, рдЬрд┐рдирдХрд╛ рдореИрдВрдиреЗ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред
LDSTR рд╕реНрдЯреИрдХ
рдкрд░ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ
рдХреЛ рдзрдХреЗрд▓рддрд╛ рд╣реИ ред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЗрд╕реЗ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, "рд╕реНрдЯреИрдХ рдкрд░ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ" рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рд╕реНрдЯреИрдХ рдкрд░ рдирд╣реАрдВ рдзрдХреЗрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рдкреЙрдЗрдВрдЯрд░ рдореЗрдореЛрд░реА рдореЗрдВ рдЙрд╕ рд╕реНрдерд╛рди рдкрд░ рд╣реИ рдЬрд╣рд╛рдВ рдпрд╣ рд╕реНрдерд┐рдд рд╣реИ - рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рд▓рд┐рдП, рдЖрдИрдПрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред рдХреЗрд╡рд▓ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рд╡рд╣рд╛рдВ рд╕реЗ рдЗрд╕реЗ рд▓реЗрдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред
рдХреЙрд▓ , рдЬреИрд╕рд╛ рдХрд┐ рдирд╛рдо рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рд╡рд┐рдзрд┐ рдХрд╣рддреА рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрд╕реЗ рд╕реНрд╡рдпрдВ рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рд▓рд┐рдВрдХ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ рдЖрдпрд╛рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЖрдпрд╛рдд рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдирд╛рдо рдФрд░ рд╕реВрдЪреА рдХреЛ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдХрд╛рд░ рдореЗрдВ "рдЦреЛрдЬ" рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП - рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд░рд┐рдХреЙрд░реНрдб рдЗрддрдирд╛ рднрдпрд╛рдирдХ рд╣реИред рдПрдХ рдЕрдЪреНрдЫреЗ рддрд░реАрдХреЗ рд╕реЗ, рдпрд╣рд╛рдВ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реИрдВрдбрд▓рд░ рд▓рд┐рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ рдЬреЛ "рд╕реНрдЯреНрд░реАрдВрдЧ.рдХреЙрдиреНрдХрдЯ (рд╕реНрдЯреНрд░рд┐рдВрдЧ, рд╕реНрдЯреНрд░рд┐рдВрдЧ)" рд░реВрдк рдХреА рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдЗрд╕ рдбрд░рд╛рд╡рдиреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ - рдЖрдк рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдкреАрдУрдкреА рд╕реНрдЯреИрдХ рд╕реЗ рд╢реАрд░реНрд╖ рдЖрдЗрдЯрдо рдХреЛ рдкреЙрдк рдХрд░рддрд╛ рд╣реИред рдХреБрдЫ рдЦрд╛рд╕ рдирд╣реАрдВред рд╣рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ Console.ReadLine () рдПрдХ рдорд╛рди рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдФрд░ рд╣рдорд╛рд░рд╛ рдлрд╝рдВрдХреНрд╢рди рд╢реВрдиреНрдп рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕реЗ рд╡рд╣рд╛рдВ рдирд╣реАрдВ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕рд╛рдлрд╝ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рд░реАрдЯ - рд╢рдмреНрдж рд╡рд╛рдкрд╕реА рд╕реЗ, рд╡рд░реНрддрдорд╛рди рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддрд╛ рд╣реИред рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрдд рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рд╢рд╛рдпрдж рдПрдХ рдирд╣реАрдВ - рдЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрд┐рддрдиреЗ рдирд┐рдХрд╛рд╕ рдмрд┐рдВрджреБ рд╣реИрдВред
рдХрд╛рдо рдХреЗ рдкрд░рд┐рдгрд╛рдо
рдЕрдВрдд рдореЗрдВ, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдФрд░ рдЪрд▓рд╛рдирд╛, рд╡рд╣рд╛рдВ рдЕрдкрдирд╛ рдирд╛рдо рджрд░реНрдЬ рдХрд░рдирд╛ рдФрд░ рд╡рдЬрд╝рдирджрд╛рд░ рд╕рдВрдХрд▓рди рдмрдЯрди рджрдмрд╛рдХрд░, рд╣рдо рдЙрд╕реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рд▓рдШреБ рдЕрднрд┐рд╡рд╛рджрди рдХрд░рддреЗ рд╣реИрдВред рдмрд╛рдЗрдирд░реА рдЬрд┐рд╕рдХрд╛ рд╡рдЬрди рдареАрдХ 2048 рдмрд╛рдЗрдЯреНрд╕ рд╣реИред
рд╣рдо рдЗрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╡реЙрдпрд▓рд╛!
