Submit Search
Upload
今日こそ理解するHot / Cold @社内RxSwift勉強会
•
14 likes
•
10,433 views
Yuki Takahashi
Follow
Rx ( RxSwift) における Hot / Cold の性質の説明です。
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 115
Download now
Download to read offline
Recommended
今日こそ理解するHot変換
今日こそ理解するHot変換
Yuki Takahashi
RxSwift コードリーディングの勘所@社内RxSwift勉強会
RxSwift コードリーディングの勘所@社内RxSwift勉強会
Yuki Takahashi
マイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPC
disc99_
iOSDC 2018 動画をなめらかに動かす技術
iOSDC 2018 動画をなめらかに動かす技術
Yuji Hato
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン
yohhoy
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
Scapyで作る・解析するパケット
Scapyで作る・解析するパケット
Takaaki Hoyo
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
Fumiya Sakai
Recommended
今日こそ理解するHot変換
今日こそ理解するHot変換
Yuki Takahashi
RxSwift コードリーディングの勘所@社内RxSwift勉強会
RxSwift コードリーディングの勘所@社内RxSwift勉強会
Yuki Takahashi
マイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPC
disc99_
iOSDC 2018 動画をなめらかに動かす技術
iOSDC 2018 動画をなめらかに動かす技術
Yuji Hato
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン
yohhoy
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
Scapyで作る・解析するパケット
Scapyで作る・解析するパケット
Takaaki Hoyo
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
Fumiya Sakai
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
Takuya Ueda
WebRTC SFU Mediasoup Sample update
WebRTC SFU Mediasoup Sample update
mganeko
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
Glibc malloc internal
Glibc malloc internal
Motohiro KOSAKI
Ruby でつくる型付き Ruby
Ruby でつくる型付き Ruby
mametter
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
Ethernetの受信処理
Ethernetの受信処理
Takuya ASADA
BoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうか
Yuki Miyatake
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
HoloLensで音声認識をする方法を色々試してみた
HoloLensで音声認識をする方法を色々試してみた
Takahiro Miyaura
TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門
雅也 山本
広告配信のための高速疎ベクトル検索エンジンの開発@WebDBフォーラム2015 #webdbf2015
広告配信のための高速疎ベクトル検索エンジンの開発@WebDBフォーラム2015 #webdbf2015
Yahoo!デベロッパーネットワーク
async/await のしくみ
async/await のしくみ
信之 岩永
【2000行弱!】x86用自作カーネルの紹介
【2000行弱!】x86用自作カーネルの紹介
Yuma Ohgami
最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう
Takashi Kajinami
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
Naoyuki Yamada
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
Atsushi KOMIYA
Twitterのsnowflakeについて
Twitterのsnowflakeについて
moai kids
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
MITSUNARI Shigeo
マルチスレッドRxSwift @ 社内RxSwift勉強会
マルチスレッドRxSwift @ 社内RxSwift勉強会
Yuki Takahashi
What is reactive programming?
What is reactive programming?
Kenji Tanaka
More Related Content
What's hot
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
Takuya Ueda
WebRTC SFU Mediasoup Sample update
WebRTC SFU Mediasoup Sample update
mganeko
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
Glibc malloc internal
Glibc malloc internal
Motohiro KOSAKI
Ruby でつくる型付き Ruby
Ruby でつくる型付き Ruby
mametter
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
Ethernetの受信処理
Ethernetの受信処理
Takuya ASADA
BoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうか
Yuki Miyatake
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
HoloLensで音声認識をする方法を色々試してみた
HoloLensで音声認識をする方法を色々試してみた
Takahiro Miyaura
TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門
雅也 山本
広告配信のための高速疎ベクトル検索エンジンの開発@WebDBフォーラム2015 #webdbf2015
広告配信のための高速疎ベクトル検索エンジンの開発@WebDBフォーラム2015 #webdbf2015
Yahoo!デベロッパーネットワーク
async/await のしくみ
async/await のしくみ
信之 岩永
【2000行弱!】x86用自作カーネルの紹介
【2000行弱!】x86用自作カーネルの紹介
Yuma Ohgami
最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう
Takashi Kajinami
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
Naoyuki Yamada
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
Atsushi KOMIYA
Twitterのsnowflakeについて
Twitterのsnowflakeについて
moai kids
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
MITSUNARI Shigeo
What's hot
(20)
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
WebRTC SFU Mediasoup Sample update
WebRTC SFU Mediasoup Sample update
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Glibc malloc internal
Glibc malloc internal
Ruby でつくる型付き Ruby
Ruby でつくる型付き Ruby
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Ethernetの受信処理
Ethernetの受信処理
BoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうか
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
HoloLensで音声認識をする方法を色々試してみた
HoloLensで音声認識をする方法を色々試してみた
TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門
広告配信のための高速疎ベクトル検索エンジンの開発@WebDBフォーラム2015 #webdbf2015
広告配信のための高速疎ベクトル検索エンジンの開発@WebDBフォーラム2015 #webdbf2015
async/await のしくみ
async/await のしくみ
【2000行弱!】x86用自作カーネルの紹介
【2000行弱!】x86用自作カーネルの紹介
最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
Twitterのsnowflakeについて
Twitterのsnowflakeについて
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
C/C++プログラマのための開発ツール
C/C++プログラマのための開発ツール
Viewers also liked
マルチスレッドRxSwift @ 社内RxSwift勉強会
マルチスレッドRxSwift @ 社内RxSwift勉強会
Yuki Takahashi
What is reactive programming?
What is reactive programming?
Kenji Tanaka
コードを書きやすくしてくれる Xcode の基本機能 #NSStudy #devsap
コードを書きやすくしてくれる Xcode の基本機能 #NSStudy #devsap
Tomohiro Kumagai
Cold hot working_annealing
Cold hot working_annealing
Pradeep I
Thesis_AsmaHanif_UnderGrad
Thesis_AsmaHanif_UnderGrad
Asma Hanif Abdul Karim
Final Design Report Steelmaking
Final Design Report Steelmaking
Devin Rowe
Coil Coating
Coil Coating
durolast
Finmet process
Finmet process
Komal Vaish
Extrusion, DIrect and indirect Extrusoin Hot and Cold extrusion, Application ...
Extrusion, DIrect and indirect Extrusoin Hot and Cold extrusion, Application ...
Muhammad Awais
今日から始めるRxSwift
今日から始めるRxSwift
Kaoru Hotate
Fundamentals of Stainless steel melting
Fundamentals of Stainless steel melting
Amartya Talukdar
Concepts of rolling, annealing, quenching, drawing, cold working, hot working...
Concepts of rolling, annealing, quenching, drawing, cold working, hot working...
Talha Saleem
C 18 - steel melting
C 18 - steel melting
cpandiv
Introduction to NotifyPropertyChangedGenerator
Introduction to NotifyPropertyChangedGenerator
Yoshifumi Kawai
blast-furnace-and-basic-oxygen-process
blast-furnace-and-basic-oxygen-process
Achmad Shofi
Steelmaking, Shaping, Treating and Processing, Steel and Steel Products (Fast...
Steelmaking, Shaping, Treating and Processing, Steel and Steel Products (Fast...
Ajjay Kumar Gupta
The History of Reactive Extensions
The History of Reactive Extensions
Yoshifumi Kawai
Raw materials and coatings - basic training
Raw materials and coatings - basic training
Ruukki
Factors That Affects Properties Of Steel
Factors That Affects Properties Of Steel
Naisarg Sagathiya
Green Metal Formwork for construction of hi-rise building
Green Metal Formwork for construction of hi-rise building
Acepac
Viewers also liked
(20)
マルチスレッドRxSwift @ 社内RxSwift勉強会
マルチスレッドRxSwift @ 社内RxSwift勉強会
What is reactive programming?
What is reactive programming?
コードを書きやすくしてくれる Xcode の基本機能 #NSStudy #devsap
コードを書きやすくしてくれる Xcode の基本機能 #NSStudy #devsap
Cold hot working_annealing
Cold hot working_annealing
Thesis_AsmaHanif_UnderGrad
Thesis_AsmaHanif_UnderGrad
Final Design Report Steelmaking
Final Design Report Steelmaking
Coil Coating
Coil Coating
Finmet process
Finmet process
Extrusion, DIrect and indirect Extrusoin Hot and Cold extrusion, Application ...
Extrusion, DIrect and indirect Extrusoin Hot and Cold extrusion, Application ...
今日から始めるRxSwift
今日から始めるRxSwift
Fundamentals of Stainless steel melting
Fundamentals of Stainless steel melting
Concepts of rolling, annealing, quenching, drawing, cold working, hot working...
Concepts of rolling, annealing, quenching, drawing, cold working, hot working...
C 18 - steel melting
C 18 - steel melting
Introduction to NotifyPropertyChangedGenerator
Introduction to NotifyPropertyChangedGenerator
blast-furnace-and-basic-oxygen-process
blast-furnace-and-basic-oxygen-process
Steelmaking, Shaping, Treating and Processing, Steel and Steel Products (Fast...
Steelmaking, Shaping, Treating and Processing, Steel and Steel Products (Fast...
The History of Reactive Extensions
The History of Reactive Extensions
Raw materials and coatings - basic training
Raw materials and coatings - basic training
Factors That Affects Properties Of Steel
Factors That Affects Properties Of Steel
Green Metal Formwork for construction of hi-rise building
Green Metal Formwork for construction of hi-rise building
Recently uploaded
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur High Profile
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
RajaP95
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
ranjana rawat
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Call Girls in Nagpur High Profile
Extrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
120cr0395
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
Suhani Kapoor
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Dr.Costas Sachpazis
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
upamatechverse
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
Suhani Kapoor
result management system report for college project
result management system report for college project
Tonystark477637
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur High Profile
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
purnimasatapathy1234
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
RajaP95
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
9953056974 Low Rate Call Girls In Saket, Delhi NCR
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
SIVASHANKAR N
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
slot gacor bisa pakai pulsa
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls in Nagpur High Profile
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
ranjana rawat
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur High Profile
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
sivaprakash250
Recently uploaded
(20)
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Extrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
result management system report for college project
result management system report for college project
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
今日こそ理解するHot / Cold @社内RxSwift勉強会
1.
Hot / Cold @
RxSwift
2.
Rx
3.
4.
Hot / Cold
5.
Hot / Cold •
Hot / Cold • Hot / Cold • Hot / Cold • Rx … Rx …
6.
( ^o^)
7.
( ^o^) ※ Bond
8.
• Hot /
Cold RxSwift
9.
• Hot • Hot
/ Cold
10.
• ( )
Hot / Cold •
11.
12.
1 Hot / Cold Observable
13.
14.
Observable
15.
Observable • Subject • PublishSubject,
BehaviorSubject, ReplaySubject …
16.
Observable • Subject • PublishSubject,
BehaviorSubject, ReplaySubject … • Operator • map, filter, flatMap … • create, of, just, error …
17.
Observable • Subject • PublishSubject,
BehaviorSubject, ReplaySubject … • Operator ← !? • map, filter, flatMap … • create, of, just, error …
18.
2 Operator ( ) Observable
19.
filter
20.
filter Observable
21.
filter filter operator Filter
22.
just
23.
just Observable
24.
just Just
25.
• Hot /
Cold Observable • Subject Observable • Operator ( ) Observable
26.
Hot / Cold
27.
1 Subject Hot
28.
Subject • PublishSubject • BehaviorSubject •
ReplaySubject Hot
29.
2 Operator Cold
30.
Hot Hot Hot • multicast /
publish • replay / replayAll • connect / refCount • share / shareReplay • shareReplayLatestWhileConnected
31.
Subject Hot
32.
Map Operator Cold
33.
Filter Operator Cold
34.
Subject Map Filter ↑
35.
• Subject Hot •
Operator Cold • publish Operator Hot ( )
36.
Hot / Cold
37.
Hot / Cold
38.
Question1
39.
40.
Answer …
41.
A.
42.
Cold 1 Cold Observable subscribe
43.
Cold subscribe Sequence
44.
Cold subscribe Sequence Map
45.
Cold subscribe subscribe →
46.
subscribe
47.
subscribe
48.
Hot 1 Hot Observable subscribe
49.
Question2
50.
51.
Answer …
52.
A.
53.
Subject Map
54.
Subject Map
55.
• = Cold subscribe Subject
Map Subject
56.
Question3
57.
58.
Answer …
59.
A. 1, 2,
3
60.
Subject Map Hot
61.
Hot Cold Hot Observable
subscribe Subject Map Hot subscribe
62.
• Cold Observable
subscribe • Hot Observable subscribe • Hot Observable Cold
63.
Hot
64.
Hot 2 Hot Observable
65.
Cold 2 Cold Observable
66.
• = Observer •
Cold Observable Observer 1 • Hot Observable Observer ※ Observer Observable
67.
68.
69.
70.
Sequence Map
71.
Sequence Map Observer 1
subscribe
72.
Sequence Map Observer Map
Observer 2 subscribe 1 …
73.
Sequence Map Observer Map
Observer
74.
Sequence Map Observer Sequence
Map Observer
75.
Sequence Map Observer Sequence
Map Observer 2 !!
76.
77.
78.
Sequence Map Observer Sequence
Map Observer 2
79.
Hot Hot ( ) (
Hot )
80.
Hot
81.
Hot ( Hot )
82.
Hot Sequence Map Hot
83.
Hot Sequence Map Hot
Observer 1 subscribe
84.
Hot Sequence Map Hot
Observer Observer 2 subscribe
85.
Hot Sequence Map Observer Hot Observer
86.
Hot Sequence Map Observer Hot Observer !!!
87.
88.
89.
Sequence Map Observer Hot Observer print
90.
• Cold Observable •
Hot Observable
91.
Hot
92.
Question4
93.
( Hot ) Hot
( )
94.
Answer …
95.
A. 2, 4,
6
96.
2 subscribe
97.
Hot 3 Hot Observable Observer
98.
• Observer Cold ( ) •
(Next) subscribe
99.
observer 1
100.
2,4,6
101.
Next
102.
103.
104.
Cold
105.
Cold Sequence Map Observer Sequence
Map Observer
106.
Cold 2 Observer Sequence Map Observer Sequence
Map Observer
107.
Cold
108.
109.
Cold 1 Cold Observable subscribe
110.
Hot 1 Hot Observable subscribe
111.
Hot 2 Hot Observable
112.
Cold 2 Cold Observable
113.
Hot 3 Hot Observable Observer
114.
115.
• ( ) • Hot
Download now