refactor location component using Address class