add chunks recursively