inline fun loopWhileAlive(block: () -> Unit): Unit
inline fun loopWhileAlive(crossinline and: () -> Boolean, block: () -> Unit): Unit