Refactored the properties parser