āĻāĻĻā§āĻĻā§āĻļā§āĻ¯:
āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻ āĻāĻžāĻĄāĻŧāĻž āĻāĻāĻāĻŋ āĻĒāĻŋāĻ¸āĻŋ āĻāĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ USB āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĢāĻžāĻāĻ˛ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦāĨ¤ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻā§āĻ¯āĻžāĻŦāĻ˛ā§āĻ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯ā§āĻāĻžāĻ¨ āĻĨā§āĻā§ āĻāĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻ¯āĻžāĻŦāĻ˛ā§āĻā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻ°ā§āĻ¨ā§āĻ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤ āĻĢāĻžāĻāĻāĻž āĻāĻžāĻ¯āĻŧāĻāĻž āĻ¨ā§āĻāĨ¤ āĻāĻ°ā§āĻ¨ā§āĻā§āĻ° āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻ āĻāĻŦāĻ āĻŦāĻĄāĻŧāĨ¤
āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻĒāĻĨ:
āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ°ā§āĻ¨ā§āĻ āĻāĻžāĻ˛ā§ āĻāĻ°āĻ˛āĻžāĻŽāĨ¤ āĻ¯āĻāĻ¨ āĻĢāĻžāĻāĻāĻž āĻ¸ā§āĻĨāĻžāĻ¨ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻāĻ˛ā§ āĻā§āĻā§, āĻāĻŽāĻŋ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄāĻāĻŋ āĻŦāĻŋāĻ°āĻ¤āĻŋ āĻĻāĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻŽāĻŋ āĻā§āĻ¯āĻžāĻŦāĻ˛ā§āĻāĻāĻŋāĻā§ āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻā§āĻ¯āĻžāĻŦāĻ˛ā§āĻ āĻĨā§āĻā§ āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻŽāĻŋ āĻŦāĻŋāĻ°āĻžāĻŽ āĻĻāĻŋāĻ˛āĻžāĻŽ āĻāĻŦāĻ āĻāĻŽāĻžāĻ° āĻāĻļā§āĻāĻ°ā§āĻ¯ā§āĻ° āĻ¸āĻžāĻĨā§ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻŦāĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ˛ āĻāĻŦāĻ āĻāĻ°ā§āĻ¨ā§āĻ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻā§āĻ˛ āĻ¯ā§āĻ¨ āĻāĻŋāĻā§āĻ āĻāĻā§āĻ¨āĻŋāĨ¤
āĻāĻ°ā§āĻ¨ā§āĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¯ā§ āĻĢāĻžāĻāĻ˛ā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻĄā§āĻāĻž āĻ˛ā§āĻā§ āĻ¸ā§āĻ āĻĢāĻžāĻāĻ˛ā§ āĻ¸ā§āĻĒāĻžāĻ°āĻ¸ āĻĢā§āĻ˛ā§āĻ¯āĻžāĻ āĻ¸ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻžāĻ°āĻŖā§, āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻāĻŦāĻžāĻ°ā§ 16GB āĻ°āĻŋāĻāĻžāĻ°ā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§ āĻ¨āĻž āĻāĻŦāĻ 4GB āĻāĻ° āĻŦā§āĻļāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻ˛ā§āĻāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻāĻāĻŦā§ āĻ¨āĻžāĨ¤
āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻāĻžāĻ°āĻŦāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻ°āĻžāĻ° āĻĒāĻ°, āĻāĻŽāĻŋ āĻāĻŽāĻžāĻ° āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§ āĻāĻāĻ āĻāĻ°ā§āĻ¨ā§āĻā§āĻ° āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ āĻāĻļ āĻ¸āĻŽā§āĻŦāĻ˛āĻŋāĻ¤ āĻāĻžāĻ°āĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻĒā§āĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻāĻ¨ āĻ¯āĻž āĻ āĻŦāĻļāĻŋāĻˇā§āĻ āĻāĻā§ āĻ¤āĻž āĻšāĻ˛ āĻ¤āĻžāĻĻā§āĻ° āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻžāĨ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻŽā§āĻ˛āĻ¤ āĻ¸āĻšāĻāĨ¤ āĻāĻžāĻ°āĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻāĻāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻĨāĻžāĻāĻ˛ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻ¨ā§āĻ¯ āĻŽāĻžāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻāĻŽāĻžāĻ° āĻāĻžāĻā§ āĻŽāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻ¯ā§ āĻāĻ āĻāĻžāĻ¤ā§āĻ¯āĻŧ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻā§āĻ āĻāĻŋ āĻāĻāĻ¨āĻ āĻāĻŽāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽā§āĻŽā§āĻā§āĻ¨ āĻšāĻ¯āĻŧāĻ¨āĻŋ? āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻŋ āĻŦā§āĻāĻ¤ā§ āĻĒā§āĻ°ā§āĻāĻŋ āĻ¯ā§ āĻāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻā§ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻžāĻ āĻāĻŽāĻŋ āĻāĻžāĻ¨āĻŋ āĻ¨āĻžāĨ¤ āĻ āĻ¤āĻāĻŦ, āĻāĻŽāĻŋ āĻāĻ āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻ°ā§āĻ¤ āĻāĻāĻāĻŋ āĻ˛ā§āĻ¯āĻŧāĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻāĻāĻ¨ āĻāĻŽāĻŋ āĻāĻāĻŋ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻ āĻāĻŽāĻŋ āĻāĻŋ āĻļā§āĻ¯āĻŧāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨.
āĻ āĻāĻļā§ āĻāĻ°ā§āĻ¨ā§āĻ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻšāĻā§āĻā§
- āĻĒā§āĻ°āĻĨāĻŽ āĻĄāĻŋāĻāĻžāĻāĻ¸ā§ āĻāĻ°ā§āĻ¨ā§āĻ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨
- āĻ°āĻŽ āĻĒā§āĻ°ā§āĻŖ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨
- āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻĨāĻžāĻŽāĻžāĻ¨
- āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻĄāĻŋāĻāĻžāĻāĻ¸ā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ¨āĻŽā§āĻŦāĻ° āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨
- āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻĨāĻŽ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻŋ
āĻāĻ āĻĢāĻžāĻāĻ˛ā§ āĻ āĻāĻļ āĻŽāĻžāĻ°ā§āĻāĻŋāĻ
āĻļā§āĻˇ āĻ āĻāĻļāĻāĻŋ āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§, āĻ¤āĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤
āĻāĻžāĻāĻāĻŋ āĻ¸āĻšāĻ:
- āĻāĻāĻ¯ā§āĻā§ āĻ¸āĻŦ āĻ āĻāĻļ āĻĒāĻĄāĻŧāĻž
- āĻ¯āĻĻāĻŋ āĻāĻŋāĻā§ āĻ āĻāĻļā§ āĻĒāĻāĻŋāĻļāĻ¨āĻāĻŋ āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻāĻāĻāĻĒā§āĻā§ āĻ˛āĻŋāĻāĻŋ, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻŽāĻ°āĻž āĻļā§āĻ¨ā§āĻ¯ āĻ˛āĻŋāĻāĻŋ
āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž merge_part
āĻĨā§āĻ°ā§āĻĄā§āĻ° āĻāĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻ°ā§ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ streams_in
āĻ¯āĻžāĻ° āĻāĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻ
āĻāĻļ āĻĒāĻĄāĻŧā§ buffer_length
āĻāĻŦāĻ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĨā§āĻ°ā§āĻĄ āĻĨā§āĻā§ āĻ
āĻāĻļ āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
function merge_part(streams_in, buffer_length)
local out_part
for _, stream in ipairs(streams_in) do
local in_part = stream:read(buffer_length)
if not out_part then
out_part = in_part -- ĐŋŅĐžŅŅĐž ĐēĐžĐŋиŅŅĐĩĐŧ ŅĐ°ŅŅŅ иС ĐŋĐĩŅвОĐŗĐž ŅĐ°ĐšĐģĐ°
elseif in_part and #in_part > 0 then
if #out_part < #in_part then
out_part, in_part = in_part, out_part
end
if out_part ~= in_part -- Đ´Đ°ĐŊĐŊŅĐĩ ŅаСĐģиŅĐ°ŅŅŅŅ
and in_part:find("[^ ]") -- ĐĩŅŅŅ Đ´Đ°ĐŊĐŊŅĐĩ в in_part
and out_part:find(" ", 1, true) -- ĐĩŅŅŅ ĐŋŅŅŅŅĐĩ ĐŧĐĩŅŅĐ° в out_part
then
local find_index = 1
--[[
āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž string.gsub
āĻāĻāĻŋ āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻļā§āĻ¨ā§āĻ¯ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻ°āĻž āĻā§āĻāĻ°ā§ āĻā§āĻāĻā§ āĻĒāĻžāĻŦā§ āĻāĻŦāĻ āĻāĻāĻŋāĻā§ āĻ¯āĻž āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻŦā§ āĻ¤āĻž āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻŦā§āĨ¤
--]]
out_part = out_part:gsub(" +", function(zero_string)
if #in_part < find_index then
return -- ĐŊĐĩ ĐŊĐ° ŅŅĐž ĐŧĐĩĐŊŅŅŅ
end
--[[
string.gsub
āĻ¯ā§ āĻ
āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻŽā§āĻ¯āĻžāĻāĻāĻŋ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻā§āĻā§ āĻ¤āĻž āĻŦā§āĻāĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ
āĻ¤āĻāĻŦ, āĻāĻŽāĻ°āĻž āĻ
āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛ āĻ
āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻŋ zero_string
āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ string.find
. āĻāĻāĻŋ āĻĒā§āĻ°āĻĨāĻŽ āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻ āĻā§āĻāĻā§ āĻĒā§āĻ¤ā§ āĻ¯āĻĨā§āĻˇā§āĻāĨ¤
--]]
local start_index = out_part:find(" ", find_index, true)
find_index = start_index + #zero_string
--[[
āĻāĻāĻ¨ āĻ¯āĻĻāĻŋ āĻāĻ¨ in_part
āĻāĻ¨ā§āĻ¯ āĻ¤āĻĨā§āĻ¯ āĻāĻā§ out_part
āĻ¤āĻžāĻĻā§āĻ° āĻ
āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ
--]]
if #in_part >= start_index then
local end_index = start_index + #zero_string - 1
--[[
āĻĨā§āĻā§ āĻāĻžāĻāĻž in_part
āĻļā§āĻ¨ā§āĻ¯ā§āĻ° āĻ
āĻ¨ā§āĻā§āĻ°āĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻ
āĻāĻļāĨ¤
--]]
local part = in_part:sub(start_index, end_index)
if (part:byte(1) ~= 0) or part:find("[^ ]") then
--[[
Đ part
āĻ¤āĻĨā§āĻ¯ āĻāĻā§āĨ¤
--]]
if #part == #zero_string then
return part
else
--[[
part
āĻļā§āĻ¨ā§āĻ¯ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ°āĻŽ āĻĨā§āĻā§ āĻāĻŽ āĻšāĻ¤ā§ āĻĻā§āĻāĻž āĻā§āĻā§āĨ¤ āĻāĻ¸ā§āĻ¨ āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°āĻ āĻāĻ°āĻŋāĨ¤
--]]
return part..zero_string:sub(1, end_index - #in_part)
end
end
end
end)
end
end
end
return out_part
end
āĻāĻĒāĻ¸āĻāĻšāĻžāĻ°
āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§ āĻāĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻŦāĻ āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻāĻ¤ā§āĻ°ā§āĻāĻ°āĻŖā§āĻ° āĻĒāĻ°ā§, āĻāĻŽāĻŋ āĻā§āĻ¯āĻžāĻŦāĻ˛ā§āĻ āĻĨā§āĻā§ āĻāĻ°ā§āĻ¨ā§āĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻŦā§āĻ° āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻŽāĻŋ āĻāĻŽāĻžāĻ° āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻāĻ°ā§āĻ¨ā§āĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻāĻŋāĨ¤
āĻā§āĻ¯āĻžāĻŦāĻ˛ā§āĻā§ āĻļā§āĻˇ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻ āĻāĻļāĻāĻŋ āĻĄāĻŋāĻ¸ā§āĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻļāĻ¨ā§ āĻ°ā§āĻā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ° āĻāĻā§ āĻ āĻāĻļāĻā§āĻ˛āĻŋāĻ° āĻĒā§āĻ¨āĻ-āĻā§āĻāĻŋāĻ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛āĻāĻŋāĻā§ āĻāĻ¨āĻā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻžāĻ¤ā§ āĻāĻāĻŋ āĻāĻŦāĻžāĻ° āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻ¨āĻž āĻšāĻ¯āĻŧāĨ¤
āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤:
- āĻāĻāĻāĻŋ āĻā§āĻ¯āĻžāĻŦāĻ˛ā§āĻā§ āĻĢā§āĻ˛ā§āĻĄ āĻāĻ°ā§āĻ¨ā§āĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻāĨ¤
- āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§ āĻāĻ°ā§āĻ¨ā§āĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ qBittorentāĨ¤
āĻ˛ā§āĻ¯āĻŧāĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ
āĻāĻ¤ā§āĻ¸: www.habr.com