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
なめらかなシステムの実現に向けて/coherently-fittable-system
Search
monochromegane
July 28, 2020
Technology
0
530
なめらかなシステムの実現に向けて/coherently-fittable-system
GMO Developers Day 2020
https://www.gmo.jp/developersday/
monochromegane
July 28, 2020
Tweet
Share
More Decks by monochromegane
See All by monochromegane
Go言語でターミナルフレンドリーなAIコマンド、afaを作った/fukuokago20_afa
monochromegane
2
140
多様かつ継続的に変化する環境に適応する情報システム/thesis-defense-presentation
monochromegane
1
530
Online Nonstationary and Nonlinear Bandits with Recursive Weighted Gaussian Process
monochromegane
0
280
AIを前提とした体験の実現に向けて/toward_ai_based_experiences
monochromegane
1
640
Go言語でMac GPUプログラミング
monochromegane
1
390
Contextual and Nonstationary Multi-armed Bandits Using the Linear Gaussian State Space Model for the Meta-Recommender System
monochromegane
1
830
迅速な学習機構を用いて逐次適応性を損なうことなく非線形性を扱う文脈付き多腕バンディット手法/extreme_neural_linear_bandits
monochromegane
0
1.9k
再帰化への認知的転回/the-turn-to-recursive-system
monochromegane
0
720
仮想的な探索を用いて文脈や時間の経過による番狂わせにも迅速に追従する多腕バンディット手法/wi2_lkf_bandits
monochromegane
0
660
Other Decks in Technology
See All in Technology
株式会社島津製作所_研究開発(集団協業と知的生産)の現場を支える、OSS知識基盤システムの導入
akahane92
1
200
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
28
7.4k
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
120
ドメイン名の終活について - JPAAWG 7th -
mikit
32
19k
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
380
TinyGoを使ったVSCode拡張機能実装
askua
2
210
Going down the RAT hole: Deep dive into the Vuln-derland of APT-class RAT Tools
nttcom
0
310
音声×Copilot オンコパの世界
kasada
1
120
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
340
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.1k
SREの組織類型に応じた リーダシップの考察
kenta_hi
PRO
1
640
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
110
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1366
200k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
A better future with KSS
kneath
238
17k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Writing Fast Ruby
sferik
627
61k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Making Projects Easy
brettharned
115
5.9k
Become a Pro
speakerdeck
PRO
25
5k
Building Your Own Lightsaber
phodgson
102
6.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
Building Applications with DynamoDB
mza
90
6.1k
Transcript
ࡾ༔հ / Pepabo R&D Institute, GMO Pepabo, Inc. 2020.07.28 GMO
Developers Day ͳΊΒ͔ͳγεςϜͷ ࣮ݱʹ͚ͯ
1SJODJQBMFOHJOFFS :VTVLF.*:",&!NPOPDISPNFHBOF 1FQBCP3%*OTUJUVUF (.01FQBCP *OD IUUQTCMPHNPOPDISPNFHBOFDPN
1. ͡Ίʹ 2. ͳΊΒ͔ͳγεςϜ 3. ͳΊΒ͔ͳγεςϜͷ࣮ݱʹ͚ͯ 4. ·ͱΊ 3 ࣍
1. ͡Ίʹ
5 ϖύϘݚڀॴ(ུশʮϖύݚʯ)ɺࣄۀΛࠩผԽ Ͱ͖Δٕज़Λ࡞Γग़ͨ͢ΊʹʮͳΊΒ͔ͳγες Ϝʯͱ͍͏ίϯηϓτͷԼͰݚڀ։ൃʹऔΓΉ ৫Ͱ͢ɻ ❝ ϖύϘݚڀॴʹ͍ͭͯ http://rand.pepabo.com/
6 ΞΧσϛοΫͳਫ४ʹ͓͚Δ৽نੑɾ༗ޮੑɾ৴ པੑΛٻ͢ΔݚڀΛߦ͏ͱͱʹɺݚڀ։ൃ͠ ٕͨज़Λ࣮ࡍͷγεςϜͱ࣮ͯ͠ɾఏڙ͢Δ͜ ͱΛ௨ͯ͠ɺࣄۀͷʹߩݙ͠·͢ɻ ❝ ϖύϘݚڀॴʹ͍ͭͯ http://rand.pepabo.com/
7 ϖύݚͱαʔϏεͷؔ ࣄۀΛࠩผԽ͢ΔͨΊʹɺݚڀॴͱαʔϏεͷ࿈ܞ͕ॏཁ ݚڀ ։ൃ ӡ༻ αʔϏεͷ՝ͷڞ༗ ݚڀʹΑΔ՝ղܾ ݚڀՌಋೖ࣌ͷ αʔϏεͱͷ࿈ܞ
ݚڀ։ൃ݁ՌΛଈ࣌αʔϏεʹಋೖ͢ΔΈͱɺಋೖޙͷϑΟʔυόοΫʹΑΔαΠΫϧͷߴ ԽʹΑͬͯɺݚڀ։ൃͷߴԽͱࣄۀͷࠩผԽʹͭͳ͛Δ ࣄۀ෦
2. ͳΊΒ͔ͳγεςϜ
9 ϖύϘݚڀॴ(ུশʮϖύݚʯ)ɺࣄۀΛࠩผԽ Ͱ͖Δٕज़Λ࡞Γग़ͨ͢ΊʹʮͳΊΒ͔ͳγες Ϝʯͱ͍͏ίϯηϓτͷԼͰݚڀ։ൃʹऔΓΉ ৫Ͱ͢ɻ ❝ ϖύϘݚڀॴʹ͍ͭͯ http://rand.pepabo.com/
• զʑ͕ৗͰ৮ΕΔγεςϜɺར༻ӡ༻ʹ͓͚Δ༷ʑͳোนʢΰπΰπʣ ʹຬͪ͋;Ε͍ͯΔɻ • → ྫʣར༻ऀͷ໌ࣔతͳࢦࣔɺӡ༻ऀͷஅߋ৽ͷհࡏ 10 എܠ • ͜ΕΒͷোนΛऔΓআ͖ɺར༻ӡ༻ͷշద͞ͷ্ʹͭͳ͛ΔͨΊʹɺར༻
ऀͷίϯςΩετʹج͖ͮ࠷దʹৼΔ͏ʮͳΊΒ͔ͳγεςϜʯΛ࣮ݱ͢ Δɻ
• ʮͳΊΒ͔ͳγεςϜʯͱɺใγεςϜͷ͜ͱΛ͍͏ͷΈͳΒͣɺޓ͍ʹ ӨڹΛٴ΅͠߹͏ܧଓతͳؔʹ͋Δར༻ऀʢϢʔβʔ͓Αͼ։ൃӡ༻ऀʣͱ ใγεςϜͱ͔ΒͳΔ૯ମͱͯ͠ͷγεςϜ 11 ͳΊΒ͔ͳγεςϜ <>܀ྛ݈ଠ ࡾ༔հ দຊ྄հ ͳΊΒ͔ͳγεςϜΛࢦͯ͠
ϚϧνϝσΟΞɺࢄɺڠௐͱϞόΠϧʢ%*$0.0ʣγϯϙδϜ # +VM < ><> < >υϛχΫɾνΣϯ(SBQIJDTGPS'VOEBNFOUBM*OGPSNBUJDTΛվมͯ͠࡞
1. ར༻ऀͱใγεςϜͱ͕ܧଓతͳؔΛऔΓ࣋ͭաఔʹ͓͍ͯɺར༻ऀͦ ΕͧΕʹݻ༗ͷίϯςΩετΛݟग़ͨ͠Γɺ৽ͨͳίϯςΩετΛग़ͨ͠ ΓͰ͖Δ͜ͱ 2. ཁ݅1.Λɺར༻ऀʹΑΔ໌ࣔతͳૢ࡞Λ՝͢͜ͱͳ࣮͘ݱͰ͖Δ͜ͱ 3. ཁ݅1.͓Αͼ2.ʹΑͬͯಘΒΕͨίϯςΩετʹج͖ͮɺใγεςϜ͕ར ༻ऀʹରͯ͠࠷దͳαʔϏεΛࣗಈతʹఏڙͰ͖Δ͜ͱ 12
ͳΊΒ͔ͳγεςϜͷཁ݅ • ࣗಈ͔ͭܧଓతʹར༻ऀͷঢ়گΛѲ͠ɺదԠతʹৼΔ͏ใγεςϜ
• ͳΊΒ͔ͳγεςϜΛ࣮ݱ͢ΔͨΊɺ༷ʑͳαʔϏεɺϨΠϠʹ͓͍ͯҎԼͷ ςʔϚͷͱɺݚڀ։ൃΛਐΊ͍ͯΔ[*] • FastContainer: ԠతͰঢ়ଶมԽͷૉૣ͍γεςϜج൫ٕज़ • ΦʔτεέʔϦϯά: ଟڥͰͷӡ༻ੑΛߟྀͨࣗ͠దԠܕ੍ޚܥ •
ͳΊΒ͔ͳϚονϯά: จ຺ʹԠͨ͡ਪનख๏ͷ࠷దԽ • ߦಈݕ: ଟ໘తͳಛྔʹجͮ͘ਫ਼៛ͳߦಈੳ • ͳΊΒ͔ͳηΩϡϦςΟ: ಁաతͳηΩϡϦςΟ্Λ࣮ݱ͢Δ։ൃख๏ 13 ͳΊΒ͔ͳγεςϜʹ͚ͯ < >ϖύϘݚڀॴݚڀ։ൃՌIUUQTSBOEQFQBCPDPNBSDIJWF
3. ͳΊΒ͔ͳγεςϜͷ࣮ݱʹ͚ͯ
ݚڀίϯηϓτ - ใγεςϜͷࣗదԠ -
• ଟ༷͔ͭܧଓతʹมԽ͢ΔڥͷதͰɺใγεςϜ͕ܧଓతʹػೳ͢Δʹ ɺͦͷߏϩδοΫΛߋ৽͠มԽʹै͢Δඞཁ͕͋Δ • → ྫʣใγεςϜͷෛՙঢ়گɺར༻ऀͷߦಈͷมԽ • ͜Ε·Ͱɺ͜ͷैɺӡ༻ҡ࣋ۀͱͯ͠ӡ༻ऀ͕୲͖ͬͯͨ 16 ใγεςϜͱڥมԽ
• ଟ༷͔ͭܧଓతʹมԽ͢ΔڥͷதͰɺใγεςϜ͕ܧଓతʹػೳ͢Δʹ ɺͦͷߏϩδοΫΛߋ৽͠มԽʹै͢Δඞཁ͕͋Δ • → ྫʣใγεςϜͷෛՙঢ়گɺར༻ऀͷߦಈͷมԽ • ͜Ε·Ͱɺ͜ͷैɺӡ༻ҡ࣋ۀͱͯ͠ӡ༻ऀ͕୲͖ͬͯͨ 17 ใγεςϜͱڥมԽ
• ਓखʹΑΔڥͷมԽݕใγεςϜͷߋ৽ɺैͷ࣌ؒࠩΛ͏ • ݁Ռͱͯ͠ɺ҆ఆੑར༻ऀͷຬͷԼɺӡ༻ऀͷෛ୲ͷ૿ՃΛট͘
• ैདྷͷӡ༻ҡ࣋ͷऔΓΈͰɺใγεςϜΛڥͷมԽʹରԠͤ͞Δͨ ΊɺਓʹΑΔܦݧଇஅͱ෦తͳࣗಈԽʹཹ·͍ͬͯΔ • → ྫʣܦݧଇʹΑΔᮢઃఆɺԽͨ͠ར༻ऀͷߦಈୡʹΑΔஅ 18 ڥมԽʹࣗΒదԠ͢ΔใγεςϜʹ͚ͯ • ਓʹΑΔஅߋ৽ͷఔΛࣗಈԽ͠ɺใγεςϜࣗମ͕ڥมԽΛଊ͑ม
Խʹै͢ΔదԠతͳΈͷݚڀ • ͳΒͼʹ࣮ӡ༻ͷద༻ ݚڀίϯηϓτ
ΦʔτεέʔϦϯάख๏
• ใγεςϜͷӡ༻ʹ͓͍ͯɺॲཧੑೳΛอͪͭͭඞཁ࠷খݶͷαʔόΛ༻͍ Δ͜ͱͰӡ༻ίετΛ੍ޚ͢Δ͜ͱॏཁ • มಈ͢Δαʔόधཁʹै͢ΔͨΊΦʔτεέʔϦϯάػೳΛಋೖ 20 എܠ • ॲཧੑೳΛอͭඞཁ࠷খݶͷαʔόܦݧͱಓͳνϡʔχϯάͰݸผʹ ٻΊΔ͕ɺใγεςϜͷมߋཧରͷ૿Ճʹै͍ࠔʹͳΔ
• ·ͨɺͷࢉग़ʹΦʔτεέʔϦϯάͷ࣮ߦ࣌ͷ࣌ؒࠩͷߟྀඞཁ ӡ༻্ͷ՝
• ܧଓతʹมߋ͞Ε͏ΔෳͷใγεςϜʹରͯ͠ɺΕߟྀͨ͠Φʔτε έʔϦϯάͷ࠷దͳ݅Λܧଓͯ͠ٻΊΔ͜ͱ͕ӡ༻ͷෛ୲ • ใγεςϜΛߏ͢ΔαʔόͷॲཧੑೳΛࣗಈͰѲ͠ɺใγεςϜͷॲ ཧੑೳΛอͭඞཁ࠷খݶ͔ͭΕΛߟྀͨ͠αʔόΛࢉग़͍ͨ͠ • αʔόͷॲཧੑೳΛ࣮ߦ࣌ʹࣗಈ͔ͭܧଓతʹਪఆ͠ɺΦʔτεέʔϦϯάͷ Εߟྀͨ͠࠷దͳαʔόΛࢉग़͢Δ੍ޚܥ 21
ݚڀͷతͱఏҊͷࠎࢠ
• ଟڥͰͷӡ༻ੑΛߟྀͨࣗ͠దԠܕΦʔτεέʔϦϯά੍ޚܥ[2] 22 ఏҊख๏ (Kaburaya AutoScaler) <>ࡾ༔հ ܀ྛ݈ଠ ,BCVSBZB"VUP4DBMFSଟڥͰͷӡ༻ੑΛߟྀͨࣗ͠దԠܕΦʔτεέʔϦϯά੍ޚܥ Πϯλʔωο
τͱӡ༻ٕज़γϯϙδϜจू QQ /PW
• ଟڥͰͷӡ༻ੑΛߟྀͨࣗ͠దԠܕΦʔτεέʔϦϯά੍ޚܥ • M: αʔόॲཧੑೳΛɺ୯Ґ࣌ؒ͋ͨΓͷॲཧͷ্ݶ͔ΒٻΊΔ • D: ༧ΊఆΊͨΕظؒʹର͠ɺݱࡏͷཁٻॲཧͱαʔόॲཧੑೳ͔Βෆ ͢Δͱߟ͑ΒΕΔະॲཧཁٻΛٻΊΔ •
F: ݱࡏͷॲཧཁٻʹະॲཧཁٻΛՃ͑ɺαʔόॲཧੑೳ͔Βඞཁͳ αʔόΛࢉग़ 23 ఏҊख๏ (Kaburaya AutoScaler)
24 ఏҊख๏ͷධՁʢγϛϡϨʔγϣϯʣ αʔόੑೳʢॲཧ্ݶʣͷਪఆධՁ ෛՙ࣌Ұ࣌తʹαʔό͋ͨΓͷෛՙ͕ߴ·Δෛ ՙ૿Ճ࣌Ͱ҆ఆͯ͠ਪఆʢ࣮ઢʣɻ αʔόͷैੑධՁ ੨ઢͷཧαʔόʹैɻΕΛߟྀ͠ɺఆ͞ ΕΔະॲཧͷཁٻΛॲཧՄೳͳαʔόΛೖɻ ະॲཧཁٻͷղফ݁ՌͷධՁ ΕʹΑΓੵ࣮ͨ͠ઢͷະॲཧཁٻΛଈ࣌ղফɻ
ഁઢΕରࡦΛ͠ͳ͍߹ͷਪҠɻ
ਪનγεςϜ
26 എܠ • ใγεςϜʹ͓͚ΔใաଟΛղܾ͢ΔɺਪનγεςϜͷಋೖ • → ͳΜΒ͔ͷํࡦʢ= ਪનख๏ʣʹج͖ͮଟͷબࢶ͔Βར༻ऀ͕ڵຯ Λ࣋ͭͷΛఏҊ͢ΔγεςϜ •
ӡ༻ऀʹͱͬͯɺޮՌతͳʮਪનख๏ʯͷબ͕ॏཁ • ޮՌతͳਪનख๏ঢ়گʹΑͬͯҟͳΔ • ͔͠͠ͳ͕Βɺ࣮ڥͰͷܧଓతͳਪનख๏ͷධՁʹػձଛࣦ͕͏ ӡ༻্ͷ՝
• ਪનख๏ͷ༏ྼଟ͘ͷཁҼ͔ΒͳΔঢ়گʢ=จ຺ʣʹΑͬͯࠨӈ͞ΕΔ • ޮՌతͳਪનख๏Λػձଛࣦ͕ͳ͍Α͏ʹจ຺ʹԠ͍͚͍ͯͨ͡ • ࣄલʹఆΊͨจ຺͝ͱʹਪનख๏ͷબΛࣗಈ͔ͭܧଓతʹ࠷దԽ͢Δ ϝλਪનγεςϜ • → ࠷ળͳਪનख๏ͷબΛଟόϯσΟοτͱΈͳͯ͠ղ͘
27 ݚڀͷతͱఏҊͷࠎࢠ
• ʮʯͱݺΕΔෳͷީิ͔ΒಘΒΕΔใुΛ࠷େԽ͢Δ • ϓϨΠϠʔҰͷࢼߦͰ1ͭͷΛબ͠ɺใुΛಘΔ • ͦΕͧΕͷ͋Δใुʹै͍ใुΛੜ • ͨͩ͠ɺϓϨΠϠʔ͜ͷใुΛࢼߦͷ݁Ռ͔Βਪଌ͢Δඞཁ͕͋Δ 28 ଟόϯσΟοτ
• ϓϨΠϠʔ͋Δ࣌ͷͷධՁʹج͖ͮʮ׆༻ʯͱʮ୳ࡧʯΛฒߦͯ͠ߦ͏ • ͜ͷτϨʔυΦϑΛղফ͢ΔͨΊʹ༷ʑͳղ๏͕ఏҊ͞Ε͍ͯΔ
ଟόϯσΟοτͱͷใुͷ֬ 29 Arm0 Arm1 Arm2 User(s) System ਪఆͨ֬͠ ਅͷ֬ Recommend
Click
• จ຺͝ͱʹਪનख๏ͷબΛࣗಈ͔ͭܧଓతʹ࠷దԽ͢ΔϝλਪનγεςϜ[3] • จ຺͝ͱͷ࠷ળͳબΛɺઢܗͳଟόϯσΟοτͷղ๏Ͱ͋Δ Linear Thompson SamplingΛ༻͍ͯղ͘ • จ຺ͱͯ͠ɺᶃใγεςϜͷ࣌ؒͷܦաɺᶄਪનରͷಛੑͷࠩҟΛ ѻ͏
• จ຺͝ͱʹબͨ͠ਪનख๏ͱ͜Εʹର͢Δར༻ऀͷԠΛه͠ɺબ ͷվળʹ༻͍Δ 30 ఏҊγεςϜ (Synapse) <>ࡾ༔հ ็߃ݑ 4ZOBQTFจ຺ʹԠͯ͡ܧଓతʹਪનख๏ͷબΛ࠷దԽ͢ΔਪનγεςϜ ిࢠใ௨৴ֶձจࢽ% 7PM+% /P QQ /PW UPBQQFBS
31 ఏҊγεςϜ (Synapse)
• ࣮αʔϏεͷӡ༻σʔλΛ༻͍ͨγϛϡϨʔγϣϯʹ͓͍ͯɺจ຺Λߟྀ͠ͳ ͍ͷͱൺֱͯ͠ɺྦྷੵΫϦοΫ͕2%্͢Δ͜ͱΛ֬ೝ[3] • ֘γεςϜ࣮αʔϏεͰՔಇɾܧଓతʹධՁத • ࠓޙɺऔΓѻ͑Δจ຺ɺਪનख๏Λ͍͛ͯ͘[4][5] • ߹ΘͤͯɺڥมԽͷैੑΛ্͍ͤͯ͘͞[6] 32
ఏҊγεςϜͷධՁ <>ࡒେՆɼࡾ༔հɼ&$αΠτʹ͓͚ΔӾཡཤྺΛ༻͍ͨߪങʹܨ͕ΔߦಈͷมԽݕग़ɼݚڀใࠂΠϯλʔωοτͱӡ༻ٕज़ *05 ɼ WPM*05ɼQQrɼ <>ଜ໋ɼࡾ༔հɼϋϯυϝΠυ࡞Λରͱͨ͠&$αΠτʹ͓͚Δ୯ޠͷग़ݱසΛ༻͍ͨك᧵ͷݕग़ɼݚڀใࠂΠϯλʔ ωοτͱӡ༻ٕज़ *05 ɼWPM*05ɼQQrɼ <>ࡾ༔հɼ܀ྛ݈ଠɼඇఆৗͳଟόϯσΟοτʹ͓͚ΔมԽݕग़ΞϓϩʔνͷઢܗϞσϧͷ֦ுɼݚڀใࠂΠϯλʔωο τͱӡ༻ٕज़ *05 ɼWPM*05ɼQQrɼ+VMZ
4. ·ͱΊ
• ར༻ऀͷίϯςΩετʹج͖ͮ࠷దʹৼΔ͏ʮͳΊΒ͔ͳγεςϜʯΛհ ͨ͠ • ͜ͷ࣮ݱʹ͚ͨݚڀࣄྫͱͯ͠ɺଟڥͰͷӡ༻ੑΛߟྀͨ͠Φʔτεέʔ Ϧϯά੍ޚܥΛհͨ͠ • ݚڀͳΒͼʹαʔϏεͷಋೖࣄྫͱͯ͠ɺจ຺ʹԠͨ͡ਪનख๏ͷ࠷దԽΛ ߦ͏ਪનγεςϜΛհͨ͠ •
ࠓޙɺ͜ΕΒΛؚΊͨݚڀ։ൃͷҰͷൃలΛ௨ͯ͠ʮͳΊΒ͔ͳγες ϜʯΛ࣮ݱ͍ͯ͘͠ 34 ·ͱΊ
ݚڀһɺੵۃతʹืूதʂ https://rand.pepabo.com/
ิࢿྉ
• ͝ͱʹෳͷจ຺͕͋Γɺจ຺ʹԠͯ͡ใु͕ܾ·ΔଟόϯσΟοτ ͷઃఆ • ຊݚڀใࠂͰɺจ຺ɺෳͷཁҼͷύϥϝʔλͷΈ߹ΘͤͰදݱ͞ Εͨঢ়ଶͷ͜ͱΛࢦ͢ • → ཁҼύϥϝʔλͷ͕{0,1}ͷ߹ɺจ຺ཁҼ ʹରͯ͠
ύλʔϯ d 2d 37 ઢܗͳଟόϯσΟοτ • ઢܗͳଟόϯσΟοτͷղ๏Ͱɺจ຺ͷ֬Ͱͳ͘ɺཁҼ͝ͱ ͷʢઢܗύϥϝʔλʣΛਪఆ͢Δ͜ͱͰ֤จ຺ʹ͓͚ΔใुΛ༧͢Δ
ઢܗͳଟόϯσΟοτ 38 Arm0 Arm1 Arm2 User(s) System ਪఆͨ֬͠ ਅͷ֬ Recommend
Click Context = 0 Context = 0
ઢܗͳଟόϯσΟοτ 39 Arm0 Arm1 Arm2 User(s) System ਪఆͨ֬͠ ਅͷ֬ Recommend
Click Context = 1 Context = 1