hierarchical object states