Upgrade to Pro — share decks privately, control downloads, hide ads and more …

KubernetesとAgonesによるリアルタイムゲームサーバ運用【DeNA TechCon 2022】

DeNA_Tech
March 17, 2022

KubernetesとAgonesによるリアルタイムゲームサーバ運用【DeNA TechCon 2022】

サーバアプリケーションの運用基盤として、ゲーム領域においてもKubernetesは有力な選択肢です。しかしながら、オンメモリでゲームの状態を管理するようなリアルタイムゲームサーバではサーバへ直接接続する要求もあるなど、Kubernetesの標準リソースによる構成が容易ではない場合があります。

このようなアプリケーションをスケーラブルにホスティングするために、私達は、Google Cloud主導でオープンソースで開発されている、Kubernetes上で専用ゲームサーバを管理するための汎用システムであるAgonesを採用しました。

Agonesの利用により、リアルタイムゲームサーバを運用するための多くの要件を満たすことができますが、マルチリージョンのサポートや、プレイヤーのサーバへの割り当て方法などにおいて、ゲーム固有の要求や特性に合わせた工夫も必要です。

本セッションでは、Agonesを活用してどのようにインフラ環境を構成・運用しているか、また、Agonesを使う上での課題やその解決策について、事例を元に紹介します。

資料内でのリンク集:
p12, https://speakerdeck.com/dena_tech/googlecloudinsidegamesandapps-motohironakamura
p40, https://github.com/googleforgames/agones/issues/1197
p54, https://developer.apple.com/jp/support/ipv6/

◆ You Tube
https://youtu.be/jScFr9EwKBg

◆ You Tube チャンネル登録はこちら↓
https://youtube.com/c/denatech?sub_confirmation=1

◆ Twitter
https://twitter.com/DeNAxTech

◆ DeNA Engineering
https://engineering.dena.com/

◆ DeNA Engineer Blog
https://engineering.dena.com/blog/

◆ DeNA TechCon 2022 公式サイト
https://techcon2022.dena.dev/spring/

DeNA_Tech

March 17, 2022
Tweet

More Decks by DeNA_Tech

Other Decks in Technology

Transcript

  1. \zi-iˆ‘iˆ Ɣ ᵶ᷿ḇ᷀ᵩḖṛᷝḐᵩᵾṋḁḯ᷿ḛḌᶻḜḟᷚḇḙᵩḜ Ɣ )}gḧᭅ؂ᭅ؂ݵ ż ᵶ᷿ḇ᷀ᵩḖṛᷝḐᵩᵾᶣp}‰‹)}ˆ‹ᶉɟᡮḏḃḌ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV

    &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 +EQI7IVZIV &EXXPI7IVZIV
  2. \zi-iˆ‘iˆ Ɣ ᵶ᷿ḇ᷀ᵩḖṛᷝḐᵩᵾṋḁḯ᷿ḛḌᶻḜḟᷚḇḙᵩḜ Ɣ )}gḧᭅ؂ᭅ؂ݵ ż ᵶ᷿ḇ᷀ᵩḖṛᷝḐᵩᵾᶣp}‰‹)}ˆ‹ᶉɟᡮḏḃḌ Ɣ &EXXPI7IVZIV'PYWXIV EWME

    8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 +EQI7IVZIV &EXXPI7IVZIV <KD@MNDJIˆ¯<BJI@N‰?@Q™Q¼¯ FDI?ˆ <H@@MQ@M H@O<?<O<ˆ B@I@M<O@<H@ˆ¯NDHKG@ŠB<H@ŠN@MQ@MŠ¯ NK@>ˆ KJMONˆ ŠI<H@ˆ?@A<PGO KJMOJGD>TˆTI<HD> >JIO<DI@MJMOˆÂÁÀ¿ O@HKG<O@ˆ NK@>ˆ >JIO<DI@MNˆ ŠI<H@ˆNDHKG@ŠB<H@ŠN@MQ@M DH<B@ˆB>M‰DJ™<BJI@NŠDH<B@N™NDHKG@ŠB<H@ŠN@MQ@Mˆ»‰Á ܜ຦ɇᯀĦƄƄűŻɍɘɘĞĪƄĦƊöɋøŒňɘĞŒŒĞŁąĜŒŵĞÚňąŻɘÚĞŒŊąŻɘöŁŒöɘƠȺɋȻȹɋȹɘąƦÚňűŁąŻɘŻĪňűŁąɡĞÚňąɡŻąŵƠąŵɘĞÚňąŻąŵƠąŵɋƧÚňŁ
  3. - ḧḐᶳᶎᶻᵩ Ɣ ᵶ᷿ḇ᷀ᵩḖṛᷝḐᵩᵾᷥᶣ- ṋᅔᷓᛡᷙݮᔑᶙᵵḌ Ɣ \zi-iˆ‘iˆᷨ෽ࠌᶣᰝḐᶳᶎᶻᵩᶉᵵḌᰦ- ᰦ-iˆ‘iˆᰦṋ śḕᰝŒdiˆ{i‹i‰ᰦ)ᰦ-iˆ‘iˆȇḧΖਵḏḃḌ &EXXPI7IVZIV'PYWXIV

    EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 +EQI7IVZIV &EXXPI7IVZIV TSH &EXXPI7IVZIV 'SRXEMRIV %KSRIW7(/ 7(/7IVZIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI ´FP=@>OGB@OBN   NDHKG@ŠB<H@ŠN@MQ@MŠÂKEML@<?T¾À‰½¾¾‰¼Ã¾‰¿¾¼Ļ<BJI@N¾H ܜ຦ɇᯀĦƄƄűŻɍɘɘÚĞŒŊąŻɋþąƠɘŻĪƄąɘþŒøŻɘĞąƄƄĪŊĞɡŻƄÚŵƄąþɘøŵąÚƄąɡĞÚňąŻąŵƠąŵɘ
  4. yii‹ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI

    *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 Ɣ \zi-iˆ‘iˆ᝛ṋ׌ሎḛḌᶻḜḟᷚḇḙᵩḜ Ɣ i…y}˜zi{‹ᷨṖḲᷟᶳ᷑ᵩṫ *PIIX +EQI7IVZIV &EXXPI7IVZIV
  5. yii‹ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI

    *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 Ɣ \zi-iˆ‘iˆ᝛ṋ׌ሎḛḌᶻḜḟᷚḇḙᵩḜ Ɣ i…y}˜zi{‹ᷨṖḲᷟᶳ᷑ᵩṫ *PIIX +EQI7IVZIV &EXXPI7IVZIV <KD@MNDJIˆ¯<BJI@N‰?@Q™Q¼¯ FDI?ˆ G@@O H@O<?<O<ˆ I<H@ˆNDHKG@ŠB<H@ŠN@MQ@M NK@>ˆ M@KGD><Nˆ½ O@HKG<O@ˆ NK@>ˆ KJMONˆ ŠI<H@ˆ?@A<PGO >JIO<DI@MJMOˆÂÁÀ¿ O@HKG<O@ˆ NK@>ˆ >JIO<DI@MNˆ ŠI<H@ˆNDHKG@ŠB<H@ŠN@MQ@M DH<B@ˆB>M‰DJ™<BJI@NŠDH<B@N™NDHKG@ŠB<H@ŠN@MQ@Mˆ»‰Á ܜ຦ɇᯀĦƄƄűŻɍɘɘĞĪƄĦƊöɋøŒňɘĞŒŒĞŁąĜŒŵĞÚňąŻɘÚĞŒŊąŻɘöŁŒöɘƠȺɋȻȹɋȹɘąƦÚňűŁąŻɘŻĪňűŁąɡĞÚňąɡŻąŵƠąŵɘĞÚňąŻąŵƠąŵɋƧÚňŁ
  6. \zi-iˆ‘iˆyy}e\‹q}{ Ɣ \zi-iˆ‘iˆᷨ࿈Njḇ᷋ᶒḜḨḧᷟḌᶻḜḟᷚḇḙᵩḜ Ɣ }{‹ˆ}yyiˆᶉʛ๗ḏḃḌ ż ੔ŰᷥΒዑḛḌ\zi-iˆ‘iˆṋ᜿ʧ ż ᶭḜḨᰛ᷽ᵩḨߓӄṋ‰‹\‹Œ‰ᶰᶷᵩḍᶎᷥḓḯḨ &EXXPI7IVZIV'PYWXIV

    EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI 1EXGLQEOIV *DPH6HUYHU$OORFDWLRQ
  7. yii‹Œ‹}‰e\yiˆ Ɣ ᷯᵩḨḜ᷀ᵩḍṋ׌ሎḛḌᶻḜḟᷚḇḙᵩḜ Ɣ ਦؐᰛਦԚᰛᵾḯᶰᵺॿṋᕇ׌Άኀ Ɣ ᕇ׌ǫṋҴᷥ }{‹ˆ}yyiˆᶙyii‹ᷨˆi…yqe\‰ṋ̂༭ᷥԌਛ &EXXPI7IVZIV'PYWXIV EWME

    8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV )OHHW$XWRVFDOHU
  8. )q{oᰦ-iˆ‘qei Ɣ ᷣḯḨṁᵩ᷋᜞܇ᔷು຦ᷨḖ᷿ᷝḍᷟ//)᮹0 )Ḑᵩᵾ Ɣ ᶻḜḟᷚḇḙᵩḜḧᶣඎᡸƽ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV

    YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 4MRK7IVZMGI
  9. ɛƒᷨ౩ḃ ᭅᮩ ᷣḯḨṁᵩ᷋᜞܇ᷨᔷು ᭆᮩ ᷎ḯḥ᷑ᶳ᷅ᷝᶢ \ᮩ Ḑᵩᵾᷨ࿈Nj ᭇᮩ ᵾḨḍḐᵩᵾᶦࣶᅲ ᭈᮩ

    ᷯᵩḨḜ᷀ᵩḍ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊
  10. ɛƒᷨ౩ḃ ᭅᮩ ᷣḯḨṁᵩ᷋᜞܇ᷨᔷು ᭆᮩ ᷎ḯḥ᷑ᶳ᷅ᷝᶢ \ᮩ Ḑᵩᵾᷨ࿈Nj ᭇᮩ ᵾḨḍḐᵩᵾᶦࣶᅲ ᭈᮩ

    ᷯᵩḨḜ᷀ᵩḍ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊
  11. ɛƒᷨ౩ḃ ᭅᮩ ᷣḯḨṁᵩ᷋᜞܇ᷨᔷು ᭆᮩ ᷎ḯḥ᷑ᶳ᷅ᷝᶢ \ᮩ Ḑᵩᵾᷨ࿈Nj ᭇᮩ ᵾḨḍḐᵩᵾᶦࣶᅲ ᭈᮩ

    ᷯᵩḨḜ᷀ᵩḍ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 ›ąÚþƧ ›ąÚþƧ
  12. ɛƒᷨ౩ḃ ᭅᮩ ᷣḯḨṁᵩ᷋᜞܇ᷨᔷು ᭆᮩ ᷎ḯḥ᷑ᶳ᷅ᷝᶢ \ᮩ Ḑᵩᵾᷨ࿈Nj ᭇᮩ ᵾḨḍḐᵩᵾᶦࣶᅲ ᭈᮩ

    ᷯᵩḨḜ᷀ᵩḍ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 *DPH6HUYHU$OORFDWLRQ ›ąÚþƧ ŁŁŒøÚƄąþ
  13. ɛƒᷨ౩ḃ ᭅᮩ ᷣḯḨṁᵩ᷋᜞܇ᷨᔷು ᭆᮩ ᷎ḯḥ᷑ᶳ᷅ᷝᶢ \ᮩ Ḑᵩᵾᷨ࿈Nj ᭇᮩ ᵾḨḍḐᵩᵾᶦࣶᅲ ᭈᮩ

    ᷯᵩḨḜ᷀ᵩḍ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 ›ąÚþƧ ŁŁŒøÚƄąþ
  14. ɛƒᷨ౩ḃ ᭅᮩ ᷣḯḨṁᵩ᷋᜞܇ᷨᔷು ᭆᮩ ᷎ḯḥ᷑ᶳ᷅ᷝᶢ \ᮩ Ḑᵩᵾᷨ࿈Nj ᭇᮩ ᵾḨḍḐᵩᵾᶦࣶᅲ ᭈᮩ

    ᷯᵩḨḜ᷀ᵩḍ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 )OHHW$XWRVFDOHU ›ąÚþƧ ŁŁŒøÚƄąþ
  15. ɛƒᷨ౩ḃ ᭅᮩ ᷣḯḨṁᵩ᷋᜞܇ᷨᔷು ᭆᮩ ᷎ḯḥ᷑ᶳ᷅ᷝᶢ \ᮩ Ḑᵩᵾᷨ࿈Nj ᭇᮩ ᵾḨḍḐᵩᵾᶦࣶᅲ ᭈᮩ

    ᷯᵩḨḜ᷀ᵩḍ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 ɛḡᷨᔑŰṋᜪ࡙ᯄ ᔑŰᭆᮩᰦ᷎ḍḥḇᵩṫṛᷝ ᔑŰᭅᮩᰦΖþḐᵩᵾ᷿ḊḓḜᶦࣶᷨᅲ ᔑŰᭇᮩᰦᷯᵩḨḜ᷀ᵩḍ
  16. o}{i‰ḧ᷎ḯḥ᷑ᶳ᷅ᷝᶢḖḜḢᷚᷨᜑढᷥᡸḛḌᖁᥥ Ɣ ؑœॿ!ᶉᶣᭅ᷎ḯḥᶉᭅᰦ\ziᰦ-iˆ‘iˆṋ͈਩ḛḌḧᤛ˷ุ ż o}{i‰ᶣᰦᭅᰦyy}e\‹iᶉᭅḪᷨ\zi-iˆ‘iˆṋ yy}e\‹iḛḌḧᶲḲŠᅔᷓ ż ᭅḪᷨᵾḨḍḐᵩᵾᷥᓯॿᵾḨḍ˚ḆܷḡḌښԝᶙݮᔑ Ɣ ᵾḨḍᷨ˚Ḇܷḡ৙ᷥᗾፔʭॼᶙݮᔑ

    ż ᵾḨḍᡮ՛৙ᷨʛ๗ᶙរᶲḞ᷐ &EXXPI7IVZIV'PYWXIV EWME 8EOEWLS'PYWXIV &EXXPI7IVZIV'PYWXIV YW 4MRK7IVZMGI 'SRXVSPPIV /YFIVRIXIW%4-7IVZIV /YFIVRIXIW)RKMRI *PIIX +EQI7IVZIV &EXXPI7IVZIV 1EXGLQEOIV 䈈䈊 *DPH6HUYHU$OORFDWLRQ ›ąÚþƧ ŁŁŒøÚƄąþ
  17. Ɣ ᗾፔʭॼḕḪḪᭅḐᵩᵾᷥᓯॿᷨᵾḨḍṋ˚ḆܷḡḌ᷇ḧṋא๔ ż ᭅḐᵩᵾᷥ˚ḆܷḡḀḃḌᵾḨḍॿᷨĄᢡǫᶣᰝᵾḨḍḐᵩᵾȇᶉᵶᷩḢᵩḖṛᷝᷥᕇ׌ḕᰝ ᷎ḯḥ᷑ᶳᶻᵩᶙͪඟḛḌ ښԝᭆᮩᰦ᷋ḁᶳᵶᷝḨᷥᶣyy}e\‹iಭᷓᷨḐᵩᵾḇḜḨᷨĕᶺḀᭅḪṋᛨḛ ‰‰qo{ᰦd\‹‹yi‰ &EXXPI7IVZIV% &EXXPI7IVZIV& &EXXPI7IVZIV'

    䝬䝑䝏䝯䜲䜹䞊 &EXXPI7IVZIV( &EXXPI7IVZIV) yy}e\‹iಭᷓḐᵩᵾṋƤᶲѤḕᰝ z\— \‹‹yi‰ᷥᜪḛḌ᷍ᶉᗾፔʭॼḕḪḪ ᓯॿᷨᵾḨḍṋ˚ḆܷḡḌ yy}e\‹iಭᷓᷨḐᵩᵾḇḜḨ \‹‹yiᰦ-iˆ‘iˆᰦ \‹‹yiᰦ-iˆ‘iˆᰦ \‹‹yiᰦ-iˆ‘iˆᰦ z\— \‹‹yi‰᮫ᰦᭉ᭄ ‰‰qo{ᰦd\‹‹yi‰
  18. ښԝᭇᮩᰦyy}e\‹i৙ᷥᶣ਩˷ਵᢡṋᕇ׌ḛḌ Ɣ ᷋ḁᶳᵶᷝḨᶙࣶᅲḕᷥᒬḭḞḀ-pŒ‹g}’{ḏḃḡᶲḞḧᶲḲ᷇ḧᶙᷟᶲṖḲᷥḛḌḞ᷐ Ɣ ᷎ḯḥ᷑ᶳᶻᵩᶙyy}e\‹i৙ᷥ{{}‹\‹q}{ᷥ਩˷ਵᢡṋᕇ׌ Ɣ ᵾḨḍḐᵩᵾᶺḀᶣᰝo}{i‰ᰦ- ᅙຫᶉͪඟḕᰝਵᢡṋᛦᶑḌ᷍ᶉᅒĴḕᷟᶲṖḲᷥḛḌ ż ਵᢡṋᛦᶑḞḀᵾḨḍḐᵩᵾᶣo}{i‰ᰦ-

    ᷨ-pŒ‹g}’{ṋοᶁʧḕᅒĴḛḌ Ɣ ਵᢡṋᛦᶑḞḀyy}e\‹iಭᷓᷨḇḜḨᶺḀˉᢩḕᰝḘᷨʭছᔘᷥᵾḨḍḐᵩᵾṋyy}e\‹iḛḌ &EXXPI7IVZIV% 䝬䝑䝏䝯䜲䜹䞊 yy}e\‹i i—…qˆig‹᮫ᰦᭅᭊᭈᭊ᭄ᭊ᭄ᭈ᭄᭄ i—…qˆig‹ᷨ৙ᡲᷥᷟḭḞᰦᲴᲴ ࣶᅲ᷿Ḅᶳṏᵩॿᶙ᭄ᷥᷟḭḞḀ -pŒ‹g}’{ḛḌ &EXXPI7IVZIV% ࣶᅲḕᷥᶲḭḞḀḐᵩᵾ ᶙ-pŒ‹g}’{ḏḃḡᶲḞ ĄᕀᷨṖḲᷟ᷇ḧᶙᙉ᷇ḀᷟᶲṖḲᷥ਩˷ਵᢡṋţć ЁᥥᷥᷟḌ᷀ᵩḜ᮫ ؂Ⴉݗ᮫
  19. ᭅḪᷨ\ziᰦ-iˆ‘iˆᷥᓯॿᷨᵾḨḍṋ˚ḆܷḡḌḞ᷐ᷨښԝ᷍ḧ᷐ ᭅᮩ ĸˌᷥþ׌ॿᷨᵾḨḍḐᵩᵾṋyy}e\‹i ᭆᮩ ᷋ḁᶳᵶᷝḨᷥᶣyy}e\‹iಭᷓᷨḐᵩᵾḇḜḨᷨĕᶺḀᭅḪṋᛨḛ ż z\— \‹‹yi‰ᵶᷩḢᵩḖṛᷝᷥᕇ׌ḏḃḞĄᢡǫṋᙋᶑᷟᶲṖḲᷥḕḡᶲḌ ż ᗾፔʭॼᷖᒬḭḡᶲḌ

    ᭇᮩ yy}e\‹i৙ᷥᶣ਩˷ਵᢡṋᕇ׌ḕᰝḘᷨਵᡲĕᵾḨḍḐᵩᵾᶣຢ֬ḕḡᶲḌᷖᷨḧḕḡࢁḲ ż ਵᢡṋᛦᶑḞḀyy}e\‹iಭᷓᷨḇḜḨᶺḀˉᢩḕᰝḘᷨʭছᔘᷥᵾḨḍḐᵩᵾṋyy}e\‹iḛḌ
  20. ᗾፔᕝ᧓ᷨᅜ੯ Ɣ ᭅ᭄᭄yy}e\‹i᮹‰ieṋࣕ᷄ʮḃṮ ż Ζ৙ᷥᭊ᭄᭄᭄ᵾḨḍཚܷᷨᗾፔᶉᰝ\zi-iˆ‘iˆḧḕḡᶣᭅ᭄᭄᭄᭄ᵾḨḍࣕᶿḌ ᷅ṓ᷷ḖḢᶷᶙᵵḌߦ׌ᷨḞ᷐ᰝ,i\yy}e\‹q}{ᶙ਩˷ᶉᵵḃᵽ๗ᖎĄࣕᶿḌᶣṮᶇḭḞ Ɣ \zi-iˆ‘iˆḧḕḡᶣ̶ʭᷟ᷅ṓ᷷ḖḢᶷᶙᵵḌᷥᷖᡸṀḀṮᰝ yy}e\‹iΆኀᷟ\zi-iˆ‘iˆᶙᷟᶲḧᶲḲ෽ࠌᷥᷟḭḡᶲḞ ż

    o}{i‰ᷨyy}e\‹}ˆᰦ-iˆ‘qeiᶙᰦᰍ }Œygᰦ{}‹ᰦnq{gᰦ\{ᰦyy}e\‹\dyiᰦ\zi-iˆ‘iˆᰎᰦḧᶲḲᶒḁᵩṋᛨḕḡᶲḞ Ɣ ᷈ᷝḨḊᵩḍ᷿ḄᵩᷝȇᯔxŒdiᰀ\…q‰iˆ‘iˆᯕᶣᶄḨḍᷣḯ᷋ᷥᶣᷟḭḡᶲᷟᶺḭḞ Ɣ Α᷽᷈ᷝᵩᷣᷝḨᷨ )0ᰝ᷑ᷗḇᷥᶣƖᓜᶙᵵḌ෽ࠌ
  21. ᗾፔᕝ᧓ᷨᅜ੯ᷨሪװ Ɣ ࣕ᷄᷄ḃᷟᶺḭḞ͝ѥ ż þۦyy}e\‹iḕḞ\zi-iˆ‘iˆᶙɯۦyy}e\‹i ΆኀᷥᷟḌ᷍ᶉᷥ৙ᡲᶙᶺᶺḭḡᶲḞ Ɣ ڛᷨѪᶣo}{i‰ᷨyy}e\‹}ˆ-iˆ‘qeiᶙyy}e\‹iΆኀ ᷟ\zi-iˆ‘iˆṋჄ๗ḛḌʛ๗ᷨḐᶳ᷋ḍ Ɣ

    ᭅḪᷨ\zi-iˆ‘iˆᷥ؂ḕḡᰝ᷇ᷨḐᶳ᷋ḍᶙѤḌᷨ ᷥᭅမဨۦᶺᶺḭḡᶲḞ Ɣ ๗ᖎĄᰝᰦyy}e\‹i᮹‰ieᷨ৙ᷥᰝ·ᷨ\zi-iˆ‘iˆ ᶙݮᔑḧᶲḲ᷇ḧᷥᷟḆᰝḜ᷀ᵩḍḕᶏḀᶲ
  22. ᯘŚݗᷨرਲᯙᰦᭅ᷎ḯḥᭅyy}e\‹iᷥᛧᶲŠᅔᷓṋא๔ḛḌḞ᷐ᷨʹḆᅔᷓ Ɣ ᗾፔᕝ᧓ᅜ੯ᶺḀᰝ᧶ᥠۦᷟyy}e\‹iᶙߦ׌ḏḃḌӅΒᰝ o}{i‰Ḙᷨ᷍᷍ᶉᶣא๔ᶙᣩḕᶲḞ᷐ƓḀᶺᷨښԝᶙݮᔑ Ɣ ᓯॿᷨyy}e\‹iḇ᷋ᶒḜḨṋᭅḪᷥ᷍ḧ᷐ḡ᛺ǍḛḌ࿧ɪ຦ḁᶳᶆḁḇᯔ}ᓫᯕṋᡮ༥ ż ǝüᷨyy}e\‹iᶣŲߵᷨᵶᷩḢᵩḖṛᷝḧḁᶀḍṋࣅ׌Άኀ Ɣ ᷎ḯḥ᷑ᶳᶻᵩᷥᅔᷓᛡᷙᶺฎዎᷨyy}e\‹}ˆḐᵩᵾᷥᅔᷓᛡᷙ

    Ɣ ŠᅔᷓĄᰝ\zi-iˆ‘iˆᷥᶣþۦᷥ᷍ḧ᷍ḭḞ౩ɚᶙᵵḌ᷇ḧᷥᷟḌ ż ᷇ᷨঝౄᶙᕈםᶉ᷄ḌӅΒᷥƤḲߦ׌ Ɣ ਻ĸƩᷨṖḲᷥĸˌᷥþ׌ॿyy}e\‹iḛḌঝౄṋʹḀᷟᶺḭḞᷨᶣᰝᓯᣢᷥᷟḆሪࠝĸ᥍ᶙӠᶑḌḞ᷐ ᓯॿᷨyy}e\‹iḇ᷋ᶒḜḨ &EXXPI7IVZIV% 䝷䜲䝤䝷䝸 yy}e\‹i 䝬䝑䝏䝯䜲䜹䞊 ḁᶳᶆḁḇɪᶉᓯॿᷨyy}e\‹i ḇ᷋ᶒḜḨṋᭅѤᷥ᷍ḧ᷐Ḍ
  23. )‘ᭊḖᷝᶢḍḜḟḯ᷋ກӝᷥᷮᶿḌЁᥥᷥ؂ḛḌ؂ݵ Ɣ אᣄᷨ؂ݵḧḕḡᶣƓᷖḒṮຢᷨ)‘ᭈᵶᶎḄḜṋƤḭḡᶲḌ Ɣ {gˆ}qg ż ᭈᭊᭈ;/ᶙḐ᷽ᵩḨḏḃḡᶲḌḞ᷐Ёᥥᷟḕḧʸঙ Ɣ q!- ż

    oi‹\ggˆq{n}ᰦṋοᶁʧḛ᷇ḧᶉɪ᝞༭ᷥᰦ)ˆinᭊᭈ᮫᮫᮹{ᰦ q‰e}‘iˆ˜ᰦᷥṖḌᵶᶎḄḜΒ࡙ᶙΆኀ Ŷ p‹‹…‰᮫᮹᮹gi‘iy}…iˆᮩ\……yiᮩe}z᮹w…᮹‰Œ……}ˆ‹᮹q…‘ᭊ᮹ ż ˆ…eᮩ }ˆiᶉᶣɪ᝞༭ᷥoi‹\ggˆq{n}ᶙοᶁʧḏḃḌ ż -˜‰‹izᮩi‹ᮩ‹‹…ᮩ‹‹… yqi{‹ᷥ؂ḕḡᶣᰝĸˌᷥᷣᶳḢᶷᶆࢷܫᶉoi‹\ggˆq{n}ṋοᶁʧḛʛ๗ṋɚ ḃḡᶲḌ ż ᮸ḢṧḇᷝᶢᷨḞ᷐ᷥᭈᭊᭈ;/ᶙḐ᷽ᵩḨḏḃḡᶲḌḧᶲḲߓӄᶙᵵḌᶙᰝɟܗᷥুᔴḏḃḡᶲḌᷖᷨᶉᶣᷟᶲ Ɣ אᣄᷥᶣ ᶳᷝḜḟᷝḜᷥūąᷨṖḲᷟᶎ᷑ᶳᷝΗᶙ˚ḆܷḡḀḃḡᷮḆᰝ᷇ḃṋʻ຦ḛḌ᷇ḧᷖΆኀ ż )ᵶᶎḄḜᶙᭅ᭍ᭆᮩ᭄ᮩᭆᮩᭆᷨḧ᷄ᷨƩ᮫ᰦᭆᮩᭆᮩ᭄ᮩᭅ᭍ᭆᮩdeᮩo}}oyiŒ‰iˆe}{‹i{‹ᮩe}z ż ᮸ḕᶺḕᶎ᷅ṣ᷑ᷝḨᷥুᕀḏḃḡᶲḌṀᶿᶉᶣᷟᶲ ᮸ᰦ -ᭊᭈᰝ/ᭊᭈᰝᭈᭊᭈ;/ᰝ)ˆinᭊᭈ᮫᮫᮹{ᰦ q‰e}‘iˆ˜ᷥᡸḛḌᕦᅋᶣ˚߹