Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AWSでの漸進的なアーキテクチャ変更 at タップル誕生 / step-by-step-mig...
Search
michinobu_shimatani
April 09, 2019
Technology
250
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWSでの漸進的なアーキテクチャ変更 at タップル誕生 / step-by-step-migration-at-tapple
michinobu_shimatani
April 09, 2019
More Decks by michinobu_shimatani
See All by michinobu_shimatani
タップル誕生における、事業成長に合わせた継続的なシステム改善について/tapple-continuous-system-improvement
michio0o
1
810
見積もりとは〇〇である / estimate-is-hogehoge
michio0o
0
110
タップル誕生における事業の成長と開発体制の歩み / tapple-development-org-history
michio0o
0
1.6k
タップル誕生におけるマッチ体験向上アイテムの実装
michio0o
0
3k
Elasticsearchの活用と課題 at タップル誕生
michio0o
0
4.1k
Other Decks in Technology
See All in Technology
AWS構成から考えるWebセキュリティ ― WordPressの構築経験から考える公開範囲と更新運用【JAWS FESTA 2026 in AKITA】
cscengineer
PRO
2
360
2026 Apache Flink Community Checkpoint
rmetzger
0
200
Shared Signals Framework 仕様解説
oidfj
0
220
AIエージェントの監視、思考を見るか行動を見るか / Monitoring AI Agents: Thoughts or Actions
yusukeshimizu
2
170
新米を「売り越さない」、Aurora DSQLで作る在庫ゼロ死守の限定ドロップEC
yama3133
0
190
An Introduction to Context Ontology Accelerator (teaching AI agents what your data means)
inariku
PRO
1
150
コードレビューをなくして見えたもの
henteko
0
140
バックオフィスに染み出すTypeScript ── clasp で安全に仕組みを作る
nealle
1
180
視野はAIに、視座は人に / ai-for-breadth-humans-for-perspective
nkzn
6
3.2k
[JAWS Festa 2026]一番いい仕事は、請求書に現れない / jawsfesta2026
sh_fk2
2
390
仕様と現実の間で落とし所を探るリモートMCPの認証・認可 — Sansanの認証基盤における課題と実践
sansantech
PRO
1
120
プロダクションコードにおける encoding/json から encoding/json/v2 へのスムーズな移行
sansantech
PRO
1
150
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
530
Designing Experiences People Love
moore
143
24k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.8k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
470
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.9k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Navigating Weather and Climate Data
rabernat
0
590
The Language of Interfaces
destraynor
162
27k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
520
Transcript
AWSͰͷਐతͳΞʔΩςΫνϟมߋ at λοϓϧੜ 2019/04/09ɹBackend Engineerɹ Michinobu Shimatani
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 2 About Me 䃊靼խ㸾⠼ 4IJNBUBOJ.JDIJOPCV $ZCFSBHFOU*OD .BUDIJOH"HFOU*OD NJDIJP NJDIJPP
1SPEVDU _TPDJBMHBNF _OPXUBQQMF غحؙؒٝسؒٝآص،
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 3 झຯͰͭͳ͕Δ࿀׆αʔϏεʮλοϓϧੜʯ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 4 झຯͰͭͳ͕Δ࿀׆αʔϏεʮλοϓϧੜʯ 馯ךؕذ؞ٔ鼅䫛 ְְַ٥؎و؎ثד 湫䠬涸ח鼅䫛 ֶ✼ְךְְַד ًحإ٦آ❛䳔
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 5 αʔϏεॱௐʹ 2018ʹձһ400ສಥഁ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 6 ࢢͷมԽʹ͏γεςϜͷཁٻมԽ - ΑΓߴ͍ύϑΥʔϚϯεɾεέʔϥϏϦςΟ͕ٻΊΒΕ͖ͯͨ - Ϣʔβͷ૿ՃʹͬͯɺτϥϑΟοΫ૿Ճ - ϝσΟΞ࿐ग़ʹΑΔεύΠΫͷൃੜ -
ΑΓޮతͳ։ൃ͕ٻΊΒΕ͖ͯͨ - ͨ͘͞Μͷڝ߹ʹଧͪউͭͨΊʹ վળαΠΫϧΛૣΊ͍͖͍ͯͨ "84פך獳鏣
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 7 ҠઃγεςϜ৽ͷқ - γεςϜΛมߋ͢Δ͜ͱগͳ͔ΒͣϦεΫൃੜ͢Δ - ΞϓϦΤϥʔɺ௨৴োɺσʔλϩετɺαʔϏεμϯͳͲ - ͦͷҠઃࠓΔҙຯ͕͋Δͷʁʹ͑Δ -
αʔϏεͷάϩʔε͕ඞཁͳதɺେ͖ͳϦεΫෛ͍ͨ͘ͳ͍ - ܦӦऀͷઆ໌େ͖͘ͳΔ - γεςϜʹѱ͍ӨڹΛग़ͣ͞ɺΞʔΩςΫνϟΛେ͖͘ม͑Δ͜ ͱқ͕ߴ͍ ٔأؙ剑㼭⻉׃אאծ 圓䧭㢌⻉ׇׁגְֻחכוֲׅלְְֲַ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 8 ෳࡶͳมߋେมʂ - ܭըΛ࡞Δͷ͕େม - ఔ͕૿͑ΕͦΕ͚ͩෆ࣮֬ੑ͕૿͢ - ӨڹΛ֬ೝ͢Δͷ͕େม -
୯७ʹ֬ೝ͢Δ߲͕૿͑Δ - ൃੜ࣌ͷΓ͚͕େม - Γ͢ͷ͕େม - શͯͷཁૉΛߟ্ྀͨ͠ͰՄٯੑΛ୲อ͢Δͷ͍͠ ؽحؚغٝٔٔ٦أכ/(կزٓـٕח㼎ׅٔأؙ盖椚ָꨇ׃ְկ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 9 ಉ࣌ʹൃੜ͢Δߋ৽গͳ͍ํ͕ྑ͍ 葺ְ1VMM3FRVFTUך銲稆 ⽃♧ך湡涸ח穾גְֿה 㢌⻉ך珏겲כא֮
BEE VQEBUF EFMFUF SFGBDUPS 珏겲嫣ח13ָ⳿גֻהٖؽُ٦׃װְׅ 䕦갟ָ椚鍑׃װֻׅծ醱꧟⻉׃חְֻ 堣腉ך鷄⸇ 堣腉ך⹛⡲㢌刿 堣腉ךꤐ 堣腉ך䮶莸ְ㢌刿ׇ׆ח刿倜
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 10 ਐతʹΔͱ͏·͍͘͘ • ਐతͱʮॱΛͬͯখ͞ͳมԽΛى͍ͯ͘͜͠ʯ͜ͱ • খ͞ͳมԽϦεΫཧ͍͢͠ • ܭըΛ࡞͢Δൣғ͕ݶఆͰ͖Δ •
มߋʹΑΔӨڹൣғ͕ߜΒΕΔ • τϥϒϧରԠͷൣғ͕ߜΒΕΔ וְֲֲ䕦갟ָ饯ֹ䖤ַ姻׃ֻ椚鍑דֹלծٔأؙח㼎䘔׃װְׅկ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 11 ࠓ͢͜ͱ • AWSͷҠઃΞʔΩςΫνϟ৽ΛͲ͏ͬͯਐతʹਐΊ͔ͨ • ਐతͳߏมߋʹAWSͷͲͷΑ͏ͳػೳ͕͔͑ͨ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 12 ҠઃͷܭըϑΣʔζ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 13 ࣌ͷγεςϜߏ(ϓϥΠϕʔτΫϥυ)
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 14 طଘγεςϜͷ՝ • ߏͷཧίετͷߴ͞ • σϓϩΠ͕େม • ύϑΥʔϚϯε͕ෆ҆ •
ͦͷଞٕज़తෛ࠴
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 15 վળͷΰʔϧΛܾΊΔ • ղফ͖͢ࢁੵΈ • վળ͍ͨ͠ͷʹ༏ઌॱҐΛ͚ͭΔ͜ͱ͕େࣄ • ࢦͨ͠ߏ •
ECSͰͷίϯςφӡ༻ͱΦʔτεέʔϦϯάରԠ • DB࠷దͳΠϯελϯελΠϓͰΫϥελ࠶ߏங • σʔλϕʔεͰ͖Δ͚ͩϚωʔδυΛར༻ • ͱ͍͑શ෦ΛҰؾʹΓ͖Δͷେมͦ͏ɻɻɻ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 16 ҠઃΛ̏ͭͷϑΣʔζʹׂ فٓ؎ك٦ز ؙٓؐس ϑΣʔζ1 σʔλϕʔεͷҠઃ فٓ؎ك٦ز ؙٓؐس ϑΣʔζ2
EC2ͷҠઃ ϑΣʔζ3 ECSͷҠઃ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 17 σʔλϕʔεҠઃ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 18 ڌؒͷωοτϫʔΫӽ͕͑՝ فٓ؎ك٦ز ؙٓؐس "QQ 倜%# וֲװג籬ּ 㣐ֹזنزٕطحؙהזגְ%#⮚⯓涸ח何㊣׃ְ
%#⮚⯓׃ג獳鏣ׅחכ فٓ؎ك٦زؙٓؐسה"84הךדך鸐⥋䬐⥂׃זֽלזזְ ػؿؓ٦وٝأ⸋⻉ח״גծ؟٦ؽأ⡤꿀衅הֽׅחכְַזְ ؎ٝة٦طحز穗歋דך䱸竲דכ⿑׃ְ וֲװג㹋植ׅ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 19 AWS Direct Connect "84%JSFDU$POOFDU %9 הכ
"84הِ٦ؠ鏣⪒㼔欽㔐简ד䱸竲ׅطحزٙ٦ؙ؟٦ؽأ ؎ٝة٦طحز穗歋ד䱸竲ׅ״ծع؎ػؿؓ٦وٝأד㸜㹀׃橆㞮㹋植דֹ 䒦爡דכ傀ח荈爡فٓ؎ك٦زؙٓؐسה"84ד圓眠幥 Ⰻ爡דⰟ鸐ך㔐简ⵃ欽 獳鏣㼎韋 NPOHPEC筨㺁ꆀ(#⟃♳ծ〴玎䏝ד圓䧭ׁؙٓأة 䬿挿ך鸐⥋ؔ٦غ٦قحسחאְג 頾蚚鑐꿀ך穠卓ծⰋ⡤ךإٔ٦فحزכ㣐䌴ח何㊣կ䬿挿דך鸐⥋؝أزכ 搀鋔דֹ眔㔲 黝ⴖז؎ٝأةٝأة؎فծ*0ألحؙ鼅ץֿהדך䛷䜋ך倯ָכַח㣐ְֹ فٓ؎ك٦ز ؙٓؐس "QQ 倜%# %JSFDU$POOFDU
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 20 AWS Direct ConnectʹΑΔϋΠϒϦουڥ "QQ %# 倜%# %9ח״"84הفٓ؎ك٦زؙٓؐس䱸竲 "84⩎ך%#⯓遤׃גٖفٔ؛٦ءׇׁّٝ
%9穗歋ד ٖفٔ؛٦ءّٝ فٓ؎ك٦زؙٓؐس "QQ %# 倜%# 倜%#ך彊⪒ָ㸣✪䖓 فٓ؎ك٦زؙٓؐس♳ך"11倜%#פ %9穗歋 ד،ؙإأ 鸐䌢ךEVNQծSFTUPSF״稆傍ְ獳鏣ָ〳腉 فٓ؎ك٦ز ؙٓؐس فٓ؎ك٦ز ؙٓؐس
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 21 σʔλϕʔε͚ͩҠઃͨ͠ޙͷߏ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 22 Direct Connectར༻ʹΑΔԸܙ • ٻΊΒΕΔύϑΥʔϚϯεతʹɺઐ༻ճઢͰͳ͍ͱڌؒΛލ͍ͩ ߏݫ͔ͬͨ͠ • Direct Connect͕ͳ͔ͬͨΒΞϓϦͱDB྆ํΛಉ࣌ʹҠઃ͢Δ͜ͱʹ
ͳͬͨͣ • αʔϏεͷ࠷େ͖ͳϘτϧωοΫͱͳ͍ͬͯͨDBΛૣظʹ վળͰ͖ͨͷྑ͔ͬͨ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 23 EC2ͷҠઃ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 24 ϓϥΠϕʔτΫϥυ্ͷapiΛAWSҠઃ͢Δ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ "84♳חBQJ؟٦غ٦圓眠׃ծفٓ؎ك٦سؙٓؐسפך،ؙإأ搀ֻׅ %9穗歋 ד،ؙإأ
BQJ؟٦غ٦ LB ֿח،ؙإأׅ״ֲח
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 25 ECSͷલʹEC2ҠߦΛڬΜͩཧ༝ • ༏ઌࣄ߲ύϑΥʔϚϯε্ͱΦʔτεέʔϦϯάରԠ • ·ͣٸͳεύΠΫʹ͑ΒΕΔ͜ͱ͕࠷༏ઌ • ίϯςφԽͰಘΒΕΔӡ༻ίετܰݮɺ࣍ͷϑΣʔζͰେৎ •
EC2ͷߏมߋͳΒૉૣ࣮͘ߦͰ͖ͦ͏ • طଘͷϓϩϏδϣχϯάࢿ࢈(ansible)͕׆༻Ͱ͖Δ • ϗετ໊ͱ͍ͬͨڥґଘͷઃఆͷमਖ਼͘Β͍Ͱྃͦ͠͏ • มߋ͞ΕΔཁૉ͕গͳ͍ͨΊɺݕূ߲͕গͳͯ͘ࡁΉ • ίϯςφରԠ͢ΔͱͳΔͱผ్ݕূɾमਖ਼߲͕ൃੜͦ͠͏ গͳ͍มߋͰେ͖ͳϝϦοτΛड͚ΒΕΔ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 26 ϓϥΠϕʔτΫϥυ্ͷapiΛAWSҠઃ͢Δ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ "84♳חBQJ؟٦غ٦圓眠׃ծفٓ؎ك٦سؙٓؐسפך،ؙإأ搀ֻׅ %9穗歋 ד،ؙإأ
BQJ؟٦غ٦ LB ֿח،ؙإأׅ״ֲח
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 27 Route53 Traffic flowʹ͍ͭͯ 3PVUF5SBDPX 醱꧟זٕ٦ذ؍ؚٝهٔء٦ַװֻׅؽآُ،ٓ؎ؤծ鏣㹀דֹ
鏣㹀דֹٕ٦ٕכ圫ղ ؿؑ؎ٕؔ٦غ٦ծٖ؎ذٝء٦ծ⡘縧䞔㜠ծ⸇ꅾծFUD ➙㔐כչ⸇ꅾٕ٦ٕպ⢪欽
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 28 Route53 Traffic flowΛͬͨΞϓϦͷҠઃ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ ⴱ劍ך鸐⥋穗騟
فٓ؎ك٦زؙٓؐسך-#ָ湫䱸せ鍑寸ׁגְ %9穗歋 ד،ؙإأ BQJ؟٦غ٦ 3PVUF 5SBDPX LB
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 29 Route53 Traffic flowΛͬͨΞϓϦͷҠઃ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ 5SBDPX穗歋׃גفٓ؎ك٦زؙٓؐسפٕ٦ذ؍ؚٝ
"84橆㞮פךٕ٦ذ؍ؚٕٝ٦ٕ鏣㹀׃גֶֻ ⸇ꅾٕ٦ٕח׃גֶֽלծٕ٦ذ؍ׁؚٝזְ %9穗歋 ד،ؙإأ BQJ؟٦غ٦ 3PVUF 5SBDPX LB
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 30 Route53 Traffic flowΛͬͨΞϓϦͷҠઃ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ 㼰׃׆א"84⩎ך⸇ꅾٕ٦ٕ㟓װ׃גְֻ
剑ⴱכדؒٓ٦涪欰剣搀ך圫㶨鋅 鹈ְַֻֽגծⰋגךزٓؿ؍حؙ"84פ %9穗歋 ד،ؙإأ BQJ؟٦غ٦ 3PVUF 5SBDPX LB
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 31 Traffic flowͷϝϦοτ - τϥϑΟοΫௐͷ؆୯͞ - ༧ظͤ͵τϥϒϧൃੜ࣌ʹ͙͢ΓͤΔͱ͍͏҆৺ײ 䖚ղח崧׃גְֽךדծأ؛٦ؚٔٝך锃侭瘝׃װְׅ
ฏۉͰ2.5ഒ͍ʂ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 33 ECSͷҠઃ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 34 ECSͷߏ ةحفٕך&$4圓䧭 &$דؙٓأة麊欽 BQJծ盖椚歗ծXFC晛؝ٝذش⻉
'BSHBUF⢪זַ椚歋 ث٦يװ⠓爡ⰻד㣐鋉垷زٓؿ؍حؙ䪔ֲ'BSHBUF圓䧭ך濼鋅ָזַ 植㖈כ⠓爡ⰻדך㹋籐֮ծ؝أزך⦼♴־֮ג'BSHBUFפך鯹ׇ䳔ִ嗚鎢 ؝ٝذش⻉ךع٦سٕ ⟃ַ؝٦سٔؿ؋ؙةדזץֻGBDUPS חז״ֲח 何⥜׃גֹךד؝٦س㢌刿כ㼰זֻ幥 5IF5XFMWFGBDUPS"QQխխIUUQTGBDUPSOFUKB
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 35 EC2͔ΒECSͷҠઃ %# BQJ؟٦غ٦ 3PVUF 5SBDPX &$獳鏣הずֻׄ5SBDPXⵃ欽
-#ず㡦ך䮶ⴓֽח㼎䘔 ؚٗ鯄鷏חג鹼䒀涪欰կⴖ䨱׃㹋倵׃ ؙٔؒأزꆀָ㼰זַ ּׅחⴖ䨱ׇךד㣐׃㉏겗חזזַ 5SBDPX BQJ؟٦غ٦PO&$4
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 36 Ҡઃલ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 37 શͯͷҠઃϑΣʔζྃޙ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 38 ECSͷΓ͑Ͱײͨ͡ϝϦοτ ؝ٝذش⻉ח״ًٔحز ぐ橆㞮דずׄ؎ً٦آ⢪ְ㔐ֿׅהדծ⥋걾䚍ָ䬐⥂דֹ ؎ىُ٦ةـٕזךדծ涪鎉铂זוךغ٦آّٝ،حفָ⟃״孡鯪ח
ؔ٦زأ؛٦ָؚٔٝ知⽃ &$ה嫰ץծ،فٔך剑倜晛ךرفٗ؎וֲַׅ孡ח׃זֻג葺ְ ٗ٦ٕغحؙⳢ椚ָ㺁僒ח ⟃ךةأؙ㹀纏ⱄ黝欽ׅלծ⹛⡲׃גְ朐䡾חٗ٦ٕغحؙדֹ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 39 ࠓޙͷల و؎ؙٗ؟٦ؽأ⻉ ✲噟䧭ꞿ⸇鸞ׇׁծ״أ؛٦ٓـٕז穈籼٥ءأذي湡䭷ׅ &$4♳דך؟٦ؽأ嗚⳿זוծ♴㖑כ䲧גְ
وحثؚٝ،ٕ؞ٔؤيװ♶姻ِ٦ؠך嗚濼ך䓼⻉ ر٦ةⴓ匿٥"*٥堣唒㷕统זוזו "NB[PO1FSTPOBMJ[Fծ3FLPHOJUJPOծ/FQUVOFזוזו ءأذي獳鏣ח״ծ"84ח֮ꟼ鸬؟٦ؽأה鸬䵿ָ׃װֻׅזגְ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 40 ·ͱΊ ءأذي㢌⻉ך䗳銲䚍 㢌⻉ךأؾ٦سָ鸞ְ⚅ך⚥חさׇגծءأذي㢌⻉ׅ䗳銲ָ֮ չ恷鹌䚍պהְֲ罋ִ倯כ㢌⻉ךع٦سٕ♴־
זץֻ♧㔐ך㢌刿㼭ֻׁׅ "84חכ؟ه٦زׅ堣腉ָֻׁ֮