composition

fun <OT, IT, LD : LiveData<out IT>> MediatorLiveData<OT>.composition(liveDataList: List<LD>, function: (List<IT>) -> OT): MediatorLiveData<OT>