added tree d/l support