auto magic to_hash ?