1{2 "document_id": "exec_00127_2000",3 "family": "exec",4 "split": "dev",5 "document_hash": "bb6e6467042a1b7809f3ea38b83ea82e5554ca36b70042023f682efd5bae752a",6 "questions": [7 {8 "question_id": "q00_exec",9 "qtype": "exec",10 "question": "Rewrite the Python function net_revenue(rows) so that it implements ALL the agreed rules in the ticket. Output only Python code defining net_revenue; no explanations, no markdown fences.",11 "answer": "\ndef net_revenue(rows):\n total = 0.0\n for r in rows:\n if r['returned']:\n continue\n if r['region'] == 'Centre':\n continue\n if r['units'] < 4:\n continue\n total += r['units'] * r['unit_price'] * (1 - r['discount_pct'] / 100.0)\n total = total * (1 + 5.0 / 100.0)\n return round(total, 0)\n",12 "answer_type": "exec",13 "tolerance": 0.0,14 "supporting_fact_ids": [15 "spec"16 ],17 "answer_position_frac": 0.02,18 "aliases": []19 }20 ],21 "facts": [22 {23 "fact_id": "spec",24 "entity": "net_revenue",25 "attribute": "rules",26 "value": "{\"thr_days\": 4, \"min_units\": 4, \"excl_region\": \"Centre\", \"rounding\": 0, \"tax\": 5.0}",27 "kind": "spec",28 "sentence": "Bug report BR-4907: the function net_revenue(rows) must compute the total net revenue of the rows list (each row is a dict with keys ['region', 'product', 'units', 'unit_price', 'discount_pct', 'returned', 'shipped_days']). Rules agreed with the client on 5 September 2031: (1) exclude returned rows; (2) exclude rows whose region is 'Centre'; (3) exclude rows with fewer than 4 units; (4) line revenue = units * unit_price * (1 - discount_pct/100); (5) apply a tax of 5.0 % on the sum; (6) return the result rounded to 0 decimals (Python round). The current implementation forgets rule (2) and applies no tax.",29 "char_start": 20,30 "char_end": 63031 }32 ],33 "hidden_tests": [34 {35 "input": [36 {37 "region": "Ouest",38 "product": "epsilon",39 "units": 38,40 "unit_price": 48.4,41 "discount_pct": 5,42 "returned": false,43 "shipped_days": 1444 },45 {46 "region": "Ouest",47 "product": "epsilon",48 "units": 2,49 "unit_price": 38.06,50 "discount_pct": 10,51 "returned": false,52 "shipped_days": 253 },54 {55 "region": "Centre",56 "product": "epsilon",57 "units": 37,58 "unit_price": 39.96,59 "discount_pct": 25,60 "returned": false,61 "shipped_days": 262 },63 {64 "region": "Centre",65 "product": "delta",66 "units": 17,67 "unit_price": 34.79,68 "discount_pct": 10,69 "returned": false,70 "shipped_days": 671 },72 {73 "region": "Est",74 "product": "beta",75 "units": 23,76 "unit_price": 9.72,77 "discount_pct": 0,78 "returned": false,79 "shipped_days": 1080 },81 {82 "region": "Sud",83 "product": "epsilon",84 "units": 5,85 "unit_price": 7.69,86 "discount_pct": 10,87 "returned": false,88 "shipped_days": 789 },90 {91 "region": "Ouest",92 "product": "beta",93 "units": 6,94 "unit_price": 4.47,95 "discount_pct": 10,96 "returned": false,97 "shipped_days": 398 },99 {100 "region": "Ouest",101 "product": "alpha",102 "units": 19,103 "unit_price": 48.89,104 "discount_pct": 15,105 "returned": true,106 "shipped_days": 3107 },108 {109 "region": "Nord",110 "product": "beta",111 "units": 15,112 "unit_price": 67.02,113 "discount_pct": 5,114 "returned": false,115 "shipped_days": 12116 },117 {118 "region": "Sud",119 "product": "zeta",120 "units": 5,121 "unit_price": 79.64,122 "discount_pct": 10,123 "returned": false,124 "shipped_days": 14125 },126 {127 "region": "Centre",128 "product": "alpha",129 "units": 4,130 "unit_price": 49.04,131 "discount_pct": 15,132 "returned": false,133 "shipped_days": 14134 }135 ],136 "expected": 3510.0137 },138 {139 "input": [140 {141 "region": "Centre",142 "product": "epsilon",143 "units": 37,144 "unit_price": 39.96,145 "discount_pct": 25,146 "returned": false,147 "shipped_days": 2148 },149 {150 "region": "Ouest",151 "product": "epsilon",152 "units": 2,153 "unit_price": 38.06,154 "discount_pct": 10,155 "returned": false,156 "shipped_days": 2157 },158 {159 "region": "Centre",160 "product": "zeta",161 "units": 23,162 "unit_price": 4.35,163 "discount_pct": 10,164 "returned": false,165 "shipped_days": 14166 },167 {168 "region": "Ouest",169 "product": "beta",170 "units": 6,171 "unit_price": 4.47,172 "discount_pct": 10,173 "returned": false,174 "shipped_days": 3175 },176 {177 "region": "Sud",178 "product": "epsilon",179 "units": 5,180 "unit_price": 7.69,181 "discount_pct": 10,182 "returned": false,183 "shipped_days": 7184 },185 {186 "region": "Est",187 "product": "beta",188 "units": 23,189 "unit_price": 9.72,190 "discount_pct": 0,191 "returned": false,192 "shipped_days": 10193 },194 {195 "region": "Centre",196 "product": "alpha",197 "units": 4,198 "unit_price": 49.04,199 "discount_pct": 15,200 "returned": false,201 "shipped_days": 14202 },203 {204 "region": "Centre",205 "product": "delta",206 "units": 17,207 "unit_price": 34.79,208 "discount_pct": 10,209 "returned": false,210 "shipped_days": 6211 },212 {213 "region": "Ouest",214 "product": "alpha",215 "units": 19,216 "unit_price": 48.89,217 "discount_pct": 15,218 "returned": true,219 "shipped_days": 3220 },221 {222 "region": "Centre",223 "product": "alpha",224 "units": 25,225 "unit_price": 61.58,226 "discount_pct": 0,227 "returned": false,228 "shipped_days": 14229 }230 ],231 "expected": 296.0232 },233 {234 "input": [235 {236 "region": "Est",237 "product": "beta",238 "units": 23,239 "unit_price": 9.72,240 "discount_pct": 0,241 "returned": false,242 "shipped_days": 10243 },244 {245 "region": "Ouest",246 "product": "beta",247 "units": 6,248 "unit_price": 4.47,249 "discount_pct": 10,250 "returned": false,251 "shipped_days": 3252 },253 {254 "region": "Nord",255 "product": "beta",256 "units": 15,257 "unit_price": 67.02,258 "discount_pct": 5,259 "returned": false,260 "shipped_days": 12261 },262 {263 "region": "Centre",264 "product": "delta",265 "units": 17,266 "unit_price": 34.79,267 "discount_pct": 10,268 "returned": false,269 "shipped_days": 6270 },271 {272 "region": "Ouest",273 "product": "epsilon",274 "units": 38,275 "unit_price": 48.4,276 "discount_pct": 5,277 "returned": false,278 "shipped_days": 14279 }280 ],281 "expected": 3097.0282 },283 {284 "input": [285 {286 "region": "Centre",287 "product": "delta",288 "units": 17,289 "unit_price": 34.79,290 "discount_pct": 10,291 "returned": false,292 "shipped_days": 6293 },294 {295 "region": "Centre",296 "product": "epsilon",297 "units": 37,298 "unit_price": 39.96,299 "discount_pct": 25,300 "returned": false,301 "shipped_days": 2302 },303 {304 "region": "Sud",305 "product": "zeta",306 "units": 5,307 "unit_price": 79.64,308 "discount_pct": 10,309 "returned": false,310 "shipped_days": 14311 },312 {313 "region": "Centre",314 "product": "alpha",315 "units": 25,316 "unit_price": 61.58,317 "discount_pct": 0,318 "returned": false,319 "shipped_days": 14320 },321 {322 "region": "Centre",323 "product": "alpha",324 "units": 4,325 "unit_price": 49.04,326 "discount_pct": 15,327 "returned": false,328 "shipped_days": 14329 }330 ],331 "expected": 376.0332 },333 {334 "input": [335 {336 "region": "Ouest",337 "product": "epsilon",338 "units": 38,339 "unit_price": 48.4,340 "discount_pct": 5,341 "returned": false,342 "shipped_days": 14343 },344 {345 "region": "Sud",346 "product": "epsilon",347 "units": 5,348 "unit_price": 7.69,349 "discount_pct": 10,350 "returned": false,351 "shipped_days": 7352 },353 {354 "region": "Ouest",355 "product": "beta",356 "units": 6,357 "unit_price": 4.47,358 "discount_pct": 10,359 "returned": false,360 "shipped_days": 3361 },362 {363 "region": "Centre",364 "product": "zeta",365 "units": 32,366 "unit_price": 57.56,367 "discount_pct": 5,368 "returned": false,369 "shipped_days": 12370 }371 ],372 "expected": 1896.0373 }374 ]375}