public function single(Market $market, Product $sku, ShopSearchTerm $request): JsonResource 	{ 		$lang = app()->getLocale();  		$sku->loadMissing(['details', 'details.media', 'shops', 'shops.media', 'shops.products', 'manufacturer', 'manufacturer.media', 'includedAccessories', 'includedAccessories.media', 'includedAccessories.shops', 'includedAccessories.shops.media', 'includedAccessories.manufacturer', 'includedAccessories.manufacturer.media', 'availableAccessories', 'availableAccessories.media', 'availableAccessories.shops', 'availableAccessories.shops.media', 'availableAccessories.manufacturer', 'availableAccessories.manufacturer.media']);  		$search_term = $request->shop_search_term; 		$sku->setFilteredShops($sku->shops->filter(function ($shop) use ($search_term, $lang) { 			return str_contains(strtolower($shop->getTranslation('title', $lang)), strtolower($search_term)); 		}));  		// if accessory, get all compatible products 		if ($sku->isAccessory()) { 			// all products that have this accessory 			$compatible = Product::whereHas('accessories', function ($query) use ($sku) { 				$query->where('product_id', $sku->id); 			}) 			->get();  			$sku->setCompatibleProducts($compatible); 		}  		return new ProductResource($sku); 	}