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
コンテナ入門
Search
Shu Adachi
May 26, 2023
Technology
0
260
コンテナ入門
Shu Adachi
May 26, 2023
Tweet
Share
More Decks by Shu Adachi
See All by Shu Adachi
マイクロサービス始めてみよう!
shuadachi
1
520
2023/3/24 IBM Cloud + SPSS Modeler Flow でデータ分析をやってみよう!
shuadachi
0
110
IBM Cloud + SPSS Modeler Flow でデータ分析をやってみよう!
shuadachi
0
350
Other Decks in Technology
See All in Technology
テキストからの実世界知能の実現に向けて
sumoai
0
120
2025新卒研修・HTML/CSS #弁護士ドットコム
bengo4com
3
4.6k
From Live Coding to Vibe Coding with Firebase Studio
firebasethailand
1
400
AWS re:Inforce 2025 re:Cap Update Pickup & AWS Control Tower の運用における考慮ポイント
htan
1
140
AI によるドキュメント処理を加速するためのOCR 結果の永続化と再利用戦略
tomoaki25
0
310
猫でもわかるQ_CLI(CDK開発編)+ちょっとだけKiro
kentapapa
0
190
Microsoft Clarityでインサイトを見つけよう
nakasho
0
110
「AI駆動開発」のボトルネック『言語化』を効率化するには
taniiicom
1
240
私とAWSとの関わりの歩み~意志あるところに道は開けるかも?~
nagisa53
1
150
帳票構造化タスクにおけるLLMファインチューニングの性能評価
yosukeyoshida
1
220
金融サービスにおける高速な価値提供とAIの役割 #BetAIDay
layerx
PRO
1
560
人に寄り添うAIエージェントとアーキテクチャ #BetAIDay
layerx
PRO
8
1.6k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Rails Girls Zürich Keynote
gr2m
95
14k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Bash Introduction
62gerente
613
210k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Mobile First: as difficult as doing things right
swwweet
223
9.8k
How to train your dragon (web standard)
notwaldorf
96
6.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
The Pragmatic Product Professional
lauravandoore
36
6.8k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Balancing Empowerment & Direction
lara
1
520
Automating Front-end Workflow
addyosmani
1370
200k
Transcript
࣌։࢝Ͱ͢ɻ গʑ͓͍ͪͩ͘͞ɻ © 2023 IBM Corporation 1
© 2023 IBM Corporation 2
3 "HFOEB Φʔϓχϯά ࠲ֶ σϞ 2"Ϋϩʔδϯά
© 2023 IBM Corporation
ࣗݾհ ຊ*#.ΧελϚʔɾαΫηεɾϚωʔδϟʔ ཱਹ 4IV"EBDIJ -JOLFE*O 5XJUUFS த༎ଠ :VUB/POBLB -JOLFE*O
5XJUUFS
ຊͷతͱΰʔϧ n త – ࠲ֶɾσϞΛ௨ͯ͠ɺίϯςφͱԿ͔ɺಛརΛ͓͑͢Δ n ΰʔϧ – ίϯςφʹ͍ͭͯ
zΒͳ͍z͔Β zͳΜͱͳͬͯ͘Δz – σϞγφϦΦΛຊηογϣϯऴྃޙʹࢼͯ͠Β͏ n ରऀ – ίϯςφٕज़ʹڵຯͷ͋Δॳֶऀ *#.$PSQPSBUJPO
4MJEP *#.$PSQPSBUJPO IUUQTBQQTMJEPFWFOUK5L2XIP'5EXBTOC"1 &WFOU$PEFEPKPQN n 23ίʔυΛಡΈऔΔ͔ɺ8FCFYΑΓ͝ճ͍ͩ͘͞
࠲ֶΞδΣϯμ *#.$PSQPSBUJPO ʮίϯςφʯʹೖΔલʹ • $MPVE/BUJWFʹ͍ͭͯ ίϯςφٕज़ͱ •
ίϯςφ֓ཁ • ίϯςφͷΈ • ίϯςφΤϯδϯ • ίϯςφͷϝϦοτ • ίϯςφԽͷҙ σϞ ·ͱΊ
࠲ֶΞδΣϯμ *#.$PSQPSBUJPO ʮίϯςφʯʹೖΔલʹ • $MPVE/BUJWFʹ͍ͭͯ ίϯςφٕज़ͱ •
ίϯςφ֓ཁ • ίϯςφͷΈ • ίϯςφΤϯδϯ • ίϯςφͷϝϦοτ • ίϯςφԽͷҙ σϞ ·ͱΊ
$MPVE/BUJWFͷఆٛ $/$' $MPVE/BUJWF$PNQVUJOH'PVOEBUJPO ͷܝ͛Δࢥͷݩʹɺͷ*5ؔ࿈ஂମ͕ू݁ ͯ͠׆ಈ͍ͯ͠·͢ɻ ͭ·Γɺ$/$'ͷఆٛۀքͱͯ͠ެࣜͳݟղͱΈͳ͢͜ͱ͕Ͱ͖·͢ɻ ҎԼ(JU)VCʹͯެ։͞Ε͍ͯΔ$MPVE/BUJWCFͷఆٛͰ͢ɻ IUUQTHJUIVCDPNDODGUPDCMPCNBJO%&'*/*5*0/NE ఆٛ͋Δ͚ͲɺΑ͘Θ͔Βͳ͍ʜ
*#.$PSQPSBUJPO
$MPVE/BUJWFͷత *#.$PSQPSBUJPO తͱͯ͠ʮΫϥυΛపఈతʹར༻ͯ͠Ϗδωε՝Λղܾ͠ɺސ٬ମ ݧΛ্ͤ͞Δʯ͜ͱͰ͢ɻ ߟ͑ํϓϩηεΛ͜Ε·Ͱͷʮσʔληϯλʔͱͯ͠ͷΫϥυʯ͔Β ʮϏδωε্ͷࠩผԽཁҼͱͯ͠ͷΫϥυʯʹҠߦ͍͖ͯ͠·͢ɻ ΫϥυωΠςΟϒʹΑͬͯࠩผԽΛਤΕΔཧ༝ʁ ࢢͷχʔζΛଊ͑ͨਝͳΞϓϦέʔγϣϯͷ։ൃɾຊ൪ϦϦʔεΛ ࣮ݱग़དྷΔ͔ΒͰ͢ɻ
࠲ֶΞδΣϯμ *#.$PSQPSBUJPO ʮίϯςφʯʹೖΔલʹ • $MPVE/BUJWFʹ͍ͭͯ ίϯςφٕज़ͱ •
ίϯςφ֓ཁ • ίϯςφͷΈ • ίϯςφΤϯδϯ • ίϯςφͷϝϦοτ • ίϯςφԽͷҙ σϞ ·ͱΊ
ۙͳੈքʹ͓͚Δίϯςφ ۙͳͱ͜ΖͰɺೖΕ༰ثΛࢦ͠େ͖͞ɾ༻్͞·͟·Ͱ͢ɻ ͳͯ͘ͳ͍Ͱ͕͢ɺ͋Εཧͯ͠ ݶΒΕͨεϖʔεΛ༗ޮ׆༻Ͱ͖ͨΓͱԿ͔ͱศརͰ͢ɻ Ҡಈ͢ΔࡍதΛͭͮͭҠಈ͢ΔͷͰͳ͘ ༰ثΛಈ͔͚ͩ͢ͳͷͰָͰ͢Ͷɻ *#.$PSQPSBUJPO ϓϥενοΫͷίϯςφΛ૾͢Δਓ ଟ͍ͷͰͳ͍Ͱ͠ΐ͏͔ʁ
ྲྀۀքʹ͓͚Δίϯςφ ߦ͖ઌ͝ͱʹίϯςφʹՙΛ·ͱΊɺίϯςφ୯ҐͰ ધྻंτϥοΫʹͦͷ··ੵΈࠐΈɺతʹӡͼ·͢ɻ ଟ͘ͷखॱͱϧʔϧͰӡ༻͞Ε͓ͯΓɺαΠζ༻్ͳͲΛࠃࡍతʹ ඪ४Խ͍ͯ͠·͢ɻ ͦΕʹΑΓɺେྔͷ՟ΛՄೳͳݶΓૣ͘ίετͰ؆୯ʹͦͯ͠ ҆શʹӡͿ͜ͱ͕࣮ݱͰ͖͍ͯ·͢ɻ ͜ͷΑ͏ʹྲྀۀքͰʮίϯςφʯʹΑΔྲֵ໋ྀ͕͓͖·ͨ͠ɻ ੈلͷ࠷େͷൃ໌ͱ͍ΘΕ͍ͯ·͢
*#.$PSQPSBUJPO
*5ʹ͓͚Δίϯςφ *#.$PSQPSBUJPO *5Ͱίϯςφͷ֓೦ҰॹͰ༰ثͰ͢ɻ ͦͷ༰ثʹೖΕΔͷɺΞϓϦέʔγϣϯͱΞϓϦέʔγϣϯΛಈ࡞ ͤ͞ΔͷʹඞཁͳϛυϧΣΞϥΠϒϥϦͳͲʹͳΓ·͢ɻ ྲྀͷίϯςφͱಉ༷ʹࠝแ͢ΔͨΊͷϧʔϧ͕ఆ·͍ͬͯ·͢ɻ ΞϓϦέʔγϣϯ ϛυϧΣΞ ϥΠϒϥϦ
࠲ֶΞδΣϯμ *#.$PSQPSBUJPO ʮίϯςφʯʹೖΔલʹ • $MPVE/BUJWFʹ͍ͭͯ ίϯςφٕज़ͱ •
ίϯςφ֓ཁ • ίϯςφͷΈ • ίϯςφΤϯδϯ • ίϯςφͷϝϦοτ • ίϯςφԽͷҙ σϞ ·ͱΊ
ίϯςφͷΈ શମ૾ *#.$PSQPSBUJPO ίϯςφΤϯδϯ
ίϯςφΤϯδϯ ίϯςφͷΈ ࠝแ *#.$PSQPSBUJPO खॱॻΛݩʹඞཁͳͷΛࠝแ͠·͢ɻ ͜ͷ࡞ۀΛʮϏϧυ #VJME ʯͱݺͼɺ खॱॻͷ͜ͱΛʮ%PDLFSGJMF$POUBJOFSGJMFʯͱݺͼ·͢ɻ
ίϯςφΤϯδϯ ίϯςφͷΈ λά *#.$PSQPSBUJPO ࠝแͨ͠ͷΛʮΠϝʔδ *NBHF ʯͱݺͼɺ อ͢ΔͨΊʹݿͷૹঢ়ΛషΓ͚·͢ɻ ͜ͷ࡞ۀΛʮλά͚
5BH ʯͱݺͼ·͢ɻ
ίϯςφΤϯδϯ ίϯςφͷΈ ൃૹ *#.$PSQPSBUJPO ૹঢ়ʹهࡌ͞Ε͍ͯΔݿʹҠಈ͠·͢ɻ ͜ͷ࡞ۀΛʮϓογϡ 1VTI ʯͱݺͼɺ ݿͷ͜ͱΛʮϨδετϦ
3FHJTUSZ ʯͱݺͼ·͢ɻ
ίϯςφΤϯδϯ ίϯςφͷΈ ࣮ߦ *#.$PSQPSBUJPO ݿ͔Βग़ݿͯ͠։ࠝͯ͠ར༻͠·͢ɻ ग़ݿ࡞ۀΛʮϓϧ 1VMM ʯͱݺͼɺ ։ࠝͯ͠ར༻͢Δ͜ͱΛʮϥϯ
3VO ʯͱݺͼ·͢ɻ
ίϯςφͷΈ ίϯςφΤϯδϯ *#.$PSQPSBUJPO ίϯςφΤϯδϯ Ϣʔβʔ͔ΒͷࢦࣔΛड͚औΓ֤छ࡞ۀΛ࣮ߦͯ͘͠Ε·͢ɻ ͜ͷ͜ͱΛʮίϯςφΤϯδϯʯͱݺͼ·͢ɻ
࠲ֶΞδΣϯμ *#.$PSQPSBUJPO ʮίϯςφʯʹೖΔલʹ • $MPVE/BUJWFͷఆٛͱత ίϯςφٕज़ͱ •
ίϯςφ֓ཁ • ίϯςφͷΈ • ίϯςφΤϯδϯ • ίϯςφͷϝϦοτ • ίϯςφԽͷҙ σϞ ·ͱΊ
ίϯςφΤϯδϯʹ͍ͭͯ͏গ͠ ίϯςφΤϯδϯʹ͍͔ͭ͘छྨ͕͋Γ·͕͢ɺ ͦͷதͰ༗໊ͳͷ͕%PDLFSࣾͷ։ൃ͢Δʮ%PDLFSʯͰ͢ɻ %PDLFSʹ%PDLFS%FTLUPQͱ͍͏(6*Ͱૢ࡞Ͱ͖Δ ศརͳΞϓϦέʔγϣϯఏڙ͞Ε͍ͯ·͢ɻ ͔͠͠ɺແঈͰ͍͑ͯͨσεΫτοϓΞϓϦ ݄͔ΒҰఆنҎ্ͷاۀͰͷར༻͕༗ྉԽ͞Ε·ͨ͠ɻ IUUQTXXXEPDLFSDPNCMPHVQEBUJOHQSPEVDUTVCTDSJQUJPOT *#.$PSQPSBUJPO
ίϯςφΤϯδϯʹ͍ͭͯ͏গ͠ ͦ͜Ͱࠓճհ͢Δͷͻͱͭͷସखஈͱͯ͠ͷʮ1PENBOʯͰ͢ɻ 1PENBO3FE)BU͕ࣾ։ൃ͠ɺݱࡏΦʔϓϯιʔεͱͯ͠ެ։͞Εͯ ͍·͢ɻ ͪΖΜσεΫτοϓΞϓϦ͋Γ·͢ʂ %PDLFSͱൺֱͨ͠1PENBOͷڧΈΛҰ෦հ • ΦʔϓϯιʔεͷͨΊɺແঈͰར༻Մೳ •
ίϯςφ࣮ߦʹSPPUݖݶ͕ඞཁͳ͍ͨΊɺηΩϡϦςΟཧੑΛ্Մೳ • %PDLFSͱͷޓੑ͕ߴ͍ͨΊɺ%PDLFSͰ͍ͬͯΔίϚϯυΛྲྀ༻Մೳ *#.$PSQPSBUJPO
࠲ֶΞδΣϯμ *#.$PSQPSBUJPO ʮίϯςφʯʹೖΔલʹ • $MPVE/BUJWFʹ͍ͭͯ ίϯςφٕज़ͱ •
ίϯςφ֓ཁ • ίϯςφͷΈ • ίϯςφΤϯδϯ • ίϯςφͷϝϦοτ • ίϯςφԽͷҙ σϞ ·ͱΊ
ίϯςφͷಛ ίϯςφҎԼͷಛΛ͍࣋ͬͯ·͢ɻ • ܰྔ • εέʔϥϒϧ • ։ൃޮͷ্ •
ϚΠΫϩαʔϏεͱͷੑ͕ߴ͍ • Πϛϡʔλϒϧͳӡ༻͕Մೳ • %FW0QTͷ࣮ݱ *#.$PSQPSBUJPO ࠓ͜͜Λਂ۷Γ͓ͯ͠͠͠·͢
ίϯςφܰྔ ίϯςφ04Λඞཁͱ͠ͳ͍ɺͱͯܰྔͰ͢ɻ Ծαʔόʔͱൺֱ͢Δͱίετޮʹ༏Ε͍ͯ·͢ɻ *#.$PSQPSBUJPO ԾԽαʔόʔ 04 ϛυϧΣΞ ΞϓϦ ϥΠϒϥϦ
ίϯςφ ϛυϧΣΞ ΞϓϦ ϥΠϒϥϦ
ίϯςφεέʔϥϒϧ ൟؓʹ߹ΘͤͯγεςϜߏΛॊೈʹมߋ͢Δ͜ͱ͕ՄೳͰ͢ɻ ·ͨɺίϯςφܰྔͳͷͰεέʔϧΞτʹ͔͔Δ࣌ؒαʔόίε τ͑Δ͜ͱՄೳͰ͢ɻ *#.$PSQPSBUJPO ϋʔυΣΞ ίϯςφΤϯδϯ ϗετ04 ϛυϧΣΞ
ΞϓϦ ϥΠϒϥϦ ϛυϧΣΞ ΞϓϦ ϥΠϒϥϦ ϋʔυΣΞ ϋΠύʔόΠβʔ ϗετ04 04 ϛυϧΣΞ ΞϓϦ ϥΠϒϥϦ 04 ϛυϧΣΞ ΞϓϦ ϥΠϒϥϦ ԾϚγϯͰಉ͡ ༷ͳ͜ͱͰ͖Δ͕ɺ ࣌ؒίετ͔͔ Δ
ίϯςφ։ൃޮ͕ߴ͍ • ϩʔΧϧڥͰಈ࡞ͯͨ͠ͷʹ ςετڥͰಈ͔ͳ͍ • ɺڥΛߏங͢Δͷ͕େม • ڥ͝ͱͷҠಈ͕େม *#.$PSQPSBUJPO
ಈ࡞ڥ ΞϓϦ ಈ࡞ڥ ΞϓϦ ಈ࡞ڥ ΞϓϦ ߏங࡞ۀ ߏங࡞ۀ ߏங࡞ۀ ϩʔΧϧڥ ςετڥ ຊ൪ڥ ಈ࡞ڥ ΞϓϦ ϩʔΧϧڥ ςετڥ ຊ൪ڥ ಈ࡞ڥ ΞϓϦ ಈ࡞ڥ ΞϓϦ ߏங࡞ۀ ߏங࡞ۀ ߏங࡞ۀ • ಈ࡞ʹඞཁͳͷ͕ύοέʔδԽ͞Ε ͍ͯΔ͔ΒͲͷڥͰಉ༷͡ʹಈ͘ • ಈ࡞ڥแ͞Ε͍ͯΔ͔Βߏங࡞ ۀ͕ෆཁ • ύοέʔδԽ͞Ε͍ͯΔ͔ΒҠಈָ
ίϯςφԽͷҙ *#.$PSQPSBUJPO ΞϓϦέʔγϣϯͷಛੑʹΑͬͯίϯςφԽͷʮ͖ʯʮෆ͖ʯ͕͋Γ·͢ɻ ίϯςφԽ͕Մೳ͔ʁϝϦοτΛڗडͰ͖Δ͔ʁ͜ΕΛݟۃΊΔඞཁ͕͋Γ·͢ɻ ϚΠΫϩαʔϏεԽ͕Մೳ͔ʁ – ػೳຖʹ͞ΕͨϚΠΫϩαʔϏε͕ίϯςφʹ͍͍ͯ·͢ɻ ׂ͕ՄೳͳΒܭըతʹίϯςφԽ͍͖ͯ͠·͠ΐ͏ɻ
ϦϦʔεසߴ͍͔ʁ – සൟͳߋ৽͕͋ΔͳΒίϯςφԽ͢ΔϝϦοτΛڗडͰ͖·͢ɻ γεςϜཁ݅Λຬ͍ͨͯ͠Δ͔ʁ – αʔυύʔςΟͷͷͰϥΠηϯεಈ࡞ཁ݅Ͱίϯςφಈ࡞͕ڐՄ͞Ε͍ͯ ͳ͔ͬͨΓอূ͞Εͳ͍έʔε͋Γ·͢ͷͰͦ͜ҙ͠·͠ΐ͏ɻ
࠲ֶΞδΣϯμ *#.$PSQPSBUJPO ʮίϯςφʯʹೖΔલʹ • $MPVE/BUJWFʹ͍ͭͯ ίϯςφٕज़ͱ •
ίϯςφ֓ཁ • ίϯςφͷΈ • ίϯςφΤϯδϯ • ίϯςφͷϝϦοτ • ίϯςφԽͷҙ σϞ ·ͱΊ
ίϯςφͷΈΛ1PENBO %FTLUPQͰσϞ *#.$PSQPSBUJPO ίϯςφΤϯδϯ 1PENBO #VJME 5BH 1VTI 1VMM
3VO
࠲ֶΞδΣϯμ *#.$PSQPSBUJPO ʮίϯςφʯʹೖΔલʹ • $MPVE/BUJWFʹ͍ͭͯ ίϯςφٕज़ͱ •
ίϯςφ֓ཁ • ίϯςφͷΈ • ίϯςφΤϯδϯ • ίϯςφͷϝϦοτ • ίϯςφԽͷҙ σϞ ·ͱΊ
ίϯςφԽͷσϝϦοτ *#.$PSQPSBUJPO ίϯςφԽͷσϝϦοτɺϚΠΫϩαʔϏεԽʹΑͬͯࡉׂ͔͘͞ΕΔ͕ނʹ ӡ༻͕ෳࡶԽ͍͢͜͠ͱͰ͢ɻ αʔόʔ ͕গͳ͚ΕͲͷαʔόʔͰɺ Ͳ͏͍ͬͨ༻్ͷίϯςφ͕ಈ࡞ ͍ͯ͠Δͷ͔Ѳ͠ͳ͕Βཧ ՄೳͰ͢ɻ
͔͠͠ɺ͕૿͑ΔͱͲͷαʔόʔ ʹͲ͏͍ͬͨ༻్ͷίϯςφ͕ಈ࡞ ͍ͯ͠Δͷ͔Ѳ͕ࠔʹͳΓ·͢ɻ αʔόʔ αʔόʔ αʔόʔ αʔόʔ αʔόʔ αʔόʔ αʔόʔ αʔόʔO
ίϯςφԽͷσϝϦοτ *#.$PSQPSBUJPO ίϯςφԽͷσϝϦοτɺϚΠΫϩαʔϏεԽʹΑͬͯࡉׂ͔͘͞ΕΔ͕ނʹ ӡ༻͕ෳࡶԽ͍͢͜͠ͱͰ͢ɻ αʔόʔ ͕গͳ͚ΕͲͷαʔόʔͰɺ Ͳ͏͍ͬͨ༻్ͷίϯςφ͕ಈ࡞ ͍ͯ͠Δͷ͔Ѳ͠ͳ͕Βཧ ՄೳͰ͢ɻ
͔͠͠ɺ͕૿͑ΔͱͲͷαʔόʔ ʹͲ͏͍ͬͨ༻్ͷίϯςφ͕ಈ࡞ ͍ͯ͠Δͷ͔Ѳ͕ࠔʹͳΓ·͢ɻ αʔόʔ αʔόʔ αʔόʔ αʔόʔ αʔόʔ αʔόʔ αʔόʔ αʔόʔO ίϯςφཧΦʔέετϨʔγϣϯπʔϧ ʮ0QFO4IJGUʯʹ͓ͤ͠·͢ɻ
·ͱΊ n $MPVE/BUJWFࢢͷมԽʹॊೈʹରԠ͢Δత͕͋Δ n ͦͷͨΊʹίϯςφٕज़ඞਢʹͳΔ n ίϯςφʹΞϓϦಈ࡞ʹඞཁͳ෦͕ೖ͍ͬͯΔ n ίϯςφʹऔΓѻ͍ํ
ϧʔϧ ͕ఆΊΒΕ͍ͯΔ n ίϯςφ͕૿͑ΔͱΦʔέετϨʔγϣϯπʔϧͷ׆༻͕ඞཁ *#.$PSQPSBUJPO
ॳΊͯͷ#MVF(SFFO%FQMPZNFOU։࠵ʂ *#.$PSQPSBUJPO IUUQTJCNEFWFMPQFSDPOOQBTTDPNFWFOU
ࢀߟ63- *#.$PSQPSBUJPO $/$'$MPVE/BUJWF%FGJOJUJPOW ϦϯΫ ΫϥυɾωΠςΟϒجૅࣝղઆ ϦϯΫ 1PENBO %FTLUPQͷެࣜΠϯτϩ ϦϯΫ
σϞͷखॱࢿྉ ϦϯΫ 1PENBO %FTLUPQͷΠϯετʔϧखॱ 8JOEPXT ϦϯΫ 1PENBO %FTLUPQͷΠϯετʔϧखॱ .BD ϦϯΫ
͝ࢀՃ͋Γ͕ͱ͏͍͟͝·ͨ͠ ͪΐͬͱฉ͖͍ͨʂͳͲ ͓ؾܰʹ4/4Ͱ࣭͍ͩ͘͝͞ ཱਹ 4IV"EBDIJ -JOLFE*O 5XJUUFS த༎ଠ :VUB/POBLB -JOLFE*O
5XJUUFS