elect
inline fun <T, C : Iterable<T>> C.atEach(action: T.() -> Unit): C { return apply { for (element in this) element.action() } }