add to_hash()