package Ġin version Ċ Ċ import Ġin version . cod gen . cases . multiple Names . My Interface Ċ import Ġin version . cod gen . cases . multiple Names . My Interface _ Factory Ċ import Ġin version . internal . In version Deleg ates Ċ import Ġjava . util . Service Loader Ċ import Ġkotlin . Suppress Ċ import Ġkotlin . jvm . Jvm Name Ċ import Ġkotlin . reflect . K Class Ċ Ċ @ Jvm Name (" factory _ in version _ cod gen _ cases _ multiple Names _ My Interface ") Ċ fun ĠIn version . map Of (@ Suppress (" UNUSED _ PARAMETER ") Ġc : ĠK Class < My Interface >) Ġ= ĊĠĠĠ ĠIn version Deleg ates . map Delegate With Receiver ( Service Loader . load ( My Interface _ Factory :: class . java , ĊĠĠĠ ĠMy Interface _ Factory :: class . java . class Loader ). iterator (). as Sequence (). toList ()) Ċ