interface
IEntity<E extends IEntity<E>>
IFile<E extends IFile<E>>
ITree<E extends ITree<E>>
class
RootEntity<E extends RootEntity<E>>