рдмрдЧ рдХреНрдпрд╛ рд╣реИ рдЗрд╕рдХрд╛ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдгред
Next.js рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдРрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ CSS <head>
рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рд╛рдЗрдбреНрд░реЗрдЯреЗрдб рдирд╣реАрдВ рд╣реИ рдЬрдм <div id="__next">
рддрддреНрд╡ рдкрд╣рд▓реЗ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВред
рдпрд╣ рд╣рдорд╛рд░реЗ рд╡рд┐рдХрд╛рд╕ рд╕рд░реНрд╡рд░ рдХреЛ рдЪрд▓рд╛рддреЗ рд╕рдордп рдЕрд╕реНрдерд┐рд░ рд╕рд╛рдордЧреНрд░реА (рдпрд╛ FOUC) рдХреА рдПрдХ рдлреНрд▓реИрд╢ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдпрд╣ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдареАрдХ рд╣реИ (рдЬреЛ рдореБрдЭреЗ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ)ред
рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо, рдХреГрдкрдпрд╛ рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рдпрд╛ рдПрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдкреНрд░рджрд╛рди рдХрд░реЗрдВ:
$ git clone https://github.com/tutorbookapp/covid-tutoring
README.md
рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг) рдЪрд▓рд╛рдХрд░:$ npm i && lerna bootstrap --hoist
$ npm run dev
рдПрдХ рд╕реНрдкрд╖реНрдЯ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рдЬреЛ рдЖрдкрдиреЗ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХреА рдереАред
<div id="__next">
рддрддреНрд╡ рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рдЙрдкрд░реЛрдХреНрдд рддрд╣ рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдХреЗ рдмрд╛рдж рд╣реА рджрд┐рдЦрд╛рдИ рджреЗрдиреА рдЪрд╛рд╣рд┐рдП (рдпрд╛рдиреА рд░рд┐рдПрдХреНрд╢рди рдШрдЯрдХреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╢реИрд▓реА рдХреА рдЪрд╛рджрд░реЗрдВ рдЬреЛ рдКрдкрд░-рдиреАрдЪреЗ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВ) <head>
рдореЗрдВ рдбрд╛рд▓реА рдЬрд╛рддреА рд╣реИрдВ <div id="__next">
рддрддреНрд╡ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рдХреЗ рд╕рд╛рде рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рд▓рд╛рдЧреВ рд╣реЛ, рддреЛ рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╕рдордЭрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдЬреЛрдбрд╝реЗрдВред
рд╣рдорд╛рд░реЗ рд╡рд┐рдХрд╛рд╕ рд╕рд░реНрд╡рд░ рдкрд░ рджрд┐рдЦрд╛рдИ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ FOUC рджреЗрдЦреЗрдВ:
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рд╣рдорд╛рд░реА рдЙрддреНрдкрд╛рджрди рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЪрд▓рд╛ рдЧрдпрд╛ рд╣реИ:
рдореБрдЭреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИ рдЬрдм рдореИрдВ рд╕реАрдПрд╕рдПрд╕ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рд╕реНрдЯрд╛рдЗрд▓-рдЬреЗрдбрдПрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдореИрдВ рдПрдХ рд╕рдорд╛рди рдореБрджреНрджреЗ рдХреЛ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ _app.js рдореЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реАрдПрд╕рдПрд╕ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рд▓реЛрдб рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдЬрдмрдХрд┐ рдпрд╣ рджреЗрд╡ рдореЛрдб рдореЗрдВ рд╣реИред рдпрд╣ SSR рдХреЛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдард┐рди рдмрдирд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд▓рд╛рдкрддрд╛ рд╢реИрд▓реА рд╣реЛ рд╕рдХрддреА рд╣реИред
@robgraeber рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдЯреАрдХ рдореБрджреНрджрд╛ рд╣реИ рдЬреЛ рдЖрдк рдХрд░рддреЗ рд╣реИрдВред CSS рдХреЛ рдПрдХ рдЕрд▓рдЧ css рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрдЬрд╛рдп _app.js рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
рдПрдХ рд╣реА рдореБрджреНрджрд╛ рдпрд╣рд╛рдБред
рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдиреНрдпреВрдирддрдо рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдпрд╛ рд╣реИ: https://github.com/dnaranjo89/next-css-ssr
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрднреА-рдХрднреА рдореИрдВ рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдореЗрдВ рдХреБрдЫ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реАрдПрд╕рдПрд╕ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдХрд┐рд╕реА рднреА рдмрджрд▓рд╛рд╡ рдХреЗ рдХрд╛рд░рдг рдкреВрд░реЗ рдкреГрд╖реНрда рдХреА рд╕реАрдПрд╕рдПрд╕ рдХрд┐рд╕реА рднреА рддрд░рд╣ рдмрд░реНрдмрд╛рдж рд╣реЛ рдЬрд╛рддреА рд╣реИред рдХреНрдпрд╛ рдХрд┐рд╕реА рдиреЗ рдРрд╕рд╛ рдЕрдиреБрднрд╡ рдХрд┐рдпрд╛ рд╣реИ?
@derskeal рдЗрд╕ рд╕реИрд╕ рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рдЕрдкрдиреЗ рд▓реЗрдЖрдЙрдЯ рдШрдЯрдХ рдореЗрдВ sass рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреА рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ: https://github.com/giuseppeg/styled-jsx-plugin-sass
@Timer рдореИрдВ рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддрд╛ рдЗрд╕ рд░реЗрдкреЛ https://github.com/yanv1991/demo-react-dom , рдЗрд╕ рд╢реИрд▓реА рд▓реЛрдб рдирд╣реАрдВ рд╣реИ prod рдореЛрдб рдореЗрдВ рдПрд╕рдПрд╕рдЖрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрддрд┐рд╢реАрд▓ рд▓реЛрдб рдШрдЯрдХ рдХреЗ рд╕рд╛рде рд╕рд╛рд╕ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдмрдирд╛рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ
рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдирд╣реАрдВ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
error - Error [FirebaseError]: projectId must be a string in FirebaseApp.options
at new FirestoreError (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/firestore/dist/index.node.cjs.js:1223:28)
at Function.Firestore.databaseIdFromApp (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/firestore/dist/index.node.cjs.js:21018:19)
at new Firestore (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/firestore/dist/index.node.cjs.js:20850:42)
at /Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/firestore/dist/index.node.cjs.js:22871:66
at Component.instanceFactory (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/firestore/dist/index.node.cjs.js:22410:16)
at Provider.getOrInitializeService (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/component/dist/index.cjs.js:219:39)
at Provider.getImmediate (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/component/dist/index.cjs.js:120:33)
at FirebaseAppImpl._getService (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/app/dist/index.node.cjs.js:228:49)
at FirebaseAppImpl.firebaseAppImpl.<computed> [as firestore] (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/app/dist/index.node.cjs.js:440:39)
at Object.serviceNamespace [as firestore] (/Users/joe/Desktop/scratch2/covid-tutoring/node_modules/@firebase/app/dist/index.node.cjs.js:420:45)
at eval (webpack-internal:///./src/firebase/db.tsx:19:124)
at Module../src/firebase/db.tsx (/Users/joe/Desktop/scratch2/covid-tutoring/.next/server/static/development/pages/_app.js:128:1)
at __webpack_require__ (/Users/joe/Desktop/scratch2/covid-tutoring/.next/server/static/development/pages/_app.js:23:31)
at eval (webpack-internal:///./src/firebase/user.tsx:12:61)
at Module../src/firebase/user.tsx (/Users/joe/Desktop/scratch2/covid-tutoring/.next/server/static/development/pages/_app.js:152:1)
at __webpack_require__ (/Users/joe/Desktop/scratch2/covid-tutoring/.next/server/static/development/pages/_app.js:23:31) {
code: 'invalid-argument',
toString: [Function]
}
рдпрд╣ next@^9.4.5-canary.15
рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП! рдХреГрдкрдпрд╛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВ рдФрд░ рд╣рдореЗрдВ рдмрддрд╛рдПрдВред
рдзрдиреНрдпрд╡рд╛рдж @ рддреИрдореВрд░! ЁЯОЙ рдореИрдВрдиреЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдФрд░ рдореЗрд░реЗ рд▓рд┐рдП рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдореИрдВ рдпрд╣ рдПрдХ рдХрд╕реНрдЯрдо рд╕рд░реНрд╡рд░ (рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝ рд╕рд╛рдЗрдЯ рдкрд░ рдЖрдХрд╕реНрдорд┐рдХ рд░реВрдк рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдкреГрд╖реНрда) рдореЗрдВ рджреЗрд╡ рдореЛрдб рдФрд░ рдЙрддреНрдкрд╛рджрди рдореЛрдб рджреЛрдиреЛрдВ рдореЗрдВ рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рдерд╛ред ^9.4.5-canary.15
рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕реЗ рддрдп рдХрд┐рдпрд╛!
рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВред рдХреИрдирд░реА рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреА рдЬрд╛рдБрдЪ рдХреА, рдпрд╣ рджреЗрд╡ рдореЛрдб рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдпрд╣ рдЕрднреА рднреА рдмрдирд╛ рд╣реБрдЖ рд╣реИред рдХреНрдпрд╛ рдХреЛрдИ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рддрд╛ рд╣реИ?
рдЙрддреНрдкрд╛рджрди рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ <style data-next-hide-fouc="true">body{display:none}</style>
рдЧрд╛рдпрдм рд╣реИред
рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВред рдХреИрдирд░реА рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреА рдЬрд╛рдБрдЪ рдХреА, рдпрд╣ рджреЗрд╡ рдореЛрдб рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдпрд╣ рдЕрднреА рднреА рдмрдирд╛ рд╣реБрдЖ рд╣реИред рдХреНрдпрд╛ рдХреЛрдИ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рддрд╛ рд╣реИ?
рдЙрддреНрдкрд╛рджрди рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ
<style data-next-hide-fouc="true">body{display:none}</style>
рдЧрд╛рдпрдм рд╣реИред
рдпрд╣рд╛рдБ рднреА, рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджрд╛ рд╣реИ рдЬрдм рдпрд╣ рдЙрддреНрдкрд╛рджреЛрдВ рдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпрд╛ рдХреЛрдИ рдЬрд╛рдирддрд╛ рд╣реИ?
рдпрд╣рд╛рдБ рднреА, рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджрд╛ рд╣реИ рдЬрдм рдпрд╣ рдЙрддреНрдкрд╛рджреЛрдВ рдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпрд╛ рдХреЛрдИ рдЬрд╛рдирддрд╛ рд╣реИ?
рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдореБрджреНрджрд╛ рдХреЗрд╡рд▓ рджреЗрд╡ рд╡рд┐рдзрд╛ рдореЗрдВ рдШрдЯрд┐рдд рд╣реЛ рд░рд╣рд╛ рдерд╛, рди рдХрд┐ рдЙрддреНрдкрд╛рджрди рд╡рд┐рдзрд╛ рдореЗрдВред рддреЛ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдареЗрд╕ рдХрд╛ рдореБрджреНрджрд╛ рдПрдХ рдЕрд▓рдЧ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВред рдХреИрдирд░реА рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреА рдЬрд╛рдБрдЪ рдХреА, рдпрд╣ рджреЗрд╡ рдореЛрдб рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдпрд╣ рдЕрднреА рднреА рдмрдирд╛ рд╣реБрдЖ рд╣реИред рдХреНрдпрд╛ рдХреЛрдИ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рддрд╛ рд╣реИ?
рдЙрддреНрдкрд╛рджрди рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ
<style data-next-hide-fouc="true">body{display:none}</style>
рдЧрд╛рдпрдм рд╣реИред
рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕реЗ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛? рдХреИрдирд░реА рд░рд┐рд▓реАрдЬ рдиреЗ рд╣рдорд╛рд░реЗ рджреЗрд╡ рдирд┐рд░реНрдорд╛рдг рдХреЛ рддрдп рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЙрддреНрдкрд╛рджрди рдЕрднреА рднреА рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИред
рддреЛ рдХреИрдирд░реА рдЕрдЧрд▓реЗ рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд╣реИ?
рд╣рд╛рдБ @jimmynames , рдХреИрдирд░реА WIP рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд╣реИ (рд╢рдмреНрдж рдЬрд╣рд░реАрд▓реЗ рдзреБрдПрдВ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдХреИрдирд░реА рдкрдХреНрд╖рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЦрдирд┐рдХреЛрдВ рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реБрдЖ ... Next.js рдХрд╛ рдХреИрдирд░реА рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдХреЗрдЪ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред
рдпрд╣ рдлрд┐рдХреНрд╕ Next.js 9.5.0 рдФрд░ 9.5.1 рдХреЗ рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ рдкрд░ рд╣реИ, рдпрд╛ рдирдпрд╛ (рдХреЗрд╡рд▓ рд╡рд┐рдХрд╛рд╕ рд╕рд░реНрд╡рд░ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ)!
рдЙрддреНрдкрд╛рджрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдореИрдВ рдЕрднреА рднреА рд╕реНрдЯрд╛рдЗрд▓рдмреНрд▓рдХреЙрдорд░реНрд╕ + рдордЯреЗрд░рд┐рдпрд▓ рдпреВрдЖрдИ рдХреЗ рд╕рд╛рде рдПрдлрдУрдпреВрд╕реА рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ
рдХреНрдпрд╛ рдХрд┐рд╕реА рдиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрд╛?
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЙрддреНрдкрд╛рджрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдореИрдВ рдЕрднреА рднреА рд╕реНрдЯрд╛рдЗрд▓рдмреНрд▓рдХреЙрдорд░реНрд╕ + рдордЯреЗрд░рд┐рдпрд▓ рдпреВрдЖрдИ рдХреЗ рд╕рд╛рде рдПрдлрдУрдпреВрд╕реА рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ