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": ""}
Amaryllidaceae UF   ~<! MONTCALM     Y U6 michigan 1972-05-21 #ZsFo  canadense (0@N   UNITED STATES      ;ed -85.196595  43.136514 vEj   allium canadense y&  1338328 B[8(P     |16 13827  : edward g. voss Asparagales z   L. oJ   |w "plants with odor of onion; leaves flat, â±keeled."  CYl Locally freqent, swampy thickets.  %qK` eureka twp. ca. 4 mi. se of greenville. on e. side of flat river.
{"catalogNumber": "1338328", "order": "Asparagales", "family": "Amaryllidaceae", "scientificName": "Allium canadense", "scientificNameAuthorship": "L.", "genus": "", "subgenus": "", "specificEpithet": "canadense", "verbatimTaxonRank": "", "infraspecificEpithet": "", "identifiedBy": "", "recordedBy": "Edward G. Voss", "recordNumber": "13827", "verbatimEventDate": "1972-05-21", "habitat": "Locally frequent, swampy thickets.", "occurrenceRemarks": "\"Plants with odor of onion; leaves flat, \u00c2\u00b1keeled.\"", "associatedTaxa": "", "country": "United States", "stateProvince": "Michigan", "county": "Montcalm", "municipality": "", "locality": "Eureka Twp. Ca. 4 mi. SE of Greenville. On E. side of Flat River.", "decimalLatitude": "43.136514", "decimalLongitude": "-85.196595", "verbatimCoordinates": "", "minimumElevationInMeters": "", "maximumElevationInMeters": ""}