package net.cijber.worm.dsl open class Helper> { @Suppress("UNCHECKED_CAST") operator fun invoke(block: T.() -> Unit): T { val child = this::class.java.declaringClass.getDeclaredConstructor().newInstance() as T block(child) return child } }