āĻāĻ•āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻāĻ•āĻŸāĻŋ 16GB āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡ 4GB āĻ–āĻžāĻ˛āĻŋ āĻœāĻžāĻ¯āĻŧāĻ—āĻž āĻ¸āĻšā§ˇ

āĻāĻ•āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻāĻ•āĻŸāĻŋ 16GB āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡ 4GB āĻ–āĻžāĻ˛āĻŋ āĻœāĻžāĻ¯āĻŧāĻ—āĻž āĻ¸āĻšā§ˇ

āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯:

āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻ¨ā§‡āĻŸ āĻ›āĻžāĻĄāĻŧāĻž āĻāĻ•āĻŸāĻŋ āĻĒāĻŋāĻ¸āĻŋ āĻ†āĻ›ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ USB āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻĢāĻžāĻ‡āĻ˛ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦāĨ¤ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻ¨ā§‡āĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯ā§‡āĻ–āĻžāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻāĻ‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤ āĻĢāĻžāĻāĻ•āĻž āĻœāĻžāĻ¯āĻŧāĻ—āĻž āĻ¨ā§‡āĻ‡āĨ¤ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻāĻ• āĻāĻŦāĻ‚ āĻŦāĻĄāĻŧāĨ¤

āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻĒāĻĨ:

āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻ˛āĻžāĻŽāĨ¤ āĻ¯āĻ–āĻ¨ āĻĢāĻžāĻāĻ•āĻž āĻ¸ā§āĻĨāĻžāĻ¨ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻšāĻ˛ā§‡ āĻ—ā§‡āĻ›ā§‡, āĻ†āĻŽāĻŋ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄāĻŸāĻŋ āĻŦāĻŋāĻ°āĻ¤āĻŋ āĻĻāĻŋāĻ¯āĻŧā§‡āĻ›āĻŋāĨ¤ āĻ†āĻŽāĻŋ āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸāĻŸāĻŋāĻ•ā§‡ āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§‡ āĻ¸āĻ‚āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡āĻ›āĻŋ āĻāĻŦāĻ‚ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸ āĻĨā§‡āĻ•ā§‡ āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§‡ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§‡ āĻ¨āĻŋāĻ¯āĻŧā§‡āĻ›āĻŋāĨ¤ āĻ†āĻŽāĻŋ āĻŦāĻŋāĻ°āĻžāĻŽ āĻĻāĻŋāĻ˛āĻžāĻŽ āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻ° āĻ†āĻļā§āĻšāĻ°ā§āĻ¯ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ†āĻŦāĻžāĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ˛ āĻāĻŦāĻ‚ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻšāĻžāĻ˛āĻŋāĻ¯āĻŧā§‡ āĻ—ā§‡āĻ˛ āĻ¯ā§‡āĻ¨ āĻ•āĻŋāĻ›ā§āĻ‡ āĻ˜āĻŸā§‡āĻ¨āĻŋāĨ¤

āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ¯ā§‡ āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻĄā§‡āĻŸāĻž āĻ˛ā§‡āĻ–ā§‡ āĻ¸ā§‡āĻ‡ āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ¸ā§āĻĒāĻžāĻ°āĻ¸ āĻĢā§āĻ˛ā§āĻ¯āĻžāĻ— āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻžāĻ° āĻ•āĻžāĻ°āĻŖā§‡, āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻāĻ•āĻŦāĻžāĻ°ā§‡ 16GB āĻ°āĻŋāĻœāĻžāĻ°ā§āĻ­ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡ āĻ¨āĻž āĻāĻŦāĻ‚ 4GB āĻāĻ° āĻŦā§‡āĻļāĻŋ āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ˛ā§‡āĻ–āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ˜āĻŸāĻŦā§‡ āĻ¨āĻžāĨ¤

āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻŸāĻŋ āĻšāĻžāĻ°āĻŦāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°, āĻ†āĻŽāĻŋ āĻ†āĻŽāĻžāĻ° āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§‡ āĻāĻ•āĻ‡ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ…āĻ‚āĻļ āĻ¸āĻŽā§āĻŦāĻ˛āĻŋāĻ¤ āĻšāĻžāĻ°āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻĒā§‡āĻ¯āĻŧā§‡āĻ›āĻŋāĨ¤ āĻāĻ–āĻ¨ āĻ¯āĻž āĻ…āĻŦāĻļāĻŋāĻˇā§āĻŸ āĻ†āĻ›ā§‡ āĻ¤āĻž āĻšāĻ˛ āĻ¤āĻžāĻĻā§‡āĻ° āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻ•āĻ°āĻžāĨ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻŸāĻŋ āĻŽā§‚āĻ˛āĻ¤ āĻ¸āĻšāĻœāĨ¤ āĻšāĻžāĻ°āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻāĻ•āĻŸāĻŋāĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§‡ āĻĨāĻžāĻ•āĻ˛ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ…āĻ¨ā§āĻ¯ āĻŽāĻžāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§‚āĻ¨ā§āĻ¯ āĻŦāĻžāĻ‡āĻŸ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻ†āĻŽāĻžāĻ° āĻ•āĻžāĻ›ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ āĻ¯ā§‡ āĻāĻ‡ āĻœāĻžāĻ¤ā§€āĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻ¨ā§‡āĻŸā§‡ āĻšāĻ“āĻ¯āĻŧāĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤ āĻ•ā§‡āĻ‰ āĻ•āĻŋ āĻ•āĻ–āĻ¨āĻ“ āĻāĻŽāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻ¯āĻŧāĻ¨āĻŋ? āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻŽāĻŋ āĻŦā§āĻāĻ¤ā§‡ āĻĒā§‡āĻ°ā§‡āĻ›āĻŋ āĻ¯ā§‡ āĻāĻŸāĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§€ āĻ•ā§€āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¤āĻžāĻ“ āĻ†āĻŽāĻŋ āĻœāĻžāĻ¨āĻŋ āĻ¨āĻžāĨ¤ āĻ…āĻ¤āĻāĻŦ, āĻ†āĻŽāĻŋ āĻāĻ‡ āĻ•āĻžāĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻā§āĻ°ā§āĻ¤ āĻāĻ•āĻŸāĻŋ āĻ˛ā§āĻ¯āĻŧāĻž āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡āĻ›āĻŋ āĻāĻŦāĻ‚ āĻāĻ–āĻ¨ āĻ†āĻŽāĻŋ āĻāĻŸāĻŋ āĻ…āĻĒā§āĻŸāĻŋāĻŽāĻžāĻ‡āĻœ āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤ āĻāĻ‡ āĻ†āĻŽāĻŋ āĻ•āĻŋ āĻļā§‡āĻ¯āĻŧāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ¨.

āĻ…āĻ‚āĻļā§‡ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

  1. āĻĒā§āĻ°āĻĨāĻŽ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ā§‡ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻļā§āĻ°ā§ āĻ•āĻ°ā§āĻ¨
  2. āĻ°āĻŽ āĻĒā§‚āĻ°ā§āĻŖ āĻ¨āĻž āĻšāĻ“āĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§āĻ¨
  3. āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻĨāĻžāĻŽāĻžāĻ¨
  4. āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ā§‡ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŽā§āĻŦāĻ° āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨
  5. āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ¨āĻž āĻšāĻ“āĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ†āĻŽāĻ°āĻž āĻĒā§āĻ°āĻĨāĻŽ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡ āĻĢāĻŋāĻ°ā§‡ āĻ†āĻ¸āĻŋ

āĻāĻ• āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ…āĻ‚āĻļ āĻŽāĻžāĻ°ā§āĻœāĻŋāĻ‚

āĻļā§‡āĻˇ āĻ…āĻ‚āĻļāĻŸāĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§‡, āĻ¤āĻžāĻĻā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ¸āĻ‚āĻ—ā§āĻ°āĻš āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤

āĻ•āĻžāĻœāĻŸāĻŋ āĻ¸āĻšāĻœ:

  1. āĻāĻ•āĻ¯ā§‹āĻ—ā§‡ āĻ¸āĻŦ āĻ…āĻ‚āĻļ āĻĒāĻĄāĻŧāĻž
  2. āĻ¯āĻĻāĻŋ āĻ•āĻŋāĻ›ā§ āĻ…āĻ‚āĻļā§‡ āĻĒāĻœāĻŋāĻļāĻ¨āĻŸāĻŋ āĻļā§‚āĻ¨ā§āĻ¯ āĻŦāĻžāĻ‡āĻŸ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻ†āĻŽāĻ°āĻž āĻāĻŸāĻŋ āĻ†āĻ‰āĻŸāĻĒā§āĻŸā§‡ āĻ˛āĻŋāĻ–āĻŋ, āĻ…āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ†āĻŽāĻ°āĻž āĻļā§‚āĻ¨ā§āĻ¯ āĻ˛āĻŋāĻ–āĻŋ

āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž 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

āĻ‰āĻĒāĻ¸āĻ‚āĻšāĻžāĻ°

āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§‡ āĻāĻ‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻāĻŦāĻ‚ āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĨ¤ āĻāĻ•āĻ¤ā§āĻ°ā§€āĻ•āĻ°āĻŖā§‡āĻ° āĻĒāĻ°ā§‡, āĻ†āĻŽāĻŋ āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸ āĻĨā§‡āĻ•ā§‡ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻŦā§‡āĻ° āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤ āĻ†āĻŽāĻŋ āĻ†āĻŽāĻžāĻ° āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°ā§‡āĻ›āĻŋ āĻāĻŦāĻ‚ āĻāĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤

āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸā§‡ āĻļā§‡āĻˇ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻž āĻ…āĻ‚āĻļāĻŸāĻŋ āĻĄāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻŦāĻŋāĻ‰āĻļāĻ¨ā§‡ āĻ°ā§‡āĻ–ā§‡ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ¤āĻŦā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻāĻ° āĻ†āĻ—ā§‡ āĻ…āĻ‚āĻļāĻ—ā§āĻ˛āĻŋāĻ° āĻĒā§āĻ¨āĻƒ-āĻšā§‡āĻ•āĻŋāĻ‚ āĻ¸āĻ•ā§āĻˇāĻŽ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋāĻ•ā§‡ āĻ†āĻ¨āĻšā§‡āĻ• āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¯āĻžāĻ¤ā§‡ āĻāĻŸāĻŋ āĻ†āĻŦāĻžāĻ° āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ¨āĻž āĻšāĻ¯āĻŧāĨ¤

āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤:

  1. āĻāĻ•āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻŦāĻ˛ā§‡āĻŸā§‡ āĻĢā§āĻ˛ā§āĻĄ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĨ¤
  2. āĻĒāĻŋāĻ¸āĻŋāĻ¤ā§‡ āĻŸāĻ°ā§‡āĻ¨ā§āĻŸ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ qBittorentāĨ¤
  3. āĻ˛ā§āĻ¯āĻŧāĻž āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻĒā§āĻŸ

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨