package Ġde . west erm ann . k observe . property Ċ Ċ import Ġde . west erm ann . k observe . Binding Ċ import Ġde . west erm ann . k observe . Property Ċ import Ġde . west erm ann . k observe . ReadOnly Property Ċ import Ġkotlin . reflect . K Property 1 ĊĊ Ċ class ĠFlat Receiver Property < R , ĠT >( ĊĠĠĠ Ġprivate Ġval Ġattribute : ĠK Property 1 < R , ĠProperty < T >>, ĊĠĠĠ Ġreceiver : ĠReadOnly Property < R > Ċ ) Ġ: ĠFlat Receiver ReadOnly Property < R , ĠT >( attribute , Ġreceiver ), ĠProperty < T > Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġset ( value : ĠT ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . set ( value ) ĊĠĠĠĠĠĠĠ Ġattribute . get ( receiver . value ). value Ġ= Ġvalue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġvar Ġbinding : ĠBinding < T > Ġ= ĠBinding . Un bound () Ċ } Ċ Ċ fun Ġ< R , ĠT > ĠReadOnly Property < R >. flatMap Binding ( attribute : ĠK Property 1 < R , ĠProperty < T >> ): ĠProperty < T > Ġ= ĊĠĠĠ ĠFlat Receiver Property ( attribute , Ġthis ) Ċ