elect
infix fun (() -> Unit).shallThrow(exClass: Class<out Throwable>) { try { this() } catch (e: Throwable) { if (e is GLException) return else throw Error() } }