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": ""}
charles k. dodge O.NF   -87.37607  T ^K   Y symphoricarpos albus      (L.) S. F. Blake  NEAR THE LIGHTHOUSE AT THE CITV OF MARQUETTE, h9(   87AN  Symphoricarpos  F , 1246349   d albus  michigan  ~    / 1916-07-02  3> S DRY ROCKY GROUND PLENTIFUL.  <[ ?w Dipsacales united states e<   m BCAPRIFOLIACEAE Marquette Nj$      46.54664  L] ! 
{"catalogNumber": "1246349", "order": "Dipsacales", "family": "Caprifoliaceae", "scientificName": "Symphoricarpos albus", "scientificNameAuthorship": "(L.) S. F. Blake", "genus": "Symphoricarpos", "subgenus": "", "specificEpithet": "albus", "verbatimTaxonRank": "", "infraspecificEpithet": "", "identifiedBy": "", "recordedBy": "Charles K. Dodge", "recordNumber": "", "verbatimEventDate": "1916-07-02", "habitat": "Dry rocky ground Plentiful.", "occurrenceRemarks": "", "associatedTaxa": "", "country": "United States", "stateProvince": "Michigan", "county": "Marquette", "municipality": "", "locality": "near the lighthouse at the city of Marquette,", "decimalLatitude": "46.54664", "decimalLongitude": "-87.37607", "verbatimCoordinates": "", "minimumElevationInMeters": "", "maximumElevationInMeters": ""}