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
Takahiro Omi
May 10, 2022
Technology
0
240
ストックマークでの自然言語処理の取り組み
Takahiro Omi
May 10, 2022
Tweet
Share
More Decks by Takahiro Omi
See All by Takahiro Omi
最近の話題にも対応した大規模言語モデルの開発
omitakahiro
0
160
BERTを用いた自然言語処理プロダクトの開発・運用
omitakahiro
0
1.9k
Other Decks in Technology
See All in Technology
【Snowflake九州ユーザー会#2】BigQueryとSnowflakeを比較してそれぞれの良し悪しを掴む / BigQuery vs Snowflake: Pros & Cons
civitaspo
5
1.6k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
560
Amazon Bedrock 2025 年の熱いアップデート (2025/3 時点)
icoxfog417
PRO
3
480
俯瞰と個別の⼆つの視点で紡ぐ スクラムマスターの成⻑と協働 / Dual Views Weaving Scrum Master Growth
toma_sm
1
100
【Forkwell】「正しく」失敗できるチームを作る──現場のリーダーのための恐怖と不安を乗り越える技術 - FL#83 / A team that can fail correctly by forkwell
i35_267
2
190
自分のやることに価値を見出だせるようになり、挑戦する勇気をもらったベイトソンの考え / Scrum Fest Fukuoka 2025
bonbon0605
0
190
マネコン操作いらず! TerraformでAWSインフラのコーディングに入門しよう
minorun365
PRO
2
560
LangGraph × Bedrock による複数の Agentic Workflow を利用した Supervisor 型のマルチエージェントの実現/langgraph-bedrock-supervisor-agent
ren8k
3
450
MLflowはどのようにLLMOpsの課題を解決するのか
taka_aki
0
180
QAエンジニアが スクラムマスターをすると いいなぁと思った話
____rina____
0
240
事業を差別化する技術を生み出す技術
pyama86
3
1.2k
Oracle Cloud Infrastructure IaaS 新機能アップデート 2024/12 - 2025/02
oracle4engineer
PRO
0
120
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Building Applications with DynamoDB
mza
93
6.3k
Adopting Sorbet at Scale
ufuk
75
9.2k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
450
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
590
GitHub's CSS Performance
jonrohan
1030
460k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
RailsConf 2023
tenderlove
29
1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Unsuck your backbone
ammeep
669
57k
Typedesign – Prime Four
hannesfritz
41
2.5k
Transcript
ετοΫϚʔΫגࣜձࣾ ۙߐਸ ʮχϡʔεهࣄ͔ΒϏδωε׆ಈͷใΛߏԽ͢Δʯ ετοΫϚʔΫͰͷࣗવݴޠॲཧͷऔΓΈ 'PSLXFMM .-4UVEZ
ࢠڙ͕ཚೖͯ͘͠Δ͔͠Ε·ͤΜ͕ɺ͝༰͍ࣻͩ͘͞ɻ
ࣗݾհ 3 • ۙߐਸʢ͓͓Έ͔ͨͻΖʣ • ݄ʹετοΫϚʔΫʹೖࣾ͠ɺࣗવݴޠॲ ཧͷݚڀ։ൃʹैࣄ • લ৬౦ژେֶʢಛ।ڭतʣͰɺ࣌ܥྻղੳΛத ৺ͱͨ͠౷ܭֶػցֶशͷجૅɾԠ༻ݚڀʹैࣄ
ɻ
ΞΧσϛΞͰͷݚڀ׆ಈ 4 • ۙͳݱʹର͢ΔཧతͳΞϓϩʔνʹڵຯ͕͋Γɺ ࣌ܥྻղੳͷݚڀΛ͖ͯͨ͠ɻ • ౷ܭϞσϦϯάɺϕΠζϞσϦϯά • χϡʔϥϧωοτϫʔΫ •
࣌ܥྻղੳͰਂֶश͕Γ্͕Γɺ࣮Ԡ༻ʹ͓͚Δ ϙςϯγϟϧΛײ͍ͯͨ͡ɻ
ΞΧσϛΞ͔ΒελʔτΞοϓͷస৬ 5 ݄ࠒ͔ΒݚڀػؔͷϙδγϣϯΛ୳͔͢ɺຽؒاۀͰಇ͔͘Λߟ͑࢝ ΊΔɻ ü جૅతͳݚڀΑΓ࣮ࣾձͷղܾΛߦ͍͍ͨɻ ü ͜ͷྖҬΞΧσϛΞͱ࢈ۀքͷڑ͕͍ۙɻ ü ࣗવݴޠॲཧ͋Δछͷ࣌ܥྻղੳɻ
݄ʹετοΫϚʔΫʹೖࣾ
ࠓͷ༰ɿ 6 ü ձࣾհ ü ࣗવݴޠॲཧͷݚڀ։ൃ ü ࠓޙͷల
ࠓͷ༰ɿ 7 ü ձࣾհ ü ࣗવݴޠॲཧͷݚڀ։ൃ ü ࠓޙͷల
4UPDLNBSL *OD ձ໊ࣾ ετοΫϚʔΫגࣜձࣾ 4UPDLNBSL *OD ΦϑΟε ౦ژߓ۠ೆ੨ࢁஸ -*'03,.*/".*"0:"."4 ઃ
ཱ ݄ ۀऀ දऔక$&0 ྛ ୡ औక$50 ༗അ հ ࣄۀ༰ ࣗવݴޠॲཧٕज़Λ׆༻ͨ͠ "*4BB4ϓϩμΫτͷఏڙ ैۀһ ໊ ݄ ݱࡏ 63- IUUQTTUPDLNBSLDPKQ ձࣾհ
ࢲͨͪετοΫϚʔΫɺ ੈքதͷςΩετσʔλΛूΊɺ ਓ͕ؒ׆༻Ͱ͖ΔΑ͏ʹཧ͠ɺ ਓؒʹൃݟͰ͖ͳ͍ؔੑใΛ͓ಧ͚͠·͢ɻ
ࢲͨͪετοΫϚʔΫɺ ੈքதͷςΩετσʔλΛूΊɺ ਓ͕ؒ׆༻Ͱ͖ΔΑ͏ʹཧ͠ɺ ਓؒʹൃݟͰ͖ͳ͍ؔੑใΛ͓ಧ͚͠·͢ɻ χϡʔεهࣄ /-1
4UPDLNBSL *OD /-1Λ׆༻ͨ͠اۀ͚ͷใऩूɾੳͷ"*4BB4Λల։ cࣗવݴޠॲཧ"*ͰมΘΔΦʔϓϯσʔλ׆༻ͱࣄۀߏྗ "*͕ϏδωεʹඞཁͳχϡʔεΛਪન "*͕େͳใ͔ΒͷࢢௐࠪΛαϙʔτ
4UPDLNBSL*OD cಋೖ࣮ ۀݚڀ։ൃ෦Λத৺ʹྦྷܭ ࣾҎ্͕͝ར༻
4UPDLNBSL *OD cςΫϊϩδʔ 4UPDLNBSL͕ڧΈͱ͢Δࣗવݴޠॲཧٕज़ ΦʔϜ͔ࣾΒٕज़ॻग़൛ ܦΛ࢝Ίͱͨ͠ϝσΟΞܝࡌ ౦େֶ סݚڀࣨͱͷڞಉݚڀ
ࠓͷ༰ɿ 14 ü ձࣾհ ü ࣗવݴޠॲཧͷݚڀ։ൃ ü ࠓޙͷల
3FTFBSDIνʔϜͷϛογϣϯ 15 ʮੈքதͷςΩετσʔλ͔ΒϏδωε׆ಈͷใΛߏԽ͢Δʯ ü ߏԽͬͯԿʁ ü Ͳ͏ͬͯΔͷʁ ü Կͷʹཱͭͷʁ
ςΩετσʔλͷߏԽ 16 ü ੜͷςΩετσʔλͦͷ··ͰίϯϐϡʔλͰॲཧ͠ʹ͍͘ɻ ü ʮߏԽʯͱɺςΩετσʔλ͔Βݻ༗໊ࢺΩʔϫʔυΛநग़ͨ͠ ΓɺهࣄͷྨΛߦ͍ɺίϯϐϡʔλͰѻ͍͍͢Α͏ʹใΛཧ͢ Δ͜ͱɻ χϡʔεهࣄ ετοΫϚʔΫגࣜձࣾͷۙ
ߐਸࢯ͕ʹ౦ژͰߦΘ ΕΔ'PSLXFMM.-4UVEZʹొ ஃ͠ɺࣗવݴޠॲཧʹ͍ͭͯ ߨԋ͢Δɻ ΧςΰϦʔ ୯ޠ اۀ໊ ετοΫϚʔΫגࣜձࣾ ਓ໊ ۙߐਸ Ωʔϫʔυ ࣗવݴޠॲཧ நग़ ྨ ΧςΰϦʔ Ϋϥε هࣄྨ ࣾձɺܦࡁɺ࣏ɺࠃࡍɺ *5ɺՊֶɺͦͷଞ
Ͳ͏ͬͯߏԽΛߦ͏͔ʁ #&35ͷಛ Ø ྨɾநग़ͳͲͷࣗવݴޠॲཧͷ׆༻ࣄྫͰΑ͘ݱΕΔλεΫ͕ಘҙɻ Ø ຊޠʹಛԽͨ͠ࣄલֶशϞσϧ͕ެ։͞Ε͓ͯΓɺ୭Ͱ͑Δɻ Ø ൺֱతগͷσʔλ͔Βֶश͢Δ͜ͱ͕Ͱ͖Δʢඦͷσʔλ͔ΒͰύϑΥʔϚϯ ε͕ग़Δ͜ͱ͋Δʣɻ Ø
&OEUP&OEͰ༻͍Δ͜ͱ͕Ͱ͖ࣗવݴޠॲཧͷඇઐՈͰѻ͍͍͢ɻ #&35ʢ%FWMJOFUBM ʣͷొʹΑΓςΩετσʔλͷߏԽ͕&OEUP &OEͰਓͱ͍ۙϨϕϧͰߦ͑ΔΑ͏ʹͳͬͨɻ
4UPDLNBSL *OD #&35ʹΑΔࣗવݴޠॲཧೖ5SBOTGPSNFSTΛ ࣮ͬͨફϓϩάϥϛϯάʢΦʔϜࣾʣ ฤɿετοΫϚʔΫגࣜձࣾ ஶɿۙߐ ਸ ۚా ݈ଠ
ߐؒݟ ѥར ൃചɿ ݱࡏɺୈʂʂ ͝ධ͍͍͓ͨͩͯΓ·͢ʂ
ςΩετΛτʔΫϯʹׂͨ͠ͷΛೖྗ͢ΔͱɺͦΕͧΕͷτʔΫϯΛҙຯΛ өͨ͠ϕΫτϧʹͯ͘͠ΕΔɻ <$-4> ετοΫ ϚʔΫ Ͱ ·͢ #&35 #&35
ೖྗ τʔΫϯ ग़ྗ ʢϕΫτϧʣ ɻ <4&1> ɾɾɾ ɾɾɾ 𝒗𝟎 𝒗𝟏 𝒗𝟐 𝒗𝟑 𝒗𝟒 𝒗𝟕 𝒗𝟖 𝒗𝟗 ετοΫϚʔΫͰɾɾɾ·͢ɻ
ετοΫϚʔΫͰɾɾɾ·͢ɻ <$-4> ετοΫ ϚʔΫ Ͱ ·͢ #&35 #&35ʹΑΔςΩετྨ ೖྗ
τʔΫϯ ग़ྗ ʢϕΫτϧʣ ɻ <4&1> ɾɾɾ ɾɾɾ 𝒗𝟎 𝒗𝟏 𝒗𝟐 𝒗𝟑 𝒗𝟒 𝒗𝟕 𝒗𝟖 𝒗𝟗 *5 ྨϥϕϧ ྨث
ετοΫϚʔΫͰɾɾɾ·͢ɻ <$-4> ετοΫ ϚʔΫ Ͱ ·͢ #&35 #&35ʹΑΔݻ༗දݱநग़ɿاۀ໊நग़ ೖྗ
τʔΫϯ ग़ྗ ʢϕΫτϧʣ ɻ <4&1> ɾɾɾ ɾɾɾ 𝒗𝟎 𝒗𝟏 𝒗𝟐 𝒗𝟑 𝒗𝟒 𝒗𝟕 𝒗𝟖 𝒗𝟗 0 ϥϕϧ اۀ໊ 0 0 0 0 0 اۀ໊ اۀ໊ͱͯ͠நग़ ྨث
22 ü اۀ໊ࢢௐࠪʹ͓͚ΔॏཁͳཁૉͰ͋ΓɺϓϩμΫτͷ༷ʑͳػೳͰا ۀ໊நग़ͷ݁ՌΛ༻͍͍ͯΔɻ ü χϡʔεهࣄΛͱʹಠࣗͷֶशσʔλʢهࣄʣΛ࡞͢Δ͜ͱͰɺ χϡʔεهࣄʹಛԽͨ͠ߴਫ਼ͳاۀ໊நग़ϞσϧΛ#&35Λ༻͍ͯ։ൃ 正しく抽出できた企業 企業以外を誤検出 Stockmark
BERT 93% 9% Ύତଟ ቇΥଟ #&35ʹΑΔاۀ໊நग़ <5FDI#MPH>#&35ʹΑΔχϡʔεهࣄͷߏԽ ʢIUUQTUFDITUPDLNBSLDPKQCMPH@DPNQBOZ@FOUJUJFT@SFDPHOJUJPOʣ
اۀ໊நग़ͷϢʔεέʔεɿاۀͷҰཡԽ هࣄΛҰͭҰͭಡ·ͳͯ͘ɺࣗ વݴޠॲཧʹؔ͢Δχϡʔεهࣄ ʹݱΕͨاۀ͕Θ͔Δɻ
اۀ໊நग़ͷϢʔεέʔεɿاۀ໊ʹΑΔهࣄݕࡧ Google 検索 Astrategy (PPHMFݕࡧͰɺɺɺ༷ʑͳҙຯͷʮϥΠΦϯ ʯʹؔ͢Δهࣄ͕ग़ྗ͞ΕΔɻ "TUSBUFHZͰɺɺɺاۀͷʮϥΠΦϯʯʹؔ͢Δ هࣄͷΈ͕ग़ྗ͞ΕΔ ʮϥΠΦϯʯͱݕࡧ͢Δͱɾɾɾ
తʹԠͨ͡ॏཁͳจͷநग़ ü ߏԽͷҰͱͯ͠ɺχϡʔεهࣄ͔ΒಛఆͷҙຯΛ࣋ͭจͷநग़ߦ ͍ͬͯΔɻ 25 χϡʔεهࣄ ਓࡐෆʹରԠ͢ΔͨΊ ʹۀޮԽ͕ਐΜͰ͍ Δɻ"ࣾࠓ͔Βࣗવ ݴޠॲཧ"*Λ༻͍ͨۀ
ޮԽͷ࣮ূ࣮ݧΛߦ ͍ͬͯΔɻʹ ༻ԽΛࢦ͍ͯ͠Δɻ ΧςΰϦʔ จ ࣄྫจ ʢاۀͷऔΓΈΛද͢จʣ "ࣾࣗવݴޠॲཧ"*Λ༻͍ͨۀ ޮԽͷ࣮ূ࣮ݧΛߦ͍ͬͯΔɻ എܠจ ʢऔΓΈͷഎܠΛද͢จʣ ਓࡐෆʹରԠ͢ΔͨΊʹۀޮ Խ͕ਐΜͰ͍Δɻ কདྷจ ʢকདྷಈΛද͢จʣ ʹ༻ԽΛࢦ͍ͯ͠Δɻ ⋮ நग़
χϡʔεهࣄ͔ΒاۀͷऔΓΈࣄྫͷநग़ʢࣄྫूʣ ü ࢢௐࠪʹ͓͍ͯॏཁͳཁૉͰ͋Δɺ֤اۀͷऔΓΈࣄྫʢࣄྫจʣΛࣗಈ ͰҰཡԽ ü هࣄͷ֤จʹରͯ͠ʮࣄྫจʯͰ͋Δ͔ʮࣄྫจͰͳ͍ʯͰͳ͍͔ͷೋ ྨΛ#&35Ͱߦ͍ɺࣄྫจΛهࣄ͔Βநग़͢Δɻ
3FTFBSDIνʔϜͷϛογϣϯ 27 ʮੈքதͷςΩετσʔλ͔ΒϏδωε׆ಈͷใΛߏԽ͢Δʯ ü ߏԽͬͯԿʁ ςΩετσʔλ͔ΒใΛநग़ɾཧ͢Δ͜ͱɻ ü Ͳ͏ͬͯΔͷʁ ฐࣾͰ#&35ΛΑ͍ͬͯ͘·͢ʂ ü
Կͷʹཱͭͷʁ తʹԠͯ͡ॏཁͳใΛߏԽ͓͚ͯ͠ɺେྔͷهࣄΛ ಡ·ͣʹɺඞཁͳใΛޮΑ͘खʹೖΕΔ͜ͱ͕Ͱ͖·͢ʂ
ݚڀػؔͱͷڞಉݚڀ 28 ü ݄͔Β౦େֶͷס ݚڀࣨͱͷɺຊޠςΩετσ ʔλ͔Βͷࣝάϥϑߏஙʹؔ ͢ΔڞಉݚڀΛ։࢝ͨ͠ɻ ü ݴޠʹؔ͢Δຊ࣭తͳٞɺ ࠷ۙͷख๏ʹ͍ͭͯͷٞ͋
Γɺ୯७ʹָ͍͠ɻ ü ڞಉݚڀͷՌͷࣄۀߩݙݟ ͖͑ͯͨ ü ͜ͷ݄͔Βסݚͷֶੜ͕ਖ਼ࣾһ ͱͯ͠ೖࣾͨ͠ʂ ૾Ҏ্ʹɺػցֶशྖҬʹ͓͚ΔΞΧσ ϛΞͱ࢈ۀքͷڑͷۙ͞Λײ͍ͯ͡Δɻ
ػցֶशγεςϜͳΒͰͷۤ࿑ɿֶशσʔλ࡞ 29 ü ػցֶशϞσϧΛ࠾༻͢Δͱɺ৽͍͠ػೳΛ։ൃ͍ͨ͠ͱ͖ʹɺ৽͠ ֶ͍शσʔλΛҰ͔Β࡞Δඞཁ͕͋Δʢ͜ͱ͕ଟ͍ʣɻ ü యܕతʹඦʙهࣄ΄ͲʹΞϊςʔγϣϯΛߦ͑ɺ#&35Ͱͦ ͦ͜͜ಈ͘Ϟσϧ࡞ΕΔ͜ͱ͕ଟ͍ͷͰɺ୲ऀ͕Ξϊςʔγϣϯ͠ ͯ͠·͏߹͋ΔɻඞཁʹԠͯ͡Ξϊςʔγϣϯͷ֎ߦ͍ͬͯΔɻ ü
λεΫʹΑͬͯɺΞϊςʔγϣϯͷΨΠυϥΠϯΛ࡞Δͷʹ͕͔͔࣌ؒΔ߹͋Γɺ ՝ʹର͢Δղ૾ͷߴ͍୲ऀ͕খنͳֶशσʔληοτΛ࡞Δํ͕ޮతͳ͜ͱ ͋Δɻ ü σʔλͱ͖߹͏͜ͱͰɺࣗͨͪͷऔΓΜͰ͍Δ՝ʹର͢Δղ૾্͕͕Δɻ
ϓϩμΫτଆͱͷίϛϡχέʔγϣϯ 30 ü ࠷ۙͰɺϓϩμΫτͷൃలʹΑΓɺϓϩμΫτଆ͔ΒʮاۀͷऔΓ ΈࣄྫΛநग़͍ͨ͠ʯͱ͍͏Α͏ͳநతͳཁ͕૿͍͑ͯΔɻ ü ϓϩμΫτଆͱίϛϡχέʔγϣϯΛߦ͍ɺநతͳཁΛ/-1ͷ ʹམͱ͠ࠐΉ͜ͱ3FTFBSDIνʔϜͷׂʹͳ͍ͬͯΔɻ ü ݚڀ։ൃʹ͓͍ͯɺࣄۀʹର͢Δղ૾ͷߴ͕͞ॏཁʹͳ͖͍ͬͯͯΔɻ
ࠓͷ༰ɿ 31 ü ձࣾհ ü ࣗવݴޠॲཧͷݚڀ։ൃ ü ࠓޙͷల
Ϣʔβʔʹͱͬͯཧղ͍͢͠ϓϩμΫτΛࢦͯ͠ 32 ü ͜Ε·Ͱɺ"TUSBUFHZͰهࣄ͔ΒओʹΩʔϫʔυͷநग़Λߦ͍ɺͦΕΛ༻ ͍ͯࢢௐࠪΛࢧԉ͢ΔͨΊͷػೳΛఏڙ͖ͯͨ͠ɻ ü զʑͷϓϩμΫτʹՁΛײͯ͘͡ΕΔਓҰఆ͍ͨҰํͰɺϢʔβʔͷଟ ͍͘ํ͕͍͠ͱײ͍ͯͨ͡ɻ ü എܠ͕ࣝͳ͍ਓʹͱͬͯɺநग़͞ΕͨΩʔϫʔυͷҙຯΛཧղ͢Δͷ
͕͍͠ɻ ü ௐࠪܦݧ͕ͳ͍ਓʹͱͬͯɺେͳهࣄ͔Βநग़͞ΕͨଟͷΩʔϫʔ υ͔ΒΠϯαΠτΛಘΔͷ͍͠ɻ
Ωʔϫʔυ͔Βจ ü "TUSBUFHZͰ݄ʹΩʔϫʔυ͚ͩͰͳ͘จͷग़ྗߦ͏ࣄྫूʢ اۀͷऔΓΈΛද͢ʮࣄྫจʯΛҰཡԽ͢ΔػೳʣΛϦϦʔεɻ"TUSBUFHZ ͷத৺తͳػೳʹͳΓͭͭ͋Δɻ ü ਓؒʹͱͬͯจষ͕࠷ཧղ͍͢͠ϑΥʔϚοτͷҰͭͰ͋Δɻ
%BUBUP5FYU ࠓޙߏԽͱݴޠੜΛத৺ͱͯ͠ɺσʔλʹؚ·ΕΔΠϯαΠτػցֶश γεςϜͷग़ྗΛઆ໌͢ΔจষΛੜ͢Δٕज़Λ։ൃ͠ɺϓϩμΫτΛΑΓϢʔ βʔϑϨϯυϦʔʹ͍ͨ͠ɻ ü ୯Ұɾෳهࣄ͔Βͷཁੜ ü ࢢௐࠪϨϙʔτͷࣗಈੜ ü χϡʔεهࣄਪનʹ͓͚Δਪનཧ༝จͷੜ
ü ରܕͷ࣭Ԡ
ऴΘΓʹ 35 ࣗવݴޠॲཧͷݚڀ։ൃ໘ന͍ʂ ü ਂֶशͷൃలʹΑΓɺ࣮ݱՄೳͳࣗવݴޠॲཧͷαʔϏεͷ෯͕͕ͬͨ ü ͜ͷྖҬΞΧσϛΞͱ࢈ۀքͷڑ͕ۙ͘ɺ࠷৽ͷٕज़ΛϓϩμΫτʹ༻ ͍Δ͜ͱ͕Ͱ͖Δɻ ü ݴޠԞਂ͍
ετοΫϚʔΫʹڵຯΛ͍͍࣋ͬͯͨͩͨํ ü ετοΫϚʔΫ Ͱͷϙδγϣϯʹڵຯͷ͋Δํɿ IUUQTIFSQDBSFFSTWTUPDLNBSL ü ؾܰʹΛฉ͍ͯΈ͍ͨํɿ .FFUZ IUUQTNFFUZOFU ͰʮετοΫϚʔΫʯͰݕࡧʂ
ü ΠϕϯτʹࢀՃͯ͠Έ͍ͨํɿ 4UPDLNBSL 5FDI.FFUVQ IUUQTTUPDLNBSLDPOOQBTTDPNFWFOU ü ٕज़తͳʹڵຯͷ͋Δํɿ 4UPDLNBSL 5FDICMPH IUUQTUFDITUPDLNBSLDPKQ
4UPDLNBSL *OD