class ReadableCatalogCategoryEntryMapper implements Mapper<CatalogCategoryEntry, ReadableCatalogCategoryEntry> {
	
	
	@Autowired
	private ReadableCategoryMapper readableCategoryMapper;
	
	@Autowired
	@Qualifier("img")
	private ImageFilePath imageUtils;

	@Override
	public ReadableCatalogCategoryEntry convert(CatalogCategoryEntry source, MerchantStore store, Language language) {<FILL_FUNCTION_BODY>}

	@Override
	public ReadableCatalogCategoryEntry merge(CatalogCategoryEntry source, ReadableCatalogCategoryEntry destination, MerchantStore store,
											  Language language) {
		ReadableCatalogCategoryEntry convertedDestination = Optional.ofNullable(destination)
				.orElse(new ReadableCatalogCategoryEntry());
		
		try {
			//ReadableProductPopulator readableProductPopulator = new ReadableProductPopulator();
			//readableProductPopulator.setimageUtils(imageUtils);
			//readableProductPopulator.setPricingService(pricingService);
			
			//ReadableProduct readableProduct = readableProductPopulator.populate(source.getProduct(), store, language);
			ReadableCategory readableCategory = readableCategoryMapper.convert(source.getCategory(), store, language);

			convertedDestination.setCatalog(source.getCatalog().getCode());

			convertedDestination.setId(source.getId());
			convertedDestination.setVisible(source.isVisible());
			convertedDestination.setCategory(readableCategory);
			//destination.setProduct(readableProduct);
			return convertedDestination;
		} catch (Exception e) {
			throw new ConversionRuntimeException("Error while creating ReadableCatalogEntry", e);
		}
	}
}

		ReadableCatalogCategoryEntry destination = new ReadableCatalogCategoryEntry();
		return merge(source, destination, store, language);
	
<no_super_class>