package Ġcom . air bnb . android . re co il Ċ Ċ import Ġandroid . view . ViewGroup ĊĊ Ċ object ĠRe co il Ġ{ ĊĊĠ Ġfun Ġrender ( element : ĠElement , Ġroot View : ĠViewGroup ) Ġ{ ĊĠĠĠ Ġval Ġinstance Ġ= Ġroot View . re co il Root ?. root Instance ĊĠĠĠ Ġif Ġ( instance Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġupdate Instance ( element , Ġroot View , Ġinstance ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠ Ġmount Instance ( element , Ġroot View ) ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġfun Ġun mount ( root View : ĠViewGroup ) Ġ{ ĊĠĠĠ Ġval Ġinstance Ġ= Ġroot View . re co il Root ?. root Instance ĊĠĠĠ Ġif Ġ( instance Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġun mount Instance ( instance , Ġroot View ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠ Ġthrow ĠIllegalArgumentException (" Must Ġpass Ġin Ġa Ġview Ġwith Ġa Ġre co il Ġroot ") ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġprivate Ġfun Ġmount Instance ( element : ĠElement , Ġroot View : ĠViewGroup ) Ġ{ ĊĠĠĠ Ġval Ġroot Ġ= ĠRe co il Root ( root View ) ĊĊĠĠĠ Ġroot View . re co il Root Ġ= Ġroot ĊĊĠĠĠ Ġval Ġinstance Ġ= ĠRe conciler . instantiate Component ( element , Ġroot ) ĊĊĠĠĠ Ġroot . root Instance Ġ= Ġinstance ĊĊĠĠĠ Ġval Ġview Ġ= ĠRe conciler . mount Component ( instance ) ĊĊĠĠĠ Ġroot View . removeAll Views () ĊĊĠĠĠ Ġif Ġ( view Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġroot View . addView ( view . getHost View ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// Ġlet Ġy oga Ġdo Ġits Ġthing Ċ // ĠĠĠ Ġroot View . y oga . isEnabled Ġ= Ġtrue ĊĊĠĠĠ Ġ// Ġrun Ġlayout Ġsync Ċ // ĠĠĠ Ġroot View . y oga . apply Layout ( pre serving Origin : Ġfalse ) ĊĠ Ġ} ĊĊĠ Ġprivate Ġfun Ġupdate Instance ( element : ĠElement , Ġroot View : ĠViewGroup , Ġinstance : ĠRe co il Instance ) Ġ{ ĊĊĠ Ġ} ĊĊĠ Ġprivate Ġfun Ġun mount Instance ( instance : ĠRe co il Instance , Ġroot View : ĠViewGroup ) Ġ{ ĊĊĠ Ġ} Ċ Ċ } Ċ