implemented get_data