kirillrakhman
inline fun Foo.applyTransaction(block: Foo.() -> Unit) { beginTransaction() block() commitTransaction() }
inline fun Foo.configureAndExecute(config: Bar.() -> Unit) = execute(Bar().apply(config))