package Ġcom . bad oo . ri bs . example . welcome Ċ Ċ import Ġcom . bad oo . ri bs . client helper . connector . Connect able Ċ import Ġcom . bad oo . ri bs . core . R ib Ċ import Ġcom . bad oo . ri bs . core . custom isation . R ib Custom isation Ċ import Ġcom . bad oo . ri bs . example . auth . Auth DataSource Ċ import Ġcom . bad oo . ri bs . example . welcome . Welcome . Input Ċ import Ġcom . bad oo . ri bs . example . welcome . Welcome . Output Ċ Ċ interface ĠWelcome Ġ: ĠR ib , ĠConnect able < Input , ĠOutput > Ġ{ ĊĊĠĠĠ Ġinterface ĠDependency Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġauth DataSource : ĠAuth DataSource ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsealed Ġclass ĠInput ĊĊĠĠĠ Ġsealed Ġclass ĠOutput Ġ{ ĊĠĠĠĠĠĠĠ Ġobject ĠRegister Clicked Ġ: ĠOutput () ĊĠĠĠĠĠĠĠ Ġobject ĠLogin Clicked Ġ: ĠOutput () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠCustom isation ( ĊĠĠĠĠĠĠĠ Ġval Ġview Factory : ĠWelcome View . Factory Ġ= ĠWelcome View Impl . Factory () ĊĠĠĠ Ġ) Ġ: ĠR ib Custom isation Ċ } Ċ