func ExtractBranchByName(tree *Tree, name string) *Tree {
	if tree.Name == name {
		return tree
	}
	for _, b := range tree.Branches {
		subtree := ExtractBranchByName(b, name)
		if subtree != nil {
			return subtree
		}
	}
	return nil
}
//ExtractBranchByName return substree with name
ExtractBranchByName return substree with name
// ExtractBranchByName return substree with name
func ExtractBranchByName(tree *Tree, name string) *Tree {
	if tree.Name == name {
		return tree
	}
	for _, b := range tree.Branches {
		subtree := ExtractBranchByName(b, name)
		if subtree != nil {
			return subtree
		}
	}
	return nil
}
func ExtractBranchByName ( tree * Tree , name string ) * Tree { if tree . Name == name { return tree } for _ , b := range tree . Branches { subtree := ExtractBranchByName ( b , name ) if subtree != nil { return subtree } } return nil }
ExtractBranchByName return substree with name
ExtractBranchByName return substree with name