package Ġc nd jp . q ic oo . utils Ċ Ċ import Ġkotlin . reflect . full . declared Member Properties Ċ import Ġkotlin . reflect . full . primary Constructor Ċ Ċ inline Ġin fix Ġfun Ġ< re ified ĠT Ġ: ĠAny > ĠT . merge ( other : ĠT ): ĠT Ġ{ ĊĠĠĠ Ġval Ġname To Property Ġ= ĠT :: class . declared Member Properties . associate By Ġ{ Ġit . name Ġ} ĊĠĠĠ Ġval Ġprimary Constructor Ġ= ĠT :: class . primary Constructor !! ĊĠĠĠ Ġval Ġargs Ġ= Ġprimary Constructor . parameters . associate Ġ{ Ġparameter Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġproperty Ġ= Ġname To Property [ parameter . name ] !! ĊĠĠĠĠĠĠĠ Ġparameter Ġto Ġ( property . get ( other ) Ġ?: Ġproperty . get ( this )) ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġprimary Constructor . call By ( args ) Ċ } Ċ