add feature: city lookup