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": ""}
   @[2s< dunal SOLANVM H  solanum ptychanthum _Rns    M8pvc 1921-07-15 grapeuine point, douglas lake _d2oE  45.56668 YRj_7   5 PTYCHANTHUM  @LfA 1593  + *q solanales    sSPn Cheboygan  united stat8es 9;`4      Solanaceae [nVur   B -84.68 MICHIGAN  #+$    T + 1228523 CUTOVER HARDWOODS, pi  
{"catalogNumber": "1228523", "order": "Solanales", "family": "Solanaceae", "scientificName": "Solanum ptychanthum", "scientificNameAuthorship": "Dunal", "genus": "Solanum", "subgenus": "", "specificEpithet": "ptychanthum", "verbatimTaxonRank": "", "infraspecificEpithet": "", "identifiedBy": "", "recordedBy": "", "recordNumber": "1593", "verbatimEventDate": "1921-07-15", "habitat": "Cutover Hardwoods,", "occurrenceRemarks": "", "associatedTaxa": "", "country": "United States", "stateProvince": "Michigan", "county": "Cheboygan", "municipality": "", "locality": "Grapevine Point, Douglas Lake", "decimalLatitude": "45.56668", "decimalLongitude": "-84.68", "verbatimCoordinates": "", "minimumElevationInMeters": "", "maximumElevationInMeters": ""}