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": ""}
REVOLUTA FQn    -103.87 ~f     [ Dalea revoluta            t)  La Zobilota; 12-15 km SW of BolaÃ±os, Sierra Madrel, along the Camino Viejo to BerberÃ­a        +pB 21.7268     t  S.Watso
{"catalogNumber": "", "order": "", "family": "", "scientificName": "Dalea revoluta", "scientificNameAuthorship": "S.Watson", "genus": "", "subgenus": "", "specificEpithet": "revoluta", "verbatimTaxonRank": "", "infraspecificEpithet": "", "identifiedBy": "", "recordedBy": "", "recordNumber": "", "verbatimEventDate": "", "habitat": "", "occurrenceRemarks": "", "associatedTaxa": "", "country": "", "stateProvince": "", "county": "", "municipality": "", "locality": "La Zopilota; 12-15 km SW of Bola\u00c3\u00b1os, Sierra Madre, along the Camino Viejo to Berber\u00c3\u00ada", "decimalLatitude": "21.7268", "decimalLongitude": "-103.87", "verbatimCoordinates": "", "minimumElevationInMeters": "", "maximumElevationInMeters": ""}