Fable: рдЖрд░рдИрдкреАрдПрд▓ рдШрдЯрдХреЛрдВ рдХреЛ рдЗрд╕ рднрдВрдбрд╛рд░ рдореЗрдВ рд▓реЗ рдЬрд╛рдПрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 27 рдирд╡ре░ 2018  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: fable-compiler/Fable

рд╣рдордиреЗ рдХрдИ рдмрд╛рд░ рдЖрд░рдИрдкреАрдПрд▓ рдХреЛ рдШрдЯрдХ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рд╣реИред рдореИрдВ рдЗрди рдореБрдЦреНрдп рдШрдЯрдХреЛрдВ рдХреЛ рд╣реЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд░реЗрдкреЛ рдмрдирд╛рдиреЗ рдХреА рд╕реЛрдЪ рд░рд╣рд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА FCS + Fable JS рд╕рдВрдХрд▓рди рдпрд╣рд╛рдБ рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╣рдореЗрдВ рдЕрдиреНрдп рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднрд╛рдЧреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЬреИрд╕реЗ fable-compiler-js рдХреЗ рд▓рд┐рдП рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдЕрд╕реЗрдВрдмрд▓рд┐рдпрд╛рдБ) рдпрд╣ рд╢рд╛рдпрдж рд╕рд░рд▓ рд╣реИ рдпрджрд┐ рд╣рдо рдпрд╣рд╛рдБ рдШрдЯрдХреЛрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрдиреНрдп рд░реЗрдкреЛ рд╕реЗ рдЦреАрдВрдЪрддреЗ рд╣реИрдВ .

рддреЛ рд╡рд┐рдЪрд╛рд░ рдпрд╣рд╛рдБ рд░рдЦрдирд╛ рд╣реИ:

  • рдЖрд░рдИрдкреАрдПрд▓ рд╡реЗрдм рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдЬреЛ рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЯреВрд▓рдЯрд┐рдкреНрд╕ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЖрджрд┐
  • рдореЗрдЯрд╛рдбреЗрдЯрд╛ (System.dll рдФрд░ рдРрд╕реЗ) + Fable.Repl.Lib рдЕрд╕реЗрдВрдмрд▓реА (рдФрд░ рдкреВрд░реНрд╡-рд╕рдВрдХрд▓рд┐рдд JS рдлрд╝рд╛рдЗрд▓реЗрдВ) рдЬрд┐рдиреНрд╣реЗрдВ рд╕рдВрдХрд▓рди рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
  • рдПрдл # рдХреЛрдб рдХреЗ рд▓рд┐рдП рдореЛрдирд╛рдХреЛ рд╕рдВрдкрд╛рджрдХ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХред

fable-compiler/repl рдХреЛ рдЗрди рдШрдЯрдХреЛрдВ рдХреЛ рдЦреАрдВрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╢реЗрд╖ UI рдФрд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЕрдиреНрдп рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдЖрдзрд╛рд░ рд╣реЛрдЧрд╛ рдЬреЛ рдЖрд░рдИрдкреАрдПрд▓ рдХреЛ рдПрдореНрдмреЗрдб рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рд╕рд╛рде рдорд╛рд░реНрдХрдбрд╛рдЙрди рдПрдл # рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред

рдпрд╣ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рдХреБрдЫ рдХрд╛рдо рд╣реИ, рдореИрдВ рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╢рд╛рдпрдж (рдПрдХрдорд╛рддреНрд░?) рд╡реНрдпрдХреНрддрд┐ рд╣реВрдВ рдЬреЛ рд╕рднреА рдЯреБрдХрдбрд╝реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдлрд┐рдЯ рдХрд░рдирд╛ рдЬрд╛рдирддрд╛ рд╣реИ;)

cc @ncave @MangelMaxime @whitetigle @tpetricek

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@alfonsogarciacaro рдмреЗрд╢рдХ рдореИрдВ рдирд╣реАрдВ рдХрд░рддрд╛, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЕрдиреБрд╕рд░рдг рдирд╣реАрдВ рдХрд░рддрд╛;)
рдореИрдВ рд╕рд┐рд░реНрдл рдордЬрд╛рдХ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЬреЛ рдХреЛрдИ рднреА рдкрд╣рд▓реЗ рд╕реЗ (рд╢рд╛рдпрдж) рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рд╡рд╣ рдЖрдкрдХреЛ рдЧрд┐рдЯрд╣рдм рдкрд░ рдЕрдиреБрд╕рд░рдг рдХрд░рдиреЗ рд╕реЗ рдЬрд╛рдирддрд╛ рд╣реИред

рдЕрдЧрд▓рд╛ рдХрджрдо -> рдЪрдВрджреНрд░рдорд╛ рдХреЗ рд▓рд┐рдП! (рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдЖрд░рдИрдкреАрдПрд▓ рдореЗрдВ рдПрдл # рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ, рд╕рдВрдХреЗрдд рдХреЛрд╣рдиреА рдЬреИрдм ;)

рд╕рднреА 12 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореИрдВ рдЪрд░реНрдЪрд╛ рдореЗрдВ @Krzysztof-Cieslak рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реВрдВред

рдПрдл # рдХреЛрдб рдХреЗ рд▓рд┐рдП рдореЛрдирд╛рдХреЛ рд╕рдВрдкрд╛рджрдХ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХред

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

рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдкрд┐рдВрдЧ рдХрд░реЗрдВ рдЬрдм рдпрд╣ рддреИрдпрд╛рд░ рд╣реЛред F# рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рдХреЗ рд╕рд╛рде рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдФрд░ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ Fable with Klipse рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред

рдпрд╣ рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ :) рдЕрдм Fable рдХреЗ рд╕рд╛рде F# рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЕрд╕реЗрдВрдмрд▓реА fable-metadata npm рдкреИрдХреЗрдЬ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рдЬрдмрдХрд┐ JS рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд FCS + Fable рдХреЛ рдПрдХ рд╡реЗрдм рд╡рд░реНрдХрд░ рдХреЗ рд╕рд╛рде fable-standalone рдореЗрдВ рд╢рд┐рдк рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдЬрд┐рд╕реЗ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

Fable REPL рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрди рдкреИрдХреЗрдЬреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИред рдирд┐рд░реНрджреЗрд╢ рдХрдореЛрдмреЗрд╢ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ:

  • fable-metadata/lib рдФрд░ fable-standalone/dist рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЙрд╕ рд╕реНрдерд╛рди рдкрд░ рдХреЙрдкреА рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдЖрдк рдЕрдкрдиреА рд╕реНрдерд┐рд░ рдлрд╝рд╛рдЗрд▓реЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ: рдЙрджрд╛рд╣рд░рдг
  • рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рдЬреЛрдбрд╝реЗрдВ (рдХреНрд░рдорд╢рдГ Fable.Standalone рдФрд░ Fable.WebWorker рдирд╛рдорд╕реНрдерд╛рди):
fable-standalone/src/Interfaces.fs
fable-Standalone/src/Worker/Shared.fs
  • рд╡реЗрдм рд╡рд░реНрдХрд░ рдХреЛ рдХреБрдЫ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде

  • src/App/Main.fs рдлрд╝рд╛рдЗрд▓ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдФрд░ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рд╕рдВрджреЗрд╢ рджреЗрдЦреЗрдВред

@alfonsogarciacaro рдпрд╣ рд░реЗрдкреЛ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░

рдЖрдк рд╕рднреА рдХрд╛ рд╕рд░рд╛рд╣рдиреАрдп рдХрд╛рд░реНрдп

@ncave рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рдкрд╛рд╕ рдЯреНрд╡рд┐рдЯрд░ рдЕрдХрд╛рдЙрдВрдЯ рдирд╣реАрдВ рд╣реИ, рдпрд╛ рд╣реИ рдирд╛? ;) рдЯреАрдмреАрдПрдЪ, рдореИрдВ рдХреБрдЫ рд╣рдж рддрдХ рдЗрд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд┐рдд рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдЬреЗрдирд░реЗрдЯ рдХреЛрдб рдХреЛ

@alfonsogarciacaro рдмреЗрд╢рдХ рдореИрдВ рдирд╣реАрдВ рдХрд░рддрд╛, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЕрдиреБрд╕рд░рдг рдирд╣реАрдВ рдХрд░рддрд╛;)
рдореИрдВ рд╕рд┐рд░реНрдл рдордЬрд╛рдХ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЬреЛ рдХреЛрдИ рднреА рдкрд╣рд▓реЗ рд╕реЗ (рд╢рд╛рдпрдж) рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рд╡рд╣ рдЖрдкрдХреЛ рдЧрд┐рдЯрд╣рдм рдкрд░ рдЕрдиреБрд╕рд░рдг рдХрд░рдиреЗ рд╕реЗ рдЬрд╛рдирддрд╛ рд╣реИред

рдЕрдЧрд▓рд╛ рдХрджрдо -> рдЪрдВрджреНрд░рдорд╛ рдХреЗ рд▓рд┐рдП! (рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдЖрд░рдИрдкреАрдПрд▓ рдореЗрдВ рдПрдл # рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ, рд╕рдВрдХреЗрдд рдХреЛрд╣рдиреА рдЬреИрдм ;)

рдореИрдВ рдкрд░ рдПрдл # рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ Klipse (рдЬреЗ рдПрд╕ рдХреЛрдб рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрди) рдЙрд╕реА рддрд░рд╣ Klipse рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдореЗрдВ рд▓рд┐рд╕реНрдк , Clojure рдФрд░ рдЧрд╣рд░реЗ рд▓рд╛рд▓ рд░рдВрдЧ рдХрд╛ ред

рдЙрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

  1. рдПрдХ рдПрдХрд▓ рдмрдВрдбрд▓ рдЬреЗрдПрд╕ рдлрд╝рд╛рдЗрд▓
  2. рдПрдХ eval рд╕рдорд╛рд░реЛрд╣ред

@viebel рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдирд┐рд░реНрджреЗрд╢ рдКрдкрд░ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╣реИрдВ ред рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдПрдХ eval рдлрд╝рдВрдХреНрд╢рди (рдФрд░ рд╢рд╛рдпрдж рд╢реБрд░реБрдЖрдд рдореЗрдВ рдПрдХ init рдлрд╝рдВрдХреНрд╢рди) рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╡реЗрдмрд╡рд░реНрдХрд░ рдХреЗ рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрднрд╡ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдХреНрд▓реАрдкреНрд╕ рдпреВрдЖрдИ рдлреНрд░реАрдЬ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдЬрдмрдХрд┐ рдХрдВрдкрд╛рдЗрд▓рд░ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ рдпрд╛ рд╕рдВрдХрд▓рди рдХрд░ рд░рд╣рд╛ рд╣реИред

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

рдХреГрдкрдпрд╛ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдПрдХ init + eval рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдореЗрдВ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдореЗрд░реА рд╕рд╣рд╛рдпрддрд╛ рдХрд░реЗрдВ

рдмрдВрдж рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЖрд░рдИрдкреАрдПрд▓ рдореЗрдВ рд╕рдВрд╕рд╛рдзрди рдЖрд╡рдВрдЯрд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

MangelMaxime picture MangelMaxime  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

et1975 picture et1975  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

forki picture forki  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

rommsen picture rommsen  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

theprash picture theprash  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ