add function to_dict