ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ื™ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš Haxe 4.0

ื‘ื ื™ืžืฆื ื˜ืึธืึธืœืงื™ื˜ ืžืขืœื“ื•ื ื’ ื”ืึทืงืกืข 4.0, ื•ื•ืึธืก ื›ื•ืœืœ ื“ื™ ืžื•ืœื˜ื™-ืคึผืึทืจืึทื“ื™ื’ื ื”ื•ื™ืš-ืžื“ืจื’ื” ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทืš ืžื™ื˜ ื“ื™ ื–ืขืœื‘ืข ื ืึธืžืขืŸ ืžื™ื˜ ืฉื˜ืึทืจืง ื˜ื™ื™ืคึผื™ื ื’, ืึท ืงืจื™ื™ึทื–-ืงืึทืžืคึผื™ื™ืœืขืจ ืื•ืŸ ืึท ื ืึธืจืžืึทืœ ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืคื•ืŸ ืคืึทื ื’ืงืฉืึทื ื–. ื“ื™ ืคึผืจื•ื™ืขืงื˜ ืฉื˜ื™ืฆื˜ ืื™ื‘ืขืจื–ืขืฆื•ื ื’ ืฆื• C ++, HashLink / C, ื“ื–ืฉืึทื•ื•ืึทืกืงืจื™ืคึผื˜, C #, Java, PHP, Python ืื•ืŸ Lua, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ ื–ืึทืžืœื•ื ื’ ืฆื• JVM, HashLink / JIT, Flash ืื•ืŸ Neko ื‘ื™ื˜ืขืงืึธื“ืข, ืžื™ื˜ ืึทืงืกืขืก ืฆื• ื“ื™ ื’ืขื‘ื•ื™ืจืŸ ืงื™ื™ืคึผืึทื‘ื™ืœืึทื˜ื™ื– ืคื•ืŸ ื™ืขื“ืขืจ ืฆื™ืœ ืคึผืœืึทื˜ืคืึธืจืžืข. ืงืึทืžืคึผื™ื™ืœืขืจ ืงืึธื“ ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ื“ื•ืจืš ืื•ื ื˜ืขืจ ื“ื™ GPLv2 ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ, ืื•ืŸ ืึท ื ืึธืจืžืึทืœ ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืื•ืŸ ืึท ื•ื•ื™ืจื˜ื•ืึทืœ ืžืึทืฉื™ืŸ ื“ืขื•ื•ืขืœืึธืคึผืขื“ ืคึฟืึทืจ ื”ืึทืงืกืข Somebody ืื•ื ื˜ืขืจ ื“ื™ MIT ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ.

ืฉืคึผืจืึทืš ืื™ื– ืื•ื™ืกื“ืจื•ืง-ืึธืจื™ืขื ื˜ื™ื“ ืžื™ื˜ ืฉื˜ืึทืจืง ื˜ื™ื™ืคึผื™ื ื’. ืึธื‘ื“ื–ืฉืขืงื˜-ืึธืจื™ืขื ื˜ื™ื“, ื“ื–ืฉืึทื ืขืจื™ืง ืื•ืŸ ืคืึทื ื’ืงืฉืึทื ืึทืœ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืงืึทื ืกืขืคึผืก ื–ืขื ืขืŸ ื’ืขืฉื˜ื™ืฆื˜.
ื”ืึทืงืกืข ืกื™ื ื˜ืึทืงืก ืื™ื– ื ืึธืขื ื˜ ืฆื• ECMAScript ืื•ืŸ ื™ืงืกืคึผืึทื ื“ื– ื–ื™ื™ึทืŸ ืคึฟืขื™ึดืงื™ื™ื˜ืŸ ืึทื–ืึท ื•ื•ื™ ืกื˜ืึทื˜ื™ืง ื˜ื™ื™ืคึผื™ื ื’, ืึทื•ื˜ืึธื˜ื™ืคึผืข ื™ื ืคืขืจืึทื ืก, ืžื•ืกื˜ืขืจ ื•ื•ืึธืก ืจื™ื›ื˜ืŸ ื–ื™ืš, ื“ื–ืฉืึทื ืขืจื™ืงืก, ื™ื˜ืขืจืึทื˜ืึธืจ-ื‘ืื–ื™ืจื˜ ืคึฟืึทืจ ืœื•ืคึผืก, AST ืžืึทืงืจืึธืก, GADT (ื’ืขื ืขืจืึทืœื™ื–ืขื“ ืึทืœื’ืขื‘ืจืึทื™ืง ื“ืึทื˜ืึท ื˜ื™ื™ืคึผืก), ืึทื‘ืกื˜ืจืึทืงื˜ ื˜ื™ื™ืคึผืก, ืึทื ืึทื ืึทืžืึทืก ืกื˜ืจืึทืงื˜ืฉืขืจื–, ืกื™ืžืคึผืœืึทืคื™ื™ื“ ืžืขื ื’ืข ื“ืขืคึฟื™ื ื™ืฆื™ืข, ืงืึทื ื“ื™ืฉืึทื ืึทืœ ื–ืึทืžืœื•ื ื’ ืื•ื™ืกื“ืจื•ืงืŸ, ืึทื˜ืึทื˜ืฉื™ื ื’ ืžืขื˜ืึทื“ืึทื˜ืึท ืฆื• ืคืขืœื“ืขืจ , ืงืœืืกืŸ ืื•ืŸ ืื•ื™ืกื“ืจื•ืงืŸ, ืฉื˜ืจื™ืงืœ ื™ื ื˜ืขืจืคึผืึธืœืึทื˜ื™ืึธืŸ ('ืžื™ื™ึทืŸ ื ืึธืžืขืŸ ืื™ื– $ ื ืึธืžืขืŸ'), ื˜ื™ืคึผ ืคึผืึทืจืึทืžืขื˜ืขืจืก ("ื ื™ื™ึทืข ื”ื•ื™ืคึผื˜-ืกื˜ืจื™ื ื’>('ืคืึธืึธ')"), ืื•ืŸ ืืกืืš ืžืขืจ.

ืงืœืึทืก ื˜ืขืกื˜ {
ืกื˜ืึทื˜ื™ืง ืคึฟื•ื ืงืฆื™ืข ื”ื•ื™ืคึผื˜ () {
ื•ื•ืึทืจ ืžืขื ื˜ืฉืŸ = [
"Elizabeth" => "ืคึผืจืึธื’ืจืึทืžืžื™ื ื’",
"ื™ื•ืืœ" => "ื“ื™ื–ื™ื™ืŸ"
];

ืคึฟืึทืจ (ื ืึธืžืขืŸ ืื™ืŸ People.keys ()) {
ื•ื•ืึทืจ ืึทืจื‘ืขื˜ = ืžืขื ื˜ืฉืŸ [ื ืึธืžืขืŸ];
trace ('$ ื ืึธืžืขืŸ ื˜ื•ื˜ $ ืึทืจื‘ืขื˜ ืคึฟืึทืจ ืึท ืœืขื‘ืขื“ื™ืง!');
}
}
}

ื”ื•ื™ืคึผื˜ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื– ื•ื•ืขืจืกื™ืข 4.0:

  • ื ื™ื• ืกื™ื ื˜ืึทืงืก ืคึฟืึทืจ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ืคึฟื•ื ืงืฆื™ืข ื˜ื™ืคึผ "(ื ืึธืžืขืŸ: ืฉื˜ืจื™ืงืœ, ืขืœื˜ืขืจ:ื™ื ื˜)->ื‘ื•ืœ" ืึธื“ืขืจ "(ืกื˜ืจื™ื ื’, ื™ื ื˜)->ื‘ื•ืœ" ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ "ืกื˜ืจื™ื ื’->ื™ื ื˜->ื‘ื•ืœ".
  • ืคื™ื™ึทืœ ืคึฟื•ื ืงืฆื™ืข ืกื™ื ื˜ืึทืงืก ืื™ื– "(ืึท, ื‘) -> ืึท + ื‘" ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ "ืคื•ื ืงืฆื™ืข (ืึท, ื‘) ืฆื•ืจื™ืงืงื•ืžืขืŸ ืึท + ื‘".
  • ืฉื•ืฅ ืงืขื’ืŸ ืคึผืจืึธื‘ืœืขืžืก ืคึฟืึทืจื‘ื•ื ื“ืŸ ืžื™ื˜ ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ื ื•ืœ ื•ื•ืึทืœื•ืขืก (ืขืงืกืคึผืขืจื™ืžืขื ื˜ืึทืœ ืฉื˜ืจื™ืš, ืึธืคึผื˜ื™ืึธื ืึทืœืœื™ ืขื ื™ื™ื‘ืึทืœื“ ืคึฟืึทืจ ื–ื™ื›ืขืจ ืคืขืœื“ืขืจ, ืงืœืืกืŸ ืึธื“ืขืจ ืคึผืึทืงืึทื“ื–ืฉืึทื–).
  • ื“ื™ "ืขื ื“ืœืขืš" ืงื™ื•ื•ืขืจื“ ืื™ื– ืคึฟืึทืจ ืงืœืึทืก ืคืขืœื“ืขืจ ืื•ืŸ ื”ื™ื’ืข ื•ื•ืขืจื™ืึทื‘ืึทืœื– ื•ื•ืึธืก ื–ืขื ืขืŸ ื™ืžื™ื•ื˜ืึทื‘ืึทืœ. "ืขื ื“ืœืขืš" ืงืขื ืขืŸ ืื•ื™ืš ื–ื™ื™ืŸ ื’ืขื ื™ืฆื˜ ืฆื• ื“ืขืคื™ื ื™ืจืŸ ืคืึทื ื’ืงืฉืึทื ื– ืฆื• ืคืึทืจืžื™ื™ึทื“ืŸ ื–ื™ื™ ืคื•ืŸ ืึธื•ื•ื•ืขืจืจื™ื™ื“ ื“ื•ืจืš ื™ืจื•ืฉื” ืื•ืŸ ืคึฟืึทืจ ืงืœืืกืŸ / ื™ื ื˜ืขืจืคื™ื™ืกื™ื– ื•ื•ืึธืก ืงืขื ืขืŸ ื ื™ื˜ ื–ื™ื™ืŸ ื™ื ื›ืขืจืึทื˜ื™ื“.
  • ะŸะพะดะดะตั€ะถะบะฐ ืื•ื ื™ืงืึธื“ ื ืึธืจืžืึทืœ ืคึฟืึทืจ ื“ื™ ื‘ืึทื–ืข ื˜ื™ืคึผ "ืกื˜ืจื™ื ื’" ืื•ื™ืฃ ืึทืœืข ื–ืึทืžืœื•ื ื’ ื˜ืึทืจื’ืึทืฅ ืึทื—ื•ืฅ Neko.
  • ื’ืขื‘ื•ื™ื˜-ืื™ืŸ ื™ื‘ืขืจื–ืขืฆืขืจ ืจื™ืจื™ื™ื˜ ืคื•ืŸ ืงืจืึทืฆืŸ, ื•ื•ืึธืก ืื™ืฆื˜ ืงื•ืžื˜ ืื•ื ื˜ืขืจ ื“ืขื ื ืึธืžืขืŸ ืขื•ื•ืึทืœ. ื“ืึทื ืง ืฆื• ื“ื™ ื ื™ื™ึทืข ื™ื‘ืขืจื–ืขืฆืขืจ, ืกืงืจื™ืคึผืก ืื•ืŸ ืžืึทืงืจืึธืก ืœื•ื™ืคืŸ ืคื™ืœ ืคืึทืกื˜ืขืจ. ื™ื ื˜ืขืจืึทืงื˜ื™ื•ื•ืข ื“ื™ื‘ืึทื’ื™ื ื’ ืžืึธื“ืข ืื™ื– ื’ืขืฉื˜ื™ืฆื˜.
  • ื ื™ื• ืฆื™ืœ ืกื™ืกื˜ืขื ืคึฟืึทืจ ื–ืึทืžืœื•ื ื’ (ืฆื™ืœ) ื”ืืฉืœื™ื ืง - ืึท ื”ื•ื™ืš-ืคืึธืจืฉื˜ืขืœื•ื ื’ ืจื•ื ื˜ื™ืžืข ื“ื™ื–ื™ื™ื ื“ ืกืคึผืึทืกื™ืคื™ืงืœื™ ืคึฟืึทืจ ื”ืึทืงืกืข, ื•ื•ืึธืก ืฉื˜ื™ืฆื˜ ื–ืึทืžืœื•ื ื’ ืฆื• ื‘ื™ื˜ืขืงืึธื“ืข ืคึฟืึทืจ JIT ืึธื“ืขืจ C, ื”ืื˜ ื’ืจื™ื ื’ ื™ื ืึทื’ืจื™ื™ืฉืึทืŸ ืžื™ื˜ C, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ ืึทืงืกืขืก ืฆื• ื ื™ื“ืขืจื™ืง ื ื•ืžืขืจื™ืง ื˜ื™ื™ืคึผืก ืื•ืŸ ืคึผื•ื™ื ื˜ืขืจื–.
  • ื ื™ื• JVM ืฆื™ืœ - ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื“ื–ืฉืขื ืขืจื™ื™ื˜ jvm ื‘ื™ื˜ืขืงืึธื“ืข ื“ื•ืจืš ืกืงื™ืคึผื™ื ื’ ื“ื™ ื–ืึทืžืœื•ื ื’ ืฉืจื™ื˜ ืคื•ืŸ Java ืงืึธื“ ื“ื•ืจืš ืึทื“ื™ื ื’ ื“ื™ "-D jvm" ืคืึธืŸ ื•ื•ืขืŸ ื˜ืึทืจื’ืึทื˜ื™ื ื’ ืื™ืŸ Java.
  • ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ื™ื ืœื™ื ืข-ืฆืขื•ื•ื™ืงืœืขืŸ ืื™ืŸ ื“ื™ ืคื•ื ื˜ ืคื•ืŸ ืคืึทืš ืคืึทื ื’ืงืฉืึทื ื– ืึธื“ืขืจ ืงืึทื ืกื˜ืจืึทืงื˜ืขืจื–, ืืคื™ืœื• ืื•ื™ื‘ ื–ื™ื™ ื–ืขื ืขืŸ ื ื™ืฉื˜ ื“ืขืจืงืœืขืจื˜ ื•ื•ื™ ืึทื–ืึท.
  • ืžืขื’ืœืขื›ืงื™ื™ื˜ ืคื•ืŸ ื™ื ืงืœื•ื–ืฉืึทืŸ ืกื˜ืึทื˜ื™ืง ื™ืงืกื˜ืขื ืฉืึทื ื– ื•ื•ืขืŸ ื“ื™ืงืœืขืจื™ื ื’ ืึท ื˜ื™ืคึผ (ืึทื–ืึท ื•ื•ื™ "ืขื ื•ื") ื ื™ืฆืŸ "@:using(path.ToExtension)".
  • ืึทื‘ืกื˜ืจืึทืงื˜ ื˜ื™ื™ืคึผืก ืื™ืฆื˜ ืฉื˜ื™ืฆืŸ ืึท "ืฉื˜ืขืœืŸ" ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹ื“ื™ "@:op(ab)" ืึธืคึผืขืจืึทื˜ืึธืจ ืฆื• ืจื™ืœืึธื•ื“ "obj.foo = ื‘ืึทืจ" ืื•ื™ืกื“ืจื•ืงืŸ.
  • ื“ื™ "ืคึฟืึทืจ" ืฉืœื™ื™ืฃ ืกื™ื ื˜ืึทืงืก ืื™ืฆื˜ ืฉื˜ื™ืฆื˜ ืฉืœื™ืกืœ-ื•ื•ืขืจื˜ ื™ื˜ืขืจืึทื˜ื™ืึธืŸ: "ืคึฟืึทืจ (ืฉืœื™ืกืœ => ื•ื•ืขืจื˜ ืื™ืŸ ื–ืึทืžืœื•ื ื’) {}".
  • ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื ื™ืฆืŸ ืงืกืžืœ-ื•ื•ื™ ืžืึทืจืงืึทืคึผ ืื™ืŸ ืื•ื™ืกื“ืจื•ืงืŸ: "ื•ื•ืึทืจ ืึท = โ€นื”ื™ / โ€บ;". ื“ืขืจื•ื•ื™ื™ึทืœ, ื“ืขื ืฉื˜ืจื™ืš ืื™ื– ื‘ืœื•ื™ื– ื‘ื ื™ืžืฆื ืคึฟืึทืจ ืคึผืึทืจืกื™ื ื’ ืžื™ื˜ ืžืึทืงืจืึธืก ืื•ืŸ ืื™ื– ืื™ืŸ ื“ื™ ืคึผืœืึทืŸ ื‘ื™ื ืข.
  • ื“ื™ ืกื™ื ื˜ืึทืงืก ืคึฟืึทืจ ืึทืคึผืฉืึทื ืึทืœ ืคืขืœื“ืขืจ ืื™ืŸ ื“ื™ "ืคื•ืœ" ื ืึธื•ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืึทื ืึทื ืึทืžืึทืก ืกื˜ืจื•ืงื˜ื•ืจ ื˜ื™ื™ืคึผืก ืื™ื–: "{ var ?f: Int; }" (ืึทืŸ ืื ื“ืขืจ ื‘ืจื™ืจื” ืฆื• ื“ื™ ืงื•ืจืฅ "{?f:ื™ื ื˜ }").
  • ืขื ื•ื ื•ื•ืึทืœื•ืขืก ืงืขื ืขืŸ ืื™ืฆื˜ ื–ื™ื™ืŸ ืคืขืœื™ืงื™ื™ึทื˜ ื•ื•ืึทืœื•ืขืก ืคึฟืึทืจ ืคึฟื•ื ืงืฆื™ืข ืึทืจื’ื•ืžืขื ื˜ืŸ: "ืคื•ื ืงืฆื™ืข fooโ€นTโ€บ (ืึธืคึผืฆื™ืข: ืึธืคึผืฆื™ืขโ€นTโ€บ = ื’ืึธืจื ื™ื˜)".
  • ื“ืขืจ ืกื™ื ื˜ืึทืงืก "ืขื ื•ื ืึทื‘ืกื˜ืจืึทืงื˜ ื ืึธืžืขืŸ (ื‘ืึทืกื™ืงื˜ื™ืคึผืข) {}" ื“ืึทืจืฃ ื ื™ื˜ ืžืขืจ ื“ื™ "@:" ืคึผืจืขืคื™ืงืก ืื™ืŸ "ืขื ื•ื".
  • ืึทื•ื˜ืึธ-ื ื•ืžืขืจื™ื ื’ ืคึฟืึทืจ ืึทื‘ืกื˜ืจืึทืงื˜ ื™ื ื•ืžืขืจื™ื™ืฉืึทื ื–:

    enum abstract Foo(ื™ื ื˜) {
    ื•ื•ืึทืจ ื; // 0
    var B; // 1
    }
    ืขื ื•ื ืึทื‘ืกื˜ืจืึทืงื˜ ื‘ืึทืจ (ืฉื˜ืจื™ืงืœ) {
    ื•ื•ืึทืจ ื; // "ื"
    var B; // "ื‘"
    }

  • ื“ื™ "ืขืงืกื˜ืขืจืŸ" ืงื™ื•ื•ืขืจื“ ื ื™ื˜ ืžืขืจ ืจื™ืงื•ื•ื™ื™ืขืจื– ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ื“ื™ "@:" ืคึผืจืขืคื™ืงืก.
  • ืึทื•ื•ืขืงื’ืขื ื•ืžืขืŸ ื“ื™ ืึธืคึผืฆื™ืข "ื™ืžืคึผืœืึทืžืึทื ืฅ ื“ื™ื ืึทืžื™ืฉ" ืฆื• ืึทืงืกืขืก ืงืœืึทืก ืคืขืœื“ืขืจ ื“ื•ืจืš ืกื˜ืจื™ื ื’ืก. ื‘ื ื™ืžืฆื ืคึฟืึทืจ ืขืงืกื˜ืขืจืŸ ืงืœืืกืŸ ืึธื“ืขืจ ื“ื•ืจืš ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ื“ื•ืจืš ืึท ืึทื‘ืกื˜ืจืึทืงื˜ ื˜ื™ืคึผ.
  • ืฆื•ื’ืขื’ืขื‘ืŸ "ื & ื‘" ืกื™ื ื˜ืึทืงืก ืคึฟืึทืจ ื˜ื™ืคึผ ื™ื ื˜ืขืจืกืขืงืฉืึทืŸ, ื•ื•ืึธืก ื“ืขืจื•ื•ื™ื™ึทืœ ืึทืคึผืœื™ื™ื– ื‘ืœื•ื™ื– ืฆื• ืึทื ืึทื ืึทืžืึทืก ืกื˜ืจืึทืงื˜ืฉืขืจื– ืื•ืŸ ื˜ื™ืคึผ ืคึผืึทืจืึทืžืขื˜ืขืจ ืงืึทื ืกื˜ืจื™ื™ื ืฅ. ื“ืขืจ ืึทืœื˜ ืงืึทื ืกื˜ืจื™ื™ื ืฅ ืกื™ื ื˜ืึทืงืก ืื™ื– ืึทื•ื•ืขืงื’ืขื ื•ืžืขืŸ.
  • ืงืจื™ื™ื™ื˜ื™ื ื’ ืœื™ื™ื“ื™ืง "ืžืึทืคึผืข" ื™ื ืกื˜ืึทื ืกื™ื– ืื™ื– ื‘ืืจืขื›ื˜ื™ื’ื˜ ื“ื•ืจืš ื“ื™ ืกื™ื ื˜ืึทืงืก "var map: Mapโ€นInt, Stringโ€บ = [];" ืขื ืœืขืš ืฆื• ืึท ืžืขื ื’ืข.
  • ืฆื•ื’ืขื’ืขื‘ืŸ ื“ืึทื˜ืŸ ืกื˜ืจื•ืงื˜ื•ืจ "haxe.ds.ReadOnlyArray".
  • ืžืขื˜ืึทื“ืึทื˜ืึท ืงืขื ืขืŸ ืื™ืฆื˜ ื”ืึธื‘ืŸ ื ืึทืžืขืกืคึผืึทืกืขืก ("@:prefix.name ืคื•ื ืงืฆื™ืข () {...}"). ืกื™ืžื™ืœืึทืจืœื™ ืžื™ื˜ ื“ืขืคึฟื™ื ื™ืฆื™ืข: "#ืื•ื™ื‘ (ืขื˜ืœืขื›ืข.ืคืœืึทื’ ... #ืกื•ืฃ".
  • ื ื™ื• ืกืขืจื•ื•ื™ืก ืคึผืจืึธื˜ืึธืงืึธืœ ืคึฟืึทืจ IDE ื’ืขื ื™ืฆื˜ ืื™ืŸ ืคึผืœื•ื’ื™ืŸ ืคึฟืึทืจ VSCode.
  • ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜ ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ื–ื•ืš (ืขืงืกื˜ืขืจืŸ) ืคึฟืึทืจ ื•ื•ืขื‘ ืึทืคึผื™ืก ืื•ืŸ ืฆื•ื’ืขืœื™ื™ื’ื˜ ืคืขืœื ื“ื™ืง ืึธื ืขืก.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’