NMVTIS-API
ClearVin ist einer der wenigen NMVTIS-Anbieter, die keinen Datenwiederverkäufer für unsere NMVTIS-Daten verwenden. Wir beziehen unsere Fahrzeugverlaufsdaten direkt aus der Regierungsdatenbank NMVTIS. NMVTIS-Daten enthalten alle Titel, Versicherungen, Kilometerzähler und mehr.
Genehmigung
Sie müssen E-Mail und Passwort verwenden, um das Zugangstoken über diese URL zu erhalten:POST https://www.clearvin.com/rest/vendor/login
Die Anfrage muss von einer registrierten IP-Adresse stammen.Die Nutzlast sollte sein:
{ "email" : “[email protected]”, "password": "11111111" }
Antwort
ELEMENT | Beschreibung | FORMAT |
---|---|---|
status | Gibt an, ob die Anfrage erfolgreich bearbeitet oder mit einem Fehler beendet wurde | ZeichenfolgeFehler oder Ok |
message | Enthält Details zum Ergebnis, wenn der Status Fehler ist | Zeichenfolge |
token | JSON-Web-Token. Das Token läuft in 300 Minuten ab | Zeichenfolge |
Wenn E-Mail und Passwort korrekt sind, wird der Token wie folgt mit dem Token zurückgesendet:
{ "status": "ok", "token": " I6MTgxLCJpYXQiOjE1MDk1NTg4MTksIm4cCI6MTUwOTU1OTQxOX0.ACV0t3UyHXs0" }
Bericht
Nachdem Sie dieses Token erhalten haben, können Sie es verwenden, um über diese URL auf Berichte zuzugreifen:GET https://www.clearvin.com/rest/vendor/report?vin=5UXFA13544LU21050
Um diesen Endpunkt zu verwenden, müssen Sie den HTTP-Header mit dem bereitgestellten Token wie folgt bereitstellen:Authorization: Bearer I6MTgxLCJpYXQiOjE1MDk1NTg4MTksIm4cCI6MTUwOTU1OTQxOX0.ACV0t3UyHXs0
Antwort
ELEMENT | Beschreibung | Type |
---|---|---|
status | Gibt an, ob die Anfrage erfolgreich bearbeitet oder mit einem Fehler beendet wurde | ZeichenfolgeFehler oder Ok |
message | Enthält Details zum Ergebnis, wenn der Status Fehler ist | Zeichenfolge |
Report id | Enthält die aktuelle Berichts-ID | Zeichenfolge |
Report vin | Angeforderte FIN | Zeichenfolge |
Report report | Enthält vollständige Informationen über das Fahrzeug | JSON-Objekt |
Sie können Berichte auch in der HTML-Ansicht erhalten, indem Sie eine URL wie diese verwenden:
GET https://www.clearvin.com/rest/vendor/report?vin=5UXFA13544LU21050&format=html
Und stellen Sie die nächsten HTTP-Header bereit:
Authorization: Bearer I6MTgxLCJpYXQiOjE1MDk1NTg4MTksIm4cCI6MTUwOTU1OTQxOX0.ACV0t3UyHXs0
Content-Type: text/html
Auth-Erfolg
Anfrage
curl -X POST \ https://www.clearvin.com/rest/vendor/login \ -H 'Content-Type: application/json' \ -d '{ "email": "[email protected]", "password": "yourpassword" }
Antworterfolg
{ "status": "ok", "token": "I6MTgxLCJpYXQiOjE1MDk1NTg4MTksIm4cCI6MTUwOTU1OTQxOX0.ACV0t3UyHXs0" }
Antwortfehler
{ "status": "error", "message": "Wrong username or password" }
Bericht
Anfrage
curl - X GET\ 'https://www.clearvin.com/rest/vendor/report?vin=WBAFR7C57CC811956'\ - H 'Authorization: Bearer I6MTgxLCJpYXQiOjE1MDk1NTg4MTksIm4cCI6MTUwOTU1OTQxOX0.ACV0t3UyHXs0'\ - H 'Content-Type: application/json'
Antworterfolg
{ "status": "ok", "result": { "id": "3646F9E2", "vin": "WBAFR7C57CC811956", "report": { "nmvtis": { "junkAndSalvageInformation": [{ "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "J", "IdentificationID": "P000001", "ReportingEntityCategoryText": "Junk and Salvage", "EntityName": "Copart, Inc.", "LocationCityName": "Dallas", "LocationStateUSPostalServiceCode": "TX", "TelephoneNumberFullID": "9723915728", "ContactEmailID": "" }, "VehicleObtainedDate": "2016-12-06T00:00:00.000Z", "VehicleDispositionText": "TO BE DETERMINED", "VehicleIntendedForExportCode": "N" }, { "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "J", "IdentificationID": "P000001", "ReportingEntityCategoryText": "Junk and Salvage", "EntityName": "Copart, Inc.", "LocationCityName": "Dallas", "LocationStateUSPostalServiceCode": "TX", "TelephoneNumberFullID": "9723915728", "ContactEmailID": "" }, "VehicleObtainedDate": "2016-12-06T00:00:00.000Z", "VehicleDispositionText": "SOLD", "VehicleIntendedForExportCode": "N" }, { "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "J", "IdentificationID": "P801910", "ReportingEntityCategoryText": "Junk and Salvage", "EntityName": "AUTOBIDMASTER LLC", "LocationCityName": "PORTLAND", "LocationStateUSPostalServiceCode": "OR", "TelephoneNumberFullID": "5032984300", "ContactEmailID": "" }, "VehicleObtainedDate": "2015-09-17T00:00:00.000Z", "VehicleDispositionText": "SOLD", "VehicleIntendedForExportCode": "N" }, { "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "J", "IdentificationID": "P000001", "ReportingEntityCategoryText": "Junk and Salvage", "EntityName": "Copart, Inc.", "LocationCityName": "Fairfield", "LocationStateUSPostalServiceCode": "CA", "TelephoneNumberFullID": "7076395294", "ContactEmailID": "" }, "VehicleObtainedDate": "2015-08-11T00:00:00.000Z", "VehicleDispositionText": "TO BE DETERMINED", "VehicleIntendedForExportCode": "N" }, { "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "J", "IdentificationID": "P000001", "ReportingEntityCategoryText": "Junk and Salvage", "EntityName": "Copart, Inc.", "LocationCityName": "Fairfield", "LocationStateUSPostalServiceCode": "CA", "TelephoneNumberFullID": "7076395294", "ContactEmailID": "" }, "VehicleObtainedDate": "2015-08-11T00:00:00.000Z", "VehicleDispositionText": "SOLD", "VehicleIntendedForExportCode": "N" }, { "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "J", "IdentificationID": "P000116", "ReportingEntityCategoryText": "Junk and Salvage", "EntityName": "IAA", "LocationCityName": "WESTCHESTER", "LocationStateUSPostalServiceCode": "IL", "TelephoneNumberFullID": "7084927000", "ContactEmailID": "" }, "VehicleObtainedDate": "2015-06-04T00:00:00.000Z", "VehicleDispositionText": "TO BE DETERMINED", "VehicleIntendedForExportCode": "N" }, { "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "J", "IdentificationID": "P000116", "ReportingEntityCategoryText": "Junk and Salvage", "EntityName": "IAA", "LocationCityName": "WESTCHESTER", "LocationStateUSPostalServiceCode": "IL", "TelephoneNumberFullID": "7084927000", "ContactEmailID": "" }, "VehicleObtainedDate": "2015-06-04T00:00:00.000Z", "VehicleDispositionText": "SOLD", "VehicleIntendedForExportCode": "N" }], "insuranceInformation": [{ "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "I", "IdentificationID": "I200697", "ReportingEntityCategoryText": "Insurers", "EntityName": "MERCURY GENERAL GROUP", "LocationCityName": "BREA", "LocationStateUSPostalServiceCode": "CA", "TelephoneNumberFullID": "7146716600", "ContactEmailID": "[email protected]" }, "VehicleObtainedDate": "2015-06-05T00:00:00.000Z" }], "brandsRecordCount": 1, "brandsInformation": [{ "code": "00", "name": "Clear", "description": "No brand exists for the vehicle." }, { "code": "01", "name": "Flood damage", "description": "\"Vehicle damaged by freshwater flood (or it is unknown whether the damage was caused by fresh water or salt water).\"" }, { "code": "02", "name": "Fire damage", "description": "Vehicle damaged by fire." }, { "code": "03", "name": "Hail damage", "description": "Vehicle damaged by hail." }, { "code": "04", "name": "Salt water damage", "description": "Vehicle damaged by saltwater flood." }, { "code": "05", "name": "Vandalism", "description": "Vehicle damaged by vandals." }, { "code": "06", "name": "Kit", "description": "\"A Vehicle that has been built by combining a chassis with a different (non-matching VIN) frame engine and body parts. The VIN on the chassis is used as the vehicle's VIN.\"" }, { "code": "07", "name": "Dismantled", "description": "The vehicle can only be sold as parts and cannot be legally driven." }, { "code": "08", "name": "Junk", "description": "The vehicle is incapable of safe operation for use on the roads or highways and has no resale value except as a source of parts or \"scrap or the vehicle's owner has irreversibly designated the vehicle\" as a source of parts or scrap. This vehicle shall never be titled or \"registered. Also known as non-repairable scrapped or destroyed.\"" }, { "code": "09", "name": "Rebuilt", "description": "\"The vehicle previously branded \"\"salvage\"\" has passed anti-theft and safety inspections or other jurisdiction procedures to ensure the vehicle was rebuilt to required standards. Also known as prior salvage (salvaged).\"" }, { "code": "10", "name": "Reconstructed", "description": "\"A vehicle that has been permanently altered from original construction by removing adding or substituting major components.\"" }, { "code": "11", "name": "Salvage", "description": "\"Damage or Not Specified - Any vehicle which has been wrecked\" \"destroyed or damaged to the extent that the total estimated or actual\" cost of parts and labor to rebuild or reconstruct the vehicle to its pre-accident condition and for legal operation on roads or highways exceeds a jurisdiction-defined percentage of the retail value of the vehicle. The retail value of the vehicle is determined by a current edition of a nationally recognized compilation (to include automated data bases) of retail values. Salvage--Damage or Not Specified also includes any vehicle to which an insurance company acquires owner- ship pursuant to a damage \"settlement or any vehicle that the vehicle's owner may wish to\" \"designate as a salvage vehicle by obtaining a salvage title without\" \"regard to extent of the vehicle's damage and repairs or any vehicle\" for which the jurisdiction cannot distinguish the reason the vehicle was designated salvage.", "record": { "ReportingEntityAbstract": { "ReportingEntityCategoryCode": "S", "IdentificationID": "CA", "ReportingEntityCategoryText": "", "EntityName": "CALIFORNIA" }, "VehicleBrandCode": "11", "VehicleBrandDate": { "Date": "2015-07-01T00:00:00.000Z" } } }, { "code": "12", "name": "Test Vehicle", "description": "The vehicle is built and retained by the manufacturer for testing." }, { "code": "13", "name": "Refurbished", "description": "\"Any vehicle modified by the installation of a new cab and chassis for the existing coach which has been renovated resulting in a vehicle of greater value or a vehicle with a new style.\"" }, { "code": "14", "name": "Collision", "description": "Vehicle damaged by collision." }, { "code": "15", "name": "Reserved", "description": "\"Eliminated in favor of code 09. Code 15 was \"\"Prior Salvage.\"\"\"" }, { "code": "16", "name": "Salvage Retention", "description": "The vehicle is branded salvage and is kept by the owner." }, { "code": "17", "name": "Prior Taxi", "description": "Vehicle previously registered as a taxi." }, { "code": "18", "name": "Prior Police", "description": "Vehicle previously registered as a police vehicle." }, { "code": "19", "name": "Original Taxi", "description": "Vehicle is currently registered as a taxi." }, { "code": "20", "name": "Original Police", "description": "Vehicle is currently registered as a police vehicle." }, { "code": "21", "name": "Remanufactured", "description": "Vehicle was reconstructed by the manufacturer." }, { "code": "22", "name": "Gray Market", "description": "\"Vehicle was manufactured for use outside of the United States and has been brought into the United States. Brand '22' has been replaced by brands '45' and '46' as of 6/25/01.\"" }, { "code": "23", "name": "Warranty Return", "description": "\"Vehicle returned to the manufacturer because of a breach in the warranty.\"" }, { "code": "24", "name": "Antique", "description": "The vehicle is over 50 years old." }, { "code": "25", "name": "Classic", "description": "\"The vehicle is over 20 years old and adheres to other jurisdiction-specific criteria e.g. vehicle make condition etc.\"" }, { "code": "26", "name": "Agricultural Vehicle", "description": "\"The vehicle will primarily be operated on private roads for agricultural purposes.\"" }, { "code": "27", "name": "Logging Vehicle", "description": "\"The vehicle will primarily be operated on private roads for logging purposes.\"" }, { "code": "28", "name": "Street Rod", "description": "\"The vehicle has been modified to not conform with the manufacturer's specifications and the modifications adhere to jurisdiction-specific criteria.\"" }, { "code": "29", "name": "\"Vehicle Contains Reissued VIN\"", "description": "\"The chassis VIN has been reissued i.e. the same VIN is reused.\"" }, { "code": "30", "name": "Replica", "description": "\"A vehicle with a body built to resemble and be a reproduction of another vehicle of a given year and given manufacturer.\"" }, { "code": "31", "name": "Totaled", "description": "\"A vehicle that is declared a total loss by a jurisdiction or an insurer that is obligated to cover the loss or that the insurer takes possession of or title to.\"" }, { "code": "32", "name": "Owner Retained", "description": "\"A vehicle that has been declared by the insurance company to be a total loss but the owner maintains possession and ownership of the vehicle.\"" }, { "code": "33", "name": "Bond Posted", "description": "\"The insurance company has issued a bond on the vehicle because the ownership of the vehicle cannot be proven; this allows the vehicle to be sold and titled. Note: This brand is not valid after January 17 2003.\"" }, { "code": "34", "name": "Memorandum Copy", "description": "\"The title document is a facsimile title and not the active (original or duplicate) title document.\"" }, { "code": "35", "name": "Parts Only", "description": "\"The vehicle may only be used for parts. This code is no longer used use '07 - Dismantled'.\"" }, { "code": "36", "name": "Recovered Theft", "description": "\"The vehicle was previously titled as salvage due to theft. The Vehicle has been repaired and inspected (or complied with other jurisdiction procedures) and may be legally driven.\"" }, { "code": "37", "name": "Undisclosed Lien", "description": "\"The vehicle has entered the titling jurisdiction from a jurisdiction that does not disclose lien-holder information on the title. The titling jurisdiction may issue a new title without this brand if no notice of a security interest in the vehicle is received within a jurisdiction defined timeframe. Note: This brand is not valid after January 17 2003.\"" }, { "code": "38", "name": "\"Prior Owner Retained\"", "description": "\"A vehicle that was previously branded owner retained and was sold. The new owner's title contains this brand.\"" }, { "code": "39", "name": "\"Vehicle Non-conformity Uncorrected\"", "description": "\"A non-safety defect reported to the jurisdiction by the vehicle manufacturer remains uncorrected.\"" }, { "code": "40", "name": "\"Vehicle Non-conformity Corrected\"", "description": "\"A non-safety defect reported to the jurisdiction by the vehicle manufacturer has been corrected.\"" }, { "code": "41", "name": "\"Vehicle Safety Defect Uncorrected\"", "description": "\"A safety defect reported to the jurisdiction by the vehicle manufacturer remains uncorrected.\"" }, { "code": "42", "name": "\"Vehicle Safety Defect Corrected\"", "description": "\"A safety defect reported to the jurisdiction by the vehicle manufacturer has been corrected.\"" }, { "code": "43", "name": "\"VIN replaced by a new state assigned VIN\"", "description": "\"A title should not be issued for the VIN. This brand can be issued for rebuilt vehicles.\"" }, { "code": "45", "name": "Gray Market", "description": "\"Vehicle was manufactured for use outside the United States and has been brought into the United States. The vehicle is not in compliance with applicable federal standards.\"" }, { "code": "46", "name": "Gray Market", "description": "\"Vehicle was manufactured for use outside the United States and has been brought into the United States. The vehicle is in compliance with applicable federal standards.\"" }, { "code": "47", "name": "Manufacturer Buy", "description": "A vehicle that has been bought back by the manufacturer under Back\"jurisdiction -defined regulations or laws such as lemon laws. For\" \"example the manufacturer could be obligated to buy back the vehicle\" when a specified number of repair attempts fails to correct a major \"problem on a new vehicle or if a new vehicle has been out of service\" for repair for the same problem for a cumulative period of 30 days or \"more within one year of purchase.\"" }, { "code": "48", "name": "Former Rental", "description": "Former Rental" }, { "code": "49", "name": "Salvage--Stolen", "description": "\"Any vehicle the reporting jurisdiction considers salvage because an insurance company has acquired ownership pursuant to a settlement based on the theft of the vehicle.\"" }, { "code": "50", "name": "\"Salvage--Reasons Other Than Damage or Stolen\"", "description": "\"Any vehicle the reporting jurisdiction considers salvage based on criteria such as abandonment not covered by the Salvage-- Damage or Not Specified and Salvage--Stolen brands. Note.--Percent of damage is not reported with brand code 50.\"" }, { "code": "51", "name": "Disclosed Damage", "description": "\"The vehicle has sustained damage to the extent that the damage is required to be disclosed under the jurisdiction's damage disclosure law.\"" }, { "code": "52", "name": "Prior Non-", "description": "A vehicle constructed by repairing a vehicle that has been destroyed Repairable /or declared to be non-repairable or otherwise declared to not be Repairedeligible for titling because of the extent of damage to the vehicle but has been issued a title pursuant to state law after falling within this criterion with this brand on the face of the certificate of title." }, { "code": "53", "name": "Crushed", "description": "\"The frame or chassis of the vehicle has been crushed or otherwise destroyed so that it is physically impossible to use it in constructing a vehicle.\"" }, { "code": "55", "name": "Hazardous substance", "description": "Hazardous Substance Contaminated Vehicle - The jurisdiction has determined that the vehicle has been contaminated by a ‘hazardous substance’ and is unsafe for use. Excluding flood damaged vehicles. A 'hazardous substance' is any substance that could diminish the safety of the vehicle or cause injury to its occupants. The 'hazardous substance' has one or more, but is not limited to the following intrinsic 'hazardous properties': Explosiveness Flammability Ability to oxidize (accelerate a fire) Human toxicity (acute or chronic) Corrosiveness (to human tissue or metal) Eco toxicity (with or without bioaccumulation) Capacity, on contact with air or water, to develop one or more of the above properties. " }, { "code": "68", "name": "Actual", "description": "The true mileage for the vehicle. The odometer has not been \"tampered with reached its mechanical limits or been altered.\"" }, { "code": "69", "name": "Not Actual", "description": "The odometer reading is known to be other than the true mileage for the vehicle." }, { "code": "70", "name": "Not Actual", "description": "Odometer tampering verified - The odometer reading is known to be \"other that the true mileage for the vehicle due to tampering.\"" }, { "code": "71", "name": "\"Exempt from Odometer Disclosure\"", "description": "\"The vehicle falls within criteria that allow it to change ownership without disclosure of the odometer reading.\"" }, { "code": "72", "name": "\"Exceeds Mechanical Limits\"", "description": "\"The odometer reading is less than the true mileage of the vehicle because the odometer can not display the total number of true miles.\"" }, { "code": "73", "name": "\"Odometer may be Altered\"", "description": "\"The titling authority has reason to believe that the odometer reading does not reflect the true mileage of the vehicle because of an alteration to the odometer.\"" }, { "code": "74", "name": "Odometer Replaced", "description": "\"The odometer in the vehicle is not the odometer put in the vehicle when manufactured.\"" }, { "code": "75", "name": "\"Reading at Time of Renewal\"", "description": "\"The odometer reading was recorded when the registration was renewed.\"" }, { "code": "76", "name": "\"Odometer Discrepancy\"", "description": "\"The titling authority has reason to believe that the odometer reading does not reflect the true mileage of the vehicle because of known previous recorded values of odometer for the vehicle.\"" }, { "code": "77", "name": "Call Title Division", "description": "\"The titling authority knows of some problem with the odometer reading that it cannot print on a title. Titling authority will discuss the problem (manual process) with authorized inquirers.\"" }, { "code": "78", "name": "\"Rectify Previous Exceeds Mechanical Limits Brand\"", "description": "A state other than the brander corrected brand 72." }, { "code": "90", "name": "Pending Junk", "description": "Consumer Assistance to Recycle and Save (CARS) program is Automobile -\"processing an application which if approved will render this vehicle\" CARS.gov \"incapable of operating on public streets roads and highways. The\" \"vehicle will have no value except as a source of parts or scrap shall\" be crushed or shredded within a specified time period (including the \"engine block) and shall not be exported prior to crushing or\" shredding. For additional information concerning the CARS program visit CARS.gov. Pursuant to the Consumer Assistance to Recycle and Save Act of" }, { "code": "91", "name": "Junk Automobile -", "description": "\"2009 (CARS) this vehicle is incapable of operating on public streets\" CARS.gov\"roads and highways. The vehicle has no value except as a source of\" \"parts or scrap shall be crushed or shredded within a specified time\" \"period (including the engine block) and shall not be exported prior to\"" }], "vinChanged": false, "currentTitleInformation": [{ "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2015-07-01T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000026226", "VehicleOdometerReadingUnitCode": "M", "RecordMatchSequenceID": "01", "HistoricTitleAbstract": [{ "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2015-06-11T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000024806", "VehicleOdometerReadingUnitCode": "M" }, { "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2015-04-16T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000024806", "VehicleOdometerReadingUnitCode": "M" }, { "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2014-09-15T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000000008", "VehicleOdometerReadingUnitCode": "M" }, { "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2012-04-14T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000000008", "VehicleOdometerReadingUnitCode": "M" }] }], "historyInformation": [{ "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2015-06-11T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000024806", "VehicleOdometerReadingUnitCode": "M" }, { "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2015-04-16T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000024806", "VehicleOdometerReadingUnitCode": "M" }, { "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2014-09-15T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000000008", "VehicleOdometerReadingUnitCode": "M" }, { "VehicleIdentification": { "IdentificationID": "WBAFR7C57CC811956" }, "TitleIssuingAuthorityName": "CA", "TitleIssueDate": { "Date": "2012-04-14T00:00:00.000Z" }, "VehicleOdometerReadingMeasure": "000000008", "VehicleOdometerReadingUnitCode": "M" }] } } } }