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
詳解 Ethereum Transaction / detail ethereum trans...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
yamarkz
March 16, 2018
Technology
3k
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
詳解 Ethereum Transaction / detail ethereum transaction
blockchain.tokyo #6
yamarkz
March 16, 2018
More Decks by yamarkz
See All by yamarkz
ネットスーパーの買い物体験を支える工夫と決済機能実現の過程
yamarkz
0
2k
Flutter/Dartと共に歩んだスタートアップの開発を振り返って得た、成功と失敗の教訓
yamarkz
5
3.3k
Bloc PatternにおけるBloc分割の方針と実践例 / Division plan and practical example in bloc pattern
yamarkz
7
28k
Smart Contract Design Pattern
yamarkz
4
3k
トークンの概要と開発観点から見たICO / Token and TokenSale
yamarkz
5
62k
Zilliqa Next Gen High Throughput Blockchain Platform
yamarkz
0
2.4k
Proof of Stake Casper
yamarkz
8
14k
Blockchain R&D Introduction
yamarkz
2
51k
Bitcoin Improvement Flow
yamarkz
5
4.7k
Other Decks in Technology
See All in Technology
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3.2k
Claude Codeで開発以外の業務も爆速化しよう!
minorun365
PRO
12
9.4k
振り返りこそエンジニアの本領
negima
0
110
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
1
100
Claude Codeの体系的な理解と知識のフック
oikon48
10
6.5k
PdMをやめて、 "プロダクトビルダー"という 働き方に変えました / PdM to Product Builder
shikichee
2
610
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
470
PM領域でのAI Agentの活用
lycorptech_jp
PRO
0
210
魔法少女がClaude Codeを監視する / ccportal-deck
noriyukitakei
3
110
Introduction to Bill One Development Engineer
sansan33
PRO
0
490
書籍『生成AIの安全性入門』の入門
wataoka
0
150
Genie Code ワークショップ 応用編 / Genie-Code-Workshop-advanced
databricksjapan
PRO
0
240
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Google's AI Overviews - The New Search
badams
0
1.6k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Navigating Team Friction
lara
192
16k
The browser strikes back
jonoalderson
0
1.6k
First, design no harm
axbom
PRO
2
1.3k
Embracing the Ebb and Flow
colly
88
5.2k
BBQ
matthewcrist
89
10k
sira's awesome portfolio website redesign presentation
elsirapls
0
380
The Spectacular Lies of Maps
axbom
PRO
1
950
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
710
Transcript
2018/03/16 blockchain.tokyo #6 in Cyber Agent Kazuki Yamaguchi (@yamarkz) Gunosy
Inc. ৄղ Ethereum Transaction ~Transactionͷ֓ཁ͔ΒΈ·Ͱ·Δͬͱհ~
Kazuki Yamaguchi / @yamarkz Software Engineer @Gunosy Graduated from Spring
2017 WebApplication Rails Dapps Solidity Research CryptoCurrency & Blockchain Github & Twitter @yamarkz
Gunosy Blockchain Blogͬͯ·͢ʂ ʮhttp://blockchain.gunosy.ioʯor ʮάϊγʔ ϒϩοΫνΣʔϯʯ
※τϥϯβΫγϣϯʹ͍ͭͯৄղʹͨ͢ΊɺϒϩοΫνΣʔϯɺΞΧϯτɺϚΠχϯάͳͲɺ पลγεςϜͷંΓ·͢ Agenda • Ethereum & Transaction • 2 Type
Transaction • Message 4 Pattern • Transaction Life Cycle • Transaction for Data Structure • Transaction Pool & Nonce • Transaction Releasing
Ethereum & Transaction
※ ίϯτϥΫτ࣮ߦͷΠϝʔδ ※ EtherʹΑΔࢧ͍ͷΠϝʔδ ίϯτϥΫτͷ࣮ߦ => τϥϯβΫγϣϯͷૹ৴ ICOͷࢀՃ => τϥϯβΫγϣϯͷૹ৴
Etherͷૹۚ => τϥϯβΫγϣϯͷૹ৴ ίϯτϥΫτͷ࡞ => τϥϯβΫγϣϯͷૹ৴ Ethereumʹ͓͍ͯɺTransactionશͯͷ࢝·Γ
EthereumͷTransactionେ͖͘2ͭʹ͚ΒΕΔ Contract Creation Message (৽ͨͳίϯτϥΫτ࡞) (ίϯτϥΫτͷ࣮ߦ or Etherͷૹۚ) New!!! A͞Μ͔ΒB͞Μ
3Ether ૹۚ ίϯτϥΫτͷ࣮ؔߦ ৽ͨͳίϯτϥΫτͷσϓϩΠ A B
(৽ͨͳίϯτϥΫτ࡞) Contract Creation ৽ͨͳίϯτϥΫτͷσϓϩΠ New!!! ͬͪ͜ΛΑΓਂ͘ղͯ͠ΈΔ EthereumͷTransactionେ͖͘2ͭʹ͚ΒΕΔ A͞Μ͔ΒB͞Μ 3Ether ૹۚ
A B ίϯτϥΫτͷ࣮ؔߦ Message (ίϯτϥΫτͷ࣮ߦ or Etherͷૹۚ)
Message4ͭʹྨ͞ΕΔ Transaction From EOA EVM code From CA To EOA
To CA EOA EOA Transaction Message EOA CA Message CA EOA Message Code CA Code CA Transaction Message From: Ethereum EVM illustrated
Transaction Life Cycle
1. Transactionʹॺ໊ 2. TransactionΛϊʔυʹϒϩʔυΩϟετ ϊʔυ Tx ༗ޮͳτϥϯβΫγϣϯ͔όϦσʔγϣϯ ؔ࿈ϊʔυʹൖ TxPool Metamask
etc… Queued Pending ɾൖ࣌ͷTransactionɺSerialize͞ΕΔ ɾGas PriceʹΑͬͯϊʔυอ࣋͢Δ͔அͰ͖Δ Tx Tx Tx Tx Block Tx Tx ϚΠχϯά ϒϩοΫνΣʔϯ Txͷঢ়گʹΑͬͯɺ PendingͱQueued͚ΒΕΔ ΞΧϯτͷঢ়ଶ͕มΘΔ ΞΧϯτͷঢ়ଶ͕มΘΔ START ϚΠφʔϊʔυ ϊʔϚϧϊʔυ ϩʔΧϧϊʔυ A B Pendingͷத͔ΒϚΠχϯά͢ΔTxΛɺ ϚΠφʔ͕બ͢Δ
Pendingͷத͔ΒϚΠχϯά͢ΔTxΛɺ ϚΠφʔ͕બ͢Δ ؔ࿈ϊʔυʹൖ TxPool Queued Pending ɾൖ࣌ͷTransactionɺSerialize͞ΕΔ ɾGas PriceʹΑͬͯϊʔυอ࣋͢Δ͔அͰ͖Δ Tx
Tx Tx Tx Block Tx Tx ϚΠχϯά ϒϩοΫνΣʔϯ Txͷঢ়گʹΑͬͯɺ PendingͱQueued͚ΒΕΔ ΞΧϯτͷঢ়ଶ͕มΘΔ ΞΧϯτͷঢ়ଶ͕มΘΔ ϚΠφʔϊʔυ ϊʔϚϧϊʔυ B A ϊʔυ Tx ༗ޮͳτϥϯβΫγϣϯ͔όϦσʔγϣϯ ϩʔΧϧϊʔυ 1. Transactionʹॺ໊ 2. TransactionΛϊʔυʹϒϩʔυΩϟετ Metamask etc… START
Pendingͷத͔ΒϚΠχϯά͢ΔTxΛɺ ϚΠφʔ͕બ͢Δ 1. Transactionʹॺ໊ 2. TransactionΛϊʔυʹϒϩʔυΩϟετ ϊʔυ Tx ༗ޮͳτϥϯβΫγϣϯ͔όϦσʔγϣϯ Metamask
etc… Tx Tx Tx Tx Block ϚΠχϯά ϒϩοΫνΣʔϯ ΞΧϯτͷঢ়ଶ͕มΘΔ ΞΧϯτͷঢ়ଶ͕มΘΔ START ϩʔΧϧϊʔυ A B ؔ࿈ϊʔυʹൖ ɾൖ࣌ͷTransactionɺSerialize͞ΕΔ ɾGas PriceʹΑͬͯϊʔυอ࣋͢Δ͔அͰ͖Δ Tx ϚΠφʔϊʔυ ϊʔϚϧϊʔυ TxPool Queued Pending Tx Txͷঢ়گʹΑͬͯɺ PendingͱQueued͚ΒΕΔ
1. Transactionʹॺ໊ 2. TransactionΛϊʔυʹϒϩʔυΩϟετ ϊʔυ Tx ༗ޮͳτϥϯβΫγϣϯ͔όϦσʔγϣϯ ؔ࿈ϊʔυʹൖ Metamask etc…
ɾൖ࣌ͷTransactionɺSerialize͞ΕΔ ɾGas PriceʹΑͬͯϊʔυอ࣋͢Δ͔அͰ͖Δ Tx ϒϩοΫνΣʔϯ ΞΧϯτͷঢ়ଶ͕มΘΔ ΞΧϯτͷঢ়ଶ͕มΘΔ START ϊʔϚϧϊʔυ ϩʔΧϧϊʔυ A B Tx Tx Tx Tx Block ϚΠχϯά ϚΠφʔϊʔυ TxPool Queued Pending Tx Txͷঢ়گʹΑͬͯɺ PendingͱQueued͚ΒΕΔ Pendingͷத͔ΒϚΠχϯά͢ΔTxΛɺ ϚΠφʔ͕બ͢Δ
Pendingͷத͔ΒϚΠχϯά͢ΔTxΛɺ ϚΠφʔ͕બ͢Δ 1. Transactionʹॺ໊ 2. TransactionΛϊʔυʹϒϩʔυΩϟετ ϊʔυ Tx ༗ޮͳτϥϯβΫγϣϯ͔όϦσʔγϣϯ ؔ࿈ϊʔυʹൖ
TxPool Metamask etc… Queued Pending ɾൖ࣌ͷTransactionɺSerialize͞ΕΔ ɾGas PriceʹΑͬͯϊʔυอ࣋͢Δ͔அͰ͖Δ Tx Tx Tx Tx Block Tx Tx Txͷঢ়گʹΑͬͯɺ PendingͱQueued͚ΒΕΔ START ϚΠφʔϊʔυ ϊʔϚϧϊʔυ ϩʔΧϧϊʔυ A ϚΠχϯά ΞΧϯτͷঢ়ଶ͕มΘΔ ΞΧϯτͷঢ়ଶ͕มΘΔ B ϒϩοΫνΣʔϯ A
1. Transactionʹॺ໊ 2. TransactionΛϊʔυʹϒϩʔυΩϟετ ϊʔυ Tx ༗ޮͳτϥϯβΫγϣϯ͔όϦσʔγϣϯ ؔ࿈ϊʔυʹൖ TxPool Metamask
etc… Queued Pending ɾൖ࣌ͷTransactionɺSerialize͞ΕΔ ɾGas PriceʹΑͬͯϊʔυอ࣋͢Δ͔அͰ͖Δ Tx Tx Tx Tx Block Tx Tx ϚΠχϯά ϒϩοΫνΣʔϯ Txͷঢ়گʹΑͬͯɺ PendingͱQueued͚ΒΕΔ ΞΧϯτͷঢ়ଶ͕มΘΔ ΞΧϯτͷঢ়ଶ͕มΘΔ START ϚΠφʔϊʔυ ϊʔϚϧϊʔυ ϩʔΧϧϊʔυ A B Pendingͷத͔ΒϚΠχϯά͢ΔTxΛɺ ϚΠφʔ͕બ͢Δ Ұ࿈ͷྲྀΕΛܦͯɺτϥϯβΫγϣϯ࠷ऴతʹΞΧϯτͷঢ়ଶΛมߋ͢Δ
Transaction for Data Structure
Transaction Nonce Gas Price Gas Limit To Value v, r,
s Init or data CLI্Ͱ֬ೝͰ͖ΔTransactionͷத Transaction for Data Structure
CLI্Ͱ֬ೝͰ͖ΔTransactionͷத Nonce Gas Price Gas Limit To Value v, r,
s Init or data ϢχʔΫͰ͋Δ͜ͱΛࣔ͢ ૹۚ͢ΔEtherͷֹ Contract࣮ߦ࣌ʹফඅ͢ΔGasͷ੍ݶ EVMίʔυ͕ೖΔϑΟʔϧυ Transaction Transaction for Data Structure
Transaction Pool & Nonce
Pendingͷத͔ΒϚΠχϯά͢ΔTxΛɺ ϚΠφʔ͕બ͢Δ 1. Transactionʹॺ໊ 2. TransactionΛϊʔυʹϒϩʔυΩϟετ ϊʔυ Tx ༗ޮͳτϥϯβΫγϣϯ͔όϦσʔγϣϯ ؔ࿈ϊʔυʹൖ
Metamask etc… ɾൖ࣌ͷTransactionɺSerialize͞ΕΔ ɾGas PriceʹΑͬͯϊʔυอ࣋͢Δ͔அͰ͖Δ Tx Tx Tx Tx Block Tx ϚΠχϯά ϒϩοΫνΣʔϯ ΞΧϯτͷঢ়ଶ͕มΘΔ ΞΧϯτͷঢ়ଶ͕มΘΔ START ϚΠφʔϊʔυ ϊʔϚϧϊʔυ ϩʔΧϧϊʔυ A B TxPool Queued Pending Tx ͜͜ͷ Txͷঢ়گʹΑͬͯɺ PendingͱQueued͚ΒΕΔ
Transaction Pool Transaction Pool (ҎԼɺTxPool)ͱɺϒϩοΫʹऔΓࠐ·ΕΔલͷτϥϯβΫγϣϯ͕Ұ࣌ తʹอଘ͞ΕΔۭؒɻۭؒϊʔυͷϚγϯϝϞϦ্ʹ࡞ΒΕΔɻ ϚγϯϝϞϦ্ʹ࡞ΒΕΔͨΊɺϚγϯͷిݯ͕མͪΔͱTxPoolͷτϥϯβΫγϣϯফ͑ Δɻ ϊʔυࣗͷϝϞϦۭؒʹؚΊΔτϥϯβΫγϣϯΛGasPriceͰબผ͢Δ͜ͱ͕Ͱ͖Δɻ TxPoolͷۭؒ2ͭ
Pending • ϒϩοΫʹऔΓࠐ·ΕͯOKͳτϥϯβΫγϣϯ͕อଘ͞ΕΔ Queued • ϒϩοΫʹऔΓࠐ·ΕͯNGͳτϥϯβΫγϣϯ͕อଘ͞ΕΔ • τϥϯβΫγϣϯͷNonceʹΪϟοϓ͕ଘࡏ͢Δ߹ɺPendingͰͳ͘ɺ Queuedʹอଘ͞ΕΔɻQueuedͷׂɺωοτϫʔΫ͔Β౸ணͨ͠ॱং֎τϥ ϯβΫγϣϯΛΧόʔ͢Δ͜ͱɻ(τϥϯβΫγϣϯͷॱংΛकΔ͜ͱ)
Transaction Pool & Nonce TxPool ͷPendingͱQueuedͷڍಈ Nonce 37ͷTx͕Γͳ͍ঢ়گ Nonce 37͕TxPoolʹϒϩʔυΩϟετ
or ൖ͞Εͨ͜ͱʹΑΓɺ QueuedͷTxnonceͷॱং͕ἧ͏ɻ ἧ͏͜ͱͰϚΠχϯάOKͳTxʹͳΓPendingʹҠಈ͢Δ
Transaction Nonce From: Mastering Ethereum NonceಉҰΞΧϯτ͔ΒͷTransaction Orderͷূ໌Ͱ͋Γɺ τϥϯβΫγϣϯͷೋॏࢧग़Λղܾ͢Δɻ NonceTransactionʹ͓͍ͯ࠷ॏཁͳίϯϙʔωϯτͰ͋Γɺ ࠷ཧղ͞Ε͍ͯͳ͍ՕॴͰ͋Δɻ
Tx Nonce 1 Tx Nonce 2 Tx Nonce 3 Tx Nonce 4 ಉҰΞΧϯτ͔ΒͷτϥϯβΫγϣϯNonceͷॱংʹԊͬͯɺϒϩοΫʹऔΓࠐ·ΕΔɻ Nonce1ͱNonce2ͷτϥϯβΫγϣϯ͕ಉҰΞΧϯτA͔Β࡞ΒΕͨ߹ɺNonce2ͷτϥϯ βΫγϣϯNonce1ͷτϥϯβΫγϣϯ͕ϚΠχϯά͞Εͳ͍ݶΓɺϚΠχϯά͞Εͳ͍ɻ NonceͷॱংʹԊͬͯτϥϯβΫγϣϯ͕ϒϩοΫʹऔΓࠐΉϓϩτίϧʹΑΓɺೋॏࢧग़Λ ͍Ͱ͍Δɻ
Transaction Releasing
Transaction Releasing ϒϩʔυΩϟετͨ͠τϥϯβΫγϣϯΛͳ͔ͬͨ͜ͱʹ͍ͨ͠ or τϥϯβΫγϣϯ͕ͳ͔ͳ͔ϚΠχϯά͞Εͳ͍ͷͰGas PriceΛ্͍͛ͨ͠ EthereumʹϒϩʔυΩϟετͨ͠τϥϯβΫγϣϯΛআ͢ΔΈ͕ͳ͍ ͔͠͠ɺ ະঝೝτϥϯβΫγϣϯΛ ߋ৽
͢Δ͜ͱ͕Մೳ ~έʔεελσΟ~
Transaction Releasing ະঝೝτϥϯβΫγϣϯͷߋ৽ (Releasing) ߋ৽͍ͨ͠τϥϯβΫγϣϯʹৼΒΕ͍ͯΔNonceͱಉ͡NonceΛࢦఆͨ͠τϥϯβΫγϣϯ Λ࡞͠ɺϒϩʔυΩϟετ͢Δ͜ͱͰະঝೝτϥϯβΫγϣϯΛߋ৽͢Δ͜ͱ͕Ͱ͖Δɻ ߋ৽Ͱͷमਖ਼͕ՄೳͳͷͰɺ3Etherͷૹ৴͢ΔͷΛͳ͔ͬͨ͜ͱʹ͢ΔͨΊʹɺ0Etherͷ τϥϯβΫγϣϯΛૹ৴͠ͳ͓ͤɺະঝೝτϥϯβΫγϣϯߋ৽͞ΕΔͷͰɺͳ͔ͬͨ͜ ͱʹͳΔɻ(※खྉͰ͋ΔGasඞཁ) ߋ৽ͰŊߋ৽ઌτϥϯβΫγϣϯ͕࣋ͭGasPriceͷ10%Ҏ্ߴ͍
GasPriceͷߋ৽τϥϯβΫ γϣϯΛ࡞͠ͳ͚Ε͍͚ͳ͍ Tx A͞Μ͔ΒB͞Μ 3Etherͷૹۚ Tx A͞Μ͔ΒB͞Μ 0Etherͷૹۚ ߋ৽ઌ ߋ৽ݩ ߋ৽ʂʂ ϒϩʔυΩϟετ Tx A͞Μ͔ΒB͞Μ 0Etherͷૹۚ TxPool
Transaction Releasing Transaction Releasingͷڍಈ Nonce 41ͷະঝೝτϥϯβΫγϣϯ ಉ͡Nonce Ͱ͔ͭɺ10%Ҏ্ߴ͍GasPriceͷTxΛϒϩʔυΩϟετ͢Δ͜ͱͰߋ৽ ߋ৽TxʹΑΓɺ3Etherͷૹ͕ۚ0EtherʹͳΓɺ࣮࣭ͷૹۚऔΓফ͢͜ͱ͕Ͱ͖͍ͯΔ
Transactionʹ2ͭͷେ͖ͳྨͱ4ͭͷϝοηʔδύλʔϯ͕͋Δ EthereumΞΧϯτίϯτϥΫτͱ͍͏֓೦͕͋ΔͨΊɺ τϥϯβΫγϣϯͷΈߏෳࡶ NonceͷΈ͕Life CycleΛཧղ͢Δ্Ͱॏཁͳ伴ͱͳΔ Contract։ൃΛਐΊΔ্ͰTransactionͷΈΛཧղ͢Δͷॏཁ ·ͱΊ
ɾWhat is Gas? ɾEthereum EVM Illustrated ɾMastering Ethereum ɾEthereum White
Paper ɾEthereum Yellow Paper ɾEthereum Wiki ɾLife Cycle of an Ethereum Transaction ࢀߟࢿྉ
Q&A 1 Q. τϥϯβΫγϣϯͷૹۚݩͲ͏ͬͯஅ͢Δͷʁ A. τϥϯβΫγϣϯʹؚ·ΕΔॺ໊ૹ৴ݩͷΞΧϯτͷൿີ伴͔Β͔͠࡞ΒΕͳ͍ͨΊɺͦͷॺ ໊Ͱஅ͢Δ Q.τϥϯβΫγϣϯΛ࡞ͨ͠ͷͷɺΞΧϯτεςʔτͷߋ৽ͷॱংͰૹۚऀ͕ेͳEtherΛ ͍࣋ͬͯͳ͔ͬͨ߹τϥϯβΫγϣϯͲ͏ͳΔͷʁ A.
τϥϯβΫγϣϯૹࣦۚഊͱͳΔͷͷɺτϥϯβΫγϣϯࣗମϚΠχϯά͞Εɺखྉͷ Έ͕ϚΠφʔʹࢧΘΕΔ Q.ΞΧϯτ͕࣋ͭNonceΑΓ͍Λ߱ͬͨτϥϯβΫγϣϯΛϒϩʔυΩϟετ͢ΔͱͲ͏ͳΔ ͷʁ A. ϒϩʔυΩϟετઌͷϩʔΧϧϊʔυͷόϦσʔγϣϯͰ͔ΕTxPoolʹೖΒͣɺτϥϯβΫγϣ ϯഁغ͞Εɺૹ৴ݩʹΤϥʔ͕ฦΔ Q.τϥϯβΫγϣϯʹઃఆͰ͖ΔGas Limitͷ࠷ߴ͍ͭ͘ʁ A. ཧ্ϒϩοΫͷGas Limitͱಉ͡
Q&A 2 Q. ϒϩʔυΩϟετͨ͠τϥϯβΫγϣϯΛআ͍ͨ͠߹Ͳ͏͢Εྑ͍ͷʁ A. EthereumͰϒϩʔυΩϟετͨ͠τϥϯβΫγϣϯͷআػೳ͋Γ·ͤΜɻԾʹɺτϥϯβΫ γϣϯΛͳ͔ͬͨ͜ͱʹ͍ͨ͠ (ૹۚΛऔΓফ͍ͨ͠) ߹ɺಉ͡NonceͰValueΛ0ʹ͠Gas PriceΛߴ͍ͷʹ࡞ͯ͠ϒϩʔυΩϟετ͢Δ
Q. ૹۚͷΈͰར༻ͨ͠߹ͷखྉͬͯͲ͏ͳΔͷʁ A. GasPrice × τϥϯβΫγϣϯͷόΠτ ͷ͕खྉʹͳΔ Q. TxPoolͷ྆ʑ͕ᷓΕΔ΄ͲτϥϯβΫγϣϯ͕ཷ·ͬͨ߹ɺᷓΕͨτϥϯβΫγϣϯͲ͏ͳΔ ͷʁ A. τϥϯβΫγϣϯͷGasPrice͕͍ͷ͔ΒPool͔Β͍ग़͞Ε͍ͯ͘ Q. NonceͷॱংͰɺઌʹߴ͍NonceͷτϥϯβΫγϣϯΛϚΠφʔ͕ϚΠχϯά͠ɺϚΠχϯάʹޭ ͨ͠߹ɺϒϩοΫͲ͏ͳΔͷʁ A. ԾʹɺϚΠχϯάʹޭͨ͠ͱͯ͠ɺNonceͷॱংΛक͍ͬͯͳ͍τϥϯβΫγϣϯΛؚΜͩϒ ϩοΫແޮͱͳΓɺνΣʔϯʹܨ͕Εͳ͍
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ✨