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": ""}
   04iMf lat. 22â°19' long. [-]104â°20'   ] desmModium  ~VR> -104.53  Ypp,x encinar abierto, suelo somero discontinuo  p fabales    -xR OSWALDO TÃ©LLEZ V.   22.0375 Ko      ?NcC CORDISTIPULUM  A P. TENOR|O L. & G. FLORES FAANCO nayarit s   PN  Hemsl.  el agua caliente; nayar; 50 km al ne de jesãºs marã­a, carr. a huejuquilla %-u@e   f 15946 Desmodium cordistipulum A cj4   mexico G5D=8 
{"catalogNumber": "", "order": "Fabales", "family": "", "scientificName": "Desmodium cordistipulum", "scientificNameAuthorship": "Hemsl.", "genus": "Desmodium", "subgenus": "", "specificEpithet": "cordistipulum", "verbatimTaxonRank": "", "infraspecificEpithet": "", "identifiedBy": "Oswaldo T\u00c3\u00a9llez V.", "recordedBy": "P. Tenorio L. & G. Flores Franco", "recordNumber": "15946", "verbatimEventDate": "", "habitat": "Encinar abierto, suelo somero discontinuo", "occurrenceRemarks": "", "associatedTaxa": "", "country": "Mexico", "stateProvince": "Nayarit", "county": "", "municipality": "", "locality": "El Agua Caliente; Nayar; 50 km al NE de Jes\u00c3\u00bas Mar\u00c3\u00ada, carr. A Huejuquilla", "decimalLatitude": "22.0375", "decimalLongitude": "-104.53", "verbatimCoordinates": "Lat. 22\u00c2\u00b019' Long. [-]104\u00c2\u00b020'", "minimumElevationInMeters": "", "maximumElevationInMeters": ""}