Ruckus
(T) -> Iterable<T>?
val children = childFactory.invoke(item)
val children = childFactory.invoke(item.value)