duplicated block id: 1 size: 126 cleaned lines of code in 2 files: - challenge3/python-backend/app.py (8:148) - challenge5/python-backend/app.py (8:148) duplicated block id: 2 size: 126 cleaned lines of code in 2 files: - challenge3/python-backend/app.py (8:148) - challenge4/python-backend/app.py (8:148) duplicated block id: 3 size: 126 cleaned lines of code in 2 files: - challenge4/python-backend/app.py (8:148) - challenge5/python-backend/app.py (8:148) duplicated block id: 4 size: 94 cleaned lines of code in 2 files: - challenge2/frontend/components/chat.tsx (1:108) - starting_point/frontend/components/chat.tsx (1:108) duplicated block id: 5 size: 94 cleaned lines of code in 2 files: - challenge1/frontend/components/chat.tsx (1:108) - starting_point/frontend/components/chat.tsx (1:108) duplicated block id: 6 size: 94 cleaned lines of code in 2 files: - challenge3/frontend/components/chat.tsx (1:108) - starting_point/frontend/components/chat.tsx (1:108) duplicated block id: 7 size: 94 cleaned lines of code in 2 files: - challenge2/frontend/components/chat.tsx (1:108) - challenge3/frontend/components/chat.tsx (1:108) duplicated block id: 8 size: 94 cleaned lines of code in 2 files: - challenge1/frontend/components/chat.tsx (1:108) - challenge3/frontend/components/chat.tsx (1:108) duplicated block id: 9 size: 94 cleaned lines of code in 2 files: - challenge1/frontend/components/chat.tsx (1:108) - challenge2/frontend/components/chat.tsx (1:108) duplicated block id: 10 size: 89 cleaned lines of code in 2 files: - challenge2/frontend/app/globals.css (1:96) - challenge3/frontend/app/globals.css (1:96) duplicated block id: 11 size: 89 cleaned lines of code in 2 files: - challenge4/frontend/app/globals.css (1:96) - starting_point/frontend/app/globals.css (1:96) duplicated block id: 12 size: 89 cleaned lines of code in 2 files: - challenge1/frontend/app/globals.css (1:96) - challenge4/frontend/app/globals.css (1:96) duplicated block id: 13 size: 89 cleaned lines of code in 2 files: - challenge1/frontend/app/globals.css (1:96) - challenge5/frontend/app/globals.css (1:96) duplicated block id: 14 size: 89 cleaned lines of code in 2 files: - challenge3/frontend/app/globals.css (1:96) - challenge5/frontend/app/globals.css (1:96) duplicated block id: 15 size: 89 cleaned lines of code in 2 files: - challenge2/frontend/app/globals.css (1:96) - starting_point/frontend/app/globals.css (1:96) duplicated block id: 16 size: 89 cleaned lines of code in 2 files: - challenge3/frontend/app/globals.css (1:96) - challenge4/frontend/app/globals.css (1:96) duplicated block id: 17 size: 89 cleaned lines of code in 2 files: - challenge1/frontend/app/globals.css (1:96) - challenge3/frontend/app/globals.css (1:96) duplicated block id: 18 size: 89 cleaned lines of code in 2 files: - challenge5/frontend/app/globals.css (1:96) - starting_point/frontend/app/globals.css (1:96) duplicated block id: 19 size: 89 cleaned lines of code in 2 files: - challenge2/frontend/app/globals.css (1:96) - challenge4/frontend/app/globals.css (1:96) duplicated block id: 20 size: 89 cleaned lines of code in 2 files: - challenge1/frontend/app/globals.css (1:96) - starting_point/frontend/app/globals.css (1:96) duplicated block id: 21 size: 89 cleaned lines of code in 2 files: - challenge4/frontend/app/globals.css (1:96) - challenge5/frontend/app/globals.css (1:96) duplicated block id: 22 size: 89 cleaned lines of code in 2 files: - challenge2/frontend/app/globals.css (1:96) - challenge5/frontend/app/globals.css (1:96) duplicated block id: 23 size: 89 cleaned lines of code in 2 files: - challenge3/frontend/app/globals.css (1:96) - starting_point/frontend/app/globals.css (1:96) duplicated block id: 24 size: 89 cleaned lines of code in 2 files: - challenge1/frontend/app/globals.css (1:96) - challenge2/frontend/app/globals.css (1:96) duplicated block id: 25 size: 84 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (8:96) - challenge4/frontend/components/tool-call.tsx (8:96) duplicated block id: 26 size: 84 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (8:96) - starting_point/frontend/components/tool-call.tsx (8:96) duplicated block id: 27 size: 84 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (8:96) - challenge2/frontend/components/tool-call.tsx (8:96) duplicated block id: 28 size: 84 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (8:96) - challenge4/frontend/components/tool-call.tsx (8:96) duplicated block id: 29 size: 84 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (8:96) - challenge3/frontend/components/tool-call.tsx (8:96) duplicated block id: 30 size: 84 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (8:96) - starting_point/frontend/components/tool-call.tsx (8:96) duplicated block id: 31 size: 84 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (8:96) - starting_point/frontend/components/tool-call.tsx (8:96) duplicated block id: 32 size: 84 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (8:96) - challenge3/frontend/components/tool-call.tsx (8:96) duplicated block id: 33 size: 84 cleaned lines of code in 2 files: - challenge4/frontend/components/tool-call.tsx (8:96) - starting_point/frontend/components/tool-call.tsx (8:96) duplicated block id: 34 size: 84 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (8:96) - challenge4/frontend/components/tool-call.tsx (8:96) duplicated block id: 35 size: 80 cleaned lines of code in 2 files: - challenge4/frontend/components/voice-mode.tsx (10:130) - challenge5/frontend/components/voice-mode.tsx (16:136) duplicated block id: 36 size: 76 cleaned lines of code in 2 files: - challenge3/frontend/lib/tools.ts (1:96) - challenge4/frontend/lib/tools.ts (1:96) duplicated block id: 37 size: 72 cleaned lines of code in 2 files: - challenge3/frontend/lib/tools.ts (7:96) - challenge5/frontend/lib/tools.ts (7:96) duplicated block id: 38 size: 72 cleaned lines of code in 2 files: - challenge4/frontend/lib/tools.ts (7:96) - challenge5/frontend/lib/tools.ts (7:96) duplicated block id: 39 size: 71 cleaned lines of code in 2 files: - challenge5/frontend/components/tool-call.tsx (23:94) - starting_point/frontend/components/tool-call.tsx (24:95) duplicated block id: 40 size: 71 cleaned lines of code in 2 files: - challenge4/frontend/components/tool-call.tsx (24:95) - challenge5/frontend/components/tool-call.tsx (23:94) duplicated block id: 41 size: 71 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (24:95) - challenge5/frontend/components/tool-call.tsx (23:94) duplicated block id: 42 size: 71 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (24:95) - challenge5/frontend/components/tool-call.tsx (23:94) duplicated block id: 43 size: 71 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (24:95) - challenge5/frontend/components/tool-call.tsx (23:94) duplicated block id: 44 size: 63 cleaned lines of code in 2 files: - challenge3/frontend/lib/assistant.ts (6:89) - challenge4/frontend/lib/assistant.ts (6:89) duplicated block id: 45 size: 63 cleaned lines of code in 2 files: - challenge2/frontend/lib/assistant.ts (6:89) - challenge4/frontend/lib/assistant.ts (6:89) duplicated block id: 46 size: 63 cleaned lines of code in 2 files: - challenge2/frontend/lib/assistant.ts (6:89) - challenge3/frontend/lib/assistant.ts (6:89) duplicated block id: 47 size: 62 cleaned lines of code in 2 files: - challenge3/frontend/components/chat.tsx (1:76) - challenge4/frontend/components/chat.tsx (1:77) duplicated block id: 48 size: 62 cleaned lines of code in 2 files: - challenge4/frontend/components/chat.tsx (1:77) - starting_point/frontend/components/chat.tsx (1:76) duplicated block id: 49 size: 62 cleaned lines of code in 2 files: - challenge1/frontend/components/chat.tsx (1:76) - challenge4/frontend/components/chat.tsx (1:77) duplicated block id: 50 size: 62 cleaned lines of code in 2 files: - challenge2/frontend/components/chat.tsx (1:76) - challenge4/frontend/components/chat.tsx (1:77) duplicated block id: 51 size: 58 cleaned lines of code in 2 files: - challenge1/frontend/tailwind.config.ts (3:77) - challenge3/frontend/tailwind.config.ts (3:77) duplicated block id: 52 size: 58 cleaned lines of code in 2 files: - challenge4/frontend/tailwind.config.ts (3:77) - challenge5/frontend/tailwind.config.ts (3:77) duplicated block id: 53 size: 58 cleaned lines of code in 2 files: - challenge2/frontend/tailwind.config.ts (3:77) - challenge5/frontend/tailwind.config.ts (3:77) duplicated block id: 54 size: 58 cleaned lines of code in 2 files: - challenge1/frontend/tailwind.config.ts (3:77) - challenge4/frontend/tailwind.config.ts (3:77) duplicated block id: 55 size: 58 cleaned lines of code in 2 files: - challenge1/frontend/tailwind.config.ts (3:77) - challenge2/frontend/tailwind.config.ts (3:77) duplicated block id: 56 size: 58 cleaned lines of code in 2 files: - challenge4/frontend/components/chat.tsx (51:111) - challenge5/frontend/components/chat.tsx (43:102) duplicated block id: 57 size: 58 cleaned lines of code in 2 files: - challenge3/frontend/tailwind.config.ts (3:77) - challenge5/frontend/tailwind.config.ts (3:77) duplicated block id: 58 size: 58 cleaned lines of code in 2 files: - challenge2/frontend/tailwind.config.ts (3:77) - challenge3/frontend/tailwind.config.ts (3:77) duplicated block id: 59 size: 58 cleaned lines of code in 2 files: - challenge2/frontend/tailwind.config.ts (3:77) - challenge4/frontend/tailwind.config.ts (3:77) duplicated block id: 60 size: 58 cleaned lines of code in 2 files: - challenge3/frontend/tailwind.config.ts (3:77) - starting_point/frontend/tailwind.config.ts (3:77) duplicated block id: 61 size: 58 cleaned lines of code in 2 files: - challenge2/frontend/tailwind.config.ts (3:77) - starting_point/frontend/tailwind.config.ts (3:77) duplicated block id: 62 size: 58 cleaned lines of code in 2 files: - challenge1/frontend/tailwind.config.ts (3:77) - starting_point/frontend/tailwind.config.ts (3:77) duplicated block id: 63 size: 58 cleaned lines of code in 2 files: - challenge4/frontend/tailwind.config.ts (3:77) - starting_point/frontend/tailwind.config.ts (3:77) duplicated block id: 64 size: 58 cleaned lines of code in 2 files: - challenge5/frontend/tailwind.config.ts (3:77) - starting_point/frontend/tailwind.config.ts (3:77) duplicated block id: 65 size: 58 cleaned lines of code in 2 files: - challenge1/frontend/tailwind.config.ts (3:77) - challenge5/frontend/tailwind.config.ts (3:77) duplicated block id: 66 size: 58 cleaned lines of code in 2 files: - challenge3/frontend/tailwind.config.ts (3:77) - challenge4/frontend/tailwind.config.ts (3:77) duplicated block id: 67 size: 46 cleaned lines of code in 2 files: - challenge2/frontend/components/message.tsx (6:55) - starting_point/frontend/components/message.tsx (6:55) duplicated block id: 68 size: 46 cleaned lines of code in 2 files: - challenge2/frontend/components/message.tsx (6:55) - challenge4/frontend/components/message.tsx (6:55) duplicated block id: 69 size: 46 cleaned lines of code in 2 files: - challenge3/frontend/components/message.tsx (6:55) - challenge4/frontend/components/message.tsx (6:55) duplicated block id: 70 size: 46 cleaned lines of code in 2 files: - challenge1/frontend/components/message.tsx (6:55) - starting_point/frontend/components/message.tsx (6:55) duplicated block id: 71 size: 46 cleaned lines of code in 2 files: - challenge3/frontend/components/message.tsx (6:55) - starting_point/frontend/components/message.tsx (6:55) duplicated block id: 72 size: 46 cleaned lines of code in 2 files: - challenge1/frontend/components/message.tsx (6:55) - challenge4/frontend/components/message.tsx (6:55) duplicated block id: 73 size: 46 cleaned lines of code in 2 files: - challenge2/frontend/components/message.tsx (6:55) - challenge3/frontend/components/message.tsx (6:55) duplicated block id: 74 size: 46 cleaned lines of code in 2 files: - challenge1/frontend/components/message.tsx (6:55) - challenge2/frontend/components/message.tsx (6:55) duplicated block id: 75 size: 46 cleaned lines of code in 2 files: - challenge1/frontend/components/message.tsx (6:55) - challenge3/frontend/components/message.tsx (6:55) duplicated block id: 76 size: 46 cleaned lines of code in 2 files: - challenge4/frontend/components/message.tsx (6:55) - starting_point/frontend/components/message.tsx (6:55) duplicated block id: 77 size: 45 cleaned lines of code in 2 files: - challenge1/frontend/lib/assistant.ts (5:67) - starting_point/frontend/lib/assistant.ts (5:67) duplicated block id: 78 size: 40 cleaned lines of code in 2 files: - challenge4/frontend/components/voice-mode.tsx (151:195) - challenge5/frontend/components/voice-mode.tsx (196:240) duplicated block id: 79 size: 38 cleaned lines of code in 2 files: - challenge1/frontend/lib/assistant.ts (5:55) - challenge4/frontend/lib/assistant.ts (6:56) duplicated block id: 80 size: 38 cleaned lines of code in 2 files: - challenge4/frontend/lib/assistant.ts (6:56) - starting_point/frontend/lib/assistant.ts (5:55) duplicated block id: 81 size: 38 cleaned lines of code in 2 files: - challenge3/frontend/lib/assistant.ts (6:56) - starting_point/frontend/lib/assistant.ts (5:55) duplicated block id: 82 size: 38 cleaned lines of code in 2 files: - challenge1/frontend/lib/assistant.ts (5:55) - challenge2/frontend/lib/assistant.ts (6:56) duplicated block id: 83 size: 38 cleaned lines of code in 2 files: - challenge1/frontend/lib/assistant.ts (5:55) - challenge3/frontend/lib/assistant.ts (6:56) duplicated block id: 84 size: 38 cleaned lines of code in 2 files: - challenge2/frontend/lib/assistant.ts (6:56) - starting_point/frontend/lib/assistant.ts (5:55) duplicated block id: 85 size: 37 cleaned lines of code in 2 files: - challenge2/python-backend/app.py (40:83) - challenge3/python-backend/app.py (87:130) duplicated block id: 86 size: 37 cleaned lines of code in 2 files: - challenge2/python-backend/app.py (40:83) - challenge4/python-backend/app.py (87:130) duplicated block id: 87 size: 37 cleaned lines of code in 2 files: - challenge2/python-backend/app.py (40:83) - challenge5/python-backend/app.py (87:130) duplicated block id: 88 size: 33 cleaned lines of code in 2 files: - challenge1/frontend/components/assistant.tsx (1:50) - challenge2/frontend/components/assistant.tsx (1:50) duplicated block id: 89 size: 33 cleaned lines of code in 2 files: - challenge1/frontend/components/assistant.tsx (1:50) - challenge3/frontend/components/assistant.tsx (1:50) duplicated block id: 90 size: 33 cleaned lines of code in 2 files: - challenge1/frontend/components/assistant.tsx (1:50) - challenge4/frontend/components/assistant.tsx (1:50) duplicated block id: 91 size: 33 cleaned lines of code in 2 files: - challenge2/frontend/components/assistant.tsx (1:50) - challenge4/frontend/components/assistant.tsx (1:50) duplicated block id: 92 size: 33 cleaned lines of code in 2 files: - challenge3/frontend/components/assistant.tsx (1:50) - starting_point/frontend/components/assistant.tsx (1:50) duplicated block id: 93 size: 33 cleaned lines of code in 2 files: - challenge4/frontend/components/assistant.tsx (1:50) - starting_point/frontend/components/assistant.tsx (1:50) duplicated block id: 94 size: 33 cleaned lines of code in 2 files: - challenge1/frontend/components/assistant.tsx (1:50) - starting_point/frontend/components/assistant.tsx (1:50) duplicated block id: 95 size: 33 cleaned lines of code in 2 files: - challenge3/frontend/components/assistant.tsx (1:50) - challenge4/frontend/components/assistant.tsx (1:50) duplicated block id: 96 size: 33 cleaned lines of code in 2 files: - challenge2/frontend/components/assistant.tsx (1:50) - starting_point/frontend/components/assistant.tsx (1:50) duplicated block id: 97 size: 33 cleaned lines of code in 2 files: - challenge2/frontend/components/assistant.tsx (1:50) - challenge3/frontend/components/assistant.tsx (1:50) duplicated block id: 98 size: 32 cleaned lines of code in 2 files: - challenge5/frontend/components/chat.tsx (72:103) - starting_point/frontend/components/chat.tsx (77:108) duplicated block id: 99 size: 32 cleaned lines of code in 2 files: - challenge3/frontend/components/chat.tsx (77:108) - challenge5/frontend/components/chat.tsx (72:103) duplicated block id: 100 size: 32 cleaned lines of code in 2 files: - challenge1/frontend/components/chat.tsx (77:108) - challenge5/frontend/components/chat.tsx (72:103) duplicated block id: 101 size: 32 cleaned lines of code in 2 files: - challenge2/frontend/components/chat.tsx (77:108) - challenge5/frontend/components/chat.tsx (72:103) duplicated block id: 102 size: 31 cleaned lines of code in 2 files: - challenge4/frontend/components/chat.tsx (81:111) - starting_point/frontend/components/chat.tsx (77:107) duplicated block id: 103 size: 31 cleaned lines of code in 2 files: - challenge1/frontend/components/chat.tsx (77:107) - challenge4/frontend/components/chat.tsx (81:111) duplicated block id: 104 size: 31 cleaned lines of code in 2 files: - challenge2/frontend/components/chat.tsx (77:107) - challenge4/frontend/components/chat.tsx (81:111) duplicated block id: 105 size: 31 cleaned lines of code in 2 files: - challenge3/frontend/components/chat.tsx (77:107) - challenge4/frontend/components/chat.tsx (81:111) duplicated block id: 106 size: 29 cleaned lines of code in 2 files: - challenge1/frontend/app/layout.tsx (5:37) - challenge4/frontend/app/layout.tsx (5:37) duplicated block id: 107 size: 29 cleaned lines of code in 2 files: - challenge4/frontend/app/layout.tsx (5:37) - starting_point/frontend/app/layout.tsx (5:37) duplicated block id: 108 size: 29 cleaned lines of code in 2 files: - challenge2/frontend/app/layout.tsx (5:37) - starting_point/frontend/app/layout.tsx (5:37) duplicated block id: 109 size: 29 cleaned lines of code in 2 files: - challenge3/frontend/app/layout.tsx (5:37) - starting_point/frontend/app/layout.tsx (5:37) duplicated block id: 110 size: 29 cleaned lines of code in 2 files: - challenge3/frontend/app/layout.tsx (5:37) - challenge4/frontend/app/layout.tsx (5:37) duplicated block id: 111 size: 29 cleaned lines of code in 2 files: - challenge2/frontend/app/layout.tsx (5:37) - challenge3/frontend/app/layout.tsx (5:37) duplicated block id: 112 size: 29 cleaned lines of code in 2 files: - challenge1/frontend/app/layout.tsx (5:37) - starting_point/frontend/app/layout.tsx (5:37) duplicated block id: 113 size: 29 cleaned lines of code in 2 files: - challenge2/frontend/app/layout.tsx (5:37) - challenge4/frontend/app/layout.tsx (5:37) duplicated block id: 114 size: 29 cleaned lines of code in 2 files: - challenge1/frontend/app/layout.tsx (5:37) - challenge3/frontend/app/layout.tsx (5:37) duplicated block id: 115 size: 29 cleaned lines of code in 2 files: - challenge1/frontend/app/layout.tsx (5:37) - challenge2/frontend/app/layout.tsx (5:37) duplicated block id: 116 size: 26 cleaned lines of code in 2 files: - challenge3/frontend/components/chat.tsx (50:76) - challenge5/frontend/components/chat.tsx (43:69) duplicated block id: 117 size: 26 cleaned lines of code in 2 files: - challenge2/frontend/components/chat.tsx (50:76) - challenge5/frontend/components/chat.tsx (43:69) duplicated block id: 118 size: 26 cleaned lines of code in 2 files: - challenge1/frontend/components/chat.tsx (50:76) - challenge5/frontend/components/chat.tsx (43:69) duplicated block id: 119 size: 26 cleaned lines of code in 2 files: - challenge5/frontend/components/chat.tsx (43:69) - starting_point/frontend/components/chat.tsx (50:76) duplicated block id: 120 size: 26 cleaned lines of code in 2 files: - challenge4/frontend/lib/constants.ts (1:32) - challenge5/frontend/lib/constants.ts (1:32) duplicated block id: 121 size: 25 cleaned lines of code in 2 files: - challenge3/frontend/prettier.config.cjs (2:27) - starting_point/frontend/prettier.config.cjs (2:27) duplicated block id: 122 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/lib/tools.ts (13:42) - challenge5/frontend/lib/tools.ts (26:55) duplicated block id: 123 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/components/message.css (1:28) - challenge3/frontend/components/message.css (1:28) duplicated block id: 124 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/components/message.css (1:28) - starting_point/frontend/components/message.css (1:28) duplicated block id: 125 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/prettier.config.cjs (2:27) - challenge2/frontend/prettier.config.cjs (2:27) duplicated block id: 126 size: 25 cleaned lines of code in 2 files: - challenge5/frontend/prettier.config.cjs (2:27) - starting_point/frontend/prettier.config.cjs (2:27) duplicated block id: 127 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/components/message.css (1:28) - starting_point/frontend/components/message.css (1:28) duplicated block id: 128 size: 25 cleaned lines of code in 2 files: - challenge4/frontend/prettier.config.cjs (2:27) - challenge5/frontend/prettier.config.cjs (2:27) duplicated block id: 129 size: 25 cleaned lines of code in 2 files: - challenge2/python-backend/app.py (16:40) - challenge5/python-backend/app.py (26:50) duplicated block id: 130 size: 25 cleaned lines of code in 2 files: - challenge5/frontend/components/message.tsx (11:35) - starting_point/frontend/components/message.tsx (12:36) duplicated block id: 131 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/components/message.css (1:28) - challenge3/frontend/components/message.css (1:28) duplicated block id: 132 size: 25 cleaned lines of code in 2 files: - challenge3/frontend/prettier.config.cjs (2:27) - challenge5/frontend/prettier.config.cjs (2:27) duplicated block id: 133 size: 25 cleaned lines of code in 2 files: - challenge3/frontend/components/message.tsx (12:36) - challenge5/frontend/components/message.tsx (11:35) duplicated block id: 134 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/prettier.config.cjs (2:27) - challenge4/frontend/prettier.config.cjs (2:27) duplicated block id: 135 size: 25 cleaned lines of code in 2 files: - challenge4/frontend/components/message.tsx (12:36) - challenge5/frontend/components/message.tsx (11:35) duplicated block id: 136 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/lib/tools.ts (13:42) - challenge4/frontend/lib/tools.ts (26:55) duplicated block id: 137 size: 25 cleaned lines of code in 2 files: - challenge3/frontend/components/message.css (1:28) - starting_point/frontend/components/message.css (1:28) duplicated block id: 138 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/prettier.config.cjs (2:27) - challenge3/frontend/prettier.config.cjs (2:27) duplicated block id: 139 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/prettier.config.cjs (2:27) - challenge4/frontend/prettier.config.cjs (2:27) duplicated block id: 140 size: 25 cleaned lines of code in 2 files: - challenge3/frontend/prettier.config.cjs (2:27) - challenge4/frontend/prettier.config.cjs (2:27) duplicated block id: 141 size: 25 cleaned lines of code in 2 files: - challenge2/python-backend/app.py (16:40) - challenge3/python-backend/app.py (26:50) duplicated block id: 142 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/components/message.tsx (12:36) - challenge5/frontend/components/message.tsx (11:35) duplicated block id: 143 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/components/message.css (1:28) - challenge4/frontend/components/message.css (1:28) duplicated block id: 144 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/lib/tools.ts (13:42) - challenge3/frontend/lib/tools.ts (26:55) duplicated block id: 145 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/prettier.config.cjs (2:27) - challenge5/frontend/prettier.config.cjs (2:27) duplicated block id: 146 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/prettier.config.cjs (2:27) - challenge5/frontend/prettier.config.cjs (2:27) duplicated block id: 147 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/components/message.tsx (12:36) - challenge5/frontend/components/message.tsx (11:35) duplicated block id: 148 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/prettier.config.cjs (2:27) - starting_point/frontend/prettier.config.cjs (2:27) duplicated block id: 149 size: 25 cleaned lines of code in 2 files: - challenge2/python-backend/app.py (16:40) - challenge4/python-backend/app.py (26:50) duplicated block id: 150 size: 25 cleaned lines of code in 2 files: - challenge3/frontend/components/message.css (1:28) - challenge4/frontend/components/message.css (1:28) duplicated block id: 151 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/prettier.config.cjs (2:27) - starting_point/frontend/prettier.config.cjs (2:27) duplicated block id: 152 size: 25 cleaned lines of code in 2 files: - challenge4/frontend/components/message.css (1:28) - starting_point/frontend/components/message.css (1:28) duplicated block id: 153 size: 25 cleaned lines of code in 2 files: - challenge1/frontend/components/message.css (1:28) - challenge2/frontend/components/message.css (1:28) duplicated block id: 154 size: 25 cleaned lines of code in 2 files: - challenge4/frontend/prettier.config.cjs (2:27) - starting_point/frontend/prettier.config.cjs (2:27) duplicated block id: 155 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/prettier.config.cjs (2:27) - challenge3/frontend/prettier.config.cjs (2:27) duplicated block id: 156 size: 25 cleaned lines of code in 2 files: - challenge2/frontend/components/message.css (1:28) - challenge4/frontend/components/message.css (1:28) duplicated block id: 157 size: 24 cleaned lines of code in 2 files: - challenge1/frontend/components/chat.tsx (16:43) - challenge5/frontend/components/chat.tsx (15:42) duplicated block id: 158 size: 24 cleaned lines of code in 2 files: - challenge4/frontend/components/chat.tsx (17:44) - challenge5/frontend/components/chat.tsx (15:42) duplicated block id: 159 size: 24 cleaned lines of code in 2 files: - challenge3/frontend/components/chat.tsx (16:43) - challenge5/frontend/components/chat.tsx (15:42) duplicated block id: 160 size: 24 cleaned lines of code in 2 files: - challenge5/frontend/components/chat.tsx (15:42) - starting_point/frontend/components/chat.tsx (16:43) duplicated block id: 161 size: 24 cleaned lines of code in 2 files: - challenge2/frontend/components/chat.tsx (16:43) - challenge5/frontend/components/chat.tsx (15:42) duplicated block id: 162 size: 23 cleaned lines of code in 2 files: - challenge4/frontend/app/api/session/route.ts (4:28) - challenge5/frontend/app/api/session/route.ts (4:28) duplicated block id: 163 size: 22 cleaned lines of code in 2 files: - challenge2/frontend/app/api/search_location/route.ts (3:31) - challenge4/frontend/app/api/search_location/route.ts (3:31) duplicated block id: 164 size: 22 cleaned lines of code in 2 files: - challenge2/frontend/stores/useConversationStore.ts (6:35) - starting_point/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 165 size: 22 cleaned lines of code in 2 files: - challenge4/frontend/app/api/search_location/route.ts (3:31) - challenge5/frontend/app/api/search_location/route.ts (3:31) duplicated block id: 166 size: 22 cleaned lines of code in 2 files: - challenge3/frontend/app/api/search_location/route.ts (3:31) - challenge4/frontend/app/api/search_location/route.ts (3:31) duplicated block id: 167 size: 22 cleaned lines of code in 2 files: - challenge4/frontend/stores/useConversationStore.ts (6:35) - challenge5/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 168 size: 22 cleaned lines of code in 2 files: - challenge2/frontend/stores/useConversationStore.ts (6:35) - challenge5/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 169 size: 22 cleaned lines of code in 2 files: - challenge1/frontend/stores/useConversationStore.ts (6:35) - challenge4/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 170 size: 22 cleaned lines of code in 2 files: - challenge2/frontend/stores/useConversationStore.ts (6:35) - challenge4/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 171 size: 22 cleaned lines of code in 2 files: - challenge3/frontend/stores/useConversationStore.ts (6:35) - challenge4/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 172 size: 22 cleaned lines of code in 2 files: - challenge1/frontend/stores/useConversationStore.ts (6:35) - challenge5/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 173 size: 22 cleaned lines of code in 2 files: - challenge4/frontend/stores/useConversationStore.ts (6:35) - starting_point/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 174 size: 22 cleaned lines of code in 2 files: - challenge2/frontend/app/api/search_location/route.ts (3:31) - challenge5/frontend/app/api/search_location/route.ts (3:31) duplicated block id: 175 size: 22 cleaned lines of code in 2 files: - challenge5/frontend/stores/useConversationStore.ts (6:35) - starting_point/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 176 size: 22 cleaned lines of code in 2 files: - challenge2/frontend/stores/useConversationStore.ts (6:35) - challenge3/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 177 size: 22 cleaned lines of code in 2 files: - challenge3/frontend/app/api/search_location/route.ts (3:31) - challenge5/frontend/app/api/search_location/route.ts (3:31) duplicated block id: 178 size: 22 cleaned lines of code in 2 files: - challenge2/frontend/app/api/search_location/route.ts (3:31) - challenge3/frontend/app/api/search_location/route.ts (3:31) duplicated block id: 179 size: 22 cleaned lines of code in 2 files: - challenge1/frontend/stores/useConversationStore.ts (6:35) - challenge3/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 180 size: 22 cleaned lines of code in 2 files: - challenge3/frontend/stores/useConversationStore.ts (6:35) - starting_point/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 181 size: 22 cleaned lines of code in 2 files: - challenge1/frontend/stores/useConversationStore.ts (6:35) - challenge2/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 182 size: 22 cleaned lines of code in 2 files: - challenge3/frontend/stores/useConversationStore.ts (6:35) - challenge5/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 183 size: 22 cleaned lines of code in 2 files: - challenge1/frontend/stores/useConversationStore.ts (6:35) - starting_point/frontend/stores/useConversationStore.ts (6:35) duplicated block id: 184 size: 19 cleaned lines of code in 2 files: - challenge3/frontend/app/api/create_itinerary/route.ts (3:25) - challenge5/frontend/app/api/create_itinerary/route.ts (3:25) duplicated block id: 185 size: 19 cleaned lines of code in 2 files: - challenge3/frontend/app/api/create_itinerary/route.ts (3:25) - challenge4/frontend/app/api/create_itinerary/route.ts (3:25) duplicated block id: 186 size: 19 cleaned lines of code in 2 files: - challenge4/frontend/app/api/create_itinerary/route.ts (3:25) - challenge5/frontend/app/api/create_itinerary/route.ts (3:25) duplicated block id: 187 size: 17 cleaned lines of code in 2 files: - challenge1/frontend/components/message.css (1:18) - challenge5/frontend/components/message.css (1:18) duplicated block id: 188 size: 17 cleaned lines of code in 2 files: - challenge2/frontend/app/api/get_response/route.ts (5:26) - challenge4/frontend/app/api/get_response/route.ts (5:26) duplicated block id: 189 size: 17 cleaned lines of code in 2 files: - challenge2/frontend/components/message.css (1:18) - challenge5/frontend/components/message.css (1:18) duplicated block id: 190 size: 17 cleaned lines of code in 2 files: - challenge3/frontend/components/message.css (1:18) - challenge5/frontend/components/message.css (1:18) duplicated block id: 191 size: 17 cleaned lines of code in 2 files: - challenge5/frontend/components/message.css (1:18) - starting_point/frontend/components/message.css (1:18) duplicated block id: 192 size: 17 cleaned lines of code in 2 files: - challenge4/frontend/components/message.css (1:18) - challenge5/frontend/components/message.css (1:18) duplicated block id: 193 size: 17 cleaned lines of code in 2 files: - challenge3/frontend/lib/constants.ts (4:23) - challenge5/frontend/lib/constants.ts (7:26) duplicated block id: 194 size: 17 cleaned lines of code in 2 files: - challenge2/frontend/app/api/get_response/route.ts (5:26) - challenge3/frontend/app/api/get_response/route.ts (5:26) duplicated block id: 195 size: 17 cleaned lines of code in 2 files: - challenge3/frontend/lib/constants.ts (4:23) - challenge4/frontend/lib/constants.ts (7:26) duplicated block id: 196 size: 17 cleaned lines of code in 2 files: - challenge3/frontend/app/api/get_response/route.ts (5:26) - challenge4/frontend/app/api/get_response/route.ts (5:26) duplicated block id: 197 size: 16 cleaned lines of code in 2 files: - challenge2/frontend/app/layout.tsx (19:37) - challenge5/frontend/app/layout.tsx (19:37) duplicated block id: 198 size: 16 cleaned lines of code in 2 files: - challenge4/frontend/app/layout.tsx (19:37) - challenge5/frontend/app/layout.tsx (19:37) duplicated block id: 199 size: 16 cleaned lines of code in 2 files: - challenge1/frontend/app/layout.tsx (19:37) - challenge5/frontend/app/layout.tsx (19:37) duplicated block id: 200 size: 16 cleaned lines of code in 2 files: - challenge5/frontend/app/layout.tsx (19:37) - starting_point/frontend/app/layout.tsx (19:37) duplicated block id: 201 size: 16 cleaned lines of code in 2 files: - challenge3/frontend/app/layout.tsx (19:37) - challenge5/frontend/app/layout.tsx (19:37) duplicated block id: 202 size: 13 cleaned lines of code in 2 files: - challenge5/frontend/lib/assistant.ts (7:23) - starting_point/frontend/lib/assistant.ts (5:21) duplicated block id: 203 size: 13 cleaned lines of code in 2 files: - challenge3/frontend/lib/assistant.ts (6:22) - challenge5/frontend/lib/assistant.ts (7:23) duplicated block id: 204 size: 13 cleaned lines of code in 2 files: - challenge4/frontend/lib/assistant.ts (6:22) - challenge5/frontend/lib/assistant.ts (7:23) duplicated block id: 205 size: 13 cleaned lines of code in 2 files: - challenge1/frontend/lib/assistant.ts (5:21) - challenge5/frontend/lib/assistant.ts (7:23) duplicated block id: 206 size: 13 cleaned lines of code in 2 files: - challenge2/frontend/lib/assistant.ts (6:22) - challenge5/frontend/lib/assistant.ts (7:23) duplicated block id: 207 size: 12 cleaned lines of code in 2 files: - challenge5/frontend/lib/assistant.ts (86:99) - starting_point/frontend/lib/assistant.ts (24:37) duplicated block id: 208 size: 12 cleaned lines of code in 2 files: - challenge3/frontend/components/assistant.tsx (10:26) - challenge5/frontend/components/assistant.tsx (9:25) duplicated block id: 209 size: 12 cleaned lines of code in 2 files: - challenge2/frontend/lib/tools.ts (1:15) - challenge3/frontend/lib/tools.ts (1:15) duplicated block id: 210 size: 12 cleaned lines of code in 2 files: - challenge2/frontend/components/assistant.tsx (10:26) - challenge5/frontend/components/assistant.tsx (9:25) duplicated block id: 211 size: 12 cleaned lines of code in 2 files: - challenge2/frontend/lib/tools.ts (1:15) - challenge4/frontend/lib/tools.ts (1:15) duplicated block id: 212 size: 12 cleaned lines of code in 2 files: - challenge3/frontend/lib/assistant.ts (25:38) - challenge5/frontend/lib/assistant.ts (86:99) duplicated block id: 213 size: 12 cleaned lines of code in 2 files: - challenge4/frontend/lib/assistant.ts (25:38) - challenge5/frontend/lib/assistant.ts (86:99) duplicated block id: 214 size: 12 cleaned lines of code in 2 files: - challenge1/frontend/lib/assistant.ts (24:37) - challenge5/frontend/lib/assistant.ts (86:99) duplicated block id: 215 size: 12 cleaned lines of code in 2 files: - challenge4/frontend/components/assistant.tsx (10:26) - challenge5/frontend/components/assistant.tsx (9:25) duplicated block id: 216 size: 12 cleaned lines of code in 2 files: - challenge1/frontend/components/assistant.tsx (10:26) - challenge5/frontend/components/assistant.tsx (9:25) duplicated block id: 217 size: 12 cleaned lines of code in 2 files: - challenge2/frontend/lib/assistant.ts (25:38) - challenge5/frontend/lib/assistant.ts (86:99) duplicated block id: 218 size: 12 cleaned lines of code in 2 files: - challenge5/frontend/components/assistant.tsx (9:25) - starting_point/frontend/components/assistant.tsx (10:26) duplicated block id: 219 size: 11 cleaned lines of code in 2 files: - challenge2/frontend/app/layout.tsx (5:16) - challenge5/frontend/app/layout.tsx (5:16) duplicated block id: 220 size: 11 cleaned lines of code in 2 files: - challenge1/frontend/app/layout.tsx (5:16) - challenge5/frontend/app/layout.tsx (5:16) duplicated block id: 221 size: 11 cleaned lines of code in 2 files: - challenge1/python-backend/app.py (9:22) - starting_point/python-backend/app.py (7:20) duplicated block id: 222 size: 11 cleaned lines of code in 2 files: - challenge3/frontend/app/layout.tsx (5:16) - challenge5/frontend/app/layout.tsx (5:16) duplicated block id: 223 size: 11 cleaned lines of code in 2 files: - challenge5/frontend/app/layout.tsx (5:16) - starting_point/frontend/app/layout.tsx (5:16) duplicated block id: 224 size: 11 cleaned lines of code in 2 files: - challenge4/frontend/app/layout.tsx (5:16) - challenge5/frontend/app/layout.tsx (5:16) duplicated block id: 225 size: 10 cleaned lines of code in 2 files: - challenge1/python-backend/app.py (14:24) - challenge2/python-backend/app.py (44:54) duplicated block id: 226 size: 10 cleaned lines of code in 2 files: - challenge2/frontend/lib/constants.ts (1:13) - challenge3/frontend/lib/constants.ts (1:13) duplicated block id: 227 size: 10 cleaned lines of code in 2 files: - challenge1/python-backend/app.py (14:24) - challenge3/python-backend/app.py (91:101) duplicated block id: 228 size: 10 cleaned lines of code in 2 files: - challenge1/python-backend/app.py (14:24) - challenge4/python-backend/app.py (91:101) duplicated block id: 229 size: 10 cleaned lines of code in 2 files: - challenge1/python-backend/app.py (14:24) - challenge5/python-backend/app.py (91:101) duplicated block id: 230 size: 9 cleaned lines of code in 2 files: - challenge2/frontend/lib/constants.ts (4:13) - challenge5/frontend/lib/constants.ts (7:16) duplicated block id: 231 size: 9 cleaned lines of code in 2 files: - challenge2/frontend/lib/constants.ts (4:13) - challenge4/frontend/lib/constants.ts (7:16) duplicated block id: 232 size: 8 cleaned lines of code in 2 files: - challenge4/frontend/components/message.tsx (46:55) - challenge5/frontend/components/message.tsx (37:46) duplicated block id: 233 size: 8 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (15:23) - challenge4/frontend/app/api/get_response/route.ts (18:26) duplicated block id: 234 size: 8 cleaned lines of code in 2 files: - challenge2/python-backend/app.py (44:52) - starting_point/python-backend/app.py (12:20) duplicated block id: 235 size: 8 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (15:23) - challenge3/frontend/app/api/get_response/route.ts (18:26) duplicated block id: 236 size: 8 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (15:23) - challenge2/frontend/app/api/get_response/route.ts (18:26) duplicated block id: 237 size: 8 cleaned lines of code in 2 files: - challenge5/frontend/components/message.tsx (37:46) - starting_point/frontend/components/message.tsx (46:55) duplicated block id: 238 size: 8 cleaned lines of code in 2 files: - challenge5/python-backend/app.py (91:99) - starting_point/python-backend/app.py (12:20) duplicated block id: 239 size: 8 cleaned lines of code in 2 files: - challenge1/frontend/components/message.tsx (46:55) - challenge5/frontend/components/message.tsx (37:46) duplicated block id: 240 size: 8 cleaned lines of code in 2 files: - challenge2/frontend/components/message.tsx (46:55) - challenge5/frontend/components/message.tsx (37:46) duplicated block id: 241 size: 8 cleaned lines of code in 2 files: - challenge3/python-backend/app.py (91:99) - starting_point/python-backend/app.py (12:20) duplicated block id: 242 size: 8 cleaned lines of code in 2 files: - challenge3/frontend/components/message.tsx (46:55) - challenge5/frontend/components/message.tsx (37:46) duplicated block id: 243 size: 8 cleaned lines of code in 2 files: - challenge2/frontend/lib/tools.ts (7:15) - challenge5/frontend/lib/tools.ts (7:15) duplicated block id: 244 size: 8 cleaned lines of code in 2 files: - challenge4/python-backend/app.py (91:99) - starting_point/python-backend/app.py (12:20) duplicated block id: 245 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (3:12) - challenge4/frontend/app/api/get_response/route.ts (5:14) duplicated block id: 246 size: 7 cleaned lines of code in 2 files: - challenge3/frontend/postcss.config.mjs (1:8) - challenge4/frontend/postcss.config.mjs (1:8) duplicated block id: 247 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/postcss.config.mjs (1:8) - challenge4/frontend/postcss.config.mjs (1:8) duplicated block id: 248 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/app/page.tsx (3:9) - challenge3/frontend/app/page.tsx (3:9) duplicated block id: 249 size: 7 cleaned lines of code in 2 files: - challenge5/frontend/lib/assistant.ts (122:131) - challenge5/frontend/lib/assistant.ts (167:176) duplicated block id: 250 size: 7 cleaned lines of code in 2 files: - challenge4/frontend/app/page.tsx (3:9) - challenge5/frontend/app/page.tsx (3:9) duplicated block id: 251 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/app/page.tsx (3:9) - challenge5/frontend/app/page.tsx (3:9) duplicated block id: 252 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/components/message.css (20:28) - challenge5/frontend/components/message.css (19:27) duplicated block id: 253 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/postcss.config.mjs (1:8) - challenge5/frontend/postcss.config.mjs (1:8) duplicated block id: 254 size: 7 cleaned lines of code in 2 files: - challenge3/frontend/postcss.config.mjs (1:8) - challenge5/frontend/postcss.config.mjs (1:8) duplicated block id: 255 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/app/page.tsx (3:9) - starting_point/frontend/app/page.tsx (3:9) duplicated block id: 256 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/app/page.tsx (3:9) - starting_point/frontend/app/page.tsx (3:9) duplicated block id: 257 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/app/page.tsx (3:9) - challenge4/frontend/app/page.tsx (3:9) duplicated block id: 258 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/postcss.config.mjs (1:8) - challenge3/frontend/postcss.config.mjs (1:8) duplicated block id: 259 size: 7 cleaned lines of code in 2 files: - challenge5/frontend/app/page.tsx (3:9) - starting_point/frontend/app/page.tsx (3:9) duplicated block id: 260 size: 7 cleaned lines of code in 2 files: - challenge5/frontend/components/message.css (19:27) - starting_point/frontend/components/message.css (20:28) duplicated block id: 261 size: 7 cleaned lines of code in 2 files: - challenge4/frontend/app/page.tsx (3:9) - starting_point/frontend/app/page.tsx (3:9) duplicated block id: 262 size: 7 cleaned lines of code in 2 files: - challenge3/frontend/app/page.tsx (3:9) - challenge4/frontend/app/page.tsx (3:9) duplicated block id: 263 size: 7 cleaned lines of code in 2 files: - challenge4/frontend/postcss.config.mjs (1:8) - challenge5/frontend/postcss.config.mjs (1:8) duplicated block id: 264 size: 7 cleaned lines of code in 2 files: - challenge3/frontend/app/page.tsx (3:9) - challenge5/frontend/app/page.tsx (3:9) duplicated block id: 265 size: 7 cleaned lines of code in 2 files: - challenge3/frontend/app/page.tsx (3:9) - starting_point/frontend/app/page.tsx (3:9) duplicated block id: 266 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/postcss.config.mjs (1:8) - challenge4/frontend/postcss.config.mjs (1:8) duplicated block id: 267 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (3:12) - challenge2/frontend/app/api/get_response/route.ts (5:14) duplicated block id: 268 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/components/message.css (20:28) - challenge5/frontend/components/message.css (19:27) duplicated block id: 269 size: 7 cleaned lines of code in 2 files: - challenge4/frontend/components/message.css (20:28) - challenge5/frontend/components/message.css (19:27) duplicated block id: 270 size: 7 cleaned lines of code in 2 files: - challenge3/frontend/components/message.css (20:28) - challenge5/frontend/components/message.css (19:27) duplicated block id: 271 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/app/page.tsx (3:9) - challenge3/frontend/app/page.tsx (3:9) duplicated block id: 272 size: 7 cleaned lines of code in 2 files: - challenge4/frontend/postcss.config.mjs (1:8) - starting_point/frontend/postcss.config.mjs (1:8) duplicated block id: 273 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/app/page.tsx (3:9) - challenge4/frontend/app/page.tsx (3:9) duplicated block id: 274 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (3:12) - challenge3/frontend/app/api/get_response/route.ts (5:14) duplicated block id: 275 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/app/page.tsx (3:9) - challenge5/frontend/app/page.tsx (3:9) duplicated block id: 276 size: 7 cleaned lines of code in 2 files: - challenge5/frontend/postcss.config.mjs (1:8) - starting_point/frontend/postcss.config.mjs (1:8) duplicated block id: 277 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/postcss.config.mjs (1:8) - challenge3/frontend/postcss.config.mjs (1:8) duplicated block id: 278 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/postcss.config.mjs (1:8) - starting_point/frontend/postcss.config.mjs (1:8) duplicated block id: 279 size: 7 cleaned lines of code in 2 files: - challenge3/frontend/postcss.config.mjs (1:8) - starting_point/frontend/postcss.config.mjs (1:8) duplicated block id: 280 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/postcss.config.mjs (1:8) - starting_point/frontend/postcss.config.mjs (1:8) duplicated block id: 281 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/postcss.config.mjs (1:8) - challenge2/frontend/postcss.config.mjs (1:8) duplicated block id: 282 size: 7 cleaned lines of code in 2 files: - challenge1/frontend/app/page.tsx (3:9) - challenge2/frontend/app/page.tsx (3:9) duplicated block id: 283 size: 7 cleaned lines of code in 2 files: - challenge2/frontend/postcss.config.mjs (1:8) - challenge5/frontend/postcss.config.mjs (1:8) duplicated block id: 284 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/app/api/search_location/route.ts (26:31) - challenge3/frontend/app/api/get_response/route.ts (21:26) duplicated block id: 285 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/components/voice-mode.tsx (139:147) - challenge5/frontend/components/voice-mode.tsx (183:191) duplicated block id: 286 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (74:79) - challenge5/frontend/components/tool-call.tsx (54:59) duplicated block id: 287 size: 6 cleaned lines of code in 2 files: - challenge5/frontend/components/tool-call.tsx (54:59) - starting_point/frontend/components/tool-call.tsx (74:79) duplicated block id: 288 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (55:60) - challenge4/frontend/components/tool-call.tsx (74:79) duplicated block id: 289 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/app/api/get_response/route.ts (21:26) - challenge4/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 290 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (74:79) - challenge4/frontend/components/tool-call.tsx (55:60) duplicated block id: 291 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/message.tsx (22:27) - challenge5/frontend/components/message.tsx (35:40) duplicated block id: 292 size: 6 cleaned lines of code in 2 files: - starting_point/frontend/components/tool-call.tsx (55:60) - starting_point/frontend/components/tool-call.tsx (74:79) duplicated block id: 293 size: 6 cleaned lines of code in 2 files: - challenge5/frontend/lib/constants.ts (20:25) - challenge5/python-backend/app.py (17:22) duplicated block id: 294 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (55:60) - challenge5/frontend/components/tool-call.tsx (73:78) duplicated block id: 295 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/components/tool-call.tsx (55:60) - challenge5/frontend/components/tool-call.tsx (73:78) duplicated block id: 296 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/lib/assistant.ts (40:47) - challenge5/frontend/lib/assistant.ts (30:37) duplicated block id: 297 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/lib/assistant.ts (39:46) - challenge5/frontend/lib/assistant.ts (30:37) duplicated block id: 298 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (18:23) - challenge2/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 299 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/app/api/get_response/route.ts (21:26) - challenge4/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 300 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/lib/constants.ts (17:22) - challenge5/python-backend/app.py (17:22) duplicated block id: 301 size: 6 cleaned lines of code in 2 files: - challenge4/python-backend/app.py (17:22) - challenge5/frontend/lib/constants.ts (20:25) duplicated block id: 302 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (18:23) - challenge3/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 303 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/message.tsx (22:27) - challenge5/frontend/components/message.tsx (35:40) duplicated block id: 304 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (74:79) - starting_point/frontend/components/tool-call.tsx (55:60) duplicated block id: 305 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (74:79) - starting_point/frontend/components/tool-call.tsx (55:60) duplicated block id: 306 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/app/api/get_response/route.ts (21:26) - challenge2/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 307 size: 6 cleaned lines of code in 2 files: - challenge3/python-backend/app.py (17:22) - challenge5/frontend/lib/constants.ts (20:25) duplicated block id: 308 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/components/message.tsx (22:27) - challenge5/frontend/components/message.tsx (35:40) duplicated block id: 309 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/components/message.tsx (22:27) - challenge5/frontend/components/message.tsx (35:40) duplicated block id: 310 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (55:60) - challenge4/frontend/components/tool-call.tsx (74:79) duplicated block id: 311 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/lib/assistant.ts (40:47) - challenge5/frontend/lib/assistant.ts (30:37) duplicated block id: 312 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/components/tool-call.tsx (55:60) - challenge4/frontend/components/tool-call.tsx (74:79) duplicated block id: 313 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/lib/constants.ts (17:22) - challenge4/python-backend/app.py (17:22) duplicated block id: 314 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (55:60) - challenge3/frontend/components/tool-call.tsx (74:79) duplicated block id: 315 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (18:23) - challenge5/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 316 size: 6 cleaned lines of code in 2 files: - challenge5/frontend/lib/assistant.ts (30:37) - starting_point/frontend/lib/assistant.ts (39:46) duplicated block id: 317 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (55:60) - challenge3/frontend/components/tool-call.tsx (74:79) duplicated block id: 318 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (55:60) - challenge3/frontend/components/tool-call.tsx (74:79) duplicated block id: 319 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (55:60) - challenge2/frontend/components/tool-call.tsx (74:79) duplicated block id: 320 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (55:60) - challenge2/frontend/components/tool-call.tsx (74:79) duplicated block id: 321 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (55:60) - challenge1/frontend/components/tool-call.tsx (74:79) duplicated block id: 322 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/app/api/get_response/route.ts (21:26) - challenge3/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 323 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (74:79) - challenge4/frontend/components/tool-call.tsx (55:60) duplicated block id: 324 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/components/tool-call.tsx (55:60) - starting_point/frontend/components/tool-call.tsx (74:79) duplicated block id: 325 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (55:60) - challenge4/frontend/components/tool-call.tsx (74:79) duplicated block id: 326 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/lib/constants.ts (20:25) - challenge5/python-backend/app.py (17:22) duplicated block id: 327 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/app/api/get_response/route.ts (18:23) - challenge4/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 328 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (74:79) - challenge5/frontend/components/tool-call.tsx (54:59) duplicated block id: 329 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (55:60) - challenge5/frontend/components/tool-call.tsx (73:78) duplicated block id: 330 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (74:79) - challenge3/frontend/components/tool-call.tsx (55:60) duplicated block id: 331 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (55:60) - challenge5/frontend/components/tool-call.tsx (73:78) duplicated block id: 332 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/app/api/get_response/route.ts (21:26) - challenge5/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 333 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/app/api/get_response/route.ts (21:26) - challenge3/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 334 size: 6 cleaned lines of code in 2 files: - challenge5/frontend/components/message.tsx (35:40) - starting_point/frontend/components/message.tsx (22:27) duplicated block id: 335 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (55:60) - starting_point/frontend/components/tool-call.tsx (74:79) duplicated block id: 336 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (55:60) - starting_point/frontend/components/tool-call.tsx (74:79) duplicated block id: 337 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/app/api/get_response/route.ts (21:26) - challenge5/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 338 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (74:79) - starting_point/frontend/components/tool-call.tsx (55:60) duplicated block id: 339 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/lib/constants.ts (17:22) - challenge3/python-backend/app.py (17:22) duplicated block id: 340 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/app/api/get_response/route.ts (21:26) - challenge4/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 341 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (74:79) - challenge2/frontend/components/tool-call.tsx (55:60) duplicated block id: 342 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/app/api/search_location/route.ts (26:31) - challenge4/frontend/app/api/get_response/route.ts (21:26) duplicated block id: 343 size: 6 cleaned lines of code in 2 files: - challenge5/frontend/components/tool-call.tsx (73:78) - starting_point/frontend/components/tool-call.tsx (55:60) duplicated block id: 344 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/app/api/get_response/route.ts (21:26) - challenge5/frontend/app/api/search_location/route.ts (26:31) duplicated block id: 345 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/lib/constants.ts (20:25) - challenge4/python-backend/app.py (17:22) duplicated block id: 346 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (74:79) - challenge3/frontend/components/tool-call.tsx (55:60) duplicated block id: 347 size: 6 cleaned lines of code in 2 files: - challenge3/python-backend/app.py (17:22) - challenge4/frontend/lib/constants.ts (20:25) duplicated block id: 348 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/components/tool-call.tsx (74:79) - challenge4/frontend/components/tool-call.tsx (55:60) duplicated block id: 349 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/lib/assistant.ts (40:47) - challenge5/frontend/lib/assistant.ts (30:37) duplicated block id: 350 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/components/tool-call.tsx (74:79) - challenge5/frontend/components/tool-call.tsx (54:59) duplicated block id: 351 size: 6 cleaned lines of code in 2 files: - challenge1/frontend/components/tool-call.tsx (74:79) - challenge5/frontend/components/tool-call.tsx (54:59) duplicated block id: 352 size: 6 cleaned lines of code in 2 files: - challenge5/frontend/lib/assistant.ts (183:190) - challenge5/frontend/lib/assistant.ts (197:204) duplicated block id: 353 size: 6 cleaned lines of code in 2 files: - challenge4/frontend/components/tool-call.tsx (74:79) - starting_point/frontend/components/tool-call.tsx (55:60) duplicated block id: 354 size: 6 cleaned lines of code in 2 files: - challenge3/frontend/app/api/search_location/route.ts (26:31) - challenge4/frontend/app/api/get_response/route.ts (21:26) duplicated block id: 355 size: 6 cleaned lines of code in 2 files: - challenge5/frontend/components/message.tsx (21:26) - challenge5/frontend/components/message.tsx (35:40) duplicated block id: 356 size: 6 cleaned lines of code in 2 files: - challenge5/frontend/components/tool-call.tsx (54:59) - challenge5/frontend/components/tool-call.tsx (73:78) duplicated block id: 357 size: 6 cleaned lines of code in 2 files: - challenge2/frontend/components/tool-call.tsx (55:60) - starting_point/frontend/components/tool-call.tsx (74:79)