ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° ΡΠ΅Π»ΠΈΠ· ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Magika 1.0, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π°Π½Π°Π»ΠΈΠ·Π° ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ Π² ΡΠ°ΠΉΠ»Π΅ Π΄Π°Π½Π½ΡΡ . Magika ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π² ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΆΠ°ΡΠΈΡ, ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΠΊΠΎΠ΄, Π²ΠΈΠ΄Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ, ΡΠΎΡΠΌΠ°ΡΡ Π·Π²ΡΠΊΠ°, Π²ΠΈΠ΄Π΅ΠΎ, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. Π‘Π²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΈ Π³ΠΎΡΠΎΠ²Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0. ΠΠ±Π²ΡΠ·ΠΊΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Ρ Π΄Π»Ρ ΡΠ·ΡΠΊΠΎΠ² Rust, Python, JavaScript/TypeScript ΠΈ Go.
ΠΡ ΠΏΠΎΡ ΠΎΠΆΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΡ MIME-ΡΠΈΠΏ ΠΏΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ, Magika ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΈ ΡΠΎΡΠ½ΠΎΡΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ. ΠΠΎΠ΄Π΅Π»Ρ ΠΎΠ±ΡΡΠ΅Π½Π° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ° Keras Π½Π° 100 ΠΌΠ»Π½ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΡΠ°ΠΉΠ»ΠΎΠ² (ΡΠ°Π·ΠΌΠ΅Ρ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ Π±ΠΎΠ»Π΅Π΅ 3 TB) ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΠ΅ 200 ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 99%. ΠΠΎΠ΄Π΅Π»Ρ ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Π½Π° Π² ΡΠΎΡΠΌΠ°ΡΠ΅ ONNX ΠΈ ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ Π²ΡΠ΅Π³ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ. ΠΠ°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π½Π° 50% ΠΏΠΎΠ²ΡΡΠΈΡΡ ΡΠΎΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΠ°Π½Π΅Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²ΡΠ΅ΠΉΡΡ Π² Google ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²ΡΡΡΠ½ΡΡ Π·Π°Π΄Π°Π½Π½ΡΡ ΠΏΡΠ°Π²ΠΈΠ».
Π Google ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ Gmail, Drive, Code Insight ΠΈ Safe Browsing ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΎΠΊ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Magika Π² ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ VirusTotal ΠΈ abuse.ch Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π²Π΅Π½Π° Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΉ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ². Π Π°Π·Π²ΡΡΠ½ΡΡΠ°Ρ Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅ Google ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Magika ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΎΡΠ΅Π½ ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄ΠΎΠ² ΡΠ°ΠΉΠ»ΠΎΠ² Π² Π½Π΅Π΄Π΅Π»Ρ. ΠΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²ΡΠ΅ΠΌΡ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ 5 ΠΌΡ ΠΏΡΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΠ΄ΡΠ΅ CPU. ΠΡΠ΅ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠΈ Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ°ΠΉΠ»Π°.
ΠΠ»Ρ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ Magika Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Ρ ΡΡΠΈΠ»ΠΈΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΏΠ°ΠΊΠ΅ΡΡ Π΄Π»Ρ Python, Rust ΠΈ Go, Π° ΡΠ°ΠΊΠΆΠ΅ JavaScript-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΡΠΏΠΎΡΠΎΠ±Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ ΠΈΠ»ΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ Π½Π° Π±Π°Π·Π΅ Node.js. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈ API ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π² ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, Ρ.Π΅. ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² Π·Π° ΠΎΠ΄ΠΈΠ½ Π·Π°ΠΏΡΠΎΡ. ΠΠΌΠ΅Π΅ΡΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΠΈ ΡΡΠΈ ΡΠ΅ΠΆΠΈΠΌΠ° ΠΏΡΠΎΠ³Π½ΠΎΠ·ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΠΈ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ (Π²ΡΡΠΎΠΊΠ°Ρ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΡ, ΡΡΠ΅Π΄Π½ΡΡ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΡ ΠΈ Π½Π°ΠΈΠ»ΡΡΡΠ°Ρ Π΄ΠΎΠ³Π°Π΄ΠΊΠ°).
ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ°Π·Π²ΠΈΠ²Π°Π»ΡΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Python, Π½ΠΎ ΠΏΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΡΠ΅Π»ΠΈΠ·Π° 1.0 Π΄Π²ΠΈΠΆΠΎΠΊ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° Π±ΡΠ» ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Rust, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠΎΡ ΡΠ°Π½ΠΈΠ² Π΄ΠΎΠ»ΠΆΠ½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΡΠΈΡΡΠ½Π½ΠΎΡΡΠΈ ΠΊΠΎΠ΄Π°. ΠΠ»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ ONNX Runtime, Π° Π΄Π»Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠΉ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² β Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Tokio. ΠΠ° MacBook Pro (M4) ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π²ΠΈΠΆΠΊΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΎΠΊΠΎΠ»ΠΎ 1000 ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.
ΠΠΎΠΌΠΈΠΌΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ°, ΠΈΠ· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²ΡΠΏΡΡΠΊΠ΅ 1.0 ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ»Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ
ΡΠΈΠΏΠΎΠ² Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ 100 Π΄ΠΎ 200; Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Π½Π° Rust; ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΠ½ΠΎΡΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ
ΡΠΎΡΠΌΠ°ΡΠΎΠ², ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈ ΠΊΠΎΠ΄; ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π»Ρ Python ΠΈ TypeScript Π΄Π»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΠΈΡ
ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ. Π‘ΡΠ΅Π΄ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ
Π½ΠΎΠ²ΡΡ
ΡΠΈΠΏΠΎΠ² ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°: ΡΠΎΡΠΌΠ°ΡΡ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΈ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠΌ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠΈ ΠΈ AI; ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Swift, Kotlin, TypeScript, Dart, Solidity (solidity), Web Assembly ΠΈ Zig; DevOps-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ (Dockerfiles, TOML, HashiCorp, ΡΠ±ΠΎΡΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Bazel ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° YARA); ΠΠ SQLite; ΡΠ°ΠΉΠ»Ρ AutoCAD (dwg, dxf), Adobe Photoshop (psd) ΠΈ ΡΡΠΈΡΡΡ (woff, woff2). Π£Π»ΡΡΡΠ΅Π½ΠΎ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π½Π° C++ ΠΈ C, JavaScript ΠΈ TypeScript.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
