рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдЦрд╕рдЦрд╕ тАЛтАЛрдирд╣реАрдВ рд╣реИ, рдФрд░ рдлрд┐рд░ рд╕реЗ рдЖрдкрдХреЛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрджреЗрд╢ рдореЗрдВ рдкреГрд╖реНрда рдорд┐рд▓реЗ рд╣реИрдВ? рдЙрдирдХрд╛ рдХреНрдпрд╛ рдХрд╕реВрд░ рд╣реИ?
рдкрд┐рдЫрд▓реА рдмрд╛рд░, "рдХреИрд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП iPages" рдХреЗ рдЧрд╣рди рдЦреЛрдЬ рдХреЗ рдмрд╛рдж, рдПрдХ рд╕рд░рд▓ рдФрд░ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░, рдЖрдк рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ, рдпрд╣ рдПрдХ рдЙрдкрдЧреНрд░рд╣-рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЪреЗрдирд╕реЙ рдирд╣реАрдВ рд╣реИред

1. .zip рдореЗрдВ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдирд╛рдо рдмрджрд▓реЗрдВ
2. рдкрд░рд┐рдгрд╛рдореА рд╕рдВрдЧреНрд░рд╣ рдЦреЛрд▓реЗрдВ рдФрд░ рдЙрд╕рдореЗрдВ рдкреАрдбреАрдПрдл рдлрд╛рдЗрд▓ рдвреВрдВрдвреЗрдВ
3. рд▓рд╛рдн!
рдХреНрдпрд╛ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХреЗрд╡рд▓ рдЗрд╕ рдкрд░ рд░реБрдХ рдЧрдП? рд╣рдо рдЗрддрдиреЗ рдкреНрд░реЗрд░рд┐рдд рд╣реБрдП рдХрд┐ рд╣рдордиреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рд▓рд┐рдП
рд╕реЗрд╡рд╛ рдХреЛ рдзреЛ рджрд┐рдпрд╛, рд╣рдо
рд╡рд┐рдореБрджреНрд░реАрдХрд░рдг рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдХрдЯреМрддреА рдХреЗ рддрд╣рдд рдЖрдкрдХреЛ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рдорд┐рд▓реЗрдЧрд╛ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, .pages, MacOS рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреА рддрд░рд╣, рд╡рд┐рд╢реЗрд╖ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдбреЗрдЯрд╛ рдХреЛ .pdf рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред
рддрд╛рдХрд┐ рдпрд╣ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдЙрдмрд╛рдК рди рд╣реЛ, рдмреИрдХрдПрдВрдб рдкрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрдЬрд╛рдп, рд╣рдордиреЗ рдЬреЗрдПрд╕ рдкрд░ рдорд╛рдВрд╕рдкреЗрд╢рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
рд╣рд╛рдВ, рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, IE10 рдореЗрдВ рдХрдирд╡рд░реНрдЯрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ +
рдЬреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ? рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ URL рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ (рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдЕрдиреБрдХрд░рдг рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рд▓реЗрдХрд┐рди рд╕рд░реНрд╡рд░ рдкрд░ рдХреБрдЫ рднреА рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд╕рдм рдХреБрдЫ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рддрд╛рддреНрдХрд╛рд▓рд┐рдХ рд╣реИ (рдФрд░ рдпрд╣ рд╕реБрд░рдХреНрд╖рд┐рдд рднреА рд╣реИ, рдЖрдк рдХрд╣реАрдВ рднреА рдХреБрдЫ рднреА рдирд╣реАрдВ рднреЗрдЬ рд░рд╣реЗ рд╣реИрдВ)ред
рддреЛ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?
рдкреГрд╖реНрда рдПрдХ рдЬрд╝рд┐рдк рдХрдВрдЯреЗрдирд░ рд╣реИ (рд╡реИрд╕реЗ, рдЬреИрд╕реЗ рдбреЙрдХреНрд╕, xslx рдФрд░ рдЕрдиреНрдп рдирдИ рдкреАрдврд╝реА рдХреЗ рдХрд╛рд░реНрдпрд╛рд▓рдп рдкреНрд░рд╛рд░реВрдк)ред
рдЙрд╕рдХреЗ рдЕрдВрджрд░ рд╣реИрдВ:
-index.xml - рдореБрдЦреНрдп рдкреНрд░рд╕реНрддреБрддрд┐ рдлрд╝рд╛рдЗрд▓
-buildVersionHistory.plist - рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓, рдпрд╣ рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ - рдирд╛рдо рд╕реЗ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ
-QuickLook / Thumbnail.jpg - рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдЕрдВрджрд░ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдХреЗ рд▓рд┐рдП рдердВрдмрдиреЗрд▓ рдЫрд╡рд┐
-QuickLook / Preview.pdf - рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдлрд╝рд╛рдЗрд▓ рд╣реА, рдЬреЛ рд╕реНрдкреЗрд╕ рдмрд╛рд░ рджрдмрд╛рдХрд░ macOS рдореЗрдВ рдЦреБрд▓рддреА рд╣реИред
рд╣рдореЗрдВ рдбреНрд░реИрдЧ-рдПрдВрдб-рдбреНрд░реЙрдк рдХреЗ рд╕рд╛рде рдпрд╛ рдЗрдирдкреБрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлрд╛рдЗрд▓реЗрдВ рдХреИрд╕реЗ рдорд┐рд▓рддреА рд╣реИрдВ - рдпрд╣ рдПрдХ рд╕реМ рдмрд╛рд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рд╣реИ, рдЪрд▓реЛ рдЗрд╕ рдЪрд░рдг рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВред
рд╣рдореЗрдВ рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓реА, рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ FileReader рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдХ рдЕрд▓рдЧ рдЗрдирдкреБрдЯ рдкреНрд░рд╛рд░реВрдк рд╣реЛрддрд╛ рд╣реИ - рдХреЛрдИ рдмреНрд▓реЙрдм рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдХреЛрдИ рдмрд╛рдЗрдирд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред рд╣рдордиреЗ js-unzip рд▓рд┐рдпрд╛, рдЬреЛ Google рдХреЗ рджрд░реНрдЬрдиреЛрдВ рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рд╕рд╛рджрдЧреА рдФрд░ рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рд▓рд┐рдпрд╛ред
рдЗрд╕рдХреЗ рд▓рд┐рдП рдЗрдирдкреБрдЯ рдХреА рдПрдХ рдкрдВрдХреНрддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо ReadAsBinaryString рдкреНрд░рд╛рд░реВрдк рдореЗрдВ FileReader рдЪрд▓рд╛рддреЗ рд╣реИрдВ:
if (file.type === "application/x-iwork-pages-sffpages") { var reader = new FileReader(); reader.onload = function (event) { processZip(event.target.result) }; reader.readAsBinaryString(file); }
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдШрдЯрдирд╛ рдореЗрдВ рд╣реА рдХреЛрдИ рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ, event.target рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╛рдардХ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╣рдо processZip (Reader.result) рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред
рд▓рдЧрднрдЧ рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдорд╛рдирдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИрдВ, рдФрд░ FileReader XMLHttpRequest рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдЧрд╛ред
рд╣рдо рдЬрд╝рд┐рдк рдЖрд░реНрдХрд╛рдЗрд╡ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рднреА рдЫреЛрдбрд╝ рджреЗрдВрдЧреЗ - рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИрдВ, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛ рдЕрдкрдирд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрд╝рд┐рдк рд╕рд┐рд░реНрдл рдПрдХ рдХрдВрдЯреЗрдирд░ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рддрдВрддреНрд░ рдХреЛ рдЦреЛрд▓рдирд╛ рднреА рдирд╣реАрдВ рдерд╛ред
рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдЕрдВрдд рдореЗрдВ рд╣реЛрддреА рд╣реИ (рдпрд╣ рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдЯ рдкрд░ рдЬреЛ рдХреБрдЫ рд╣реИ, рдЙрд╕рдХреЗ рд╕рд╛рде рдереЛрдбрд╝рд╛ рдЕрд╕рдВрдЧрдд рд╣реИ:
var uintArray = new Uint8Array(dataString.length); for (var i = 0; i < dataString.length; i++) { uintArray[i] = dataString.charCodeAt(i) } var blob = new Blob([uintArray], {type: 'application/pdf'}); gotLink(URL.createObjectURL(blob));
рдпрд╣рд╛рдБ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ:
рдПрдХ рдкрд╛рда рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдПрдХ рдмрд╛рдЗрдирд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЕрдкрдиреЗ рдмрд╛рдЗрдЯреНрд╕ рдХреА рдПрд╕рд╕реАрдЖрдИ рдХреЛрдб рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рд╣рдо рд╕рд┐рдВрдЧрд▓-рдмрд╛рдЗрдЯ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рд╕реЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдЯрд╛рдЗрдкреНрдб рдРрд░реЗ (uint8array) рдмрдирд╛рддреЗ рд╣реИрдВ, рд╡рд╣ рднреА 0 рд╕реЗ 255 рддрдХ рдХреА рд╕реАрдорд╛ рдореЗрдВ, рдФрд░ рдмрд╛рдЗрдЯ-рдмрд╛рдп-рдмрд╛рдп рд╣рдо рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд╡рд░реНрдгреЛрдВ рдХреЗ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рдиреЛрдВ рдХреЛ рдЗрд╕рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рддрд╛рдХрд┐ рдмреВрдБрдж-рдСрдмреНрдЬреЗрдХреНрдЯ (рдмрд╛рдЗрдирд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рдЗрди рдЬреЗрдПрд╕) рдХреЛ рдЗрд╕ рддрдереНрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдмрдирд╛рдпрд╛ рдЬрд╛рдП рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдирдВрдмрд░ рдПрдХ рдмрд╛рдЗрдЯ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рддрд╛ рд╣реИ - рдЕрдиреНрдпрдерд╛ рд╡рд░реНрдгреЛрдВ рдХреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдФрд░ рдлрд╝рд╛рдЗрд▓ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реЛрдЧреАред
рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдмреНрд▓рдм рд╕реНрд╡рдпрдВ рдЗрдирдкреБрдЯ рдкрд░ рдХреЗрд╡рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рд░реВрдк рд╕реЗ рдПрдХ рдирд┐рдпрдорд┐рдд рд╕рд░рдгреА рдореЗрдВ uintArray рдХреЛ рд▓рдкреЗрдЯрдирд╛ рд╣реЛрдЧрд╛ред
рдЪреВрдВрдХрд┐ рдЖрдЙрдЯрдкреБрдЯ рд▓рд┐рдВрдХ рдПрдХ рдкреНрд░рд╛рд░реВрдк рдХреЗ рдмрд┐рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЕрддрд┐рд░рд┐рдХреНрдд рд░реВрдк рд╕реЗ рдмреВрдБрдж рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдЗрдо рдкреНрд░рдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВред
рдФрд░ рд╕рд╛рдЗрдЯ рдкрд░ рдЬрд╛рджреВ рдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЯреБрдХрдбрд╝рд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реИ
URL.createObjectURL (рдмреВрдБрдж)
рд╣рдореЗрдВ рд╕реНрдореГрддрд┐ рдореЗрдВ рдмреВрдБрдж рдХрд╛ рд▓рд┐рдВрдХ рдорд┐рд▓рддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ - рдЬреИрд╕реЗ рд╣реА рд╣рдо рдореВрд▓ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХреЛ рдмрдВрдж рдХрд░рддреЗ рд╣реИрдВ, рд▓рд┐рдВрдХ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред
рд▓рд┐рдВрдХ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
рдмреВрдБрдж: http: // localhost: 8005 / 4222c9ec-1c66-4143-96a8-4223482148f6
рдФрд░ рдЗрд╕рд▓рд┐рдП рдЖрдк рдЖрд░реНрдХрд╛рдЗрд╡ рд╕реЗ рдПрдХ рдЕрд▓рдЧ рдлрд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдБрдЪ рдХреЗ рдмрд┐рдирд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╡рд╛рдкрд╕ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЕрдЧрд░ URL.createObjectURL рд╕реЗ рд▓рд┐рдВрдХ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА - рддреЛ рдЖрдк ie9 рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - Blob.poly.js рдореМрдЬреВрдж рд╣реИ, рдФрд░ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рдмреЗрд╕ 64 рд▓рд┐рдВрдХ рдЗрддрдирд╛ рдмрдбрд╝рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдмрд╕ рдЗрд╕реЗ рдПрдХ рдирдИ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдирд╣реАрдВ рдЦреЛрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдФрд░ рд▓рдЯрдХрд╛ рджрд┐рдпрд╛ рдерд╛ред
PS рдпрджрд┐ рдЖрдк рдмрдЧ (OS, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдВрд╕реНрдХрд░рдг) рдкреАрдПрдо рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕реЗ рддреБрд░рдВрдд рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдХрд░рддрд╛ рд╣реВрдВред
UPD рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ
рдЧреАрдереЛ рднрдВрдбрд╛рд░ рдореЗрдВ рд╕рднреА рд╕реНрд░реЛрдд