{ "output": "Successfully modified file: /home/Messier82/projects/service-book/app/src/main/java/com/servicebook/data/billing/BillingManagerImpl.kt (1 replacements). Here is the updated code:\n...\n suspendCancellableCoroutine { continuation ->\n billingClient.queryProductDetailsAsync(\n params,\n ProductDetailsResponseListener { billingResult, details ->\n if (billingResult.responseCode == BillingClient.BillingResponseCode.OK) {\n val product = details.productDetailsList.firstOrNull()\n cachedProductDetails.set(product)\n if (product == null) {\n details.unfetchedProductList.forEach { unfetched ->\n Log.w(TAG, \"Product detail query failed for: ${unfetched.productId}\")\n }\n }\n }\n if (continuation.isActive) continuation.resume(Unit)\n },\n )\n }\n..." }