implement code clean in product recommendation module