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": ""}
michigan  4 L,         1;h Heteranthera dubia   HETERANTHERA v   l,4& pontederiaceae  [3  x 1197  g]#Y* allegan state game area, ca. 4 miles se of allegan, at trowbridge dam, on the e side of 28th street at the kalamazoo river.      L ALLEGAN dubia 0rz     A,3r IN SHALLOW, CA. 7-12 INCHES OF WATER ADJACENT TO THE BOAT RAMP. WITH STUCKENIA FILIFORMIS. IN Â± QUIET, SILTY WATER.  qZ?! commelinales    
{"catalogNumber": "", "order": "Commelinales", "family": "Pontederiaceae", "scientificName": "Heteranthera dubia", "scientificNameAuthorship": "", "genus": "Heteranthera", "subgenus": "", "specificEpithet": "dubia", "verbatimTaxonRank": "", "infraspecificEpithet": "", "identifiedBy": "", "recordedBy": "", "recordNumber": "1197", "verbatimEventDate": "", "habitat": "In shallow, ca. 7-12 inches of water adjacent to the boat ramp. With Stuckenia filiformis. In \u00c2\u00b1 quiet, silty water.", "occurrenceRemarks": "", "associatedTaxa": "", "country": "", "stateProvince": "Michigan", "county": "Allegan", "municipality": "", "locality": "Allegan State Game Area, ca. 4 miles SE of Allegan, at Trowbridge Dam, on the E side of 28th Street at the Kalamazoo River.", "decimalLatitude": "", "decimalLongitude": "", "verbatimCoordinates": "", "minimumElevationInMeters": "", "maximumElevationInMeters": ""}