duplicated block id: 1 size: 37 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/variables.tf (16:59) - src/iac/modules/search_api/variables.tf (16:60) duplicated block id: 2 size: 26 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/enrichiment_service.py (105:132) - src/psearch/gen_ai/services/marketing_service.py (93:120) duplicated block id: 3 size: 24 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/conversational_search_service.py (114:139) - src/psearch/gen_ai/services/enrichiment_service.py (107:132) duplicated block id: 4 size: 24 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/conversational_search_service.py (114:139) - src/psearch/gen_ai/services/marketing_service.py (95:120) duplicated block id: 5 size: 23 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (103:133) - src/iac/modules/search_api/main.tf (111:141) duplicated block id: 6 size: 23 cleaned lines of code in 2 files: - src/iac/modules/search_api/main.tf (111:141) - src/iac/modules/ui/main.tf (113:143) duplicated block id: 7 size: 23 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (103:133) - src/iac/modules/ui/main.tf (113:143) duplicated block id: 8 size: 22 cleaned lines of code in 2 files: - src/application/ui/src/components/AIFilterSuggestion.js (94:122) - src/application/ui/src/components/AIFilterSuggestion.js (153:181) duplicated block id: 9 size: 22 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/enrichiment_service.py (146:174) - src/psearch/gen_ai/services/marketing_service.py (132:160) duplicated block id: 10 size: 19 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/enrichiment_service.py (229:252) - src/psearch/gen_ai/services/marketing_service.py (217:240) duplicated block id: 11 size: 18 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/conversational_search_service.py (117:136) - src/psearch/gen_ai/services/imagen_service.py (106:125) duplicated block id: 12 size: 18 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/enrichiment_service.py (110:129) - src/psearch/gen_ai/services/imagen_service.py (106:125) duplicated block id: 13 size: 18 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/imagen_service.py (106:125) - src/psearch/gen_ai/services/marketing_service.py (98:117) duplicated block id: 14 size: 16 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (40:60) - src/iac/modules/search_api/main.tf (40:60) duplicated block id: 15 size: 16 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (40:60) - src/iac/modules/ui/main.tf (40:60) duplicated block id: 16 size: 16 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (40:60) - src/iac/modules/ingestion/main.tf (48:68) duplicated block id: 17 size: 16 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (48:68) - src/iac/modules/ui/main.tf (40:60) duplicated block id: 18 size: 16 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (48:68) - src/iac/modules/search_api/main.tf (40:60) duplicated block id: 19 size: 16 cleaned lines of code in 2 files: - src/iac/modules/search_api/main.tf (40:60) - src/iac/modules/ui/main.tf (40:60) duplicated block id: 20 size: 15 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/imagen_service.py (132:148) - src/psearch/gen_ai/services/imagen_service.py (152:168) duplicated block id: 21 size: 13 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (78:92) - src/iac/modules/search_api/main.tf (78:92) duplicated block id: 22 size: 13 cleaned lines of code in 2 files: - src/iac/modules/ingestion/variables.tf (16:31) - src/iac/modules/search_api/variables.tf (16:32) duplicated block id: 23 size: 13 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/variables.tf (16:31) - src/iac/modules/ingestion/variables.tf (16:31) duplicated block id: 24 size: 12 cleaned lines of code in 2 files: - src/application/ui/src/components/ProductDetails.js (309:328) - src/application/ui/src/components/ProductDetails.js (340:359) duplicated block id: 25 size: 12 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (90:102) - src/iac/modules/search_api/main.tf (81:93) duplicated block id: 26 size: 11 cleaned lines of code in 2 files: - src/psearch/gen_ai/cloudbuild.yaml (23:37) - src/psearch/ingestion/cloudbuild.yaml (23:37) duplicated block id: 27 size: 11 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/outputs.tf (24:37) - src/iac/modules/ui/outputs.tf (24:37) duplicated block id: 28 size: 11 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (81:92) - src/iac/modules/ingestion/main.tf (90:101) duplicated block id: 29 size: 11 cleaned lines of code in 2 files: - src/iac/modules/ingestion/outputs.tf (24:37) - src/iac/modules/search_api/outputs.tf (24:37) duplicated block id: 30 size: 11 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/outputs.tf (24:37) - src/iac/modules/search_api/outputs.tf (24:37) duplicated block id: 31 size: 11 cleaned lines of code in 2 files: - src/iac/modules/ingestion/outputs.tf (24:37) - src/iac/modules/ui/outputs.tf (24:37) duplicated block id: 32 size: 11 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/outputs.tf (24:37) - src/iac/modules/ingestion/outputs.tf (24:37) duplicated block id: 33 size: 11 cleaned lines of code in 2 files: - src/application/ui/src/App.js (750:760) - src/application/ui/src/App.js (765:775) duplicated block id: 34 size: 11 cleaned lines of code in 2 files: - src/application/ui/src/App.js (720:730) - src/application/ui/src/App.js (750:760) duplicated block id: 35 size: 11 cleaned lines of code in 2 files: - src/iac/modules/search_api/outputs.tf (24:37) - src/iac/modules/ui/outputs.tf (24:37) duplicated block id: 36 size: 11 cleaned lines of code in 2 files: - src/application/ui/src/App.js (720:730) - src/application/ui/src/App.js (765:775) duplicated block id: 37 size: 11 cleaned lines of code in 2 files: - src/application/ui/src/App.js (735:745) - src/application/ui/src/App.js (765:775) duplicated block id: 38 size: 11 cleaned lines of code in 2 files: - src/application/ui/src/App.js (735:745) - src/application/ui/src/App.js (750:760) duplicated block id: 39 size: 11 cleaned lines of code in 2 files: - src/application/ui/src/App.js (720:730) - src/application/ui/src/App.js (735:745) duplicated block id: 40 size: 10 cleaned lines of code in 2 files: - src/application/ui/src/components/AIFilterSuggestion.js (25:34) - src/application/ui/src/components/EnhanceableContent.js (27:36) duplicated block id: 41 size: 9 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/variables.tf (16:26) - src/iac/modules/spanner/variables.tf (16:26) duplicated block id: 42 size: 9 cleaned lines of code in 2 files: - src/iac/modules/ingestion/variables.tf (53:63) - src/iac/modules/search_api/variables.tf (60:70) duplicated block id: 43 size: 9 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/enrichiment_service.py (33:41) - src/psearch/gen_ai/services/marketing_service.py (33:41) duplicated block id: 44 size: 9 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/conversational_search_service.py (43:51) - src/psearch/gen_ai/services/enrichiment_service.py (33:41) duplicated block id: 45 size: 9 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (105:113) - src/iac/modules/search_api/main.tf (92:100) duplicated block id: 46 size: 9 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (113:123) - src/iac/modules/search_api/main.tf (104:114) duplicated block id: 47 size: 9 cleaned lines of code in 2 files: - src/application/ui/src/components/AIFilterSuggestion.js (124:136) - src/application/ui/src/components/AIFilterSuggestion.js (182:194) duplicated block id: 48 size: 9 cleaned lines of code in 2 files: - src/iac/modules/search_api/variables.tf (16:26) - src/iac/modules/spanner/variables.tf (16:26) duplicated block id: 49 size: 9 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/conversational_search_service.py (43:51) - src/psearch/gen_ai/services/marketing_service.py (33:41) duplicated block id: 50 size: 9 cleaned lines of code in 2 files: - src/iac/modules/ingestion/variables.tf (16:26) - src/iac/modules/spanner/variables.tf (16:26) duplicated block id: 51 size: 9 cleaned lines of code in 2 files: - src/iac/main.tf (97:106) - src/iac/main.tf (110:119) duplicated block id: 52 size: 9 cleaned lines of code in 2 files: - src/application/ui/src/components/AIFilterSuggestion.js (407:415) - src/application/ui/src/components/AIFilterSuggestion.js (458:466) duplicated block id: 53 size: 8 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (52:64) - src/application/ui/src/services/genAiService.js (205:217) duplicated block id: 54 size: 8 cleaned lines of code in 2 files: - src/application/ui/src/components/ProductDetails.js (192:202) - src/application/ui/src/components/ProductDetails.js (210:220) duplicated block id: 55 size: 8 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (167:179) - src/application/ui/src/services/genAiService.js (205:217) duplicated block id: 56 size: 8 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (116:128) - src/application/ui/src/services/genAiService.js (167:179) duplicated block id: 57 size: 8 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (52:64) - src/application/ui/src/services/genAiService.js (167:179) duplicated block id: 58 size: 8 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/imagen_service.py (30:37) - src/psearch/gen_ai/services/marketing_service.py (33:40) duplicated block id: 59 size: 8 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (52:64) - src/application/ui/src/services/genAiService.js (116:128) duplicated block id: 60 size: 8 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/conversational_search_service.py (43:50) - src/psearch/gen_ai/services/imagen_service.py (30:37) duplicated block id: 61 size: 8 cleaned lines of code in 2 files: - src/psearch/gen_ai/services/enrichiment_service.py (33:40) - src/psearch/gen_ai/services/imagen_service.py (30:37) duplicated block id: 62 size: 8 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (116:128) - src/application/ui/src/services/genAiService.js (205:217) duplicated block id: 63 size: 7 cleaned lines of code in 2 files: - tooling/enrichment/consolidate_results.py (73:81) - tooling/enrichment/consolidate_results.py (117:125) duplicated block id: 64 size: 7 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (18:26) - src/iac/modules/search_api/main.tf (18:26) duplicated block id: 65 size: 7 cleaned lines of code in 2 files: - src/iac/modules/search_api/main.tf (18:26) - src/iac/modules/ui/main.tf (18:26) duplicated block id: 66 size: 7 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (18:26) - src/iac/modules/search_api/main.tf (18:26) duplicated block id: 67 size: 7 cleaned lines of code in 2 files: - src/application/ui/src/components/ContentDiff.js (53:59) - src/application/ui/src/components/ContentDiff.js (72:78) duplicated block id: 68 size: 7 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (30:38) - src/iac/modules/ui/main.tf (30:38) duplicated block id: 69 size: 7 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (18:26) - src/iac/modules/ui/main.tf (18:26) duplicated block id: 70 size: 7 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (38:46) - src/iac/modules/ui/main.tf (30:38) duplicated block id: 71 size: 7 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (18:26) - src/iac/modules/ui/main.tf (18:26) duplicated block id: 72 size: 7 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (92:99) - src/iac/modules/search_api/main.tf (104:111) duplicated block id: 73 size: 7 cleaned lines of code in 2 files: - src/application/ui/src/components/MarketingCampaignDialog.js (241:247) - src/application/ui/src/components/MarketingCampaignDialog.js (265:271) duplicated block id: 74 size: 7 cleaned lines of code in 2 files: - src/iac/modules/search_api/main.tf (30:38) - src/iac/modules/ui/main.tf (30:38) duplicated block id: 75 size: 7 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (30:38) - src/iac/modules/search_api/main.tf (30:38) duplicated block id: 76 size: 7 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (92:99) - src/iac/modules/ingestion/main.tf (113:120) duplicated block id: 77 size: 7 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (38:46) - src/iac/modules/search_api/main.tf (30:38) duplicated block id: 78 size: 7 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (18:26) - src/iac/modules/ingestion/main.tf (18:26) duplicated block id: 79 size: 7 cleaned lines of code in 2 files: - src/application/ui/src/App.js (825:831) - src/application/ui/src/index.js (39:45) duplicated block id: 80 size: 7 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (30:38) - src/iac/modules/ingestion/main.tf (38:46) duplicated block id: 81 size: 7 cleaned lines of code in 2 files: - src/psearch/ingestion/services/spanner_service.py (62:68) - src/psearch/ingestion/services/spanner_service.py (138:144) duplicated block id: 82 size: 6 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (115:120) - src/iac/modules/ui/main.tf (86:91) duplicated block id: 83 size: 6 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (128:135) - src/iac/modules/ui/main.tf (124:131) duplicated block id: 84 size: 6 cleaned lines of code in 2 files: - src/psearch/ingestion/cloudbuild.yaml (24:31) - src/psearch/serving/cloudbuild.yaml (24:31) duplicated block id: 85 size: 6 cleaned lines of code in 2 files: - src/application/ui/src/components/ProductDetails.js (192:197) - src/application/ui/src/components/ProductImage.js (228:233) duplicated block id: 86 size: 6 cleaned lines of code in 2 files: - src/iac/modules/search_api/main.tf (106:111) - src/iac/modules/ui/main.tf (86:91) duplicated block id: 87 size: 6 cleaned lines of code in 2 files: - src/application/ui/src/components/ProductDetails.js (210:215) - src/application/ui/src/components/ProductImage.js (228:233) duplicated block id: 88 size: 6 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (32:38) - src/application/ui/src/services/genAiService.js (147:153) duplicated block id: 89 size: 6 cleaned lines of code in 2 files: - src/application/ui/src/components/EnhanceableContent.js (84:89) - src/application/ui/src/components/EnhanceableContent.js (105:110) duplicated block id: 90 size: 6 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (114:121) - src/iac/modules/ingestion/main.tf (128:135) duplicated block id: 91 size: 6 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (74:80) - src/application/ui/src/services/genAiService.js (147:153) duplicated block id: 92 size: 6 cleaned lines of code in 2 files: - src/iac/modules/ui/variables.tf (18:24) - src/iac/variables.tf (18:24) duplicated block id: 93 size: 6 cleaned lines of code in 2 files: - src/iac/modules/ingestion/main.tf (128:135) - src/iac/modules/search_api/main.tf (122:129) duplicated block id: 94 size: 6 cleaned lines of code in 2 files: - src/application/ui/src/services/genAiService.js (32:38) - src/application/ui/src/services/genAiService.js (74:80) duplicated block id: 95 size: 6 cleaned lines of code in 2 files: - src/iac/modules/gen_ai/main.tf (94:99) - src/iac/modules/ui/main.tf (86:91) duplicated block id: 96 size: 6 cleaned lines of code in 2 files: - src/psearch/gen_ai/cloudbuild.yaml (24:31) - src/psearch/serving/cloudbuild.yaml (24:31)