public function store(StoreProduct $request, PdvCalculationService $PDVCalculationService): RedirectResponse 	{ 		$langs = getCurrentLanguages(); 		$main_lang = getMainActiveLanguage();  		$product = Product::create([ 			'name' => $request->name, 			'matching_name' => trim($request->matching_name), 			'sku' => $request->sku, 			'market_id' => getCurrentMarket()->id, 			'manufacturer_id' => $request->manufacturer_id, 			'video_url' => $request->video_url, 			'price_without_pdv' => $request->price_without_pdv, 			'price_with_pdv' => $PDVCalculationService->calculatePriceWithPdv($request->price_without_pdv, $request->pdv_rate), 			'weight' => $request->weight, 			'color' => $request->color, 			'description' => $request->description, 			'category_id' => $request->category_id ?? null, 			'accessory' => $request->boolean('accessory'), 			'popular' => $request->boolean('popular'), 			'featured' => $request->boolean('featured'), 			'active' => $request->boolean('active'), 			'stocked' => $request->boolean('stocked'), 			'discontinued' => $request->boolean('discontinued'), 		]);  		$product->storage()->handle();  		// DETAILS 		$product->details()->create([ 			'benefits' => $request->benefits, 			'features' => $request->features, 			'support' => $request->support, 			'use_care' => $request->use_care, 		]);  		if ($request->old_id) { 			Product::find($request->old_id) 				->details 				?->getMedia('manuals') 				// Crle dozvolio 				// @phpstan-ignore-next-line 				->each(function (Media $manual) use ($product) { 					$manual->copy($product->details, 'manuals'); 				}); 		}  		$product->details?->storage()->handle();  		// SPECS 		$specsRow = [];  		foreach ($request->specs[$main_lang] ?? [] as $key => $spec) { 			foreach ($langs as $lang) { 				$specsRow[$key][$lang] = $request->specs[$lang][$key]; 			} 		}  		if ($request->specs_categories && $request->specs_categories[0] != null && count($specsRow) > 0) { 			ProductSpecs::createSpecsCategoriesAndProductValues($specsRow, $request->specs_categories, $product); 		}  		// FAQS 		$data = [];  		for ($i = 0; $i < count($request->order_number ?? []); $i++) { 			$questions_row = []; 			$answers_row = [];  			foreach ($langs as $lang) { 				$questions_row[$lang] = $request->question[$lang][$i]; 				$answers_row[$lang] = $request->answer[$lang][$i]; 			} 			$data[] = new ProductFaq([ 				'question' => $questions_row, 				'answer' => $answers_row, 				'order_number' => $request->order_number[$i] ?? 0, 			]); 		}  		$product->faqs()->saveMany($data);  		// SHOPS 		$product->shops()->attach($request->shops);  		// INCLUDED AND AVAILABLE ACCESSORIES 		$request->included_accessories ? $product->accessories()->attach($request->included_accessories ?? [], ['included' => true]) : null; 		$request->available_accessories ? $product->accessories()->attach($request->available_accessories ?? [], ['included' => false]) : null;  		// FILTERS 		foreach ($request->filters ?? [] as $filter_id => $value) { 			$product->productFilters()->create([ 				'filter_id' => $filter_id, 				'value' => json_decode($value) ?? $value ?? null, 			]); 		}  		return $this->redirectFromSave('products.list'); 	}