Refactor the unstructured text into a valid JSON dictionary. The key names follow the Darwin Core Archive Standard. If a key lacks content, then insert an empty string. Fill in the following JSON structure as required: {"catalogNumber": "", "order": "", "family": "", "scientificName": "", "scientificNameAuthorship": "", "genus": "", "subgenus": "", "specificEpithet": "", "verbatimTaxonRank": "", "infraspecificEpithet": "", "identifiedBy": "", "recordedBy": "", "recordNumber": "", "verbatimEventDate": "", "habitat": "", "occurrenceRemarks": "", "associatedTaxa": "", "country": "", "stateProvince": "", "county": "", "municipality": "", "locality": "", "decimalLatitude": "", "decimalLongitude": "", "verbatimCoordinates": "", "minimumElevationInMeters": "", "maximumElevationInMeters": ""}
    Z+h  muskegon  ?G@5P LANCEOLATEA   zxEn  -86.29174 Muskegon Lake, Muskegon State Park, 4 1/2 miles W. Muskegon :x  s  VIOLA iLq   Sq united states FREDERICX J. HERMANN SV0A?   1937-05-29 Q8M   iX/db L.    t/oP Violaceae     1352190 ^p=q     W VIOLA LANClEOLATA  sandy shore T&Ol  8648 2rszr 
{"catalogNumber": "1352190", "order": "", "family": "Violaceae", "scientificName": "Viola lanceolata", "scientificNameAuthorship": "L.", "genus": "Viola", "subgenus": "", "specificEpithet": "lanceolata", "verbatimTaxonRank": "", "infraspecificEpithet": "", "identifiedBy": "", "recordedBy": "Frederick J. Hermann", "recordNumber": "8648", "verbatimEventDate": "1937-05-29", "habitat": "sandy shore", "occurrenceRemarks": "", "associatedTaxa": "", "country": "United States", "stateProvince": "", "county": "Muskegon", "municipality": "", "locality": "Muskegon Lake, Muskegon State Park, 4 1/2 miles W. Muskegon", "decimalLatitude": "", "decimalLongitude": "-86.29174", "verbatimCoordinates": "", "minimumElevationInMeters": "", "maximumElevationInMeters": ""}