create tree with structured hash