invoke

suspend operator fun <T> invoke(key: String, gen: suspend () -> T): T