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
Open the door!
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hugo Visser
April 30, 2020
Technology
83
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Open the door!
Presentation for GDG DutchAUG about automating my garage door and controlling it with Android
Hugo Visser
April 30, 2020
More Decks by Hugo Visser
See All by Hugo Visser
LLMs on Small devices [DutchAUG]
hugovisser
1
160
Modern Android dependency injection
hugovisser
1
280
Android dependency injection in 2022
hugovisser
1
240
Navigating the Navigation Component
hugovisser
1
170
Reactive UIs with Data Binding
hugovisser
2
170
Up close and personal with Nearby (DevFest Trondheim)
hugovisser
0
120
Work, Work - WorkManager
hugovisser
0
110
Up close and personal with Nearby
hugovisser
3
510
Room: the blessed object mapper
hugovisser
0
220
Other Decks in Technology
See All in Technology
複数プロダクト組織のAIネイティブ化における戦略 / AICon2026_kude
rakus_dev
0
310
10年目を迎えた「ABEMA」がどのように AI 活用を推進して、AI 駆動開発にシフトしているのか / How ABEMA, entering its 10th year, is promoting the use of AI and shifting toward AI-driven development
miyukki
1
380
大量データに対しても、生成AIを用いてリーズナブルにデータ加工をしたい!Databricksのai_queryについて調べてみた
kamoshika
2
290
Aurora MySQL 8.4リリース! Rubyistが備えること / what-rubyist-should-prepare-for-aurora-mysql-8-4
fkmy
0
1.2k
壊して学ぶAWS CDK: そのcdk deployで消えるもの、残るもの
k_adachi_01
1
500
Alphaモジュール使っていいのかい!?いけないのかい!?どっちなんだいっ!?
watany
1
330
全社でのソフトウェアサプライチェーン攻撃対策をやってみた with Takumi Guard
z63d
0
300
そのドキュメント、自動化しませんか?
yuksew
1
430
AI時代におけるテストの基礎の再定義 / Rethinking the Fundamentals of Testing in the AI Era
mineo_matsuya
14
5.4k
AI Coding Agent時代のcdk-nagガードレール 〜組織ルールを強制CIで守り抜く設計の挑戦〜
mhrtech
3
530
仕様駆動開発、導入半年。「本当に速くなってるの?」にデータで答える / AICon2026_hirakawa
rakus_dev
0
330
AI時代のPlaywright活用(システムテストを自動化する ー 実行エンジンにPla ywrightを選んだ理由)
ynisqa1988
2
1k
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.7k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
180
Building Applications with DynamoDB
mza
96
7.1k
Paper Plane (Part 1)
katiecoart
PRO
1
9.8k
Music & Morning Musume
bryan
47
7.3k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
380
Game over? The fight for quality and originality in the time of robots
wayneb77
1
230
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
520
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Transcript
3TIRXLIHSSV KIXXMRKMRXSXLIKEVEKI[MXL%RHVSMH'SVSYXMRIWERHEFYRGLSJSXLIVWXYJJ ,YKS:MWWIV $FSXXIEET LYKS$PMXXPIVSFSXWRP
None
None
*RDOV &RQWUROZLWKDQDSSYVUHPRWH 2SHQWKHGRRUIURPP\PRWRUF\FOH ZLWKRXWUHDFKLQJIRUWKHSKRQH %RQXVRSHQIURPP\:HDU26ZDWFK /RFDOQHWZRUNRQO\VRPHDGGHGVHFXULW\ 7273
+DUGZDUH 'HIDXOWFRPPXQLFDWLRQ5)ZLWKUROOLQJFRGHV &RQQHFWLRQIRULPSXOVHVZLWFKξ 2SWLRQDO%L6HFXUJDWHZD\ FRPHVZLWKXJO\DSS ȹ 8$3H[WHQVLRQERDUGĺFORVHGSURWRFRO
ȹ
(63GHYERDUG &RQWUROLPSXOVHVZLWFKZLWK(63EDVHGPLFURFRQWUROOHUUHOD\
None
7RJJOH XQKFRWNUG4GNC[ ] FKIKVCN9TKVG &*+)* FGNC[ FKIKVCN9TKVG
&.19 _
None
None
:HEVRFNHW
:HEVRFNHW SURWREXI
:HEVRFNHW +DVJRRGVXSSRUWRQ(63 EXWQR7/6ZVV %LGLUHFWLRQDOEURDGFDVWĺVWDWXVRIWKHGRRURSHQLQJFORVLQJ F OOKLPSOHPHQWDWLRQRQ$QGURLG
3URWRFROEXIIHUV &RPSDFWUHSUHVHQWDWLRQ XQOLNH-621 %DFNZDUG IRUZDUGFRPSDWLEOH &URVVSODWIRUP FRGHJHQHUDWLRQ QDQRSESURWROLWH
3URWREXI OGUUCIG&QQT%QOOCPF] GPWO%QOOCPF] 12'0 %.15' 61)).' _ KPVQVR %QOOCPFEQOOCPF KPVFWTCVKQP
_
3URWREXI HWPUGPF6QIING ] XCNOGUUCIG5GUCOG2TQVQU&QQT%QOOCPFPGY$WKNFGT CRRN[] EQOOCPF5GUCOG2TQVQU&QQT%QOOCPF%QOOCPF61)).' QVRTGRQUKVQT[IGV1VR _ XCND[VGUOGUUCIGDWKNF VQ$[VG#TTC[
UQEMGVUGPF $[VG5VTKPIQH D[VGU _
3URWREXI &QQT%QOOCPFOGUUCIG&QQT%QOOCPFAKPKVA\GTQ KH RDAFGEQFG UVTGCO&QQT%QOOCPFAHKGNFUOGUUCIG ] KHVJGQVREQFGKUXCNKF UYKVEJ
OGUUCIGEQOOCPF ] ECUG&QQT%QOOCPFA%QOOCPFA61)).' JCPFNGVJKUEQOOCPF _ _
'LVFRYHU\
'LVFRYHU\ZLWKP'16 FODVVLQ$UGXLQR N?<I<B@MLQ$QGURLG
1VG0DQDJHU 7ZRVWHSSURFHVVGLVFRYHUWKHQUHVROYHĺLSSRUWRIWKHVHUYLFH 7XUQFDOOEDFNKHOOLQWRNPNK@I?IXQFWLRQ
'LVFRYHU\ UWURGPFHWPFKUEQXGT&GXKEG &KUEQXGT[4GUWNV UWURGPF%CPEGNNCDNG%QTQWVKPG]EQPVKPWCVKQP XCNNKUVGPGTQDLGEV0UF/CPCIGT&KUEQXGT[.KUVGPGT] QXGTTKFGHWPQP5GTXKEG(QWPF UGTXKEG+PHQ0UF5GTXKEG+PHQ ] TGUQNXGVJGUGTXKEG
PUF/CPCIGTTGUQNXG5GTXKEG UGTXKEG+PHQ &GXKEG4GUQNXG.KUVGPGT EQPVKPWCVKQP _ _
'LVFRYHU\ UWURGPFHWPFKUEQXGT&GXKEG &KUEQXGT[4GUWNV UWURGPF%CPEGNNCDNG%QTQWVKPG]EQPVKPWCVKQP XCNNKUVGPGTQDLGEV0UF/CPCIGT&KUEQXGT[.KUVGPGT] QXGTTKFGHWPQP5GTXKEG(QWPF UGTXKEG+PHQ0UF5GTXKEG+PHQ ] TGUQNXGVJGUGTXKEG
PUF/CPCIGTTGUQNXG5GTXKEG UGTXKEG+PHQ &GXKEG4GUQNXG.KUVGPGT EQPVKPWCVKQP _ _
'LVFRYHU\ UWURGPFHWPFKUEQXGT&GXKEG &KUEQXGT[4GUWNV UWURGPF%CPEGNNCDNG%QTQWVKPG]EQPVKPWCVKQP XCNNKUVGPGTQDLGEV0UF/CPCIGT&KUEQXGT[.KUVGPGT] QXGTTKFGHWPQP5GTXKEG(QWPF UGTXKEG+PHQ0UF5GTXKEG+PHQ ] TGUQNXGVJGUGTXKEG
PUF/CPCIGTTGUQNXG5GTXKEG UGTXKEG+PHQ &GXKEG4GUQNXG.KUVGPGT EQPVKPWCVKQP _ _
'LVFRYHU\ UWURGPFHWPFKUEQXGT&GXKEG &KUEQXGT[4GUWNV UWURGPF%CPEGNNCDNG%QTQWVKPG]EQPVKPWCVKQP XCNNKUVGPGT NKUVGPGT EQPVKPWCVKQPKPXQMG1P%CPEGNNCVKQP] PUF/CPCIGTUVQR5GTXKEG&KUEQXGT[ NKUVGPGT
_ PUF/CPCIGTFKUEQXGT5GTXKEGU ūAUGUCOGAVERŬ 0UF/CPCIGT24161%1.A&05A5& NKUVGPGT _
'LVFRYHU\ RTKXCVGENCUU&GXKEG4GUQNXG.KUVGPGT RTKXCVGXCNEQPVKPWCVKQP%CPEGNNCDNG%QPVKPWCVKQP&KUEQXGT[4GUWNV 0UF/CPCIGT4GUQNXG.KUVGPGT] QXGTTKFGHWPQP5GTXKEG4GUQNXGF UGTXKEG+PHQ0UF5GTXKEG+PHQ ] EQPVKPWCVKQPTGUWOG &KUEQXGT[4GUWNV5WEEGUU UGTXKEG+PHQJQUV
UGTXKEG+PHQRQTV _ _
'LVFRYHU\ GKVJGT&KUEQXGT[4GUWNV5WEEGUUQT&KUEQXGT[4GUWNV'TTQT XCNTGUWNV&GXKEG.QECVQT EQPVGZV FKUEQXGT&GXKEG
8VLQJ GJR
&RQQHFWLRQ :HFDQPRGHOWKLVDVD GJRRIHYHQWVVWDWHV 'LVFRQQHFWHG &RQQHFWHG 0HVVDJH
&RQQHFWLRQ)ORZ UGCNGFENCUU9GD5QEMGV'XGPV] FCVCENCUU%QPPGEVGF XCNYU9GD5QEMGV 9GD5QEMGV'XGPV FCVCENCUU/GUUCIG XCNYU9GD5QEMGV XCND[VGU$[VG5VTKPI 9GD5QEMGV'XGPV QDLGEV&KUEQPPGEVGF9GD5QEMGV'XGPV
_
&RQQHFWLRQ)ORZ ENCUU&GXKEG%QPPGEVKQP RTKXCVGXCNTGSWGUV4GSWGUV ] RTKXCVGXCNENKGPV1M*VVR%NKGPV$WKNFGT RKPI+PVGTXCN 6KOG7PKV5'%10&5 DWKNF HWPEQPPGEV (NQY9GD5QEMGV'XGPV
ECNNDCEM(NQY] XCNUQEMGVENKGPVPGY9GD5QEMGV TGSWGUV 9GD5QEMGV.KUVGPGT VJKU CYCKV%NQUG] EQNNGEV KUECPEGNNGF UQEMGVENQUG PWNN _ _
8VLQJ><GG=<>F GJR ENCUU&GXKEG%QPPGEVKQP RTKXCVGXCNTGSWGUV4GSWGUV ] RTKXCVGXCNENKGPV1M*VVR%NKGPV$WKNFGT RKPI+PVGTXCN 6KOG7PKV5'%10&5 DWKNF HWPEQPPGEV
(NQY9GD5QEMGV'XGPV ECNNDCEM(NQY] XCNUQEMGVENKGPVPGY9GD5QEMGV TGSWGUV 9GD5QEMGV.KUVGPGT VJKU CYCKV%NQUG] EQNNGEV KUECPEGNNGF UQEMGVENQUG PWNN _ _
8VLQJFDOOEDFN)ORZ ENCUU&GXKEG%QPPGEVKQP RTKXCVGXCNTGSWGUV4GSWGUV ] RTKXCVGXCNENKGPV1M*VVR%NKGPV$WKNFGT RKPI+PVGTXCN 6KOG7PKV5'%10&5 DWKNF HWPEQPPGEV (NQY9GD5QEMGV'XGPV
ECNNDCEM(NQY] XCNUQEMGVENKGPVPGY9GD5QEMGV TGSWGUV 9GD5QEMGV.KUVGPGT VJKU CYCKV%NQUG] EQNNGEV KUECPEGNNGF UQEMGVENQUG PWNN _ _
8VLQJFDOOEDFN)ORZ ENCUU.KUVGPGT RTKXCVGXCNUEQRG2TQFWEGT5EQRG9GD5QEMGV'XGPV 9GD5QEMGV.KUVGPGT ] QXGTTKFGHWPQP1RGP YGD5QEMGV9GD5QEMGVTGURQPUG4GURQPUG ] UEQRGQHHGT 9GD5QEMGV'XGPV%QPPGEVGF
YGD5QEMGV _ QXGTTKFGHWPQP/GUUCIG YGD5QEMGV9GD5QEMGVD[VGU$[VG5VTKPI ] UEQRGQHHGT 9GD5QEMGV'XGPV/GUUCIG YGD5QEMGV D[VGU _ _
8VLQJFDOOEDFN)ORZ ENCUU.KUVGPGT RTKXCVGXCNUEQRG2TQFWEGT5EQRG9GD5QEMGV'XGPV 9GD5QEMGV.KUVGPGT ] QXGTTKFGHWPQP1RGP YGD5QEMGV9GD5QEMGVTGURQPUG4GURQPUG ] UEQRGQHHGT 9GD5QEMGV'XGPV%QPPGEVGF
YGD5QEMGV _ QXGTTKFGHWPQP/GUUCIG YGD5QEMGV9GD5QEMGVD[VGU$[VG5VTKPI ] UEQRGQHHGT 9GD5QEMGV'XGPV/GUUCIG YGD5QEMGV D[VGU _ _
8VLQJFDOOEDFN)ORZ ENCUU.KUVGPGT RTKXCVGXCNUEQRG2TQFWEGT5EQRG9GD5QEMGV'XGPV 9GD5QEMGV.KUVGPGT ] QXGTTKFGHWPQP1RGP YGD5QEMGV9GD5QEMGVTGURQPUG4GURQPUG ] UEQRGQHHGT 9GD5QEMGV'XGPV%QPPGEVGF
YGD5QEMGV _ QXGTTKFGHWPQP/GUUCIG YGD5QEMGV9GD5QEMGVD[VGU$[VG5VTKPI ] UEQRGQHHGT 9GD5QEMGV'XGPV/GUUCIG YGD5QEMGV D[VGU _ _
8VLQJWKHFRQQHFWLRQ NCWPEJ] TGRQUKVQT[ETGCVG%QPPGEVKQP EQNNGEV] YJGP KV ] KU&GXKEG%QPPGEVKQP9GD5QEMGV'XGPV%QPPGEVGF JCPFNG
KU&GXKEG%QPPGEVKQP9GD5QEMGV'XGPV&KUEQPPGEVGF UVWHH KU&GXKEG%QPPGEVKQP9GD5QEMGV'XGPV/GUUCIG RCTUGKV _ _ _
>M@<O@JII@>ODJI (QVXUH:LILFRQQHFWLYLW\ 'LVFRYHUGHYLFH (VWDEOLVKFRQQHFWLRQUHWU\FRQQHFWLRQHUURUV
(QVXULQJZLILFRQQHFWLYLW\ UWURGPFHWPIGV9KHK0GVYQTM ECNNDCEM(NQY] XCNEOEQPVGZVIGV5[UVGO5GTXKEG %QPPGEVKXKV[/CPCIGTENCUULCXC XCNECNNDCEMQDLGEV%QPPGEVKXKV[/CPCIGT0GVYQTM%CNNDCEM ] QXGTTKFGHWPQP#XCKNCDNG PGVYQTM0GVYQTM
] EQPPGEVKXKV[/CPCIGTDKPF2TQEGUU6Q0GVYQTM PGVYQTM QHHGT PGVYQTM _ _ EOTGSWGUV0GVYQTM 0GVYQTM4GSWGUV$WKNFGT CFF%CRCDKNKV[ 0GVYQTM%CRCDKNKVKGU0'6A%#2#$+.+6;A016A/'6'4'& CFF6TCPURQTV6[RG 0GVYQTM%CRCDKNKVKGU64#052146A9+(+ DWKNF ECNNDCEM CYCKV%NQUG] EQPPGEVKXKV[/CPCIGTWPTGIKUVGT0GVYQTM%CNNDCEM ECNNDCEM _ _
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
%XLOGFRQQHFWLRQIORZ TGVWTPFKUEQXGT9KVJ9KHKHNCV/CR.CVGUV]JQUV &GXKEG%QPPGEVKQP 4GSWGUV$WKNFGT WTN YU]JQUV_ DWKNF EQPPGEV _TGVT[9JGP]ECWUGCVVGORV
GOKV &GXKEG%QPPGEVKQP9GD5QEMGV'XGPV&KUEQPPGEVGF FGNC[ VTWG _ _FKUVKPEV7PVKN%JCPIGF
None
2SHQLQJIURPWKHPRWRUF\FOH %OXHWRRWKKHDGVHW )LUVWLGHDKHDGVHWĺJHRIHQFHĺVWDUWGLVFRYHU\ĺGLVFRQQHFWKHDGVHW *HQHUDOO\QR:LILZLWKRXWVFUHHQRQ :LILVFDQQLQJLVPRUHDQGPRUHUHVWULFWHG
None
2SHQLQJIURPWKHPRWRUF\FOH $GG(63EDVHGPLFURFRQWUROOHU EXFNFRQYHUWHU ĺ%/(:LIL %/(IRUSKRQHFRQQHFWLRQ :LILIRUFRQQHFWLQJWR(63JDUDJH
2SHQLQJIURPWKHPRWRUF\FOH +HDGVHWĺVWDUWVWRSIRUHJURXQGVHUYLFH )RUHJURXQGVHUYLFHĺFRQQHFWLRQIORZWRPRWRUF\FOH(63 (63ĺQRWLI\ZKHQFRQQHFWHGSUR[\IURPSKRQHWRJDUDJH 2QO\SRZHUHGRQZKHQLJQLWLRQNH\LVWXUQHGRQ
%/(VWDWXVSURWREXI OGUUCIG%QPPGEVKQP5VCVWU] EQPPGEVGFVQICTCIG DQQNEQPPGEVGF WRVKOGUKPEGDQQV WKPVWRVKOG
YKHKEQPPGEVGFVKOG WKPVYKHK7RVKOG _
/LVWHQLQJIRUFRQQHFWLRQ 'KHHGNEQPPGEV EQPVGZV $NWGVQQVJ#FCRVGTIGV&GHCWNV#FCRVGT IGV4GOQVG&GXKEG ICVGYC[ EQNNGEV]ENKGPV NCWPEJ]
YJGP%QPPGEVGFKUUWDUETKDKPIVQ$.'PQVKHKECVKQPU YJGP%QPPGEVGF ENKGPV ]UVCVWU OCZOKPWVGVQGUVCDNKUJCEQPPGEVKQP KH UVCVWUYKHK7RVKOG ] VVU!URGCM 1RGPKPI6GZV6Q5RGGEJ37'7'A#&&PWNNQRGP UGPF1RGP%QOOCPF ENKGPV _ _ _ _
6HFXULW\ 1RVHFUHWNH\RQWKHPRWRUF\FOHPLFURFRQWUROOHU 6HFUHWLVRQO\VWRUHGRQWKHJDUDJH(63DQGSKRQH 6HFXUHVKDUHGSUHIHUHQFHVZLWK<I?MJD?SN@>PMDOT
(QFU\SWHG6KDUHG3UHIHUHQFHV HWPETGCVG2TGHU EQPVGZV%QPVGZV 5JCTGF2TGHGTGPEGU] XCNMG[/CUVGT-G[UIGV1T%TGCVG /CUVGT-G[U#'5A)%/A52'% TGVWTP'PET[RVGF5JCTGF2TGHGTGPEGUETGCVG ]$WKNF%QPHKI#22.+%#6+10A+&_UGVVKPIU MG[ EQPVGZV
'PET[RVGF5JCTGF2TGHGTGPEGU2TGH-G['PET[RVKQP5EJGOG#'5A5+8 'PET[RVGF5JCTGF2TGHGTGPEGU2TGH8CNWG'PET[RVKQP5EJGOG#'5A)%/ _
'HPR
,QWUR /HYHOVHFXULW\ /HYHOJHWWLQJLWRSHQ PLFURFRQWUROOHU :HEVRFNHW 3URWREXI )ORZ 'LVFRYHU\