def main(first_project_name, second_project_name, first_dataset_name,
    second_dataset_name):
    """
    Copy folder from project/dataset/folder
    :return:
    """
    import dtlpy as dl
    project = dl.projects.get(project_name=first_project_name)
    dataset_from = project.datasets.get(dataset_name=first_dataset_name)
    filters = dl.Filters()
    filters.add(field='type', values='file')
    filters.add(field='filename', values='/source_folder/**')
    pages = dataset_from.items.list(filters=filters)
    project = dl.projects.get(project_name=second_project_name)
    dataset_to = project.datasets.get(dataset_name=second_dataset_name)
    for page in pages:
        for item in page:
            buffer = item.download(save_locally=False)
            buffer.name = item.name
            new_item = dataset_to.items.upload(local_path=buffer,
                remote_path='/destination_folder')
            print(new_item.filename)
