Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
技術的負債で信頼性が限界だったWordPress運用をShifterで完全復活させた話
Search
adachi.ryo
August 07, 2025
Programming
1
3.9k
技術的負債で信頼性が限界だったWordPress運用をShifterで完全復活させた話
https://yuru-sre.connpass.com/event/360950/
ゆるSRE勉強会 #12 SRE乗り越え体験まつり 〜聞いてくれ俺の武勇伝〜のスライドです
adachi.ryo
August 07, 2025
Tweet
Share
More Decks by adachi.ryo
See All by adachi.ryo
Findy Team+のSOC2取得までの道のり
rvirus0817
0
1k
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
1.6k
Amazon Security Lakeを活用したセキュリティログの集約とAIによる可視化の最前線
rvirus0817
0
170
TechBull Membersの開発進捗どうですか!?
rvirus0817
0
1.6k
クラウド脆弱性の傾向とShisho Cloudの活用
rvirus0817
0
230
TechBullエンジニアコミュニティの取り組みについて
rvirus0817
0
1.1k
横断SREの立ち上げと、AWSセキュリティへの取り組みの軌跡
rvirus0817
3
13k
ゼロから創る横断SREチーム ~挑戦と進化~
rvirus0817
3
6.4k
入社1ヶ月でここまでやった!Findy Toolsインフラ支援の最適化
rvirus0817
11
14k
Other Decks in Programming
See All in Programming
ゼロダウンタイムでミドルウェアの バージョンアップを実現した手法と課題
wind111
0
110
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
380
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
550
予防に勝る防御なし(2025年版) - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHP Conference Fukuoka 2025
twada
PRO
37
12k
FlutterKaigi 2025 システム裏側
yumnumm
0
1.1k
2025 컴포즈 마법사
jisungbin
0
120
Atomics APIを知る / Understanding Atomics API
ssssota
1
150
「10分以内に機能を消せる状態」 の実現のためにやっていること
togishima
1
360
CSC509 Lecture 10
javiergs
PRO
0
170
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
12
5.9k
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
240
Kotlinで実装するCPU/GPU 「協調的」パフォーマンス管理
matuyuhi
0
410
Featured
See All Featured
Practical Orchestrator
shlominoach
190
11k
Typedesign – Prime Four
hannesfritz
42
2.9k
How STYLIGHT went responsive
nonsquared
100
5.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Music & Morning Musume
bryan
46
6.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
A better future with KSS
kneath
239
18k
Automating Front-end Workflow
addyosmani
1371
200k
Docker and Python
trallard
46
3.6k
Transcript
ٕज़తෛ࠴Ͱ৴པੑ͕ݶքͩͬͨ 8PSE1SFTTӡ༻Λ4IJGUFSͰશ෮׆ͤͨ͞ ΏΔ43&ษڧձ43&Γӽ͑ମݧ·ͭΓʙฉ͍ͯ͘ΕԶͷ༐ʙ ҆ୡྋ !BEBDIJO
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
4 ࣗݾհ ҆ୡྋ !BEBDIJO ɾϑΝΠϯσΟ ג $50ࣨϓϥοτϑΥʔϜ։ൃνʔϜ4FOJPS43& ɾ1PSUGPMJPBEBDIJONF#MPHCMPHBEBDIJONFXJLJBEBDIJONF
ɾ5FDI#VMM δϡχΞΤϯδχΞίϛϡχςΟ 'PVOEFS ɹɾ43&ΤϯδχΞͷϝϯλϦϯάྦྷܭ໊ˢ ɹɾ4MBDLࢀՃऀ໊Ҏ্ˢ ɹɾίϛϡχςΟϚωʔδϟʔ-5ΠϕϯτӡӦ.FNCFST։ൃ ɾ5&$)803-%Ͱ43&ؔ࿈ͷಈըΛൃ৴த
5
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
'JOEZͷ8PSE1SFTTࣄ 7 $PSQPSBUF 'JOEZCMPH 'JOEZ&OUFSQSJTF 'JOEZ'SFFMBODF &OUFSQSJTF
࣌ͷঢ়گ • "NB[PO-JHIUTBJM্ͷ୯ҰαʔόʔͰ ෳαΠτΛӡ༻ • ը૾ϑΝΠϧɾσʔλϕʔεΛͯ͢ ಉҰΠϯελϯε্Ͱཧ • ίʔϙϨʔταΠτҎ֎໌֬ͳӡ༻
୲ऀෆࡏɺϝϯςφϯεঢ়گ͕ෆ໌ྎ • αʔόʔͷϒϥοΫϘοΫεԽ • ɺ৴པੑʹݶքΛײ͍ͯͨ͡ 8
ίʔϙϨʔταΠτӡ༻՝ • ใγεςϜνʔϜ͕ຖिͷΑ͏ʹ ηΩϡϦςΟΞοϓσʔτΛରԠ • ςʔϚͷσϓϩΠશखಈɺࣗಈԽ ͞Ε͍ͯͳ͍ • ӡ༻ෛ୲͕େ͖͍ঢ়ଶ͕ܧଓ •
$.Δͱͷ͜ͱͰΠϯϑϥڧԽ ߟྀ͢Δඞཁ͕͋ͬͨ • ଐਓԽ͍ͯͨ͠8PSE1SFTTڥΛ ूɾ౷੍͢ΔऔΓΈΛ։࢝ 9
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ • 8PSEGFODFʹΑΔηΩϡϦςΟϨϙʔτ • ੬ऑੑͷ݅૿Ճʢલൺʴʣ • ओͳݪҼϓϥάΠϯɾςʔϚ • ࠷ଟ͍੬ऑੑͷछྨ944
ΫϩεαΠτεΫϦϓςΟϯά • ೝূෆཁͰ߈ܸͰ͖Δ੬ऑੑ͕ଟ͍ ׂ • ڞ௨ϥΠϒϥϦʹґଘͨ͠αϓϥΠνΣʔϯ੬ऑੑਂࠁ • ์ஔ͞ΕͨϓϥάΠϯखಈӡ༻͕ϦεΫͷԹচʹ 11 ࢀߟIUUQTXXXXPSEGFODFDPNCMPHBOOVBMXPSEQSFTTTFDVSJUZSFQPSUCZXPSEGFODF
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
4IJGUFSʹҠߦ͢Δഎܠ • ࣌&$4'BSHBUFͰߟ͍͕͑ͯͨɺ όʔδϣϯΞοϓσϓϩΠͳͲͷӡ༻͕͔͔Δ ͨΊɺ43&ͷෛ୲ΛԼ͔͛ͨͬͨ • 43&νʔϜҎ֎Ͱӡ༻Ͱ͖ΔΑ͏ʹ͔ͨͬͨ͠ • σδλϧΩϡʔϒ͕ࣾఏڙ͍ͯ͠Δ8PSE1SFTTΛ ੩తʹมɾϗεςΟϯάͰ͖ΔϚωʔδυαʔϏε
• ίετൺֱతʹ҆ՁͰಋೖ͍͢͠ ʙ݄ ʙؒ ׂҾ 13
4IJGUFSͷϝϦοτ • 1)1࣮ߦڥΛ࣋ͨͳ͍ͨΊɺ8PSE1SFTT ຊମϓϥάΠϯͷ੬ऑੑϦεΫ͕ܹݮ • Πϯϑϥ8PSE1SFTTͷόʔδϣϯΞοϓ ཧ͕ෆཁͰɺࣗಈԽͯ͘͠ΕΔ • ੩తϑΝΠϧΛ$%/ܦ༝Ͱߴ৴Ͱ͖Δ ͨΊɺϢʔβʔମݧͷ্
• ࣗಈόοΫΞοϓɾ؆୯ϩʔϧόοΫ ཧը໘͔ΒҙͷλΠϛϯάͰ෮ݩՄೳ 14
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
։ൃڥͷߏங • ίʔϙϨʔταΠτҎ֎ͷ։ൃڥ͕ະඋ • %PDLFSΛར༻ͯ͠θϩ͔Βߏங͠͠ɺ ࠶ݱੑͷ͋ΔڥΛ࣮ݱ • ϦϙδτϦߏ • 8PSE1SFTTຊମXPSEQSFTTDPSF
ϦϙδτϦͰҰݩཧ • ֤αʔϏεͷςʔϚݸผϦϙδτϦͰཧ • ୯ҰϦϙδτϦूආ͚ɺ༰ྔංେԽΛճආ 16
։ൃڥͷߏங DPNQPTFZNM • 4IJGUFS͕1)1ରԠͷͨΊɺಉҰόʔδϣϯͰߏ • /HJOYίϯςφ • "QQίϯςφ • .Z42-ίϯςφ
• ґଘύοέʔδͷόʔδϣϯࠩҟ͕͋Δͱɺ ੩తԽޙʹఆ֎ͷෆ۩߹͕ൃੜ͢ΔϦεΫ͕͋Δ • 4IJGUFSʹ%PDLFS։ൃڥ͋Δ͕ɺ ಠࣗա͗ͯϝϯςφϯεੑ͕ѱ͔ͬͨ • IUUQTHJUIVCDPNEJHJUBMDVCFTIJGUFSTUBUJDMPDBM 17
։ൃڥͷߏங +VTUGJMFԽ • ։ൃڥͷηοτΞοϓΛ+VTUGJMFͰࣗಈԽ • IPTUTొ • NLDFSUʹΑΔࣗݾॺ໊44-ূ໌ॻͷൃߦ • 4͔Βͷ%#μϯϓऔಘ
• ϦϙδτϦͷDMPOF • XQDPOGJHQIQͷίϐʔ • %PDLFS$PNQPTFͷىಈɾఀࢭ • %#ͷϦετΞ • KVTUBMMίϚϯυͰૉૣ͘։ൃڥΛߏஙՄೳʹ • Ҏલखॱ͕ෳࡶͰ͕͔͔࣌ؒͬͨߏங࡞ۀΛ؆ུԽ • ࠓޙ։ൃڥࣗମͷόʔδϣϯΞοϓΛ(JU)VC"DUJPOTͰࣗಈԽ ༧ఆ 18
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
4IJGUFSҠߦͱτϥϒϧγϡʔςΟϯά • Ҡߦํ๏"MMJO0OF81.JHSBUJPOϓϥάΠϯ • ެࣜυΩϡϝϯτͰਪ • 8PSE1SFTTαΠτΛؙ͝ͱ؆୯ʹΤΫεϙʔτɺ ΠϯϙʔτՄೳ • ࣮ࡍͷҠߦ࡞ۀεϜʔζʹ͕ྃͨ͠ɾɾɾ
• ͍͔ͭ͘ఆ֎ͷෆ۩߹͕ൃੜ • ࢀߟ • IUUQTKBHFUTIJGUFSJPTIJGUFSTVQQPSU EPDVNFOUTXQNJHSBUJPONJHSBUJOHUP TIJGUFS 20
ಠࣗςʔϚͷϖʔδωʔγϣϯ͕ਖ਼͘͠ಈ࡞͠ͳ͍ • 4IJGUFS͕੩తαΠτΛੜ͢Δࡍɺ 8PSE1SFTT3&45"1*͔Β63-Ұཡ +40/ Λऔಘ • χϡʔεϖʔδͷϖʔδωʔγϣϯ͕σϑΥϧτઃఆ ͷ··ͩͱݕग़͞Εͣର֎ʹͳΔ •
ରԠࡦ • 4IJGUFS͕ఏڙ͢Δ 4IJGUFS63-4"QQFOE63-UP"MMΛར༻ • ϖʔδωʔγϣϯ63-Λ໌ࣔతʹ੩తԽରՃ 21
χϡʔεҰཡͷը૾͕දࣔ͞Εͳ͍ • ॴʑɺը૾͕දࣔ͞Εͳ͍ࣄ͕ൃੜ • Α͘ݟΔͱຊޠϑΝΠϧ໊ͷը૾͕දࣔ͞Ε͍ͯͳ͍ • "MMJO0OF81.JHSBUJPO • ຊޠϑΝΠϧ໊ͷը૾͚ࣦͩഊ͢ΔόάΛ֬ೝ •
ରԠ • ϑΝΠϧ໊ΛखಈͰϦωʔϜ͠ɺ࠶ΞοϓϩʔυͰ ղܾ 22
αϒσΟϨΫτϦͰγΣΞϘλϯ͕4IJGUFSͷԾυϝΠϯʹͳͬͯ͠·͏ • CMPHͳͲαϒσΟϨΫτϦͰެ։͍ͨ͠ • طʹ$MPVE'SPOUͰΧελϜυϝΠϯ͕ઃఆ͞Ε͍ͯΔ߹ɺ4IJGUFSଆͷ$%/ʹಉ͡ ΧελϜυϝΠϯΛઃఆͰ͖ͳ͍ • ରԠํ๏ • TIJGUFSDMJͷOPTIJGUFSDEOΦϓγϣϯΛ༻͠ɺ4IJGUFSͷ$%/৴ΛແޮԽ
• ࣗલͷ$MPVE'SPOUΛܦ༝ͯ͠αϒσΟϨΫτϦԼʹެ։ • $MPVE'SPOUͷΦϦδϯυϝΠϯʹ4IJGUFSఏڙͷ$MPVE'SPOU63-Λઃఆ • ΩϟογϡϙϦγʔΛແޮԽ͠ɺ4IJGUFSੜͷ੩తαΠτΛͦͷ··৴ • ޮՌ • ΧελϜυϝΠϯԼͰαϒσΟϨΫτϦެ։͕Մೳʹ • γΣΞϘλϯ0(1ͷϦϯΫઌ͔Β4IJGUFSͷԾυϝΠϯ͕ͳ͘ͳͬͨ 23
αϒσΟϨΫτϦͰγΣΞϘλϯ͕4IJGUFSͷԾυϝΠϯʹͳͬͯ͠·͏ 24 IUUQTXJLJBEBDIJONFBSDIJWFT
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
ςʔϚσϓϩΠ • 4IJGUFS(JUIVC1MVHJO5IFNF*OTUBMMFE • ཧํ๏ • ॳෳςʔϚΛϞϊϨϙͰཧ༧ఆͩͬ ͕ͨɺ • 4IJGUFSͷ্༷ɺςʔϚʹϓϩδΣΫτ
୯ҰϦϙδτϦ ʹมߋ • ࣗಈԽରԠ • (JU)VC"DUJPOTΛ׆༻͠ɺϦϦʔεॲཧΛ ࣗಈԽ • खಈ࡞ۀΛݮΒ͠ɺӡ༻ޮΛվળ • IUUQTXXXEJHJUBMDVCFKQTIJGUFS 26 ɾςʔϚΛ git tagͰόʔδϣϯ͚ ɾgit push ͰλάΛөͱstyle.cssͷόʔδϣϯΛॻ͖͑ ɾςʔϚҰࣜΛ .zip ʹѹॖ͠ɺGitHub Releases ʹΞοϓϩʔυ ɾShifter͕֘ϦϦʔεͷ.zipΛऔಘ͠ɺςʔϚΛ࠷৽Խ
ςʔϚσϓϩΠ XPSLGMPXT 27
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
ݱࡏͷӡ༻ମ੍ • 4IJGUFSΞΧϯτཧ • ใγεςϜνʔϜ͕୲ • ςʔϚͷमਖ਼ɾٕज़ରԠ • ΤϯδχΞʗ43&ϝϯόʔ͕୲ •
هࣄެ։ɾίϯςϯπߋ৽ • ใ)3νʔϜɺϚʔέςΟϯάνʔϜ͕୲ • ֤νʔϜͷׂΛ໌֬ʹ୲͠ɺӡ༻ϑϩʔΛཧ 29
ݱࡏͷӡ༻ମ੍ సૹྔͷ੍ݶʹ͍ͭͯ • 4IJGUFSϓϥϯ͝ͱͷసૹྔͷ੍ݶ͕͋Δ • 5JFS݄ؒ(#·Ͱ • 5JFS݄ؒ(#·Ͱ • 5JFS݄ؒ5#·Ͱ
• (#खલʹͳΔ͜ͱ͕ଟ͔ͬͨ • ϝσΟΞ$%/Λ༗ޮʹ͢Δ͜ͱͰసૹྔ͕େ෯ʹΧοτ • ٯʹϝσΟΞ$%/Λແޮʹ͢Δͱը૾͕શͯআ͞ΕΔ 30
ݱࡏͷӡ༻ମ੍ సૹྔͷ੍ݶʹ͍ͭͯ 31
"*ͰίʔϙϨʔταΠτͷमਖ਼ΛࣗಈԽ • ͔͠͠ɺࢥͬͨҎ্ʹ43&ϝϯόʔͷ͍߹Θ͕ͤଟ͍ • %FWJOΛར༻ͯ͠จݴमਖ਼ͳͲΛ!LPV[ZVO+B͕࣮ • ؆୯ͳमਖ਼"*ͰࣗಈԽ͢Δ͜ͱ͕Ͱ͖ͨ • 43&νʔϜґཔ༰ͷ֬ೝʹ͔͔Δίϛϡχέʔγϣϯ ίετ͕ܰݮ
• ϨϏϡʔͷΈͰରԠͰ͖ΔͷͰΛݮͰ͖ͨ 32
͋͐͡Μͩ • ࣗݾհ • 'JOEZͷ8PSE1SFTTࣄ • 8PSE1SFTTͷ੬ऑੑͱʹ͍ͭͯ •
4IJGUFSʹҠߦ͢Δഎܠ • ։ൃڥͷߏங • 4IJGUFSҠߦޙͷτϥϒϧγϡʔςΟϯά • ςʔϚσϓϩΠ • ݱࡏͷӡ༻ମ੍ͱ"*Խ • ·ͱΊ
·ͱΊ • ηΩϡϦςΟ্ • ੩తϑΝΠϧԽʹΑΓ1)1੬ऑੑϦεΫΛഉআ • )5.-$44ͷΈߏͱͳΓɺηΩϡϦςΟ্͕ • ϓϥάΠϯͷόʔδϣϯΞοϓࣗಈԽ •
ύϑΥʔϚϯεվળ • $%/ඪ४ࡌͰߴ৴Λ࣮ݱ 34
·ͱΊ • ӡ༻໘ͷվળ • ඇΤϯδχΞϝϯόʔӡ༻Մೳͳڥʹ • όοΫΞοϓͷ෮ݩ͕؆୯Ͱɺཧෛ୲Λܰݮ • ΞΧϯτཧ •
Ұͭͷ4IJGUFSΞΧϯτͰෳαΠτΛҰݩཧ • αΠτ͝ͱʹϢʔβʔΛൃߦ͢Δඞཁ͕ͳ͍ • ࠪͰͷϢʔβʔ୨Է͕͠༰қʹ 35
·ͱΊ • 4IJGUFSΫη͋Δ͕ɺ8PSE1SFTTͷ৴པੑ্ͱҰݩཧΛ࣮ݱ • Ҡߦޙͷಈ࡞֬ೝʹख͕͔͔ؒͬͨ • ࢼߦࡨޡ͕ͨ͠ɺٕज़αϙʔτϨε͕ૣͯ͘ඇৗʹॿ͔ͬͨ • σϝϦοτ •
هࣄߋ৽ͷͨͼʹ4IJGUFSଆͰ੩తԽσϓϩΠ͕ඞཁ • ө·Ͱʹ͕͔͔࣌ؒͬͯ͠·͏ 36
·ͱΊ 37 ಋೖࣄྫͰհ͍͖ͯͨͩ͠·ͨ͠ IUUQTKBHFUTIJGUFSJPTIPXDBTFBSDIJWF
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ