{"id":"8f71c7f9-bacf-404c-8935-c567d50f60f3","kind":"sponsor_example","filename":"three-samples-1.json","contentType":"application/json","checksumSha256":"042579e2858aa121c3c99001d6e8722175dbf251036cb49438949ef19178a73b"} {"id":"d0809911-5c7f-4358-b12f-da9588a3f145","kind":"sponsor_example","filename":"three-samples-2.json","contentType":"application/json","checksumSha256":"9d5ca61bf9da7feddf4aa1b5e8bb409096bd363a52b775a2a13bc5215cff4347"} {"id":"5d71de31-d454-40f1-83e9-446613a97525","kind":"sponsor_example","filename":"three-samples-3.json","contentType":"application/json","checksumSha256":"82c6ac8acd0cb4a80968be8ca31354d42f28acf55c3ed1103e57462b6011163b"} {"id":"cmsl783g4000jw6p2goj8ou2a","kind":"contributor_item","title":"Submission J8OU2A","provisional":false,"output_code":"def transform(input):\n out = []\n for line in input:\n if not line:\n continue\n parsed = {}\n for pair in line.split(\";\"):\n key, value = pair.split(\"=\", 1)\n if value.isdigit():\n parsed[key] = int(value)\n elif value in (\"true\", \"false\"):\n parsed[key] = value == \"true\"\n else:\n parsed[key] = value\n out.append(parsed)\n return out","input_data_sample":"[\"retries=4;debug=true;region=eu-west\", \"retries=0;debug=false\", \"\"]","output_data_sample":"[{\"retries\": 4, \"debug\": true, \"region\": \"eu-west\"}, {\"retries\": 0, \"debug\": false}]","transformation_instruction":"Define transform(input) to parse each non-empty 'key=value;key=value' string into a dict, converting digit strings to int and true/false to booleans, returning the list of dicts."} {"id":"cmsl783g4000hw6p2rn7fqufe","kind":"contributor_item","title":"Submission 7FQUFE","provisional":false,"output_code":"def transform(input):\n latest = {}\n for row in input:\n current = latest.get(row[\"user\"])\n if current is None or row[\"version\"] > current[\"version\"]:\n latest[row[\"user\"]] = row\n return [latest[u] for u in sorted(latest)]","input_data_sample":"[{\"user\": \"u-1\", \"version\": 2, \"plan\": \"pro\"}, {\"user\": \"u-2\", \"version\": 1, \"plan\": \"free\"}, {\"user\": \"u-1\", \"version\": 5, \"plan\": \"team\"}, {\"user\": \"u-2\", \"version\": 3, \"plan\": \"pro\"}]","output_data_sample":"[{\"user\": \"u-1\", \"version\": 5, \"plan\": \"team\"}, {\"user\": \"u-2\", \"version\": 3, \"plan\": \"pro\"}]","transformation_instruction":"Define transform(input) to keep only the record with the highest version per user, returned as a list sorted by user ascending."} {"id":"cmsl783g4000fw6p2mzfsm0ce","kind":"contributor_item","title":"Submission FSM0CE","provisional":false,"output_code":"def transform(input):\n totals = {}\n for row in input:\n totals[row[\"dept\"]] = totals.get(row[\"dept\"], 0) + row[\"amount_cents\"]\n return [{\"dept\": d, \"total_cents\": t} for d, t in sorted(totals.items(), key=lambda kv: (-kv[1], kv[0]))]","input_data_sample":"[{\"dept\": \"ops\", \"amount_cents\": 1250}, {\"dept\": \"eng\", \"amount_cents\": 400}, {\"dept\": \"ops\", \"amount_cents\": 750}, {\"dept\": \"hr\", \"amount_cents\": 90}]","output_data_sample":"[{\"dept\": \"ops\", \"total_cents\": 2000}, {\"dept\": \"eng\", \"total_cents\": 400}, {\"dept\": \"hr\", \"total_cents\": 90}]","transformation_instruction":"Define transform(input) to total amount_cents per dept and return a list of {dept, total_cents} sorted by total_cents descending, then dept ascending for ties."} {"id":"cmsl783g4000gw6p2q75jnyxp","kind":"contributor_item","title":"Submission 5JNYXP","provisional":false,"output_code":"def transform(input):\n rows = []\n for order in input:\n for item in order[\"items\"]:\n rows.append({\"order_id\": order[\"order_id\"], \"sku\": item[\"sku\"], \"line_total_cents\": item[\"qty\"] * item[\"unit_cents\"]})\n return rows","input_data_sample":"[{\"order_id\": \"o-1\", \"items\": [{\"sku\": \"A\", \"qty\": 2, \"unit_cents\": 300}, {\"sku\": \"B\", \"qty\": 1, \"unit_cents\": 1250}]}, {\"order_id\": \"o-2\", \"items\": [{\"sku\": \"A\", \"qty\": 3, \"unit_cents\": 300}]}]","output_data_sample":"[{\"order_id\": \"o-1\", \"sku\": \"A\", \"line_total_cents\": 600}, {\"order_id\": \"o-1\", \"sku\": \"B\", \"line_total_cents\": 1250}, {\"order_id\": \"o-2\", \"sku\": \"A\", \"line_total_cents\": 900}]","transformation_instruction":"Define transform(input) to flatten orders into one row per line item with order_id, sku, and line_total_cents (qty times unit_cents), preserving input order."} {"id":"cmsl783g4000iw6p2h9crt8p2","kind":"contributor_item","title":"Submission CRT8P2","provisional":false,"output_code":"def transform(input):\n distinct = sorted({r[\"score\"] for r in input}, reverse=True)\n rank_of = {score: i + 1 for i, score in enumerate(distinct)}\n return [{**r, \"rank\": rank_of[r[\"score\"]]} for r in input]","input_data_sample":"[{\"name\": \"ada\", \"score\": 91}, {\"name\": \"ben\", \"score\": 78}, {\"name\": \"cy\", \"score\": 91}, {\"name\": \"di\", \"score\": 60}]","output_data_sample":"[{\"name\": \"ada\", \"score\": 91, \"rank\": 1}, {\"name\": \"ben\", \"score\": 78, \"rank\": 2}, {\"name\": \"cy\", \"score\": 91, \"rank\": 1}, {\"name\": \"di\", \"score\": 60, \"rank\": 3}]","transformation_instruction":"Define transform(input) to add a dense rank field where the highest score is rank 1 and equal scores share a rank, keeping the original record order."} {"id":"cmsmtcq8j0052dmp297y434sp","kind":"contributor_item","title":"Submission Y434SP","provisional":false,"output_code":"def transform(input):\n return [{\"first\": r[\"first\"].capitalize(), \"age\": r[\"age\"]} for r in input]","input_data_sample":"[{\"first\":\"jane\",\"age\":30},{\"first\":\"mark\",\"age\":45}]","output_data_sample":"[{\"first\":\"Jane\",\"age\":30},{\"first\":\"Mark\",\"age\":45}]","transformation_instruction":"Define transform(input) to capitalize the first name and keep age unchanged."} {"id":"cmsmtcq8j004kdmp2tdkb606e","kind":"contributor_item","title":"Submission KB606E","provisional":false,"output_code":"def transform(input):\n return [{**r, \"temp_f\": int(r[\"temp_c\"] * 9 / 5 + 32)} for r in input]","input_data_sample":"[{\"city\":\"NYC\",\"temp_c\":20},{\"city\":\"LA\",\"temp_c\":25}]","output_data_sample":"[{\"city\":\"NYC\",\"temp_c\":20,\"temp_f\":68},{\"city\":\"LA\",\"temp_c\":25,\"temp_f\":77}]","transformation_instruction":"Define transform(input) to add temp_f, the Fahrenheit equivalent of temp_c, as an integer."} {"id":"cmsmtcq8j004ydmp2pbgclm0s","kind":"contributor_item","title":"Submission GCLM0S","provisional":false,"output_code":"def transform(input):\n return [{**r, \"price\": r[\"cost\"] * (1 + r[\"margin\"])} for r in input]","input_data_sample":"[{\"product\":\"x\",\"cost\":40,\"margin\":0.25},{\"product\":\"y\",\"cost\":100,\"margin\":0.5}]","output_data_sample":"[{\"product\":\"x\",\"cost\":40,\"margin\":0.25,\"price\":50.0},{\"product\":\"y\",\"cost\":100,\"margin\":0.5,\"price\":150.0}]","transformation_instruction":"Define transform(input) to add price, computed as cost times one plus margin."} {"id":"cmsmtcq8j004rdmp2ql8m9fx7","kind":"contributor_item","title":"Submission 8M9FX7","provisional":false,"output_code":"def transform(input):\n return [r[\"sku\"] for r in input if r[\"in_stock\"]]","input_data_sample":"[{\"sku\":\"A\",\"in_stock\":true},{\"sku\":\"B\",\"in_stock\":false},{\"sku\":\"C\",\"in_stock\":true}]","output_data_sample":"[\"A\",\"C\"]","transformation_instruction":"Define transform(input) to return the list of skus that are in stock."} {"id":"cmsmtcq8j004qdmp2ocx3pubv","kind":"contributor_item","title":"Submission X3PUBV","provisional":false,"output_code":"def transform(input):\n return [{**r, \"full_name\": r[\"first\"] + \" \" + r[\"last\"]} for r in input]","input_data_sample":"[{\"first\":\"Ada\",\"last\":\"Lovelace\"},{\"first\":\"Alan\",\"last\":\"Turing\"}]","output_data_sample":"[{\"first\":\"Ada\",\"last\":\"Lovelace\",\"full_name\":\"Ada Lovelace\"},{\"first\":\"Alan\",\"last\":\"Turing\",\"full_name\":\"Alan Turing\"}]","transformation_instruction":"Define transform(input) to add full_name as first and last joined by a space."} {"id":"cmsmtcq8j004ndmp2f19dcm98","kind":"contributor_item","title":"Submission 9DCM98","provisional":false,"output_code":"def transform(input):\n return [r for r in input if r[\"tags\"]]","input_data_sample":"[{\"id\":1,\"tags\":[\"a\",\"b\"]},{\"id\":2,\"tags\":[]},{\"id\":3,\"tags\":[\"x\"]}]","output_data_sample":"[{\"id\":1,\"tags\":[\"a\",\"b\"]},{\"id\":3,\"tags\":[\"x\"]}]","transformation_instruction":"Define transform(input) to keep only records that have at least one tag."} {"id":"cmsmtcq8j004xdmp29t38bn9b","kind":"contributor_item","title":"Submission 38BN9B","provisional":false,"output_code":"def transform(input):\n return [{\"email\": r[\"email\"].lower()} for r in input]","input_data_sample":"[{\"email\":\"A@X.com\"},{\"email\":\"b@Y.COM\"}]","output_data_sample":"[{\"email\":\"a@x.com\"},{\"email\":\"b@y.com\"}]","transformation_instruction":"Define transform(input) to lowercase every email value in place."} {"id":"cmsmtcq8j004mdmp2y9fi2fk3","kind":"contributor_item","title":"Submission FI2FK3","provisional":false,"output_code":"def transform(input):\n return [{\"word\": w, \"length\": len(w)} for w in input]","input_data_sample":"[\"apple\",\"banana\",\"cherry\"]","output_data_sample":"[{\"word\":\"apple\",\"length\":5},{\"word\":\"banana\",\"length\":6},{\"word\":\"cherry\",\"length\":6}]","transformation_instruction":"Define transform(input) to return a list of {word, length} objects for each string."} {"id":"cmsmtcq8j004tdmp2ryxovaa9","kind":"contributor_item","title":"Submission XOVAA9","provisional":false,"output_code":"def transform(input):\n return [{**r, \"ctr\": round(r[\"clicks\"] / r[\"views\"], 2)} for r in input]","input_data_sample":"[{\"q\":\"shoes\",\"clicks\":40,\"views\":100},{\"q\":\"hats\",\"clicks\":10,\"views\":50}]","output_data_sample":"[{\"q\":\"shoes\",\"clicks\":40,\"views\":100,\"ctr\":0.4},{\"q\":\"hats\",\"clicks\":10,\"views\":50,\"ctr\":0.2}]","transformation_instruction":"Define transform(input) to add ctr, the clicks divided by views rounded to two decimals."} {"id":"cmsmtcq8j0057dmp2yqibn27v","kind":"contributor_item","title":"Submission IBN27V","provisional":false,"output_code":"def transform(input):\n return [{\"name\": r[\"name\"], \"total\": sum(r[\"vals\"])} for r in input]","input_data_sample":"[{\"name\":\"a\",\"vals\":[1,2,3]},{\"name\":\"b\",\"vals\":[10]}]","output_data_sample":"[{\"name\":\"a\",\"total\":6},{\"name\":\"b\",\"total\":10}]","transformation_instruction":"Define transform(input) to return name and the sum of its vals as total."} {"id":"cmsmtcq8j004wdmp2k9rzrp85","kind":"contributor_item","title":"Submission RZRP85","provisional":false,"output_code":"def transform(input):\n total = 0\n out = []\n for r in input:\n total += r[\"sales\"]\n out.append({**r, \"cumulative\": total})\n return out","input_data_sample":"[{\"date\":\"2026-01-01\",\"sales\":100},{\"date\":\"2026-01-02\",\"sales\":150},{\"date\":\"2026-01-03\",\"sales\":120}]","output_data_sample":"[{\"date\":\"2026-01-01\",\"sales\":100,\"cumulative\":100},{\"date\":\"2026-01-02\",\"sales\":150,\"cumulative\":250},{\"date\":\"2026-01-03\",\"sales\":120,\"cumulative\":370}]","transformation_instruction":"Define transform(input) to add a cumulative running total field named cumulative."} {"id":"cmsmtcq8j004zdmp2b967kh4t","kind":"contributor_item","title":"Submission 67KH4T","provisional":false,"output_code":"def transform(input):\n counts = {}\n for s in input:\n counts[s] = counts.get(s, 0) + 1\n return counts","input_data_sample":"[\"error\",\"info\",\"error\",\"warning\",\"info\",\"error\"]","output_data_sample":"{\"error\":3,\"info\":2,\"warning\":1}","transformation_instruction":"Define transform(input) to return a frequency count of each distinct string."} {"id":"cmsmtcq8j004sdmp2l08f8ale","kind":"contributor_item","title":"Submission 8F8ALE","provisional":false,"output_code":"def transform(input):\n return [s.strip().lower() for s in input]","input_data_sample":"[\" hello \",\"WORLD\",\" Foo \"]","output_data_sample":"[\"hello\",\"world\",\"foo\"]","transformation_instruction":"Define transform(input) to return each string trimmed of whitespace and lowercased."} {"id":"cmsmtcq8j0056dmp2026vvq7k","kind":"contributor_item","title":"Submission 6VVQ7K","provisional":false,"output_code":"def transform(input):\n def letter(g):\n if g >= 90:\n return \"A\"\n if g >= 70:\n return \"B\"\n return \"F\"\n return [{**r, \"letter\": letter(r[\"grade\"])} for r in input]","input_data_sample":"[{\"grade\":55},{\"grade\":72},{\"grade\":90},{\"grade\":40}]","output_data_sample":"[{\"grade\":55,\"letter\":\"F\"},{\"grade\":72,\"letter\":\"B\"},{\"grade\":90,\"letter\":\"A\"},{\"grade\":40,\"letter\":\"F\"}]","transformation_instruction":"Define transform(input) to add a letter field: A for 90+, B for 70-89, otherwise F."} {"id":"cmsmtcq8j0050dmp2vogtcrno","kind":"contributor_item","title":"Submission GTCRNO","provisional":false,"output_code":"def transform(input):\n return [{\"n\": r[\"n\"], \"avg_rating\": round(sum(r[\"reviews\"]) / len(r[\"reviews\"]), 1)} for r in input]","input_data_sample":"[{\"n\":\"widget\",\"reviews\":[5,4,3]},{\"n\":\"gadget\",\"reviews\":[2,2]}]","output_data_sample":"[{\"n\":\"widget\",\"avg_rating\":4.0},{\"n\":\"gadget\",\"avg_rating\":2.0}]","transformation_instruction":"Define transform(input) to add avg_rating, the mean of reviews rounded to one decimal."} {"id":"cmsmtcq8j004udmp2zlk1x64d","kind":"contributor_item","title":"Submission K1X64D","provisional":false,"output_code":"def transform(input):\n return sorted(input, key=lambda r: r[\"value\"])","input_data_sample":"[{\"name\":\"a\",\"value\":3},{\"name\":\"b\",\"value\":1},{\"name\":\"c\",\"value\":2}]","output_data_sample":"[{\"name\":\"b\",\"value\":1},{\"name\":\"c\",\"value\":2},{\"name\":\"a\",\"value\":3}]","transformation_instruction":"Define transform(input) to sort the records by value ascending."} {"id":"cmsmtcq8j0053dmp27crbz6nu","kind":"contributor_item","title":"Submission RBZ6NU","provisional":false,"output_code":"def transform(input):\n return [n for n in input if n % 5 == 0 and n > 20]","input_data_sample":"[10,25,30,45,50]","output_data_sample":"[25,30,45,50]","transformation_instruction":"Define transform(input) to return only values that are multiples of 5 and greater than 20."} {"id":"cmsmtcq8j0051dmp22b2vinix","kind":"contributor_item","title":"Submission 2VINIX","provisional":false,"output_code":"def transform(input):\n return {\"total\": len(input), \"active_count\": sum(1 for r in input if r[\"active\"])}","input_data_sample":"[{\"id\":1,\"active\":true},{\"id\":2,\"active\":true},{\"id\":3,\"active\":false}]","output_data_sample":"{\"total\":3,\"active_count\":2}","transformation_instruction":"Define transform(input) to return a summary object with total and active_count."} {"id":"cmsmtcq8j0054dmp2p0578wzy","kind":"contributor_item","title":"Submission 578WZY","provisional":false,"output_code":"def transform(input):\n return {r[\"k\"]: r[\"v\"] for r in sorted(input, key=lambda x: x[\"k\"])}","input_data_sample":"[{\"k\":\"b\",\"v\":2},{\"k\":\"a\",\"v\":1},{\"k\":\"c\",\"v\":3}]","output_data_sample":"{\"a\":1,\"b\":2,\"c\":3}","transformation_instruction":"Define transform(input) to build a single dict mapping k to v, sorted by key."} {"id":"cmsmtcq8j004ldmp244i377nf","kind":"contributor_item","title":"Submission I377NF","provisional":false,"output_code":"def transform(input):\n return [{\"item\": r[\"item\"], \"subtotal\": r[\"qty\"] * r[\"price\"]} for r in input]","input_data_sample":"[{\"item\":\"pen\",\"qty\":3,\"price\":2},{\"item\":\"pad\",\"qty\":2,\"price\":5}]","output_data_sample":"[{\"item\":\"pen\",\"subtotal\":6},{\"item\":\"pad\",\"subtotal\":10}]","transformation_instruction":"Define transform(input) to return item and subtotal, where subtotal is qty times price."} {"id":"cmsmtcq8j004vdmp2e8907kvp","kind":"contributor_item","title":"Submission 907KVP","provisional":false,"output_code":"def transform(input):\n return [n * 2 for n in input if n % 2 == 0]","input_data_sample":"[1,2,3,4,5,6]","output_data_sample":"[4,8,12]","transformation_instruction":"Define transform(input) to return only the even numbers, each doubled."} {"id":"cmsmtcq8j004pdmp2sjglekks","kind":"contributor_item","title":"Submission GLEKKS","provisional":false,"output_code":"def transform(input):\n totals = {}\n for r in input:\n totals[r[\"user\"]] = totals.get(r[\"user\"], 0) + r[\"amount\"]\n return totals","input_data_sample":"[{\"user\":\"a\",\"amount\":10},{\"user\":\"b\",\"amount\":20},{\"user\":\"a\",\"amount\":5}]","output_data_sample":"{\"a\":15,\"b\":20}","transformation_instruction":"Define transform(input) to return a mapping of user to their total amount."} {"id":"cmsmtcq8i004jdmp2rks3ss5f","kind":"contributor_item","title":"Submission S3SS5F","provisional":false,"output_code":"def transform(input):\n return [{**r, \"passed\": r[\"score\"] >= 80} for r in input]","input_data_sample":"[{\"name\":\"Ann\",\"score\":82},{\"name\":\"Bo\",\"score\":91},{\"name\":\"Cy\",\"score\":74}]","output_data_sample":"[{\"name\":\"Ann\",\"score\":82,\"passed\":true},{\"name\":\"Bo\",\"score\":91,\"passed\":true},{\"name\":\"Cy\",\"score\":74,\"passed\":false}]","transformation_instruction":"Define transform(input) to return each record with a passed flag set to True when score >= 80."} {"id":"cmsmtcq8j004odmp2fd40uwy5","kind":"contributor_item","title":"Submission 40UWY5","provisional":false,"output_code":"def transform(input):\n return sorted(input, reverse=True)","input_data_sample":"[5,3,9,1,7]","output_data_sample":"[9,7,5,3,1]","transformation_instruction":"Define transform(input) to return the numbers sorted in descending order."} {"id":"cmso87a6800c66zp2q0jwijma","kind":"contributor_item","title":"Submission JWIJMA","provisional":false,"output_code":"import json,itertools\ndef transform(s): return json.dumps(list(itertools.accumulate(json.loads(s))))","input_data_sample":"[3,1,4,1,5]","output_data_sample":"[3, 4, 8, 9, 14]","transformation_instruction":"Parse a JSON integer array and return its cumulative sums as JSON."} {"id":"cmso87a6800bg6zp2jvq0svhg","kind":"contributor_item","title":"Submission Q0SVHG","provisional":false,"output_code":"import json\nfrom collections import Counter\ndef transform(s): return json.dumps(dict(sorted(Counter(s.split()).items())))","input_data_sample":"red red blue green red blue","output_data_sample":"{\"blue\": 2, \"green\": 1, \"red\": 3}","transformation_instruction":"Count whitespace-separated words and return a JSON object sorted by word."} {"id":"cmso87a6800c56zp25b7nd2xc","kind":"contributor_item","title":"Submission 7ND2XC","provisional":false,"output_code":"import json\ndef transform(s):\n d={}\n for p in s.split(';'):\n k,v=p.split(':'); d[k]=d.get(k,0)+int(v)\n return json.dumps(dict(sorted(d.items())))","input_data_sample":"a:1;b:2;a:3","output_data_sample":"{\"a\": 4, \"b\": 2}","transformation_instruction":"Sum repeated key values from semicolon-separated pairs and return sorted JSON."} {"id":"cmsrb1sp1000ne0p2cwxgypu0","kind":"contributor_item","title":"Submission XGYPU0","provisional":false,"output_code":"def transform(text):\n totals = {}\n for line in text.strip().splitlines():\n k, v = line.split(\",\")\n totals[k] = totals.get(k, 0) + int(v)\n rows = sorted(totals.items(), key=lambda kv: (-kv[1], kv[0]))\n return \"item,quantity\\n\" + \"\\n\".join(f\"{k},{v}\" for k, v in rows)\n","input_data_sample":"apple,10\nbanana,7\napple,-2\norange,5\nbanana,3\norange,-1","output_data_sample":"item,quantity\nbanana,10\napple,8\norange,4","transformation_instruction":"Apply signed quantity adjustments by item and return CSV with header item,quantity sorted by descending final quantity then item name."} {"id":"cmsrb1sp10009e0p2db0dmprr","kind":"contributor_item","title":"Submission 0DMPRR","provisional":false,"output_code":"import json\n\ndef transform(text):\n counts = {}\n for u in json.loads(text)[\"users\"]:\n for t in u[\"tags\"]:\n counts[t] = counts.get(t, 0) + 1\n ordered = dict(sorted(counts.items(), key=lambda kv: (-kv[1], kv[0])))\n return json.dumps(ordered, separators=(\",\", \":\"))\n","input_data_sample":"{\"users\":[{\"name\":\"Nia\",\"tags\":[\"ml\",\"python\"]},{\"name\":\"Omar\",\"tags\":[\"python\",\"sql\"]},{\"name\":\"Pia\",\"tags\":[]},{\"name\":\"Raj\",\"tags\":[\"ml\",\"sql\",\"python\"]}]}","output_data_sample":"{\"python\":3,\"ml\":2,\"sql\":2}","transformation_instruction":"Count tag frequencies across all users and return compact JSON sorted by descending count then tag name."} {"id":"cmsrb1sp1000ae0p2adnsvd0x","kind":"contributor_item","title":"Submission NSVD0X","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n out = {}\n for line in text.strip().splitlines():\n ts, event = line.split(\",\", 1)\n hour = datetime.fromisoformat(ts.replace(\"Z\", \"+00:00\")).strftime(\"%H\")\n out.setdefault(hour, {})\n out[hour][event] = out[hour].get(event, 0) + 1\n ordered = {h: {e: out[h][e] for e in sorted(out[h])} for h in sorted(out)}\n return json.dumps(ordered, separators=(\",\", \":\"))\n","input_data_sample":"2026-08-01T10:00:00Z,login\n2026-08-01T10:05:00Z,logout\n2026-08-01T11:00:00Z,login\n2026-08-01T11:15:00Z,login","output_data_sample":"{\"10\":{\"login\":1,\"logout\":1},\"11\":{\"login\":2}}","transformation_instruction":"Count event names per UTC hour and return JSON keyed by hour with nested event counts."} {"id":"cmsrb1sp1000ee0p2ze3qxmji","kind":"contributor_item","title":"Submission 3QXMJI","provisional":false,"output_code":"import json\n\ndef transform(text):\n out = {}\n for line in text.strip().splitlines():\n k, v = line.split(\":\", 1)\n k, v = k.strip(), v.strip()\n if \",\" in v:\n val = sorted(set(x.strip() for x in v.split(\",\") if x.strip()))\n elif v.lower() in (\"yes\", \"no\"):\n val = v.lower() == \"yes\"\n elif v.lstrip(\"-\").isdigit():\n val = int(v)\n else:\n val = v\n out[k] = val\n return json.dumps(out, separators=(\",\", \":\"))\n","input_data_sample":"name: Ada\nskills: python, math, python\nactive: yes\nage: 37","output_data_sample":"{\"name\":\"Ada\",\"skills\":[\"math\",\"python\"],\"active\":true,\"age\":37}","transformation_instruction":"Parse simple `key: value` lines; convert comma-separated values to a deduplicated sorted list, yes/no to booleans, integers to numbers, and return compact JSON."} {"id":"cmsrb1sp1000le0p29b68xxv9","kind":"contributor_item","title":"Submission 68XXV9","provisional":false,"output_code":"import json\n\ndef transform(text):\n ranges = sorted(json.loads(text)[\"ranges\"])\n merged = []\n for a, b in ranges:\n if not merged or a > merged[-1][1] + 1:\n merged.append([a, b])\n else:\n merged[-1][1] = max(merged[-1][1], b)\n return json.dumps(merged, separators=(\",\", \":\"))\n","input_data_sample":"{\"ranges\":[[1,4],[3,7],[10,12],[11,15],[20,20]]}","output_data_sample":"[[1,7],[10,15],[20,20]]","transformation_instruction":"Merge overlapping or touching integer ranges and return the merged ranges as compact JSON."} {"id":"cmsrb1sp1000re0p2ybsjvgdh","kind":"contributor_item","title":"Submission SJVGDH","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n rows = list(csv.DictReader(io.StringIO(text.strip())))\n rows.sort(key=lambda r: (int(r[\"priority\"]), r[\"title\"]))\n return \"priority,title\\n\" + \"\\n\".join(f'{r[\"priority\"]},{r[\"title\"]}' for r in rows)\n","input_data_sample":"priority,title\n2,fix docs\n1,deploy\n3,refactor\n1,backup\n2,test","output_data_sample":"priority,title\n1,backup\n1,deploy\n2,fix docs\n2,test\n3,refactor","transformation_instruction":"Sort CSV tasks by ascending numeric priority then title and return a normalized CSV string with the same header."} {"id":"cmsrb1sp2000te0p2ka8wqnpr","kind":"contributor_item","title":"Submission 8WQNPR","provisional":false,"output_code":"import json\n\ndef transform(text):\n out = {}\n for line in text.strip().splitlines():\n email, role = line.split(\",\", 1)\n out.setdefault(email.lower(), set()).add(role)\n ordered = {e: sorted(out[e]) for e in sorted(out)}\n return json.dumps(ordered, separators=(\",\", \":\"))\n","input_data_sample":"alice@example.com,Admin\nALICE@example.com,Editor\nbob@example.com,Viewer\nBob@Example.com,Viewer","output_data_sample":"{\"alice@example.com\":[\"Admin\",\"Editor\"],\"bob@example.com\":[\"Viewer\"]}","transformation_instruction":"Normalize email addresses to lowercase, merge duplicate rows, deduplicate roles case-sensitively, and return compact JSON keyed by normalized email with sorted roles."} {"id":"cmsrb1sp10006e0p2q88576vp","kind":"contributor_item","title":"Submission 8576VP","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n rows = csv.DictReader(io.StringIO(text.strip()), delimiter=\"\\t\")\n out = {}\n for r in rows:\n out.setdefault(r[\"region\"], {})\n out[r[\"region\"]][r[\"product\"]] = out[r[\"region\"]].get(r[\"product\"], 0) + int(r[\"revenue\"])\n ordered = {rg: {p: out[rg][p] for p in sorted(out[rg])} for rg in sorted(out)}\n return json.dumps(ordered, separators=(\",\", \":\"))\n","input_data_sample":"region\tproduct\trevenue\nnorth\tA\t120\nsouth\tA\t90\nnorth\tB\t75\nsouth\tB\t140\nnorth\tA\t30","output_data_sample":"{\"north\":{\"A\":150,\"B\":75},\"south\":{\"A\":90,\"B\":140}}","transformation_instruction":"Aggregate TSV revenue by region and product and return nested JSON sorted by region then product."} {"id":"cmsrb1sp10005e0p25m1g8j1g","kind":"contributor_item","title":"Submission 1G8J1G","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n out = {}\n for part in text.strip().split(\";\"):\n if not part.strip():\n continue\n k, v = [x.strip() for x in part.split(\"=\", 1)]\n if v.lower() in (\"true\", \"false\"):\n val = v.lower() == \"true\"\n elif re.fullmatch(r\"-?\\d+\", v):\n val = int(v)\n elif re.fullmatch(r\"-?\\d+\\.\\d+\", v):\n val = float(v)\n else:\n val = v\n out[k] = val\n return json.dumps(out, separators=(\",\", \":\"))\n","input_data_sample":" id = 7 ; name = Ada Lovelace ; active = TRUE ; score = 98.5 ","output_data_sample":"{\"id\":7,\"name\":\"Ada Lovelace\",\"active\":true,\"score\":98.5}","transformation_instruction":"Parse semicolon-separated key=value pairs, trim whitespace, coerce integer/float/boolean values, and return compact JSON."} {"id":"cmsrb1sp1000oe0p2i1gafdpc","kind":"contributor_item","title":"Submission GAFDPC","provisional":false,"output_code":"import json\nfrom datetime import date\n\ndef transform(text):\n d = json.loads(text)\n asof = date.fromisoformat(d[\"as_of\"])\n out = {}\n for p in d[\"people\"]:\n b = date.fromisoformat(p[\"birth\"])\n age = asof.year - b.year - ((asof.month, asof.day) < (b.month, b.day))\n out[p[\"name\"]] = age\n return json.dumps(dict(sorted(out.items())), separators=(\",\", \":\"))\n","input_data_sample":"{\"people\":[{\"name\":\"Ana\",\"birth\":\"2000-02-29\"},{\"name\":\"Ben\",\"birth\":\"1995-12-31\"},{\"name\":\"Cy\",\"birth\":\"2004-08-13\"}],\"as_of\":\"2026-08-13\"}","output_data_sample":"{\"Ana\":26,\"Ben\":30,\"Cy\":22}","transformation_instruction":"Compute each person's integer age as of the supplied ISO date and return a compact JSON object keyed by name."} {"id":"cmsrb1sp1000pe0p22na91f3b","kind":"contributor_item","title":"Submission A91F3B","provisional":false,"output_code":"import json\n\ndef transform(text):\n out = {}\n for line in text.strip().splitlines():\n fields = dict(part.split(\"=\", 1) for part in line.split())\n h = fields[\"host\"]\n status = int(fields[\"status\"])\n size = int(fields[\"bytes\"])\n a = out.setdefault(h, {\"requests\": 0, \"bytes\": 0, \"errors\": 0})\n a[\"requests\"] += 1\n a[\"bytes\"] += size\n a[\"errors\"] += int(status >= 400)\n return json.dumps({h: out[h] for h in sorted(out)}, separators=(\",\", \":\"))\n","input_data_sample":"host=a.example.com status=200 bytes=120\nhost=b.example.com status=500 bytes=30\nhost=a.example.com status=200 bytes=80\nhost=b.example.com status=200 bytes=70","output_data_sample":"{\"a.example.com\":{\"requests\":2,\"bytes\":200,\"errors\":0},\"b.example.com\":{\"requests\":2,\"bytes\":100,\"errors\":1}}","transformation_instruction":"Parse space-separated key=value log fields and return compact JSON per host with request count, total bytes, and error count for status >= 400."} {"id":"cmsrb1sp1000ce0p2xtv0bozt","kind":"contributor_item","title":"Submission V0BOZT","provisional":false,"output_code":"import json\n\ndef transform(text):\n out = {}\n for line in text.strip().splitlines():\n ip, method, path, status = line.split()\n klass = status[0] + \"xx\"\n if klass not in (\"2xx\", \"4xx\", \"5xx\"):\n continue\n out.setdefault(ip, {})\n out[ip][klass] = out[ip].get(klass, 0) + 1\n ordered = {ip: {k: out[ip][k] for k in (\"2xx\", \"4xx\", \"5xx\") if k in out[ip]} for ip in sorted(out)}\n return json.dumps(ordered, separators=(\",\", \":\"))\n","input_data_sample":"10.0.0.1 GET /a 200\n10.0.0.2 POST /b 500\n10.0.0.1 GET /c 404\n10.0.0.1 POST /d 201\n10.0.0.2 GET /e 200","output_data_sample":"{\"10.0.0.1\":{\"2xx\":2,\"4xx\":1},\"10.0.0.2\":{\"2xx\":1,\"5xx\":1}}","transformation_instruction":"Parse space-separated log rows and return JSON mapping IP to counts of 2xx, 4xx, and 5xx responses, omitting zero-valued classes."} {"id":"cmsrb1sp1000fe0p2s54c5i0l","kind":"contributor_item","title":"Submission 4C5I0L","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows = []\n for line in text.strip().splitlines():\n d, v = line.split(\",\")\n rows.append((d, int(v)))\n deltas = [{\"date\": rows[i][0], \"delta\": rows[i][1] - rows[i-1][1]} for i in range(1, len(rows))]\n best = max(deltas, key=lambda x: x[\"delta\"])[\"date\"]\n return json.dumps({\"deltas\": deltas, \"max_increase_date\": best}, separators=(\",\", \":\"))\n","input_data_sample":"2026-08-01,12\n2026-08-02,15\n2026-08-03,9\n2026-08-04,18\n2026-08-05,21","output_data_sample":"{\"deltas\":[{\"date\":\"2026-08-02\",\"delta\":3},{\"date\":\"2026-08-03\",\"delta\":-6},{\"date\":\"2026-08-04\",\"delta\":9},{\"date\":\"2026-08-05\",\"delta\":3}],\"max_increase_date\":\"2026-08-04\"}","transformation_instruction":"Convert date,value rows into JSON containing day-over-day deltas starting from the second day and the maximum increase date."} {"id":"cmsrb1sp1000de0p2h21ktsdl","kind":"contributor_item","title":"Submission 1KTSDL","provisional":false,"output_code":"import json\n\ndef transform(text):\n m = json.loads(text)[\"matrix\"]\n t = [list(col) for col in zip(*m)]\n n = len(m)\n return json.dumps({\"transpose\": t, \"main_diagonal\": sum(m[i][i] for i in range(n)), \"anti_diagonal\": sum(m[i][n-1-i] for i in range(n))}, separators=(\",\", \":\"))\n","input_data_sample":"{\"matrix\":[[1,2,3],[4,5,6],[7,8,9]]}","output_data_sample":"{\"transpose\":[[1,4,7],[2,5,8],[3,6,9]],\"main_diagonal\":15,\"anti_diagonal\":15}","transformation_instruction":"Transpose the rectangular matrix in the JSON input and return compact JSON containing the transposed matrix and both diagonal sums of the original."} {"id":"cmsrb1sp1000je0p224t5lheu","kind":"contributor_item","title":"Submission T5LHEU","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n out = {}\n for r in csv.DictReader(io.StringIO(text.strip())):\n out.setdefault(r[\"team\"], {})\n out[r[\"team\"]][r[\"member\"]] = out[r[\"team\"]].get(r[\"member\"], 0) + int(r[\"hours\"])\n ordered = {t: {m: out[t][m] for m in sorted(out[t])} for t in sorted(out)}\n return json.dumps(ordered, separators=(\",\", \":\"))\n","input_data_sample":"team,member,hours\nA,Lee,3\nA,Sam,5\nB,Ira,4\nA,Lee,2\nB,Ira,1\nB,Moe,6","output_data_sample":"{\"A\":{\"Lee\":5,\"Sam\":5},\"B\":{\"Ira\":5,\"Moe\":6}}","transformation_instruction":"Aggregate CSV hours first by team then member and return nested compact JSON with members sorted alphabetically."} {"id":"cmsrb1sp1000ie0p21i761tfd","kind":"contributor_item","title":"Submission 761TFD","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n d = json.loads(text)\n stop = {s.lower() for s in d[\"stop\"]}\n counts = {}\n for w in re.findall(r\"[A-Za-z]+\", d[\"text\"].lower()):\n if w in stop:\n continue\n counts[w] = counts.get(w, 0) + 1\n ordered = dict(sorted(counts.items(), key=lambda kv: (-kv[1], kv[0])))\n return json.dumps(ordered, separators=(\",\", \":\"))\n","input_data_sample":"{\"text\":\"Red fish, blue fish; red bird. BLUE bird!\",\"stop\":[\"fish\"]}","output_data_sample":"{\"bird\":2,\"blue\":2,\"red\":2}","transformation_instruction":"Tokenize alphabetic words case-insensitively, remove stop words, count remaining words, and return compact JSON sorted by descending frequency then alphabetically."} {"id":"cmsrb1sp1000he0p2cnertq0c","kind":"contributor_item","title":"Submission ERTQ0C","provisional":false,"output_code":"import json\n\ndef transform(text):\n sums, counts = {}, {}\n for line in text.strip().splitlines():\n _, p, r = line.split(\",\")\n sums[p] = sums.get(p, 0) + int(r)\n counts[p] = counts.get(p, 0) + 1\n out = {p: round(sums[p] / counts[p], 2) for p in sorted(sums)}\n return json.dumps(out, separators=(\",\", \":\"))\n","input_data_sample":"u1,p1,4\nu1,p2,5\nu2,p1,2\nu2,p3,5\nu3,p2,3","output_data_sample":"{\"p1\":3.0,\"p2\":4.0,\"p3\":5.0}","transformation_instruction":"Parse user,product,rating rows and return JSON with average rating per product rounded to two decimals, sorted by product."} {"id":"cmsrb1sp1000ge0p2flcyxm9o","kind":"contributor_item","title":"Submission CYXM9O","provisional":false,"output_code":"import json\n\ndef transform(text):\n d = json.loads(text)\n out = {}\n for r in d[\"records\"]:\n if r[\"value\"] < d[\"threshold\"]:\n continue\n a = out.setdefault(r[\"category\"], {\"count\": 0, \"sum\": 0})\n a[\"count\"] += 1\n a[\"sum\"] += r[\"value\"]\n ordered = {k: out[k] for k in sorted(out)}\n return json.dumps(ordered, separators=(\",\", \":\"))\n","input_data_sample":"{\"records\":[{\"category\":\"x\",\"value\":5},{\"category\":\"y\",\"value\":2},{\"category\":\"x\",\"value\":11},{\"category\":\"y\",\"value\":8},{\"category\":\"z\",\"value\":4}],\"threshold\":5}","output_data_sample":"{\"x\":{\"count\":2,\"sum\":16},\"y\":{\"count\":1,\"sum\":8}}","transformation_instruction":"Filter records to values at least threshold, then return JSON counts and sums by category."} {"id":"cmsrb1sp1000ke0p2lsjcvjs5","kind":"contributor_item","title":"Submission JCVJS5","provisional":false,"output_code":"import json\n\ndef transform(text):\n out = []\n for line in text.strip().splitlines():\n i, n, p, a = line.split(\"|\")\n out.append({\"id\": int(i), \"name\": n, \"price\": float(p), \"active\": a.lower() == \"true\"})\n return json.dumps(out, separators=(\",\", \":\"))\n","input_data_sample":"001|Widget A|12.50|true\n002|Widget B|0|false\n003|Widget C|7.25|true","output_data_sample":"[{\"id\":1,\"name\":\"Widget A\",\"price\":12.5,\"active\":true},{\"id\":2,\"name\":\"Widget B\",\"price\":0.0,\"active\":false},{\"id\":3,\"name\":\"Widget C\",\"price\":7.25,\"active\":true}]","transformation_instruction":"Parse pipe-delimited product rows and return compact JSON array coercing id to integer, price to float, and active to boolean."} {"id":"cmsrb1sp1000me0p2h97lb266","kind":"contributor_item","title":"Submission 7LB266","provisional":false,"output_code":"import json\n\ndef transform(text):\n tx = json.loads(text)[\"transactions\"]\n bal = {}\n for t in tx:\n bal[t[\"acct\"]] = bal.get(t[\"acct\"], 0) + t[\"amount\"]\n bal = dict(sorted(bal.items()))\n pos = [k for k, v in bal.items() if v > 0]\n return json.dumps({\"balances\": bal, \"positive_accounts\": pos}, separators=(\",\", \":\"))\n","input_data_sample":"{\"transactions\":[{\"acct\":\"A\",\"amount\":10},{\"acct\":\"B\",\"amount\":-4},{\"acct\":\"A\",\"amount\":7},{\"acct\":\"B\",\"amount\":9},{\"acct\":\"C\",\"amount\":0}]}","output_data_sample":"{\"balances\":{\"A\":17,\"B\":5,\"C\":0},\"positive_accounts\":[\"A\",\"B\"]}","transformation_instruction":"Compute net transaction amount per account and return compact JSON containing balances plus positive-account names sorted alphabetically."} {"id":"cmsrb1sp1000qe0p2znmbv185","kind":"contributor_item","title":"Submission MBV185","provisional":false,"output_code":"import json\n\ndef transform(text):\n d = json.loads(text)\n vals, w = d[\"values\"], d[\"window\"]\n sums = [sum(vals[i:i+w]) for i in range(len(vals)-w+1)]\n return json.dumps({\"window_sums\": sums, \"max_sum\": max(sums)}, separators=(\",\", \":\"))\n","input_data_sample":"{\"values\":[4,9,16,25,36],\"window\":3}","output_data_sample":"{\"window_sums\":[29,50,77],\"max_sum\":77}","transformation_instruction":"Compute sliding-window sums of the given width and return compact JSON with the sums and the maximum sum."} {"id":"cmsrb1sp2000ue0p2rf6tmagk","kind":"contributor_item","title":"Submission 6TMAGK","provisional":false,"output_code":"import json\n\ndef transform(text):\n scores = json.loads(text)[\"scores\"]\n avgs = {k: round(sum(v)/len(v), 2) for k, v in sorted(scores.items())}\n best = sorted(avgs, key=lambda k: (-avgs[k], k))[0]\n return json.dumps({\"averages\": avgs, \"best_question\": best}, separators=(\",\", \":\"))\n","input_data_sample":"{\"scores\":{\"q1\":[8,7,9],\"q2\":[10,6,8],\"q3\":[5,9,7]}}","output_data_sample":"{\"averages\":{\"q1\":8.0,\"q2\":8.0,\"q3\":7.0},\"best_question\":\"q1\"}","transformation_instruction":"For each question, compute its average score and return compact JSON with per-question averages plus the question with the highest average; break ties lexicographically."} {"id":"cmsrb1sp2000se0p242p00f15","kind":"contributor_item","title":"Submission P00F15","provisional":false,"output_code":"import json\n\ndef transform(text):\n paths = json.loads(text)[\"paths\"]\n counts = {}\n for p in paths:\n seg = [s for s in p.split(\"/\") if s]\n key = \"/\" + \"/\".join(seg[:2])\n counts[key] = counts.get(key, 0) + 1\n return json.dumps(dict(sorted(counts.items())), separators=(\",\", \":\"))\n","input_data_sample":"{\"paths\":[\"/api/users\",\"/api/users/42\",\"/api/orders/7\",\"/health\",\"/api/orders/9/items\"]}","output_data_sample":"{\"/api/orders\":2,\"/api/users\":2,\"/health\":1}","transformation_instruction":"Group URL paths by their first two non-empty segments (or the entire shorter path), count them, and return compact JSON sorted by group key."} {"id":"cmsrb1sp10001e0p2myd4r7t7","kind":"contributor_item","title":"Submission D4R7T7","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n rows = csv.DictReader(io.StringIO(text.strip()))\n totals = {}\n for r in rows:\n totals[r[\"sku\"]] = totals.get(r[\"sku\"], 0) + int(r[\"stock\"])\n return json.dumps(dict(sorted(totals.items())), separators=(\",\", \":\"))\n","input_data_sample":"sku,warehouse,stock\nP1,EAST,4\nP1,WEST,7\nP2,EAST,0\nP2,WEST,3\nP3,EAST,5","output_data_sample":"{\"P1\":11,\"P2\":3,\"P3\":5}","transformation_instruction":"Aggregate CSV inventory by SKU and return a JSON object mapping each SKU to total stock, sorted by SKU."} {"id":"cmsrb1sp00000e0p228glhqui","kind":"contributor_item","title":"Submission GLHQUI","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n lines = [{\"id\": o[\"id\"], \"line_total\": o[\"qty\"] * o[\"price\"]} for o in data[\"orders\"]]\n grand = sum(x[\"line_total\"] for x in lines)\n top = max(lines, key=lambda x: x[\"line_total\"])[\"id\"]\n return json.dumps({\"grand_total\": grand, \"highest_value_order\": top}, separators=(\",\", \":\"))\n","input_data_sample":"{\"orders\":[{\"id\":\"A1\",\"qty\":2,\"price\":12.5},{\"id\":\"A2\",\"qty\":1,\"price\":30},{\"id\":\"A3\",\"qty\":4,\"price\":5.25}]}","output_data_sample":"{\"grand_total\":76.0,\"highest_value_order\":\"A2\"}","transformation_instruction":"Parse the JSON order list, compute each line total, and return JSON containing the grand total and the id of the highest-value line."} {"id":"cmsrb1sp10002e0p2yy50yf4u","kind":"contributor_item","title":"Submission 50YF4U","provisional":false,"output_code":"import json\n\ndef transform(text):\n sums, counts = {}, {}\n for line in text.strip().splitlines():\n _, service, ms = line.split(\",\")\n sums[service] = sums.get(service, 0) + int(ms)\n counts[service] = counts.get(service, 0) + 1\n out = {k: round(sums[k] / counts[k], 1) for k in sorted(sums)}\n return json.dumps(out, separators=(\",\", \":\"))\n","input_data_sample":"2026-08-01,api,120\n2026-08-01,worker,80\n2026-08-02,api,150\n2026-08-02,worker,110\n2026-08-02,api,30","output_data_sample":"{\"api\":100.0,\"worker\":95.0}","transformation_instruction":"Parse date,service,milliseconds rows and return JSON with average latency per service rounded to one decimal."} {"id":"cmsrb1sp10003e0p2qa3oviw0","kind":"contributor_item","title":"Submission 3OVIW0","provisional":false,"output_code":"import json\n\ndef transform(text):\n users = {}\n for line in text.strip().splitlines():\n user, roles = line.split(\"|\", 1)\n users.setdefault(user, set()).update(r for r in roles.split(\",\") if r)\n out = {u: sorted(users[u]) for u in sorted(users)}\n return json.dumps(out, separators=(\",\", \":\"))\n","input_data_sample":"alice|admin,editor\nbob|viewer\ncarol|editor,viewer\nalice|viewer","output_data_sample":"{\"alice\":[\"admin\",\"editor\",\"viewer\"],\"bob\":[\"viewer\"],\"carol\":[\"editor\",\"viewer\"]}","transformation_instruction":"Parse user|comma-separated-roles lines, merge duplicate users, deduplicate roles, sort roles alphabetically, and return JSON keyed by username."} {"id":"cmsrb1sp10004e0p22mhutzfx","kind":"contributor_item","title":"Submission HUTZFX","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)[\"events\"]\n agg = {}\n for e in data:\n a = agg.setdefault(e[\"type\"], {\"total\": 0, \"successful\": 0})\n a[\"total\"] += 1\n a[\"successful\"] += int(bool(e[\"ok\"]))\n out = {}\n for k in sorted(agg):\n a = agg[k]\n out[k] = {\"total\": a[\"total\"], \"successful\": a[\"successful\"], \"success_rate\": round(a[\"successful\"] / a[\"total\"], 2)}\n return json.dumps(out, separators=(\",\", \":\"))\n","input_data_sample":"{\"events\":[{\"type\":\"click\",\"ok\":true},{\"type\":\"click\",\"ok\":false},{\"type\":\"purchase\",\"ok\":true},{\"type\":\"click\",\"ok\":true},{\"type\":\"purchase\",\"ok\":false}]}","output_data_sample":"{\"click\":{\"total\":3,\"successful\":2,\"success_rate\":0.67},\"purchase\":{\"total\":2,\"successful\":1,\"success_rate\":0.5}}","transformation_instruction":"Group events by type and return JSON with total count, successful count, and success_rate rounded to two decimals for each type."} {"id":"cmsrb1sp10007e0p2k0ew58di","kind":"contributor_item","title":"Submission EW58DI","provisional":false,"output_code":"import json, statistics\n\ndef transform(text):\n vals = [x for x in json.loads(text)[\"readings\"] if x is not None]\n return json.dumps({\"count\": len(vals), \"min\": min(vals), \"max\": max(vals), \"median\": statistics.median(vals)}, separators=(\",\", \":\"))\n","input_data_sample":"{\"readings\":[3,null,7,12,null,5,18]}","output_data_sample":"{\"count\":5,\"min\":3,\"max\":18,\"median\":7}","transformation_instruction":"From the JSON readings array, ignore nulls and return JSON with count, min, max, and median."} {"id":"cmsrb1sp10008e0p228l47gpx","kind":"contributor_item","title":"Submission L47GPX","provisional":false,"output_code":"def transform(text):\n totals = {}\n for line in text.strip().splitlines():\n k, v = line.split(\":\")\n totals[k] = totals.get(k, 0) + int(v)\n pairs = sorted(totals.items(), key=lambda kv: (-kv[1], kv[0]))\n return \"\\n\".join(f\"{k}={v}\" for k, v in pairs)\n","input_data_sample":"alpha:3\nbeta:1\nalpha:2\ngamma:5\nbeta:4","output_data_sample":"alpha=5\nbeta=5\ngamma=5","transformation_instruction":"Sum colon-separated integer values by key, then return lines sorted by descending total and key as `key=total`."} {"id":"cmsrb1sp1000be0p2nvkiejip","kind":"contributor_item","title":"Submission KIEJIP","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n rows = csv.DictReader(io.StringIO(text.strip()))\n out = []\n for r in rows:\n total = int(r[\"qty\"]) * float(r[\"unit_price\"]) * (1 - float(r[\"discount_pct\"]) / 100)\n out.append({\"item\": r[\"item\"], \"total\": round(total, 2)})\n return json.dumps(out, separators=(\",\", \":\"))\n","input_data_sample":"item,qty,unit_price,discount_pct\nA,2,10.00,0\nB,1,25.00,20\nC,3,4.00,10","output_data_sample":"[{\"item\":\"A\",\"total\":20.0},{\"item\":\"B\",\"total\":20.0},{\"item\":\"C\",\"total\":10.8}]","transformation_instruction":"Compute each CSV line's discounted total and return a compact JSON array with item and total rounded to two decimals."} {"id":"cmsrb6z9y000ze0p2p4mc1q4y","kind":"contributor_item","title":"Submission MC1Q4Y","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows=[(d,int(v)) for d,v in (line.split(\",\") for line in text.strip().splitlines())]\n mn=min(rows,key=lambda x:x[1]);mx=max(rows,key=lambda x:x[1])\n return json.dumps({\"min\":{\"date\":mn[0],\"value\":mn[1]},\"max\":{\"date\":mx[0],\"value\":mx[1]}},separators=(\",\",\":\"))\n","input_data_sample":"2026-08-01,4\n2026-08-02,7\n2026-08-03,5\n2026-08-04,10","output_data_sample":"{\"min\":{\"date\":\"2026-08-01\",\"value\":4},\"max\":{\"date\":\"2026-08-04\",\"value\":10}}","transformation_instruction":"Parse date,value lines and return compact JSON with the minimum value, maximum value, and dates where they occur."} {"id":"cmsrb6z9y0011e0p2zrk368l3","kind":"contributor_item","title":"Submission K368L3","provisional":false,"output_code":"def transform(text):\n d={}\n for line in text.strip().splitlines():\n k,v=line.split(\"|\");d[k]=d.get(k,0)+int(v)\n return \"\\n\".join(f\"{k}:{v}\" for k,v in sorted(d.items(),key=lambda kv:(-kv[1],kv[0])))\n","input_data_sample":"red|4\nblue|1\nred|3\ngreen|2","output_data_sample":"red:7\ngreen:2\nblue:1","transformation_instruction":"Sum pipe-delimited quantities by color and return lines as color:total sorted by descending total then color."} {"id":"cmsrb6z9y0015e0p2cr50toe7","kind":"contributor_item","title":"Submission 50TOE7","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for line in text.strip().splitlines():\n k,vals=line.split(\":\");out[k]=sum(map(int,vals.split(\",\")))\n return json.dumps(out,separators=(\",\",\":\"))\n","input_data_sample":"A:1,3,5\nB:2,4\nC:10","output_data_sample":"{\"A\":9,\"B\":6,\"C\":10}","transformation_instruction":"Parse label:comma-separated-integers lines and return compact JSON mapping each label to the sum of its values."} {"id":"cmsrb6z9y0016e0p20e3mekuk","kind":"contributor_item","title":"Submission 3MEKUK","provisional":false,"output_code":"import json\n\ndef transform(text):\n c={}\n for r in json.loads(text)[\"rows\"]:\n if r[\"active\"]:c[r[\"dept\"]]=c.get(r[\"dept\"],0)+1\n return json.dumps(dict(sorted(c.items())),separators=(\",\",\":\"))\n","input_data_sample":"{\"rows\":[{\"dept\":\"eng\",\"active\":true},{\"dept\":\"sales\",\"active\":false},{\"dept\":\"eng\",\"active\":true},{\"dept\":\"sales\",\"active\":true}]}","output_data_sample":"{\"eng\":2,\"sales\":1}","transformation_instruction":"Count only active JSON rows by department and return compact JSON sorted by department."} {"id":"cmsrb6z9y0017e0p258fy0t7v","kind":"contributor_item","title":"Submission FY0T7V","provisional":false,"output_code":"import json\n\ndef transform(text):\n a=list(map(int,text.strip().splitlines()))\n return json.dumps({\"first\":a[0],\"last\":a[-1],\"change\":a[-1]-a[0]},separators=(\",\",\":\"))\n","input_data_sample":"10\n15\n12\n12\n20","output_data_sample":"{\"first\":10,\"last\":20,\"change\":10}","transformation_instruction":"Convert newline-separated integers into compact JSON containing the first value, last value, and net change."} {"id":"cmsrb6z9y001ae0p2o73inrma","kind":"contributor_item","title":"Submission 3INRMA","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for k,v in json.loads(text)[\"pairs\"]:out[k]=out.get(k,0)+v\n return json.dumps(dict(sorted(out.items())),separators=(\",\",\":\"))\n","input_data_sample":"{\"pairs\":[[\"a\",1],[\"b\",2],[\"a\",3]]}","output_data_sample":"{\"a\":4,\"b\":2}","transformation_instruction":"Fold JSON key/value pairs into an object by summing repeated keys and return compact JSON sorted by key."} {"id":"cmsrb6z9y001de0p2573rayco","kind":"contributor_item","title":"Submission 3RAYCO","provisional":false,"output_code":"import json\n\ndef transform(text):\n keys=[]\n for line in text.strip().splitlines():\n k,v=line.split(\"=\")\n if v.lower()==\"true\":keys.append(k)\n return json.dumps(sorted(keys),separators=(\",\",\":\"))\n","input_data_sample":"a=true\nb=false\nc=TRUE\nd=False","output_data_sample":"[\"a\",\"c\"]","transformation_instruction":"Parse key=boolean lines case-insensitively and return compact JSON listing enabled keys alphabetically."} {"id":"cmsrb6z9y000ve0p2vxrcntcs","kind":"contributor_item","title":"Submission RCNTCS","provisional":false,"output_code":"import json\n\ndef transform(text):\n vals=json.loads(text)[\"values\"]\n c={}\n for v in vals:c[v]=c.get(v,0)+1\n return json.dumps({str(k):c[k] for k in sorted(c)},separators=(\",\",\":\"))\n","input_data_sample":"{\"values\":[2,5,2,9,5,2]}","output_data_sample":"{\"2\":3,\"5\":2,\"9\":1}","transformation_instruction":"Count each integer in the JSON values array and return compact JSON keyed by the number as a string, ordered numerically."} {"id":"cmsrb6z9y000we0p2pdgtvqrf","kind":"contributor_item","title":"Submission GTVQRF","provisional":false,"output_code":"import csv,io,json\n\ndef transform(text):\n d={}\n for r in csv.DictReader(io.StringIO(text.strip())):d[r[\"name\"]]=d.get(r[\"name\"],0)+int(r[\"score\"])\n return json.dumps(dict(sorted(d.items())),separators=(\",\",\":\"))\n","input_data_sample":"name,score\nAri,8\nBea,10\nAri,6\nCal,7\nBea,4","output_data_sample":"{\"Ari\":14,\"Bea\":14,\"Cal\":7}","transformation_instruction":"Aggregate CSV scores by name and return compact JSON with each name’s total score, sorted alphabetically."} {"id":"cmsrb6z9y000ye0p267v9s67n","kind":"contributor_item","title":"Submission V9S67N","provisional":false,"output_code":"import json\n\ndef transform(text):\n c={}\n for w in json.loads(text)[\"words\"]:\n w=w.lower();c[w]=c.get(w,0)+1\n return json.dumps(dict(sorted(c.items(),key=lambda kv:(-kv[1],kv[0]))),separators=(\",\",\":\"))\n","input_data_sample":"{\"words\":[\"Alpha\",\"beta\",\"ALPHA\",\"Beta\",\"gamma\"]}","output_data_sample":"{\"alpha\":2,\"beta\":2,\"gamma\":1}","transformation_instruction":"Normalize words to lowercase, count frequencies, and return compact JSON ordered by descending count then word."} {"id":"cmsrb6z9y0014e0p2azs0h58r","kind":"contributor_item","title":"Submission S0H58R","provisional":false,"output_code":"import json\n\ndef transform(text):\n c={}\n for p in json.loads(text)[\"paths\"]:\n k=p.split(\"/\")[0];c[k]=c.get(k,0)+1\n return json.dumps(dict(sorted(c.items())),separators=(\",\",\":\"))\n","input_data_sample":"{\"paths\":[\"a/b/c\",\"a/b/d\",\"a/x\",\"z\"]}","output_data_sample":"{\"a\":3,\"z\":1}","transformation_instruction":"Count JSON slash-delimited paths by first segment and return compact JSON sorted by segment."} {"id":"cmsrb6z9y0013e0p2z3chj0df","kind":"contributor_item","title":"Submission CHJ0DF","provisional":false,"output_code":"import csv,io,json\nfrom decimal import Decimal\n\ndef transform(text):\n out={}\n for r in csv.DictReader(io.StringIO(text.strip())):out[r[\"sku\"]]=int(Decimal(r[\"price\"])*100)\n return json.dumps(out,separators=(\",\",\":\"))\n","input_data_sample":"sku,price\nP1,12.50\nP2,8.00\nP3,20.00","output_data_sample":"{\"P1\":1250,\"P2\":800,\"P3\":2000}","transformation_instruction":"Convert CSV prices to integer cents and return compact JSON mapping SKU to cents in input order."} {"id":"cmsrb6z9y0019e0p2z2xhjqzk","kind":"contributor_item","title":"Submission XHJQZK","provisional":false,"output_code":"import json\n\ndef transform(text):\n d={}\n for line in text.strip().splitlines():\n _,k,v=line.split(\"|\");d[k]=d.get(k,0)+int(v)\n return json.dumps(dict(sorted(d.items())),separators=(\",\",\":\"))\n","input_data_sample":"u1|A|5\nu2|B|3\nu1|B|2\nu3|A|4","output_data_sample":"{\"A\":9,\"B\":5}","transformation_instruction":"Aggregate pipe-delimited points by category, ignoring user id, and return compact JSON sorted by category."} {"id":"cmsrb6z9y001be0p2izon6ytj","kind":"contributor_item","title":"Submission ON6YTJ","provisional":false,"output_code":"import json\n\ndef transform(text):\n d={}\n for line in text.strip().splitlines():\n k,v=line.split(\",\");d[k]=d.get(k,0)+int(v)\n k=sorted(d,key=lambda x:(-d[x],x))[0]\n return json.dumps({\"key\":k,\"total\":d[k]},separators=(\",\",\":\"))\n","input_data_sample":"x,2\ny,5\nx,4\nz,1","output_data_sample":"{\"key\":\"x\",\"total\":6}","transformation_instruction":"Parse key,value rows and return compact JSON with the key having the highest total and that total; break ties alphabetically."} {"id":"cmsrb6z9y001ee0p211b9doo7","kind":"contributor_item","title":"Submission B9DOO7","provisional":false,"output_code":"import json\n\ndef transform(text):\n s=0;out=[]\n for v in json.loads(text)[\"values\"]:\n s+=v;out.append(s)\n return json.dumps(out,separators=(\",\",\":\"))\n","input_data_sample":"{\"values\":[2,4,6,8]}","output_data_sample":"[2,6,12,20]","transformation_instruction":"Return compact JSON with the cumulative sums of the input values."} {"id":"cmsrb6z9y001ce0p23yepfggz","kind":"contributor_item","title":"Submission EPFGGZ","provisional":false,"output_code":"import json\n\ndef transform(text):\n r=sorted(json.loads(text)[\"records\"],key=lambda x:x[\"id\"])\n return json.dumps([x[\"name\"] for x in r],separators=(\",\",\":\"))\n","input_data_sample":"{\"records\":[{\"id\":3,\"name\":\"C\"},{\"id\":1,\"name\":\"A\"},{\"id\":2,\"name\":\"B\"}]}","output_data_sample":"[\"A\",\"B\",\"C\"]","transformation_instruction":"Sort JSON records by numeric id ascending and return a compact JSON array of names only."} {"id":"cmsrb6z9y001ge0p217rya70n","kind":"contributor_item","title":"Submission RYA70N","provisional":false,"output_code":"import json\n\ndef transform(text):\n seen=set();out=[]\n for x in json.loads(text)[\"values\"]:\n if x not in seen:seen.add(x);out.append(x)\n return json.dumps(out,separators=(\",\",\":\"))\n","input_data_sample":"{\"values\":[5,1,5,2,1,3]}","output_data_sample":"[5,1,2,3]","transformation_instruction":"Remove duplicate integers while preserving first occurrence order and return a compact JSON array."} {"id":"cmsrb6z9z001ke0p25a5xime3","kind":"contributor_item","title":"Submission 5XIME3","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows=json.loads(text)[\"rows\"]\n return json.dumps([sum(col) for col in zip(*rows)],separators=(\",\",\":\"))\n","input_data_sample":"{\"rows\":[[1,2,3],[4,5,6]]}","output_data_sample":"[5,7,9]","transformation_instruction":"Compute column sums for the rectangular JSON rows matrix and return them as a compact JSON array."} {"id":"cmsrb6z9y0018e0p2y7wwx8xc","kind":"contributor_item","title":"Submission WWX8XC","provisional":false,"output_code":"import json\n\ndef transform(text):\n d=json.loads(text)\n return json.dumps(sorted(x for x in d[\"values\"] if x>d[\"threshold\"]),separators=(\",\",\":\"))\n","input_data_sample":"{\"values\":[3,8,1,9,4],\"threshold\":4}","output_data_sample":"[8,9]","transformation_instruction":"Filter values strictly above the JSON threshold, sort ascending, and return them as a compact JSON array."} {"id":"cmsrb6z9z001he0p2f7a2aeab","kind":"contributor_item","title":"Submission A2AEAB","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for line in text.strip().splitlines():\n p,q,price=line.split(\":\");out[p]=int(q)*int(price)\n return json.dumps(dict(sorted(out.items())),separators=(\",\",\":\"))\n","input_data_sample":"P1:4:10\nP2:2:25\nP3:5:3","output_data_sample":"{\"P1\":40,\"P2\":50,\"P3\":15}","transformation_instruction":"Parse product:quantity:unit_price rows and return compact JSON mapping each product to line revenue, sorted by product."} {"id":"cmsrb6z9y001fe0p2tc3ad1l6","kind":"contributor_item","title":"Submission 3AD1L6","provisional":false,"output_code":"import csv,io,json\n\ndef transform(text):\n d={}\n for r in csv.DictReader(io.StringIO(text.strip())):\n t=int(r[\"temp\"]);d[r[\"city\"]]=max(t,d.get(r[\"city\"],t))\n return json.dumps(dict(sorted(d.items())),separators=(\",\",\":\"))\n","input_data_sample":"city,temp\nDelhi,32\nMumbai,29\nDelhi,35\nMumbai,31","output_data_sample":"{\"Delhi\":35,\"Mumbai\":31}","transformation_instruction":"Compute maximum temperature per city from CSV and return compact JSON sorted by city."} {"id":"cmsrb6z9z001ie0p2l0pbfy71","kind":"contributor_item","title":"Submission PBFY71","provisional":false,"output_code":"import json\n\ndef transform(text):\n g=json.loads(text)[\"groups\"]\n return json.dumps({k:len(v) for k,v in sorted(g.items()) if v},separators=(\",\",\":\"))\n","input_data_sample":"{\"groups\":{\"a\":[1,2],\"b\":[3],\"c\":[]}}","output_data_sample":"{\"a\":2,\"b\":1}","transformation_instruction":"Return compact JSON mapping each group to its item count and omit empty groups."} {"id":"cmsrb6z9z001je0p23m8g3nue","kind":"contributor_item","title":"Submission 8G3NUE","provisional":false,"output_code":"import json\n\ndef transform(text):\n d={}\n for w in text.split():d[w]=d.get(w,0)+1\n return json.dumps(dict(sorted(d.items())),separators=(\",\",\":\"))\n","input_data_sample":"alpha beta alpha\ngamma beta\nalpha","output_data_sample":"{\"alpha\":3,\"beta\":2,\"gamma\":1}","transformation_instruction":"Count whitespace-delimited tokens across all lines and return compact JSON sorted alphabetically."} {"id":"cmsrb6z9z001le0p2eg5l12ph","kind":"contributor_item","title":"Submission 5L12PH","provisional":false,"output_code":"import csv,io,json\n\ndef transform(text):\n d={}\n for r in csv.DictReader(io.StringIO(text.strip())):d[r[\"status\"]]=d.get(r[\"status\"],0)+1\n return json.dumps(dict(sorted(d.items())),separators=(\",\",\":\"))\n","input_data_sample":"id,status\n1,open\n2,closed\n3,open\n4,pending\n5,closed","output_data_sample":"{\"closed\":2,\"open\":2,\"pending\":1}","transformation_instruction":"Count CSV rows by status and return compact JSON sorted by status."} {"id":"cmsrb6z9z001me0p2jqiy3nvw","kind":"contributor_item","title":"Submission IY3NVW","provisional":false,"output_code":"import json\n\ndef transform(text):\n a=json.loads(text)[\"nums\"]\n return json.dumps({\"negative\":sum(x<0 for x in a),\"zero\":sum(x==0 for x in a),\"positive\":sum(x>0 for x in a)},separators=(\",\",\":\"))\n","input_data_sample":"{\"nums\":[-3,0,4,-1,2]}","output_data_sample":"{\"negative\":2,\"zero\":1,\"positive\":2}","transformation_instruction":"Return compact JSON with counts of negative, zero, and positive numbers."} {"id":"cmsrb6z9y000xe0p2c226z283","kind":"contributor_item","title":"Submission 26Z283","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for part in text.split(\";\"):\n k,v=part.split(\"=\");v=int(v)\n if v>0 and v%2:out[k]=v\n return json.dumps(out,separators=(\",\",\":\"))\n","input_data_sample":"a=3;b=8;c=-2;d=5","output_data_sample":"{\"a\":3,\"d\":5}","transformation_instruction":"Parse semicolon-separated integer assignments and return compact JSON containing only entries with positive odd values, preserving key order."} {"id":"cmsrb6z9y0010e0p2ci2gv4x2","kind":"contributor_item","title":"Submission 2GV4X2","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for r in json.loads(text)[\"items\"]:out[r[\"k\"]]=out.get(r[\"k\"],1)*r[\"v\"]\n return json.dumps(dict(sorted(out.items())),separators=(\",\",\":\"))\n","input_data_sample":"{\"items\":[{\"k\":\"x\",\"v\":2},{\"k\":\"y\",\"v\":3},{\"k\":\"x\",\"v\":4}]}","output_data_sample":"{\"x\":8,\"y\":3}","transformation_instruction":"Group JSON items by k, multiply values within each group, and return compact JSON sorted by key."} {"id":"cmsrb6z9y0012e0p2ychno9lm","kind":"contributor_item","title":"Submission HNO9LM","provisional":false,"output_code":"import json\n\ndef transform(text):\n a=json.loads(text)[\"nums\"]\n return json.dumps({\"even\":[x for x in a if x%2==0],\"odd\":[x for x in a if x%2]},separators=(\",\",\":\"))\n","input_data_sample":"{\"nums\":[1,2,3,4,5,6]}","output_data_sample":"{\"even\":[2,4,6],\"odd\":[1,3,5]}","transformation_instruction":"Partition the JSON nums array into even and odd arrays and return compact JSON with evens first."} {"id":"cmsrb6z9z001ne0p28zc019sl","kind":"contributor_item","title":"Submission C019SL","provisional":false,"output_code":"import json\n\ndef transform(text):\n total=0\n for line in text.strip().splitlines():\n s,w=line.split(\"|\");total+=len(s)*int(w)\n return json.dumps({\"weighted_chars\":total},separators=(\",\",\":\"))\n","input_data_sample":"aa|3\nbbb|4\nc|5","output_data_sample":"{\"weighted_chars\":23}","transformation_instruction":"Parse token|weight lines and return compact JSON with total weighted character count, defined as len(token)*weight summed across rows."} {"id":"cmsrb6z9z001oe0p260xhnjhf","kind":"contributor_item","title":"Submission XHNJHF","provisional":false,"output_code":"import json\n\ndef transform(text):\n r=sorted(json.loads(text)[\"items\"],key=lambda x:(-x[\"score\"],x[\"name\"]))[0]\n return json.dumps({\"name\":r[\"name\"],\"score\":r[\"score\"]},separators=(\",\",\":\"))\n","input_data_sample":"{\"items\":[{\"name\":\"a\",\"score\":7},{\"name\":\"b\",\"score\":9},{\"name\":\"c\",\"score\":9}]}","output_data_sample":"{\"name\":\"b\",\"score\":9}","transformation_instruction":"Select the highest-scoring item from JSON, breaking ties by name alphabetically, and return compact JSON with name and score."} {"id":"cmsrbolnn0039e0p2gqmgz4ec","kind":"contributor_item","title":"Submission MGZ4EC","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for line in text.strip().split('\\n'):\n line = line.strip()\n if line and not line.startswith('#') and '=' in line:\n key, _, value = line.partition('=')\n result[key.strip()] = value.strip()\n return json.dumps(result)","input_data_sample":"DATABASE_URL=postgres://localhost/mydb\nSECRET_KEY=abc123xyz\nDEBUG=true\nPORT=8080","output_data_sample":"{\"DATABASE_URL\": \"postgres://localhost/mydb\", \"SECRET_KEY\": \"abc123xyz\", \"DEBUG\": \"true\", \"PORT\": \"8080\"}","transformation_instruction":"Parse a .env format file into a JSON object mapping variable names to their string values. Ignore comment lines and blank lines."} {"id":"cmsrbolnn003me0p2e6mfjwss","kind":"contributor_item","title":"Submission MFJWSS","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = list(reader)\n transposed = list(zip(*rows))\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerows(transposed)\n return out.getvalue().strip()","input_data_sample":"a,b,c\n1,2,3\n4,5,6","output_data_sample":"a,1,4\r\nb,2,5\r\nc,3,6","transformation_instruction":"Transpose a CSV matrix: rows become columns and columns become rows, preserving all values."} {"id":"cmsrbolnn003oe0p2q51scvpm","kind":"contributor_item","title":"Submission 1SCVPM","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n result = [{\"id\": u[\"id\"], \"name\": u[\"profile\"][\"name\"]} for u in data[\"users\"]]\n return json.dumps(result)","input_data_sample":"{\"users\": [{\"id\": 1, \"profile\": {\"name\": \"Alice\", \"age\": 30}}, {\"id\": 2, \"profile\": {\"name\": \"Bob\", \"age\": 25}}, {\"id\": 3, \"profile\": {\"name\": \"Carol\", \"age\": 35}}]}","output_data_sample":"[{\"id\": 1, \"name\": \"Alice\"}, {\"id\": 2, \"name\": \"Bob\"}, {\"id\": 3, \"name\": \"Carol\"}]","transformation_instruction":"Extract a flat list of objects containing only 'id' and 'name' from a nested JSON structure where the name is inside a 'profile' sub-object."} {"id":"cmsrbolnn003ae0p2dhyc0jrh","kind":"contributor_item","title":"Submission YC0JRH","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n return json.dumps(list(reader))","input_data_sample":"Name,Age,City\nAlice,30,New York\nBob,25,San Francisco\nCarol,35,Chicago","output_data_sample":"[{\"Name\": \"Alice\", \"Age\": \"30\", \"City\": \"New York\"}, {\"Name\": \"Bob\", \"Age\": \"25\", \"City\": \"San Francisco\"}, {\"Name\": \"Carol\", \"Age\": \"35\", \"City\": \"Chicago\"}]","transformation_instruction":"Parse a CSV string with a header row and return a JSON array of objects where each object maps column names to values."} {"id":"cmsrbolnn003be0p2au0zln96","kind":"contributor_item","title":"Submission 0ZLN96","provisional":false,"output_code":"import json\n\ndef to_camel(s):\n parts = s.split('_')\n return parts[0] + ''.join(p.title() for p in parts[1:])\n\ndef transform(text):\n data = json.loads(text)\n return json.dumps({to_camel(k): v for k, v in data.items()})","input_data_sample":"{\"first_name\": \"Alice\", \"last_name\": \"Smith\", \"email_address\": \"alice@example.com\", \"phone_number\": \"555-1234\"}","output_data_sample":"{\"firstName\": \"Alice\", \"lastName\": \"Smith\", \"emailAddress\": \"alice@example.com\", \"phoneNumber\": \"555-1234\"}","transformation_instruction":"Convert all keys in a flat JSON object from snake_case to camelCase."} {"id":"cmsrbolnn003ge0p2al45pm6c","kind":"contributor_item","title":"Submission 45PM6C","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n flat = [item for sublist in data for item in sublist]\n return json.dumps(flat)","input_data_sample":"[[1, 2, 3], [4, 5], [6, 7, 8, 9]]","output_data_sample":"[1, 2, 3, 4, 5, 6, 7, 8, 9]","transformation_instruction":"Flatten a JSON array of arrays into a single JSON array containing all elements in order."} {"id":"cmsrbolnn003ke0p25wwfnul9","kind":"contributor_item","title":"Submission WFNUL9","provisional":false,"output_code":"import json\n\ndef transform(text):\n nums = json.loads(text)\n n = len(nums)\n total = sum(nums)\n s = sorted(nums)\n mid = n // 2\n median = s[mid] if n % 2 == 1 else (s[mid - 1] + s[mid]) / 2\n return json.dumps({\"count\": n, \"sum\": total, \"mean\": round(total / n, 2), \"min\": s[0], \"max\": s[-1], \"median\": median})","input_data_sample":"[4, 8, 15, 16, 23, 42]","output_data_sample":"{\"count\": 6, \"sum\": 108, \"mean\": 18.0, \"min\": 4, \"max\": 42, \"median\": 15.5}","transformation_instruction":"Compute descriptive statistics (count, sum, mean, min, max, median) for a JSON array of numbers and return them as a JSON object."} {"id":"cmsrbolnn003ne0p2a9nwbpz2","kind":"contributor_item","title":"Submission NWBPZ2","provisional":false,"output_code":"import json, csv, io\n\ndef transform(text):\n data = json.loads(text)\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow(['name', 'salary', 'bonus', 'total'])\n for row in data:\n bonus = round(row['salary'] * row['bonus_pct'])\n total = row['salary'] + bonus\n writer.writerow([row['name'], row['salary'], bonus, total])\n return out.getvalue().strip()","input_data_sample":"[{\"name\": \"Alice\", \"salary\": 75000, \"bonus_pct\": 0.1}, {\"name\": \"Bob\", \"salary\": 90000, \"bonus_pct\": 0.15}, {\"name\": \"Carol\", \"salary\": 60000, \"bonus_pct\": 0.08}]","output_data_sample":"name,salary,bonus,total\r\nAlice,75000,7500,82500\r\nBob,90000,13500,103500\r\nCarol,60000,4800,64800","transformation_instruction":"Read a JSON array of employee records and output a CSV with headers name, salary, bonus, total. Bonus is salary * bonus_pct (rounded to integer). Total is salary + bonus."} {"id":"cmsrbolnn003qe0p2xjgrak2q","kind":"contributor_item","title":"Submission GRAK2Q","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n seen = set()\n result = []\n for item in data:\n if item not in seen:\n seen.add(item)\n result.append(item)\n return json.dumps(result)","input_data_sample":"[3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]","output_data_sample":"[3, 1, 4, 5, 9, 2, 6]","transformation_instruction":"Deduplicate a JSON array of integers, preserving the first occurrence of each value, and return the result as a JSON array."} {"id":"cmsrbolnn003ce0p2eou0bfqb","kind":"contributor_item","title":"Submission U0BFQB","provisional":false,"output_code":"import re\n\ndef transform(text):\n results = []\n for line in text.strip().split('\\n'):\n digits = re.sub(r'\\D', '', line)\n if len(digits) == 11 and digits.startswith('1'):\n results.append(f'+{digits}')\n elif len(digits) == 10:\n results.append(f'+1{digits}')\n return '\\n'.join(results)","input_data_sample":"+1 (555) 123-4567\n555.987.6543\n(800) 555-0100\n5550001234","output_data_sample":"+15551234567\n+15559876543\n+18005550100\n+15550001234","transformation_instruction":"Normalize US phone numbers to E.164 format (+1XXXXXXXXXX), stripping all non-digit characters and prepending +1 for 10-digit numbers."} {"id":"cmsrbolnn003le0p2p0tsknz7","kind":"contributor_item","title":"Submission TSKNZ7","provisional":false,"output_code":"import json\n\ndef transform(text):\n tasks = []\n for line in text.strip().split('\\n'):\n line = line.strip()\n if line.startswith('- ['):\n done = line[3] == 'x'\n title = line[6:].strip()\n tasks.append({\"title\": title, \"done\": done})\n return json.dumps(tasks)","input_data_sample":"- [x] Buy groceries\n- [ ] Write documentation\n- [x] Fix bug #123\n- [ ] Deploy to production","output_data_sample":"[{\"title\": \"Buy groceries\", \"done\": true}, {\"title\": \"Write documentation\", \"done\": false}, {\"title\": \"Fix bug #123\", \"done\": true}, {\"title\": \"Deploy to production\", \"done\": false}]","transformation_instruction":"Parse a Markdown-style task list and return a JSON array of objects with 'title' (string) and 'done' (boolean) fields."} {"id":"cmsrbolnn003ee0p2tvu538ul","kind":"contributor_item","title":"Submission U538UL","provisional":false,"output_code":"def transform(text):\n domains = sorted(set(\n line.strip().split('@')[1]\n for line in text.strip().split('\\n')\n if '@' in line.strip()\n ))\n return '\\n'.join(domains)","input_data_sample":"alice@example.com\nbob@company.org\ncarol@example.com\ndave@university.edu\neve@company.org","output_data_sample":"company.org\nexample.com\nuniversity.edu","transformation_instruction":"Extract unique domain names from a list of email addresses and return them sorted alphabetically, one per line."} {"id":"cmsrbolnn003de0p292m4h2e7","kind":"contributor_item","title":"Submission M4H2E7","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n section = None\n for line in text.strip().split('\\n'):\n line = line.strip()\n if not line or line.startswith(';'):\n continue\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1]\n result[section] = {}\n elif '=' in line and section:\n k, _, v = line.partition('=')\n result[section][k.strip()] = v.strip()\n return json.dumps(result)","input_data_sample":"[database]\nhost=localhost\nport=5432\nname=mydb\n\n[cache]\nhost=redis\nport=6379\nttl=3600","output_data_sample":"{\"database\": {\"host\": \"localhost\", \"port\": \"5432\", \"name\": \"mydb\"}, \"cache\": {\"host\": \"redis\", \"port\": \"6379\", \"ttl\": \"3600\"}}","transformation_instruction":"Parse an INI-style configuration file into a nested JSON object where each section becomes a key and its entries become key-value pairs."} {"id":"cmsrbolnn003fe0p2a0uj4yf4","kind":"contributor_item","title":"Submission UJ4YF4","provisional":false,"output_code":"import json, re\nfrom collections import Counter\n\ndef transform(text):\n methods = Counter(\n re.search(r'\"(\\w+) ', line).group(1)\n for line in text.strip().split('\\n')\n if line.strip()\n )\n return json.dumps(dict(sorted(methods.items())))","input_data_sample":"192.168.1.1 - - [01/Aug/2026:10:00:01 +0000] \"GET /api/users HTTP/1.1\" 200 1234\n192.168.1.2 - - [01/Aug/2026:10:00:02 +0000] \"POST /api/users HTTP/1.1\" 201 567\n192.168.1.1 - - [01/Aug/2026:10:00:03 +0000] \"GET /api/items HTTP/1.1\" 200 890\n192.168.1.3 - - [01/Aug/2026:10:00:04 +0000] \"DELETE /api/users/5 HTTP/1.1\" 204 0\n192.168.1.2 - - [01/Aug/2026:10:00:05 +0000] \"GET /api/users HTTP/1.1\" 200 1234","output_data_sample":"{\"DELETE\": 1, \"GET\": 3, \"POST\": 1}","transformation_instruction":"Parse Apache-style access log lines and return a JSON object counting requests by HTTP method, sorted alphabetically by method name."} {"id":"cmsrbolnn003he0p2stll75ms","kind":"contributor_item","title":"Submission LL75MS","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n words = text.strip().lower().split()\n top3 = dict(Counter(words).most_common(3))\n return json.dumps(top3)","input_data_sample":"apple banana apple cherry banana apple cherry cherry cherry banana","output_data_sample":"{\"cherry\": 4, \"apple\": 3, \"banana\": 3}","transformation_instruction":"Count word frequency in the input text and return a JSON object with the top 3 most frequent words mapped to their counts."} {"id":"cmsrbolnn003je0p26doib6mg","kind":"contributor_item","title":"Submission OIB6MG","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for line in text.strip().split('\\n'):\n if '=' in line:\n k, _, v = line.partition('=')\n k = k.strip()\n if k.startswith('app_'):\n result[k[4:]] = v.strip()\n return json.dumps(result)","input_data_sample":"app_name=MyApp\napp_version=1.2.3\ndb_host=localhost\ndb_port=5432\napp_debug=true","output_data_sample":"{\"name\": \"MyApp\", \"version\": \"1.2.3\", \"debug\": \"true\"}","transformation_instruction":"Extract only the key=value pairs whose keys start with 'app_', strip the prefix, and return the remaining pairs as a JSON object."} {"id":"cmsrbolnn003ie0p2iu25l5e8","kind":"contributor_item","title":"Submission 25L5E8","provisional":false,"output_code":"def transform(text):\n return '\\n'.join(\n '|'.join(line.split('\\t'))\n for line in text.strip().split('\\n')\n )","input_data_sample":"Name\tAge\tCity\nAlice\t30\tNew York\nBob\t25\tSan Francisco","output_data_sample":"Name|Age|City\nAlice|30|New York\nBob|25|San Francisco","transformation_instruction":"Convert a tab-delimited string to a pipe-delimited string, preserving all rows and columns."} {"id":"cmsrbolnn003se0p2w6swflp8","kind":"contributor_item","title":"Submission SWFLP8","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n lines = []\n for k, v in data.items():\n if isinstance(v, bool):\n lines.append(f\"{k}: {'true' if v else 'false'}\")\n else:\n lines.append(f\"{k}: {v}\")\n return '\\n'.join(lines)","input_data_sample":"{\"host\": \"localhost\", \"port\": 5432, \"database\": \"myapp\", \"ssl\": true}","output_data_sample":"host: localhost\nport: 5432\ndatabase: myapp\nssl: true","transformation_instruction":"Convert a flat JSON object to a YAML-style text representation with one key: value pair per line. Boolean values should appear as 'true' or 'false' (lowercase)."} {"id":"cmsrbolnn003re0p2d6jjtxfy","kind":"contributor_item","title":"Submission JJTXFY","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()), delimiter='\\t')\n totals = defaultdict(int)\n for row in reader:\n totals[row['Region']] += int(row['Sales'])\n return json.dumps(dict(sorted(totals.items())))","input_data_sample":"Region\tProduct\tSales\nNorth\tWidget\t500\nSouth\tGadget\t300\nNorth\tGadget\t700\nSouth\tWidget\t400\nEast\tWidget\t200\nNorth\tWidget\t300","output_data_sample":"{\"East\": 200, \"North\": 1500, \"South\": 700}","transformation_instruction":"Parse a tab-separated sales report and return a JSON object mapping each region to its total sales, sorted alphabetically by region name."} {"id":"cmsrbolnn003pe0p2tvq6z9s9","kind":"contributor_item","title":"Submission Q6Z9S9","provisional":false,"output_code":"import re\n\ndef transform(text):\n def parse_duration(s):\n total = 0\n m = re.search(r'(\\d+)h', s)\n if m: total += int(m.group(1)) * 3600\n m = re.search(r'(\\d+)m', s)\n if m: total += int(m.group(1)) * 60\n m = re.search(r'(\\d+)s', s)\n if m: total += int(m.group(1))\n return total\n return '\\n'.join(str(parse_duration(line)) for line in text.strip().split('\\n'))","input_data_sample":"1h 30m 45s\n2h 15m\n45m 30s\n1h","output_data_sample":"5445\n8100\n2730\n3600","transformation_instruction":"Convert duration strings (e.g. '1h 30m 45s') to total seconds. Each line is one duration; output one integer per line."} {"id":"cmsrcbdop001oq2p2xec70g90","kind":"contributor_item","title":"Submission C70G90","provisional":false,"output_code":"import json\ndef transform(text):\n d=json.loads(text); out={}\n for r in d['transactions']: out[r['account']]=out.get(r['account'],0)+r['amount']\n return json.dumps(dict(sorted(out.items())),separators=(',',':'))\n# scenario 0","input_data_sample":"{\"transactions\":[{\"account\":\"A\",\"amount\":5},{\"account\":\"B\",\"amount\":3},{\"account\":\"A\",\"amount\":-2}],\"batch\":0}","output_data_sample":"{\"A\":3,\"B\":3}","transformation_instruction":"Aggregate JSON transactions by account and return compact sorted JSON balances. Scenario family 1."} {"id":"cmsrcbdop0026q2p20le9l1n5","kind":"contributor_item","title":"Submission E9L1N5","provisional":false,"output_code":"import json\ndef transform(text):\n d={}\n for line in text.strip().splitlines():\n u,r=line.split('|'); d.setdefault(u,set()).add(r)\n return json.dumps({u:sorted(d[u]) for u in sorted(d)},separators=(',',':'))\n# scenario 3","input_data_sample":"alice|admin\nbob|viewer\nalice|editor\nbob|viewer","output_data_sample":"{\"alice\":[\"admin\",\"editor\"],\"bob\":[\"viewer\"]}","transformation_instruction":"Parse pipe-delimited user,role rows, deduplicate roles, and return compact sorted JSON. Scenario family 4."} {"id":"cmsrcbdop001wq2p2cwvto3az","kind":"contributor_item","title":"Submission VTO3AZ","provisional":false,"output_code":"import json\ndef transform(text):\n d={}\n for line in text.strip().splitlines():\n u,r=line.split('|'); d.setdefault(u,set()).add(r)\n return json.dumps({u:sorted(d[u]) for u in sorted(d)},separators=(',',':'))\n# scenario 1","input_data_sample":"alice|admin\nbob|viewer\nalice|editor\nbob|viewer","output_data_sample":"{\"alice\":[\"admin\",\"editor\"],\"bob\":[\"viewer\"]}","transformation_instruction":"Parse pipe-delimited user,role rows, deduplicate roles, and return compact sorted JSON. Scenario family 2."} {"id":"cmsrcbdop001xq2p2kijzijp2","kind":"contributor_item","title":"Submission JZIJP2","provisional":false,"output_code":"import json\ndef transform(text):\n a=json.loads(text)['values']; return json.dumps({'min':min(a),'max':max(a),'sum':sum(a),'mean':round(sum(a)/len(a),2)},separators=(',',':'))\n# scenario 1","input_data_sample":"{\"values\":[4,9,2,5],\"batch\":1}","output_data_sample":"{\"min\":2,\"max\":9,\"sum\":20,\"mean\":5.0}","transformation_instruction":"From JSON integer values, return compact JSON containing min, max, sum, and rounded mean. Scenario family 2."} {"id":"cmsrcbdop0027q2p2ikksv03o","kind":"contributor_item","title":"Submission KSV03O","provisional":false,"output_code":"import json\ndef transform(text):\n a=json.loads(text)['values']; return json.dumps({'min':min(a),'max':max(a),'sum':sum(a),'mean':round(sum(a)/len(a),2)},separators=(',',':'))\n# scenario 3","input_data_sample":"{\"values\":[4,9,2,5],\"batch\":3}","output_data_sample":"{\"min\":2,\"max\":9,\"sum\":20,\"mean\":5.0}","transformation_instruction":"From JSON integer values, return compact JSON containing min, max, sum, and rounded mean. Scenario family 4."} {"id":"cmsrcbdop001qq2p2vdj95w06","kind":"contributor_item","title":"Submission J95W06","provisional":false,"output_code":"import json\ndef transform(text):\n d=json.loads(text); rows=sorted((r for r in d['records'] if r['score']>=d['threshold']),key=lambda r:r['id'])\n return json.dumps([{'id':r['id'],'name':r['name']} for r in rows],separators=(',',':'))\n# scenario 0","input_data_sample":"{\"threshold\":7,\"records\":[{\"id\":3,\"name\":\"C\",\"score\":8},{\"id\":1,\"name\":\"A\",\"score\":6},{\"id\":2,\"name\":\"B\",\"score\":9}],\"batch\":0}","output_data_sample":"[{\"id\":2,\"name\":\"B\"},{\"id\":3,\"name\":\"C\"}]","transformation_instruction":"Filter JSON records whose score meets threshold, sort by id, and return id/name pairs as compact JSON. Scenario family 1."} {"id":"cmsrcbdop001pq2p2f759yejl","kind":"contributor_item","title":"Submission 59YEJL","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n out={}\n for r in csv.DictReader(io.StringIO(text)): out[r['category']]=out.get(r['category'],0)+int(r['value'])\n return json.dumps(dict(sorted(out.items())),separators=(',',':'))\n# scenario 0","input_data_sample":"category,value\nx,5\ny,2\nx,4\nz,1","output_data_sample":"{\"x\":9,\"y\":2,\"z\":1}","transformation_instruction":"Parse CSV category,value rows and return compact JSON totals sorted by category. Scenario family 1."} {"id":"cmsrcbdop001rq2p2ncqk7xm7","kind":"contributor_item","title":"Submission QK7XM7","provisional":false,"output_code":"import json\ndef transform(text):\n d={}\n for line in text.strip().splitlines():\n u,r=line.split('|'); d.setdefault(u,set()).add(r)\n return json.dumps({u:sorted(d[u]) for u in sorted(d)},separators=(',',':'))\n# scenario 0","input_data_sample":"alice|admin\nbob|viewer\nalice|editor\nbob|viewer","output_data_sample":"{\"alice\":[\"admin\",\"editor\"],\"bob\":[\"viewer\"]}","transformation_instruction":"Parse pipe-delimited user,role rows, deduplicate roles, and return compact sorted JSON. Scenario family 1."} {"id":"cmsrcbdop001uq2p2rwwzsvcc","kind":"contributor_item","title":"Submission WZSVCC","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n out={}\n for r in csv.DictReader(io.StringIO(text)): out[r['category']]=out.get(r['category'],0)+int(r['value'])\n return json.dumps(dict(sorted(out.items())),separators=(',',':'))\n# scenario 1","input_data_sample":"category,value\nx,5\ny,2\nx,4\nz,1\n","output_data_sample":"{\"x\":9,\"y\":2,\"z\":1}","transformation_instruction":"Parse CSV category,value rows and return compact JSON totals sorted by category. Scenario family 2."} {"id":"cmsrcbdop001sq2p244kta64f","kind":"contributor_item","title":"Submission KTA64F","provisional":false,"output_code":"import json\ndef transform(text):\n a=json.loads(text)['values']; return json.dumps({'min':min(a),'max':max(a),'sum':sum(a),'mean':round(sum(a)/len(a),2)},separators=(',',':'))\n# scenario 0","input_data_sample":"{\"values\":[4,9,2,5],\"batch\":0}","output_data_sample":"{\"min\":2,\"max\":9,\"sum\":20,\"mean\":5.0}","transformation_instruction":"From JSON integer values, return compact JSON containing min, max, sum, and rounded mean. Scenario family 1."} {"id":"cmsrcbdop001vq2p2bn1yrznr","kind":"contributor_item","title":"Submission 1YRZNR","provisional":false,"output_code":"import json\ndef transform(text):\n d=json.loads(text); rows=sorted((r for r in d['records'] if r['score']>=d['threshold']),key=lambda r:r['id'])\n return json.dumps([{'id':r['id'],'name':r['name']} for r in rows],separators=(',',':'))\n# scenario 1","input_data_sample":"{\"threshold\":7,\"records\":[{\"id\":3,\"name\":\"C\",\"score\":8},{\"id\":1,\"name\":\"A\",\"score\":6},{\"id\":2,\"name\":\"B\",\"score\":9}],\"batch\":1}","output_data_sample":"[{\"id\":2,\"name\":\"B\"},{\"id\":3,\"name\":\"C\"}]","transformation_instruction":"Filter JSON records whose score meets threshold, sort by id, and return id/name pairs as compact JSON. Scenario family 2."} {"id":"cmsrcbdop001tq2p2gnxamvf1","kind":"contributor_item","title":"Submission XAMVF1","provisional":false,"output_code":"import json\ndef transform(text):\n d=json.loads(text); out={}\n for r in d['transactions']: out[r['account']]=out.get(r['account'],0)+r['amount']\n return json.dumps(dict(sorted(out.items())),separators=(',',':'))\n# scenario 1","input_data_sample":"{\"transactions\":[{\"account\":\"A\",\"amount\":5},{\"account\":\"B\",\"amount\":3},{\"account\":\"A\",\"amount\":-2}],\"batch\":1}","output_data_sample":"{\"A\":3,\"B\":3}","transformation_instruction":"Aggregate JSON transactions by account and return compact sorted JSON balances. Scenario family 2."} {"id":"cmsrcbdop001yq2p2h35x64eo","kind":"contributor_item","title":"Submission 5X64EO","provisional":false,"output_code":"import json\ndef transform(text):\n d=json.loads(text); out={}\n for r in d['transactions']: out[r['account']]=out.get(r['account'],0)+r['amount']\n return json.dumps(dict(sorted(out.items())),separators=(',',':'))\n# scenario 2","input_data_sample":"{\"transactions\":[{\"account\":\"A\",\"amount\":5},{\"account\":\"B\",\"amount\":3},{\"account\":\"A\",\"amount\":-2}],\"batch\":2}","output_data_sample":"{\"A\":3,\"B\":3}","transformation_instruction":"Aggregate JSON transactions by account and return compact sorted JSON balances. Scenario family 3."} {"id":"cmsrcbdop001zq2p2ndj1hup0","kind":"contributor_item","title":"Submission J1HUP0","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n out={}\n for r in csv.DictReader(io.StringIO(text)): out[r['category']]=out.get(r['category'],0)+int(r['value'])\n return json.dumps(dict(sorted(out.items())),separators=(',',':'))\n# scenario 2","input_data_sample":"category,value\nx,5\ny,2\nx,4\nz,1","output_data_sample":"{\"x\":9,\"y\":2,\"z\":1}","transformation_instruction":"Parse CSV category,value rows and return compact JSON totals sorted by category. Scenario family 3."} {"id":"cmsrcbdop0022q2p2x6oxcbn0","kind":"contributor_item","title":"Submission OXCBN0","provisional":false,"output_code":"import json\ndef transform(text):\n a=json.loads(text)['values']; return json.dumps({'min':min(a),'max':max(a),'sum':sum(a),'mean':round(sum(a)/len(a),2)},separators=(',',':'))\n# scenario 2","input_data_sample":"{\"values\":[4,9,2,5],\"batch\":2}","output_data_sample":"{\"min\":2,\"max\":9,\"sum\":20,\"mean\":5.0}","transformation_instruction":"From JSON integer values, return compact JSON containing min, max, sum, and rounded mean. Scenario family 3."} {"id":"cmsrcbdop0023q2p2s43im90q","kind":"contributor_item","title":"Submission 3IM90Q","provisional":false,"output_code":"import json\ndef transform(text):\n d=json.loads(text); out={}\n for r in d['transactions']: out[r['account']]=out.get(r['account'],0)+r['amount']\n return json.dumps(dict(sorted(out.items())),separators=(',',':'))\n# scenario 3","input_data_sample":"{\"transactions\":[{\"account\":\"A\",\"amount\":5},{\"account\":\"B\",\"amount\":3},{\"account\":\"A\",\"amount\":-2}],\"batch\":3}","output_data_sample":"{\"A\":3,\"B\":3}","transformation_instruction":"Aggregate JSON transactions by account and return compact sorted JSON balances. Scenario family 4."} {"id":"cmsrcbdop0020q2p21ornbw3p","kind":"contributor_item","title":"Submission RNBW3P","provisional":false,"output_code":"import json\ndef transform(text):\n d=json.loads(text); rows=sorted((r for r in d['records'] if r['score']>=d['threshold']),key=lambda r:r['id'])\n return json.dumps([{'id':r['id'],'name':r['name']} for r in rows],separators=(',',':'))\n# scenario 2","input_data_sample":"{\"threshold\":7,\"records\":[{\"id\":3,\"name\":\"C\",\"score\":8},{\"id\":1,\"name\":\"A\",\"score\":6},{\"id\":2,\"name\":\"B\",\"score\":9}],\"batch\":2}","output_data_sample":"[{\"id\":2,\"name\":\"B\"},{\"id\":3,\"name\":\"C\"}]","transformation_instruction":"Filter JSON records whose score meets threshold, sort by id, and return id/name pairs as compact JSON. Scenario family 3."} {"id":"cmsrcbdop0021q2p2tcrlc9kx","kind":"contributor_item","title":"Submission RLC9KX","provisional":false,"output_code":"import json\ndef transform(text):\n d={}\n for line in text.strip().splitlines():\n u,r=line.split('|'); d.setdefault(u,set()).add(r)\n return json.dumps({u:sorted(d[u]) for u in sorted(d)},separators=(',',':'))\n# scenario 2","input_data_sample":"alice|admin\nbob|viewer\nalice|editor\nbob|viewer","output_data_sample":"{\"alice\":[\"admin\",\"editor\"],\"bob\":[\"viewer\"]}","transformation_instruction":"Parse pipe-delimited user,role rows, deduplicate roles, and return compact sorted JSON. Scenario family 3."} {"id":"cmsrcbdop0025q2p25exc66kk","kind":"contributor_item","title":"Submission XC66KK","provisional":false,"output_code":"import json\ndef transform(text):\n d=json.loads(text); rows=sorted((r for r in d['records'] if r['score']>=d['threshold']),key=lambda r:r['id'])\n return json.dumps([{'id':r['id'],'name':r['name']} for r in rows],separators=(',',':'))\n# scenario 3","input_data_sample":"{\"threshold\":7,\"records\":[{\"id\":3,\"name\":\"C\",\"score\":8},{\"id\":1,\"name\":\"A\",\"score\":6},{\"id\":2,\"name\":\"B\",\"score\":9}],\"batch\":3}","output_data_sample":"[{\"id\":2,\"name\":\"B\"},{\"id\":3,\"name\":\"C\"}]","transformation_instruction":"Filter JSON records whose score meets threshold, sort by id, and return id/name pairs as compact JSON. Scenario family 4."} {"id":"cmsrcbdop0024q2p2okbjg5ao","kind":"contributor_item","title":"Submission BJG5AO","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n out={}\n for r in csv.DictReader(io.StringIO(text)): out[r['category']]=out.get(r['category'],0)+int(r['value'])\n return json.dumps(dict(sorted(out.items())),separators=(',',':'))\n# scenario 3","input_data_sample":"category,value\nx,5\ny,2\nx,4\nz,1\n","output_data_sample":"{\"x\":9,\"y\":2,\"z\":1}","transformation_instruction":"Parse CSV category,value rows and return compact JSON totals sorted by category. Scenario family 4."} {"id":"cmsrfjxi00028y8p25oonp7tg","kind":"contributor_item","title":"Submission ONP7TG","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict\n\ndef transform(text):\n agg=defaultdict(lambda:{'count':0,'total':0})\n for r in csv.DictReader(io.StringIO(text)):\n d=agg[r['dept']]; d['count']+=1; d['total']+=int(r['amount'])\n return json.dumps(dict(sorted(agg.items())), sort_keys=True)","input_data_sample":"dept,amount\neng,120\nsales,80\neng,30\nsales,20\nops,50","output_data_sample":"{\"eng\": {\"count\": 2, \"total\": 150}, \"ops\": {\"count\": 1, \"total\": 50}, \"sales\": {\"count\": 2, \"total\": 100}}","transformation_instruction":"Parse the CSV and return a JSON object keyed by department with row count and total amount; keys must be sorted alphabetically."} {"id":"cmsrfjxi00029y8p2g5gpej2b","kind":"contributor_item","title":"Submission GPEJ2B","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows=json.loads(text)\n rows=[{'id':r['id'],'score':r['score']} for r in rows if r.get('active') and r['score']>=10]\n rows.sort(key=lambda r:(-r['score'],r['id']))\n return json.dumps(rows)","input_data_sample":"[{\"id\":\"a\",\"score\":7,\"active\":true},{\"id\":\"b\",\"score\":12,\"active\":false},{\"id\":\"c\",\"score\":10,\"active\":true},{\"id\":\"d\",\"score\":12,\"active\":true}]","output_data_sample":"[{\"id\": \"d\", \"score\": 12}, {\"id\": \"c\", \"score\": 10}]","transformation_instruction":"From the JSON array, keep active records with score at least 10, sort by descending score then id, and return only id and score as JSON."} {"id":"cmsrfjxi0002ay8p21dhdbfy7","kind":"contributor_item","title":"Submission HDBFY7","provisional":false,"output_code":"import urllib.parse, json\n\ndef transform(text):\n pairs=urllib.parse.parse_qsl(text, keep_blank_values=True)\n out={}\n for k,v in pairs:\n out.setdefault(k,[])\n if v not in out[k]: out[k].append(v)\n return json.dumps({k:out[k] for k in sorted(out)})","input_data_sample":"tag=red&tag=blue&owner=ada&tag=red&priority=high","output_data_sample":"{\"owner\": [\"ada\"], \"priority\": [\"high\"], \"tag\": [\"red\", \"blue\"]}","transformation_instruction":"Parse the query string, preserve repeated values, deduplicate each key's values in first-seen order, and return a JSON object with alphabetically sorted keys."} {"id":"cmsrfjxi0002by8p2musib9ww","kind":"contributor_item","title":"Submission SIB9WW","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for line in text.strip().splitlines():\n k,v=line.split('|'); v=int(v)\n out[k]=max(out.get(k,v),v)\n return json.dumps(dict(sorted(out.items())))","input_data_sample":"alpha|7\nbeta|3\nalpha|11\nbeta|9\ngamma|4","output_data_sample":"{\"alpha\": 11, \"beta\": 9, \"gamma\": 4}","transformation_instruction":"Parse pipe-delimited name/value rows and return a JSON object containing the maximum value observed for each name, sorted by name."} {"id":"cmsrfjxi0002cy8p2aemunyr2","kind":"contributor_item","title":"Submission MUNYR2","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n agg=defaultdict(lambda:defaultdict(int))\n for line in text.strip().splitlines():\n day,svc,count=line.split(','); agg[day][svc]+=int(count)\n out={d:{s:agg[d][s] for s in sorted(agg[d])} for d in sorted(agg)}\n return json.dumps(out)","input_data_sample":"2026-08-13,api,4\n2026-08-13,worker,2\n2026-08-14,api,3\n2026-08-14,worker,5\n2026-08-14,api,1","output_data_sample":"{\"2026-08-13\": {\"api\": 4, \"worker\": 2}, \"2026-08-14\": {\"api\": 4, \"worker\": 5}}","transformation_instruction":"Parse date,service,count rows and return JSON totals per date, with nested service totals and dates/services sorted lexicographically."} {"id":"cmsrh2ffl008uy8p2o8shm13n","kind":"contributor_item","title":"Submission SHM13N","provisional":false,"output_code":"import json\n# scenario_19\ndef transform(text):\n n=[int(x) for x in text.split(\",\")];k=2\n return json.dumps([sum(n[i:i+k]) for i in range(len(n)-k+1)],separators=(\",\",\":\"))","input_data_sample":"4,6,4,6,9","output_data_sample":"[10,10,10,15]","transformation_instruction":"Parse CSV integers and compute width-2 consecutive sums (scenario_19)."} {"id":"cmsrh2ffl008ey8p2bgf659cy","kind":"contributor_item","title":"Submission F659CY","provisional":false,"output_code":"import json\n# scenario_3\ndef transform(text):\n rows=json.loads(text)\n return json.dumps([{\"id\":r[\"id\"],\"score\":r[\"score\"]} for r in rows if r[\"active\"] and r[\"score\"]>=30],separators=(\",\",\":\"))","input_data_sample":"[{\"id\":\"a2\",\"score\":26,\"active\":true},{\"id\":\"b2\",\"score\":37,\"active\":true},{\"id\":\"c2\",\"score\":35,\"active\":true}]","output_data_sample":"[{\"id\":\"b2\",\"score\":37},{\"id\":\"c2\",\"score\":35}]","transformation_instruction":"Filter active JSON rows at score >= 30, project id and score, preserve order (scenario_3)."} {"id":"cmsrh2ffl008jy8p2nwilxu1i","kind":"contributor_item","title":"Submission ILXU1I","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_8\ndef transform(text):\n t=defaultdict(int)\n for r in json.loads(text): t[r[\"region\"]]+=r[\"units\"]*r[\"price\"]\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"[{\"region\":\"east\",\"units\":5,\"price\":10},{\"region\":\"other\",\"units\":2,\"price\":9},{\"region\":\"east\",\"units\":1,\"price\":14}]","output_data_sample":"{\"east\":64,\"other\":18}","transformation_instruction":"Aggregate sales by region as units*price and key-sort compact JSON (scenario_8)."} {"id":"cmsrh2ffl008xy8p21w9jsv9z","kind":"contributor_item","title":"Submission 9JSV9Z","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_22\ndef transform(text):\n t=defaultdict(int)\n for l in text.splitlines():\n k,x=l.split(\"|\",1);t[k]+=int(x)\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"alpha|3\nbeta|4\nalpha|3","output_data_sample":"{\"alpha\":6,\"beta\":4}","transformation_instruction":"Parse key|integer lines, sum repeated keys, sort keys (scenario_22)."} {"id":"cmsrh2ffm009ky8p27fs1w23e","kind":"contributor_item","title":"Submission S1W23E","provisional":false,"output_code":"import json\n# scenario_45\ndef transform(text):\n d=json.loads(text);k=\"zone\"\n return json.dumps([{\"id\":u[\"id\"],k:u[\"profile\"][k]} for u in d[\"users\"]],separators=(\",\",\":\"))","input_data_sample":"{\"users\":[{\"id\":1,\"profile\":{\"zone\":\"v4a\",\"extra\":9}},{\"id\":2,\"profile\":{\"zone\":\"v4b\",\"extra\":8}}]}","output_data_sample":"[{\"id\":1,\"zone\":\"v4a\"},{\"id\":2,\"zone\":\"v4b\"}]","transformation_instruction":"Extract id and nested profile.zone from users (scenario_45)."} {"id":"cmsrh2ffl0093y8p2oygpdrwx","kind":"contributor_item","title":"Submission GPDRWX","provisional":false,"output_code":"# scenario_28\ndef transform(text):\n seen=set();out=[]\n for w in text.splitlines():\n k=w.casefold()\n if k not in seen: seen.add(k);out.append(w)\n return \"\\n\".join(out)","input_data_sample":"Alpha2\nBETA\nalpha2\nGamma\nbeta\nGAMMA\nDelta2","output_data_sample":"Alpha2\nBETA\nGamma\nDelta2","transformation_instruction":"Deduplicate tokens case-insensitively, retaining first spelling/order (scenario_28)."} {"id":"cmsrh2ffl008zy8p2o881hrod","kind":"contributor_item","title":"Submission 81HROD","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_24\ndef transform(text):\n t=defaultdict(int)\n for l in text.splitlines():\n k,x=l.split(\"~\",1);t[k]+=int(x)\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"alpha~5\nbeta~2\nalpha~3","output_data_sample":"{\"alpha\":8,\"beta\":2}","transformation_instruction":"Parse key~integer lines, sum repeated keys, sort keys (scenario_24)."} {"id":"cmsrh2ffl0098y8p22ggli1aq","kind":"contributor_item","title":"Submission GLI1AQ","provisional":false,"output_code":"import json,re\n# scenario_33\ndef transform(text):\n out=[]\n for l in text.splitlines():\n h,m,s=map(int,re.fullmatch(r\"(\\d+)h (\\d+)m (\\d+)s\",l).groups());out.append(h*3600+m*60+s)\n return json.dumps(out,separators=(\",\",\":\"))","input_data_sample":"3h 22m 30s\n0h 7m 45s\n2h 0m 12s","output_data_sample":"[12150,465,7212]","transformation_instruction":"Convert required h/m/s duration lines to JSON seconds (scenario_33)."} {"id":"cmsrh2ffm009my8p25qbhf33n","kind":"contributor_item","title":"Submission BHF33N","provisional":false,"output_code":"import json\n# scenario_47\ndef transform(text):\n r=json.loads(text);r.sort(key=lambda x:(-x[\"priority\"],x[\"age\"],x[\"name\"]))\n return json.dumps([{\"name\":x[\"name\"],\"priority\":x[\"priority\"]} for x in r[:3]],separators=(\",\",\":\"))","input_data_sample":"[{\"name\":\"x1\",\"priority\":2,\"age\":5},{\"name\":\"a1\",\"priority\":3,\"age\":2},{\"name\":\"m1\",\"priority\":3,\"age\":7},{\"name\":\"z1\",\"priority\":1,\"age\":1}]","output_data_sample":"[{\"name\":\"a1\",\"priority\":3},{\"name\":\"m1\",\"priority\":3},{\"name\":\"x1\",\"priority\":2}]","transformation_instruction":"Select top 3 jobs by priority desc, age/name asc (scenario_47)."} {"id":"cmsrh2ffl008fy8p2y2vk65bc","kind":"contributor_item","title":"Submission VK65BC","provisional":false,"output_code":"import json\n# scenario_4\ndef transform(text):\n rows=json.loads(text)\n return json.dumps([{\"id\":r[\"id\"],\"score\":r[\"score\"]} for r in rows if r[\"active\"] and r[\"score\"]>=35],separators=(\",\",\":\"))","input_data_sample":"[{\"id\":\"a3\",\"score\":30,\"active\":true},{\"id\":\"b3\",\"score\":40,\"active\":false},{\"id\":\"c3\",\"score\":40,\"active\":true}]","output_data_sample":"[{\"id\":\"c3\",\"score\":40}]","transformation_instruction":"Filter active JSON rows at score >= 35, project id and score, preserve order (scenario_4)."} {"id":"cmsrh2ffl008cy8p2n47bomal","kind":"contributor_item","title":"Submission 7BOMAL","provisional":false,"output_code":"import json\n# scenario_1\ndef transform(text):\n rows=json.loads(text)\n return json.dumps([{\"id\":r[\"id\"],\"score\":r[\"score\"]} for r in rows if r[\"active\"] and r[\"score\"]>=20],separators=(\",\",\":\"))","input_data_sample":"[{\"id\":\"a0\",\"score\":18,\"active\":true},{\"id\":\"b0\",\"score\":31,\"active\":true},{\"id\":\"c0\",\"score\":25,\"active\":true}]","output_data_sample":"[{\"id\":\"b0\",\"score\":31},{\"id\":\"c0\",\"score\":25}]","transformation_instruction":"Filter active JSON rows at score >= 20, project id and score, preserve order (scenario_1)."} {"id":"cmsrh2ffl008dy8p2qbtwkq6a","kind":"contributor_item","title":"Submission TWKQ6A","provisional":false,"output_code":"import json\n# scenario_2\ndef transform(text):\n rows=json.loads(text)\n return json.dumps([{\"id\":r[\"id\"],\"score\":r[\"score\"]} for r in rows if r[\"active\"] and r[\"score\"]>=25],separators=(\",\",\":\"))","input_data_sample":"[{\"id\":\"a1\",\"score\":22,\"active\":true},{\"id\":\"b1\",\"score\":34,\"active\":false},{\"id\":\"c1\",\"score\":30,\"active\":true}]","output_data_sample":"[{\"id\":\"c1\",\"score\":30}]","transformation_instruction":"Filter active JSON rows at score >= 25, project id and score, preserve order (scenario_2)."} {"id":"cmsrh2ffl008gy8p2wdottnh5","kind":"contributor_item","title":"Submission OTTNH5","provisional":false,"output_code":"import json\n# scenario_5\ndef transform(text):\n rows=json.loads(text)\n return json.dumps([{\"id\":r[\"id\"],\"score\":r[\"score\"]} for r in rows if r[\"active\"] and r[\"score\"]>=40],separators=(\",\",\":\"))","input_data_sample":"[{\"id\":\"a4\",\"score\":34,\"active\":true},{\"id\":\"b4\",\"score\":43,\"active\":true},{\"id\":\"c4\",\"score\":45,\"active\":true}]","output_data_sample":"[{\"id\":\"b4\",\"score\":43},{\"id\":\"c4\",\"score\":45}]","transformation_instruction":"Filter active JSON rows at score >= 40, project id and score, preserve order (scenario_5)."} {"id":"cmsrh2ffl008iy8p2g0l2osb9","kind":"contributor_item","title":"Submission L2OSB9","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_7\ndef transform(text):\n t=defaultdict(int)\n for r in json.loads(text): t[r[\"region\"]]+=r[\"units\"]*r[\"price\"]\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"[{\"region\":\"south\",\"units\":4,\"price\":10},{\"region\":\"other\",\"units\":2,\"price\":8},{\"region\":\"south\",\"units\":1,\"price\":13}]","output_data_sample":"{\"other\":16,\"south\":53}","transformation_instruction":"Aggregate sales by region as units*price and key-sort compact JSON (scenario_7)."} {"id":"cmsrh2ffl008hy8p29hhgehlw","kind":"contributor_item","title":"Submission HGEHLW","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_6\ndef transform(text):\n t=defaultdict(int)\n for r in json.loads(text): t[r[\"region\"]]+=r[\"units\"]*r[\"price\"]\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"[{\"region\":\"north\",\"units\":3,\"price\":10},{\"region\":\"other\",\"units\":2,\"price\":7},{\"region\":\"north\",\"units\":1,\"price\":12}]","output_data_sample":"{\"north\":42,\"other\":14}","transformation_instruction":"Aggregate sales by region as units*price and key-sort compact JSON (scenario_6)."} {"id":"cmsrh2ffl008my8p2jja9pq0t","kind":"contributor_item","title":"Submission A9PQ0T","provisional":false,"output_code":"import json\n# scenario_11\ndef transform(text):\n d=json.loads(text);p=\"app_\"\n return json.dumps({k[len(p):]:v for k,v in d.items() if k.startswith(p)},separators=(\",\",\":\"))","input_data_sample":"{\"app_name\":\"n0\",\"app_limit\":10,\"ignore\":0,\"app_enabled\":true}","output_data_sample":"{\"name\":\"n0\",\"limit\":10,\"enabled\":true}","transformation_instruction":"Select 'app_' JSON keys, strip the prefix, preserve values (scenario_11)."} {"id":"cmsrh2ffl008ky8p22q85jzcy","kind":"contributor_item","title":"Submission 85JZCY","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_9\ndef transform(text):\n t=defaultdict(int)\n for r in json.loads(text): t[r[\"region\"]]+=r[\"units\"]*r[\"price\"]\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"[{\"region\":\"west\",\"units\":6,\"price\":10},{\"region\":\"other\",\"units\":2,\"price\":10},{\"region\":\"west\",\"units\":1,\"price\":15}]","output_data_sample":"{\"other\":20,\"west\":75}","transformation_instruction":"Aggregate sales by region as units*price and key-sort compact JSON (scenario_9)."} {"id":"cmsrh2ffl008ny8p20e7dg4u8","kind":"contributor_item","title":"Submission 7DG4U8","provisional":false,"output_code":"import json\n# scenario_12\ndef transform(text):\n d=json.loads(text);p=\"svc_\"\n return json.dumps({k[len(p):]:v for k,v in d.items() if k.startswith(p)},separators=(\",\",\":\"))","input_data_sample":"{\"svc_name\":\"n1\",\"svc_limit\":11,\"ignore\":1,\"svc_enabled\":false}","output_data_sample":"{\"name\":\"n1\",\"limit\":11,\"enabled\":false}","transformation_instruction":"Select 'svc_' JSON keys, strip the prefix, preserve values (scenario_12)."} {"id":"cmsrh2ffl008ly8p2zmgd84m3","kind":"contributor_item","title":"Submission GD84M3","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_10\ndef transform(text):\n t=defaultdict(int)\n for r in json.loads(text): t[r[\"region\"]]+=r[\"units\"]*r[\"price\"]\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"[{\"region\":\"central\",\"units\":7,\"price\":10},{\"region\":\"other\",\"units\":2,\"price\":11},{\"region\":\"central\",\"units\":1,\"price\":16}]","output_data_sample":"{\"central\":86,\"other\":22}","transformation_instruction":"Aggregate sales by region as units*price and key-sort compact JSON (scenario_10)."} {"id":"cmsrh2ffl008ry8p2ewluehve","kind":"contributor_item","title":"Submission LUEHVE","provisional":false,"output_code":"import json\n# scenario_16\ndef transform(text):\n n=[int(x) for x in text.split(\",\")];k=2\n return json.dumps([sum(n[i:i+k]) for i in range(len(n)-k+1)],separators=(\",\",\":\"))","input_data_sample":"1,3,7,0,9","output_data_sample":"[4,10,7,9]","transformation_instruction":"Parse CSV integers and compute width-2 consecutive sums (scenario_16)."} {"id":"cmsrh2ffl008qy8p2n7ns4tq3","kind":"contributor_item","title":"Submission NS4TQ3","provisional":false,"output_code":"import json\n# scenario_15\ndef transform(text):\n d=json.loads(text);p=\"job_\"\n return json.dumps({k[len(p):]:v for k,v in d.items() if k.startswith(p)},separators=(\",\",\":\"))","input_data_sample":"{\"job_name\":\"n4\",\"job_limit\":14,\"ignore\":4,\"job_enabled\":true}","output_data_sample":"{\"name\":\"n4\",\"limit\":14,\"enabled\":true}","transformation_instruction":"Select 'job_' JSON keys, strip the prefix, preserve values (scenario_15)."} {"id":"cmsrh2ffl008py8p2vjpwsk7w","kind":"contributor_item","title":"Submission PWSK7W","provisional":false,"output_code":"import json\n# scenario_14\ndef transform(text):\n d=json.loads(text);p=\"ui_\"\n return json.dumps({k[len(p):]:v for k,v in d.items() if k.startswith(p)},separators=(\",\",\":\"))","input_data_sample":"{\"ui_name\":\"n3\",\"ui_limit\":13,\"ignore\":3,\"ui_enabled\":false}","output_data_sample":"{\"name\":\"n3\",\"limit\":13,\"enabled\":false}","transformation_instruction":"Select 'ui_' JSON keys, strip the prefix, preserve values (scenario_14)."} {"id":"cmsrh2ffl008oy8p2h0c2r1sl","kind":"contributor_item","title":"Submission C2R1SL","provisional":false,"output_code":"import json\n# scenario_13\ndef transform(text):\n d=json.loads(text);p=\"db_\"\n return json.dumps({k[len(p):]:v for k,v in d.items() if k.startswith(p)},separators=(\",\",\":\"))","input_data_sample":"{\"db_name\":\"n2\",\"db_limit\":12,\"ignore\":2,\"db_enabled\":true}","output_data_sample":"{\"name\":\"n2\",\"limit\":12,\"enabled\":true}","transformation_instruction":"Select 'db_' JSON keys, strip the prefix, preserve values (scenario_13)."} {"id":"cmsrh2ffl008sy8p2ury1v34n","kind":"contributor_item","title":"Submission Y1V34N","provisional":false,"output_code":"import json\n# scenario_17\ndef transform(text):\n n=[int(x) for x in text.split(\",\")];k=3\n return json.dumps([sum(n[i:i+k]) for i in range(len(n)-k+1)],separators=(\",\",\":\"))","input_data_sample":"2,4,6,2,9","output_data_sample":"[12,12,17]","transformation_instruction":"Parse CSV integers and compute width-3 consecutive sums (scenario_17)."} {"id":"cmsrh2ffl008ty8p2xar44vu9","kind":"contributor_item","title":"Submission R44VU9","provisional":false,"output_code":"import json\n# scenario_18\ndef transform(text):\n n=[int(x) for x in text.split(\",\")];k=4\n return json.dumps([sum(n[i:i+k]) for i in range(len(n)-k+1)],separators=(\",\",\":\"))","input_data_sample":"3,5,5,4,9","output_data_sample":"[17,23]","transformation_instruction":"Parse CSV integers and compute width-4 consecutive sums (scenario_18)."} {"id":"cmsrh2ffl008vy8p2iylq1vuo","kind":"contributor_item","title":"Submission LQ1VUO","provisional":false,"output_code":"import json\n# scenario_20\ndef transform(text):\n n=[int(x) for x in text.split(\",\")];k=3\n return json.dumps([sum(n[i:i+k]) for i in range(len(n)-k+1)],separators=(\",\",\":\"))","input_data_sample":"5,7,3,8,9","output_data_sample":"[15,18,20]","transformation_instruction":"Parse CSV integers and compute width-3 consecutive sums (scenario_20)."} {"id":"cmsrh2ffl008yy8p28i2t95yy","kind":"contributor_item","title":"Submission 2T95YY","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_23\ndef transform(text):\n t=defaultdict(int)\n for l in text.splitlines():\n k,x=l.split(\":\",1);t[k]+=int(x)\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"alpha:4\nbeta:3\nalpha:3","output_data_sample":"{\"alpha\":7,\"beta\":3}","transformation_instruction":"Parse key:integer lines, sum repeated keys, sort keys (scenario_23)."} {"id":"cmsrh2ffl008wy8p2fyr9iyfr","kind":"contributor_item","title":"Submission R9IYFR","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_21\ndef transform(text):\n t=defaultdict(int)\n for l in text.splitlines():\n k,x=l.split(\"=\",1);t[k]+=int(x)\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"alpha=2\nbeta=5\nalpha=3","output_data_sample":"{\"alpha\":5,\"beta\":5}","transformation_instruction":"Parse key=integer lines, sum repeated keys, sort keys (scenario_21)."} {"id":"cmsrh2ffl0091y8p2y3hqiu44","kind":"contributor_item","title":"Submission HQIU44","provisional":false,"output_code":"# scenario_26\ndef transform(text):\n seen=set();out=[]\n for w in text.splitlines():\n k=w.casefold()\n if k not in seen: seen.add(k);out.append(w)\n return \"\\n\".join(out)","input_data_sample":"Alpha0\nBETA\nalpha0\nGamma\nbeta\nGAMMA\nDelta0","output_data_sample":"Alpha0\nBETA\nGamma\nDelta0","transformation_instruction":"Deduplicate tokens case-insensitively, retaining first spelling/order (scenario_26)."} {"id":"cmsrh2ffl0090y8p20z0us7us","kind":"contributor_item","title":"Submission 0US7US","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n# scenario_25\ndef transform(text):\n t=defaultdict(int)\n for l in text.splitlines():\n k,x=l.split(\";\",1);t[k]+=int(x)\n return json.dumps(dict(sorted(t.items())),separators=(\",\",\":\"))","input_data_sample":"alpha;6\nbeta;1\nalpha;3","output_data_sample":"{\"alpha\":9,\"beta\":1}","transformation_instruction":"Parse key;integer lines, sum repeated keys, sort keys (scenario_25)."} {"id":"cmsrh2ffl0092y8p234iw92m4","kind":"contributor_item","title":"Submission IW92M4","provisional":false,"output_code":"# scenario_27\ndef transform(text):\n seen=set();out=[]\n for w in text.splitlines():\n k=w.casefold()\n if k not in seen: seen.add(k);out.append(w)\n return \"\\n\".join(out)","input_data_sample":"Alpha1\nBETA\nalpha1\nGamma\nbeta\nGAMMA\nDelta1","output_data_sample":"Alpha1\nBETA\nGamma\nDelta1","transformation_instruction":"Deduplicate tokens case-insensitively, retaining first spelling/order (scenario_27)."} {"id":"cmsrh2ffl0096y8p20d453gnb","kind":"contributor_item","title":"Submission 453GNB","provisional":false,"output_code":"import json,re\n# scenario_31\ndef transform(text):\n out=[]\n for l in text.splitlines():\n h,m,s=map(int,re.fullmatch(r\"(\\d+)h (\\d+)m (\\d+)s\",l).groups());out.append(h*3600+m*60+s)\n return json.dumps(out,separators=(\",\",\":\"))","input_data_sample":"1h 20m 30s\n0h 5m 45s\n2h 0m 10s","output_data_sample":"[4830,345,7210]","transformation_instruction":"Convert required h/m/s duration lines to JSON seconds (scenario_31)."} {"id":"cmsrh2ffl0097y8p2nnt31vth","kind":"contributor_item","title":"Submission T31VTH","provisional":false,"output_code":"import json,re\n# scenario_32\ndef transform(text):\n out=[]\n for l in text.splitlines():\n h,m,s=map(int,re.fullmatch(r\"(\\d+)h (\\d+)m (\\d+)s\",l).groups());out.append(h*3600+m*60+s)\n return json.dumps(out,separators=(\",\",\":\"))","input_data_sample":"2h 21m 30s\n0h 6m 45s\n2h 0m 11s","output_data_sample":"[8490,405,7211]","transformation_instruction":"Convert required h/m/s duration lines to JSON seconds (scenario_32)."} {"id":"cmsrh2ffl0095y8p2auqwpn9a","kind":"contributor_item","title":"Submission QWPN9A","provisional":false,"output_code":"# scenario_30\ndef transform(text):\n seen=set();out=[]\n for w in text.splitlines():\n k=w.casefold()\n if k not in seen: seen.add(k);out.append(w)\n return \"\\n\".join(out)","input_data_sample":"Alpha4\nBETA\nalpha4\nGamma\nbeta\nGAMMA\nDelta4","output_data_sample":"Alpha4\nBETA\nGamma\nDelta4","transformation_instruction":"Deduplicate tokens case-insensitively, retaining first spelling/order (scenario_30)."} {"id":"cmsrh2ffl0094y8p23vncrtq7","kind":"contributor_item","title":"Submission NCRTQ7","provisional":false,"output_code":"# scenario_29\ndef transform(text):\n seen=set();out=[]\n for w in text.splitlines():\n k=w.casefold()\n if k not in seen: seen.add(k);out.append(w)\n return \"\\n\".join(out)","input_data_sample":"Alpha3\nBETA\nalpha3\nGamma\nbeta\nGAMMA\nDelta3","output_data_sample":"Alpha3\nBETA\nGamma\nDelta3","transformation_instruction":"Deduplicate tokens case-insensitively, retaining first spelling/order (scenario_29)."} {"id":"cmsrh2ffl009by8p2dpqcqv40","kind":"contributor_item","title":"Submission QCQV40","provisional":false,"output_code":"import json\n# scenario_36\ndef transform(text):\n o={\"low\":0,\"mid\":0,\"high\":0}\n for s in json.loads(text): o[\"low\" if s<40 else \"mid\" if s<70 else \"high\"]+=1\n return json.dumps(o,separators=(\",\",\":\"))","input_data_sample":"[22,45,68,75,99]","output_data_sample":"{\"low\":1,\"mid\":2,\"high\":2}","transformation_instruction":"Bucket scores below 40, 40-69, and >=70 (scenario_36)."} {"id":"cmsrh2ffl0099y8p2h6huz69u","kind":"contributor_item","title":"Submission HUZ69U","provisional":false,"output_code":"import json,re\n# scenario_34\ndef transform(text):\n out=[]\n for l in text.splitlines():\n h,m,s=map(int,re.fullmatch(r\"(\\d+)h (\\d+)m (\\d+)s\",l).groups());out.append(h*3600+m*60+s)\n return json.dumps(out,separators=(\",\",\":\"))","input_data_sample":"4h 23m 30s\n0h 8m 45s\n2h 0m 13s","output_data_sample":"[15810,525,7213]","transformation_instruction":"Convert required h/m/s duration lines to JSON seconds (scenario_34)."} {"id":"cmsrh2ffl009ay8p269bhuwxd","kind":"contributor_item","title":"Submission BHUWXD","provisional":false,"output_code":"import json,re\n# scenario_35\ndef transform(text):\n out=[]\n for l in text.splitlines():\n h,m,s=map(int,re.fullmatch(r\"(\\d+)h (\\d+)m (\\d+)s\",l).groups());out.append(h*3600+m*60+s)\n return json.dumps(out,separators=(\",\",\":\"))","input_data_sample":"5h 24m 30s\n0h 9m 45s\n2h 0m 14s","output_data_sample":"[19470,585,7214]","transformation_instruction":"Convert required h/m/s duration lines to JSON seconds (scenario_35)."} {"id":"cmsrh2ffl009cy8p2xdiz7d9a","kind":"contributor_item","title":"Submission IZ7D9A","provisional":false,"output_code":"import json\n# scenario_37\ndef transform(text):\n o={\"low\":0,\"mid\":0,\"high\":0}\n for s in json.loads(text): o[\"low\" if s<41 else \"mid\" if s<71 else \"high\"]+=1\n return json.dumps(o,separators=(\",\",\":\"))","input_data_sample":"[23,46,69,76,99]","output_data_sample":"{\"low\":1,\"mid\":2,\"high\":2}","transformation_instruction":"Bucket scores below 41, 41-70, and >=71 (scenario_37)."} {"id":"cmsrh2ffl009dy8p2wj4c3rcc","kind":"contributor_item","title":"Submission 4C3RCC","provisional":false,"output_code":"import json\n# scenario_38\ndef transform(text):\n o={\"low\":0,\"mid\":0,\"high\":0}\n for s in json.loads(text): o[\"low\" if s<42 else \"mid\" if s<72 else \"high\"]+=1\n return json.dumps(o,separators=(\",\",\":\"))","input_data_sample":"[24,47,70,77,99]","output_data_sample":"{\"low\":1,\"mid\":2,\"high\":2}","transformation_instruction":"Bucket scores below 42, 42-71, and >=72 (scenario_38)."} {"id":"cmsrh2ffl009fy8p2x0h423uo","kind":"contributor_item","title":"Submission H423UO","provisional":false,"output_code":"import json\n# scenario_40\ndef transform(text):\n o={\"low\":0,\"mid\":0,\"high\":0}\n for s in json.loads(text): o[\"low\" if s<44 else \"mid\" if s<74 else \"high\"]+=1\n return json.dumps(o,separators=(\",\",\":\"))","input_data_sample":"[26,49,72,79,99]","output_data_sample":"{\"low\":1,\"mid\":2,\"high\":2}","transformation_instruction":"Bucket scores below 44, 44-73, and >=74 (scenario_40)."} {"id":"cmsrh2ffl009ey8p2a8xw28c9","kind":"contributor_item","title":"Submission XW28C9","provisional":false,"output_code":"import json\n# scenario_39\ndef transform(text):\n o={\"low\":0,\"mid\":0,\"high\":0}\n for s in json.loads(text): o[\"low\" if s<43 else \"mid\" if s<73 else \"high\"]+=1\n return json.dumps(o,separators=(\",\",\":\"))","input_data_sample":"[25,48,71,78,99]","output_data_sample":"{\"low\":1,\"mid\":2,\"high\":2}","transformation_instruction":"Bucket scores below 43, 43-72, and >=73 (scenario_39)."} {"id":"cmsrh2ffm009iy8p2c093m5z5","kind":"contributor_item","title":"Submission 93M5Z5","provisional":false,"output_code":"import json\n# scenario_43\ndef transform(text):\n d=json.loads(text);k=\"role\"\n return json.dumps([{\"id\":u[\"id\"],k:u[\"profile\"][k]} for u in d[\"users\"]],separators=(\",\",\":\"))","input_data_sample":"{\"users\":[{\"id\":1,\"profile\":{\"role\":\"v2a\",\"extra\":9}},{\"id\":2,\"profile\":{\"role\":\"v2b\",\"extra\":8}}]}","output_data_sample":"[{\"id\":1,\"role\":\"v2a\"},{\"id\":2,\"role\":\"v2b\"}]","transformation_instruction":"Extract id and nested profile.role from users (scenario_43)."} {"id":"cmsrh2ffm009hy8p2l0p3hb92","kind":"contributor_item","title":"Submission P3HB92","provisional":false,"output_code":"import json\n# scenario_42\ndef transform(text):\n d=json.loads(text);k=\"city\"\n return json.dumps([{\"id\":u[\"id\"],k:u[\"profile\"][k]} for u in d[\"users\"]],separators=(\",\",\":\"))","input_data_sample":"{\"users\":[{\"id\":1,\"profile\":{\"city\":\"v1a\",\"extra\":9}},{\"id\":2,\"profile\":{\"city\":\"v1b\",\"extra\":8}}]}","output_data_sample":"[{\"id\":1,\"city\":\"v1a\"},{\"id\":2,\"city\":\"v1b\"}]","transformation_instruction":"Extract id and nested profile.city from users (scenario_42)."} {"id":"cmsrh2ffl009gy8p2pz9k0smu","kind":"contributor_item","title":"Submission 9K0SMU","provisional":false,"output_code":"import json\n# scenario_41\ndef transform(text):\n d=json.loads(text);k=\"email\"\n return json.dumps([{\"id\":u[\"id\"],k:u[\"profile\"][k]} for u in d[\"users\"]],separators=(\",\",\":\"))","input_data_sample":"{\"users\":[{\"id\":1,\"profile\":{\"email\":\"v0a\",\"extra\":9}},{\"id\":2,\"profile\":{\"email\":\"v0b\",\"extra\":8}}]}","output_data_sample":"[{\"id\":1,\"email\":\"v0a\"},{\"id\":2,\"email\":\"v0b\"}]","transformation_instruction":"Extract id and nested profile.email from users (scenario_41)."} {"id":"cmsrh2ffm009jy8p2v3uth0lr","kind":"contributor_item","title":"Submission UTH0LR","provisional":false,"output_code":"import json\n# scenario_44\ndef transform(text):\n d=json.loads(text);k=\"team\"\n return json.dumps([{\"id\":u[\"id\"],k:u[\"profile\"][k]} for u in d[\"users\"]],separators=(\",\",\":\"))","input_data_sample":"{\"users\":[{\"id\":1,\"profile\":{\"team\":\"v3a\",\"extra\":9}},{\"id\":2,\"profile\":{\"team\":\"v3b\",\"extra\":8}}]}","output_data_sample":"[{\"id\":1,\"team\":\"v3a\"},{\"id\":2,\"team\":\"v3b\"}]","transformation_instruction":"Extract id and nested profile.team from users (scenario_44)."} {"id":"cmsrh2ffm009ly8p23nuhijps","kind":"contributor_item","title":"Submission UHIJPS","provisional":false,"output_code":"import json\n# scenario_46\ndef transform(text):\n r=json.loads(text);r.sort(key=lambda x:(-x[\"priority\"],x[\"age\"],x[\"name\"]))\n return json.dumps([{\"name\":x[\"name\"],\"priority\":x[\"priority\"]} for x in r[:2]],separators=(\",\",\":\"))","input_data_sample":"[{\"name\":\"x0\",\"priority\":2,\"age\":5},{\"name\":\"a0\",\"priority\":3,\"age\":2},{\"name\":\"m0\",\"priority\":3,\"age\":7},{\"name\":\"z0\",\"priority\":1,\"age\":1}]","output_data_sample":"[{\"name\":\"a0\",\"priority\":3},{\"name\":\"m0\",\"priority\":3}]","transformation_instruction":"Select top 2 jobs by priority desc, age/name asc (scenario_46)."} {"id":"cmsrh2ffm009ny8p215wc0pto","kind":"contributor_item","title":"Submission WC0PTO","provisional":false,"output_code":"import json\n# scenario_48\ndef transform(text):\n r=json.loads(text);r.sort(key=lambda x:(-x[\"priority\"],x[\"age\"],x[\"name\"]))\n return json.dumps([{\"name\":x[\"name\"],\"priority\":x[\"priority\"]} for x in r[:4]],separators=(\",\",\":\"))","input_data_sample":"[{\"name\":\"x2\",\"priority\":2,\"age\":5},{\"name\":\"a2\",\"priority\":3,\"age\":2},{\"name\":\"m2\",\"priority\":3,\"age\":7},{\"name\":\"z2\",\"priority\":1,\"age\":1}]","output_data_sample":"[{\"name\":\"a2\",\"priority\":3},{\"name\":\"m2\",\"priority\":3},{\"name\":\"x2\",\"priority\":2},{\"name\":\"z2\",\"priority\":1}]","transformation_instruction":"Select top 4 jobs by priority desc, age/name asc (scenario_48)."} {"id":"cmsrh2ffm009oy8p2tsqq2a77","kind":"contributor_item","title":"Submission QQ2A77","provisional":false,"output_code":"import json\n# scenario_49\ndef transform(text):\n r=json.loads(text);r.sort(key=lambda x:(-x[\"priority\"],x[\"age\"],x[\"name\"]))\n return json.dumps([{\"name\":x[\"name\"],\"priority\":x[\"priority\"]} for x in r[:2]],separators=(\",\",\":\"))","input_data_sample":"[{\"name\":\"x3\",\"priority\":2,\"age\":5},{\"name\":\"a3\",\"priority\":3,\"age\":2},{\"name\":\"m3\",\"priority\":3,\"age\":7},{\"name\":\"z3\",\"priority\":1,\"age\":1}]","output_data_sample":"[{\"name\":\"a3\",\"priority\":3},{\"name\":\"m3\",\"priority\":3}]","transformation_instruction":"Select top 2 jobs by priority desc, age/name asc (scenario_49)."} {"id":"cmsrh2ffm009py8p2lmlmt5lo","kind":"contributor_item","title":"Submission LMT5LO","provisional":false,"output_code":"import json\n# scenario_50\ndef transform(text):\n r=json.loads(text);r.sort(key=lambda x:(-x[\"priority\"],x[\"age\"],x[\"name\"]))\n return json.dumps([{\"name\":x[\"name\"],\"priority\":x[\"priority\"]} for x in r[:3]],separators=(\",\",\":\"))","input_data_sample":"[{\"name\":\"x4\",\"priority\":2,\"age\":5},{\"name\":\"a4\",\"priority\":3,\"age\":2},{\"name\":\"m4\",\"priority\":3,\"age\":7},{\"name\":\"z4\",\"priority\":1,\"age\":1}]","output_data_sample":"[{\"name\":\"a4\",\"priority\":3},{\"name\":\"m4\",\"priority\":3},{\"name\":\"x4\",\"priority\":2}]","transformation_instruction":"Select top 3 jobs by priority desc, age/name asc (scenario_50)."} {"id":"cmsrkbizf000hjmp26ydmu169","kind":"contributor_item","title":"Submission DMU169","provisional":false,"output_code":"def transform(text):\n totals = {}\n for line in text.strip().split('\\n'):\n sku, qty, price = line.split(':')\n totals[sku] = totals.get(sku, 0.0) + int(qty) * float(price)\n ordered = sorted(totals.items(), key=lambda kv: (-kv[1], kv[0]))\n return '\\n'.join(f'{sku}={total:.2f}' for sku, total in ordered)","input_data_sample":"widget-a:3:2.50\nwidget-b:1:10.00\nwidget-a:2:2.50\ngadget-x:5:1.20\n","output_data_sample":"widget-a=12.50\nwidget-b=10.00\ngadget-x=6.00","transformation_instruction":"Each line is 'sku:quantity:unit_price'. Compute the total revenue per SKU (quantity * unit_price summed across lines) and return lines of 'sku=total' formatted to 2 decimal places, sorted by total descending, then sku ascending."} {"id":"cmsrkbizf000fjmp2s195uzci","kind":"contributor_item","title":"Submission 95UZCI","provisional":false,"output_code":"def transform(text):\n counts = {}\n for line in text.strip().split('\\n'):\n parts = line.split()\n if len(parts) >= 2 and parts[1] == 'ERROR':\n counts[parts[0]] = counts.get(parts[0], 0) + 1\n rows = ['date,errors'] + [f'{d},{counts[d]}' for d in sorted(counts)]\n return '\\n'.join(rows)","input_data_sample":"2026-01-15 ERROR db timeout\n2026-01-15 INFO started\n2026-01-16 ERROR disk full\n2026-01-16 ERROR db timeout\n2026-01-17 WARN slow query\n","output_data_sample":"date,errors\n2026-01-15,1\n2026-01-16,2","transformation_instruction":"Count ERROR lines per date and return a CSV string with header 'date,errors', one row per date that has at least one ERROR, sorted by date ascending."} {"id":"cmsrkbizf000djmp21irujzod","kind":"contributor_item","title":"Submission RUJZOD","provisional":false,"output_code":"import json\n\ndef transform(text):\n users = json.loads(text)\n tag_map = {}\n for user in users:\n for tag in set(user['tags']):\n tag_map.setdefault(tag, []).append(user['name'])\n return json.dumps({t: sorted(tag_map[t]) for t in sorted(tag_map)})","input_data_sample":"[{\"name\": \"alice\", \"tags\": [\"admin\", \"dev\"]}, {\"name\": \"bob\", \"tags\": []}, {\"name\": \"carol\", \"tags\": [\"dev\", \"ops\", \"dev\"]}]","output_data_sample":"{\"admin\": [\"alice\"], \"dev\": [\"alice\", \"carol\"], \"ops\": [\"carol\"]}","transformation_instruction":"Given a JSON array of users, return a JSON object mapping each distinct tag to the sorted list of user names that carry it. Ignore duplicate tags within a single user. Tags in the result must be sorted alphabetically."} {"id":"cmsrkbizf000cjmp288m3mynf","kind":"contributor_item","title":"Submission M3MYNF","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n totals = {}\n for row in csv.DictReader(io.StringIO(text.strip())):\n region = row['region']\n totals[region] = totals.get(region, 0.0) + float(row['amount'])\n return json.dumps({k: round(totals[k], 2) for k in sorted(totals)})","input_data_sample":"id,region,amount\n1,north,120.50\n2,south,80\n3,north,45.25\n4,east,200\n5,south,19.75\n","output_data_sample":"{\"east\": 200.0, \"north\": 165.75, \"south\": 99.75}","transformation_instruction":"Parse the CSV and return a JSON object mapping each region to its total amount (as a float), with regions sorted alphabetically."} {"id":"cmsrkbizf000ejmp2r85xx2h9","kind":"contributor_item","title":"Submission 5XX2H9","provisional":false,"output_code":"def transform(text):\n seen = []\n for part in text.strip().split(';'):\n email = part.strip().lower()\n if email and email not in seen:\n seen.append(email)\n return '\\n'.join(seen)","input_data_sample":"alice@example.com; Bob.Smith@Test.ORG ;carol@example.com;bob.smith@test.org;dan@sample.net\n","output_data_sample":"alice@example.com\nbob.smith@test.org\ncarol@example.com\ndan@sample.net","transformation_instruction":"Split the semicolon-separated email list, trim whitespace, lowercase every address, remove duplicates while keeping first-seen order, and return them joined by newlines."} {"id":"cmsrkbizf000gjmp2xzsq7r6h","kind":"contributor_item","title":"Submission SQ7R6H","provisional":false,"output_code":"import json\n\ndef transform(text):\n def flatten(obj, prefix=''):\n out = {}\n for k, v in obj.items():\n key = f'{prefix}.{k}' if prefix else k\n if isinstance(v, dict):\n out.update(flatten(v, key))\n else:\n out[key] = v\n return out\n flat = flatten(json.loads(text))\n return json.dumps({k: flat[k] for k in sorted(flat)})","input_data_sample":"{\"config\": {\"server\": {\"host\": \"localhost\", \"port\": 8080}, \"debug\": true, \"limits\": {\"max\": 10}}}","output_data_sample":"{\"config.debug\": true, \"config.limits.max\": 10, \"config.server.host\": \"localhost\", \"config.server.port\": 8080}","transformation_instruction":"Flatten the nested JSON object into a single-level JSON object whose keys are dot-joined paths (e.g. 'config.server.host'). Keys in the result must be sorted alphabetically."} {"id":"cmsrkbizf000ijmp2fnw3pp5e","kind":"contributor_item","title":"Submission W3PP5E","provisional":false,"output_code":"import json, re\nfrom collections import Counter\n\ndef transform(text):\n words = re.findall(r'[a-z]+', text.lower())\n counts = Counter(words)\n top = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))[:3]\n return json.dumps(dict(top))","input_data_sample":"The quick brown fox. The lazy dog! A quick test? The FOX runs.\n","output_data_sample":"{\"the\": 3, \"fox\": 2, \"quick\": 2}","transformation_instruction":"Return a JSON object with the three most frequent words (case-insensitive, punctuation stripped), mapping word to count; break count ties alphabetically."} {"id":"cmsrkbizf000jjmp220njxzjw","kind":"contributor_item","title":"Submission NJXZJW","provisional":false,"output_code":"import json\n\ndef transform(text):\n readings = json.loads(text)\n out = [{'ts': r['ts'], 'temp_c': round((r['temp_f'] - 32) * 5 / 9, 1)} for r in readings]\n return json.dumps(out)","input_data_sample":"[{\"ts\": \"2026-05-01T10:00:00\", \"temp_f\": 68.0}, {\"ts\": \"2026-05-01T11:00:00\", \"temp_f\": 71.6}, {\"ts\": \"2026-05-01T12:00:00\", \"temp_f\": 75.2}]","output_data_sample":"[{\"ts\": \"2026-05-01T10:00:00\", \"temp_c\": 20.0}, {\"ts\": \"2026-05-01T11:00:00\", \"temp_c\": 22.0}, {\"ts\": \"2026-05-01T12:00:00\", \"temp_c\": 24.0}]","transformation_instruction":"Convert each reading's temp_f (Fahrenheit) to Celsius rounded to 1 decimal, rename the key to temp_c, keep ts unchanged, and return the JSON array."} {"id":"cmsrkbizf000ljmp2jn0gvz6g","kind":"contributor_item","title":"Submission 0GVZ6G","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n nums = [int(x) for x in text.strip().split(',')]\n counts = Counter(nums)\n top = max(counts.values())\n mode = min(v for v, c in counts.items() if c == top)\n return json.dumps({'min': min(nums), 'max': max(nums), 'mean': round(sum(nums) / len(nums), 2), 'mode': mode, 'distinct': len(counts)})","input_data_sample":"9,3,7,3,1,9,9,2\n","output_data_sample":"{\"min\": 1, \"max\": 9, \"mean\": 5.38, \"mode\": 9, \"distinct\": 5}","transformation_instruction":"Parse the comma-separated integers and return a JSON object with keys 'min', 'max', 'mean' (rounded to 2 decimals), 'mode' (smallest value if tied), and 'distinct' (count of unique values)."} {"id":"cmsrkbizf000njmp21ljha7t7","kind":"contributor_item","title":"Submission JHA7T7","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)['employees']\n groups = {}\n for e in data:\n groups.setdefault(e['dept'], []).append(e['salary'])\n return json.dumps({d: {'count': len(s), 'avg_salary': round(sum(s) / len(s))} for d, s in sorted(groups.items())})","input_data_sample":"{\"employees\": [{\"name\": \"Ana\", \"dept\": \"eng\", \"salary\": 95000}, {\"name\": \"Raj\", \"dept\": \"sales\", \"salary\": 70000}, {\"name\": \"Mia\", \"dept\": \"eng\", \"salary\": 105000}, {\"name\": \"Leo\", \"dept\": \"sales\", \"salary\": 64000}]}","output_data_sample":"{\"eng\": {\"count\": 2, \"avg_salary\": 100000}, \"sales\": {\"count\": 2, \"avg_salary\": 67000}}","transformation_instruction":"Group employees by dept and return a JSON object mapping dept to {'count': n, 'avg_salary': average rounded to nearest integer}, with depts sorted alphabetically."} {"id":"cmsrkbizf000kjmp29ie6fwjc","kind":"contributor_item","title":"Submission E6FWJC","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = text.strip().split('\\n')[1:]\n result = {}\n section = None\n for line in lines:\n line = line.strip()\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1]\n result[section] = {}\n elif '=' in line and section is not None:\n k, v = line.split('=', 1)\n result[section][k.strip()] = v.strip()\n return json.dumps(result)","input_data_sample":"INI\n[database]\nhost = db.internal\nport = 5432\n[cache]\nhost = cache.internal\nttl = 300\n","output_data_sample":"{\"database\": {\"host\": \"db.internal\", \"port\": \"5432\"}, \"cache\": {\"host\": \"cache.internal\", \"ttl\": \"300\"}}","transformation_instruction":"Skip the first line, parse the INI-style sections and key = value pairs, and return a JSON object of {section: {key: value}} with all values kept as strings. Preserve section and key order as they appear."} {"id":"cmsrkbizf000mjmp2iqcdafqb","kind":"contributor_item","title":"Submission CDAFQB","provisional":false,"output_code":"from collections import Counter\n\ndef transform(text):\n paths = [line.split('?')[0] for line in text.strip().split('\\n')]\n counts = Counter(paths)\n ordered = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))\n return '\\n'.join(f'{p} {c}' for p, c in ordered)","input_data_sample":"/api/users?page=2\n/api/users?page=3\n/api/orders\n/api/users?page=2\n/health\n/api/orders\n","output_data_sample":"/api/users 3\n/api/orders 2\n/health 1","transformation_instruction":"Strip query strings from each request path, count hits per bare path, and return lines of 'path count' sorted by count descending then path ascending."} {"id":"cmsshvp8r00aljmp2chbjfmfq","kind":"contributor_item","title":"Submission BJFMFQ","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = text.strip().split('\\n')\n headers = lines[0].split('|')\n result = []\n for line in lines[1:]:\n values = line.split('|')\n row = dict(zip(headers, values))\n row['missing_contact'] = row.get('email', '') == '' or row.get('phone', '') == ''\n result.append(row)\n return json.dumps(result)\n","input_data_sample":"first_name|last_name|email|phone\nJohn|Doe|john.doe@example.com|555-1234\nJane|Smith|jane.smith@example.com|555-5678\nBob|Jones||555-9012\nAlice|Brown|alice@example.com|","output_data_sample":"[{\"first_name\": \"John\", \"last_name\": \"Doe\", \"email\": \"john.doe@example.com\", \"phone\": \"555-1234\", \"missing_contact\": false}, {\"first_name\": \"Jane\", \"last_name\": \"Smith\", \"email\": \"jane.smith@example.com\", \"phone\": \"555-5678\", \"missing_contact\": false}, {\"first_name\": \"Bob\", \"last_name\": \"Jones\", \"email\": \"\", \"phone\": \"555-9012\", \"missing_contact\": true}, {\"first_name\": \"Alice\", \"last_name\": \"Brown\", \"email\": \"alice@example.com\", \"phone\": \"\", \"missing_contact\": true}]","transformation_instruction":"Parse the pipe-delimited file. For each row, if either email or phone is missing (empty), mark the row with a 'missing_contact' flag set to true, otherwise false. Return a JSON array of all records with all original fields plus the 'missing_contact' boolean."} {"id":"cmsshvp8r00asjmp2iiz3vif3","kind":"contributor_item","title":"Submission Z3VIF3","provisional":false,"output_code":"import json\n\ndef grade(avg):\n if avg >= 90: return 'A'\n if avg >= 80: return 'B'\n if avg >= 70: return 'C'\n if avg >= 60: return 'D'\n return 'F'\n\ndef transform(text):\n data = json.loads(text.strip())\n result = []\n for student in data['students']:\n scores = list(student['scores'].values())\n avg = round(sum(scores) / len(scores), 1)\n result.append({'name': student['name'], 'average': avg, 'grade': grade(avg)})\n return json.dumps(result)\n","input_data_sample":"{\n \"students\": [\n {\"name\": \"Alice\", \"scores\": {\"math\": 88, \"english\": 92, \"science\": 79}},\n {\"name\": \"Bob\", \"scores\": {\"math\": 74, \"english\": 65, \"science\": 81}},\n {\"name\": \"Carol\", \"scores\": {\"math\": 95, \"english\": 90, \"science\": 93}}\n ]\n}","output_data_sample":"[{\"name\": \"Alice\", \"average\": 86.3, \"grade\": \"B\"}, {\"name\": \"Bob\", \"average\": 73.3, \"grade\": \"C\"}, {\"name\": \"Carol\", \"average\": 92.7, \"grade\": \"A\"}]","transformation_instruction":"For each student, compute their average score (rounded to 1 decimal place) and assign a letter grade: A (>=90), B (>=80), C (>=70), D (>=60), F (<60). Return a JSON array of objects with fields: name, average, grade."} {"id":"cmsshvp8r00aajmp27wacace2","kind":"contributor_item","title":"Submission ACACE2","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n data = json.loads(text.strip())\n dept_salaries = defaultdict(list)\n for emp in data['employees']:\n dept_salaries[emp['dept']].append(emp['salary'])\n result = {dept: round(sum(salaries) / len(salaries), 2)\n for dept, salaries in dept_salaries.items()}\n return json.dumps(result)\n","input_data_sample":"{\"employees\": [{\"name\": \"Alice\", \"dept\": \"Engineering\", \"salary\": 95000}, {\"name\": \"Bob\", \"dept\": \"Marketing\", \"salary\": 72000}, {\"name\": \"Carol\", \"dept\": \"Engineering\", \"salary\": 105000}, {\"name\": \"Dave\", \"dept\": \"Marketing\", \"salary\": 68000}, {\"name\": \"Eve\", \"dept\": \"Engineering\", \"salary\": 88000}]}","output_data_sample":"{\"Engineering\": 96000.0, \"Marketing\": 70000.0}","transformation_instruction":"Group employees by department, compute the average salary per department (rounded to 2 decimal places), and return a JSON object mapping department name to average salary."} {"id":"cmsshvp8r00a9jmp2rk5838co","kind":"contributor_item","title":"Submission 5838CO","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n result = []\n for row in reader:\n qty = int(row['quantity'])\n if qty == 0:\n continue\n price = float(row['price'])\n result.append({\n 'product_id': int(row['product_id']),\n 'name': row['name'],\n 'price': price,\n 'quantity': qty,\n 'total_value': round(price * qty, 2)\n })\n return json.dumps(result)\n","input_data_sample":"product_id,name,price,quantity\n101,Widget A,9.99,5\n102,Gadget B,24.50,0\n103,Doohickey C,4.75,12\n104,Thingamajig D,99.00,0\n105,Whatsit E,14.25,3","output_data_sample":"[{\"product_id\": 101, \"name\": \"Widget A\", \"price\": 9.99, \"quantity\": 5, \"total_value\": 49.95}, {\"product_id\": 103, \"name\": \"Doohickey C\", \"price\": 4.75, \"quantity\": 12, \"total_value\": 57.0}, {\"product_id\": 105, \"name\": \"Whatsit E\", \"price\": 14.25, \"quantity\": 3, \"total_value\": 42.75}]","transformation_instruction":"Filter out rows where quantity is 0, then compute a 'total_value' column (price * quantity) for remaining rows, and return the result as JSON array of objects with keys: product_id, name, price, quantity, total_value."} {"id":"cmsshvp8r00abjmp2rr5t90l5","kind":"contributor_item","title":"Submission 5T90L5","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow(['date', 'amount', 'type', 'running_balance'])\n balance = 0.0\n for line in lines:\n date, amount, txtype = line.split(',')\n amount = float(amount)\n if txtype == 'credit':\n balance += amount\n else:\n balance -= amount\n writer.writerow([date, f'{amount:.2f}', txtype, f'{round(balance, 2):.2f}'])\n return out.getvalue().strip()\n","input_data_sample":"2024-01-15,150.00,credit\n2024-01-17,45.50,debit\n2024-01-20,200.00,credit\n2024-01-22,30.00,debit\n2024-01-25,75.25,debit","output_data_sample":"date,amount,type,running_balance\r\n2024-01-15,150.00,credit,150.00\r\n2024-01-17,45.50,debit,104.50\r\n2024-01-20,200.00,credit,304.50\r\n2024-01-22,30.00,debit,274.50\r\n2024-01-25,75.25,debit,199.25","transformation_instruction":"Parse the ledger entries (date, amount, type). Compute the running balance starting from 0: add credits, subtract debits. Return a CSV with columns: date, amount, type, running_balance."} {"id":"cmsshvp8r00aejmp2kny9fzzc","kind":"contributor_item","title":"Submission Y9FZZC","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n result = []\n for row in reader:\n hs = int(row['home_score'])\n as_ = int(row['away_score'])\n if hs > as_:\n winner = row['home_team']\n elif as_ > hs:\n winner = row['away_team']\n else:\n winner = 'draw'\n result.append({'home_team': row['home_team'], 'away_team': row['away_team'], 'winner': winner})\n return json.dumps(result)\n","input_data_sample":"home_team,away_team,home_score,away_score\nLakers,Bulls,108,95\nWarriors,Celtics,112,110\nHeat,Nets,99,102\nSuns,Knicks,115,100\nClippers,Bucks,88,97","output_data_sample":"[{\"home_team\": \"Lakers\", \"away_team\": \"Bulls\", \"winner\": \"Lakers\"}, {\"home_team\": \"Warriors\", \"away_team\": \"Celtics\", \"winner\": \"Warriors\"}, {\"home_team\": \"Heat\", \"away_team\": \"Nets\", \"winner\": \"Nets\"}, {\"home_team\": \"Suns\", \"away_team\": \"Knicks\", \"winner\": \"Suns\"}, {\"home_team\": \"Clippers\", \"away_team\": \"Bucks\", \"winner\": \"Bucks\"}]","transformation_instruction":"Determine the winner of each game (or 'draw' if scores are equal). Return a JSON array of objects with fields: home_team, away_team, winner."} {"id":"cmsshvp8r00acjmp2hfy7r0za","kind":"contributor_item","title":"Submission Y7R0ZA","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text.strip())\n errors = [{'msg': entry['msg'], 'ts': entry['ts']}\n for entry in data['log']\n if entry['level'] == 'ERROR']\n return json.dumps(errors)\n","input_data_sample":"{\n \"log\": [\n {\"level\": \"INFO\", \"msg\": \"Server started\", \"ts\": \"2024-03-10T09:00:00Z\"},\n {\"level\": \"WARN\", \"msg\": \"High memory\", \"ts\": \"2024-03-10T09:05:00Z\"},\n {\"level\": \"ERROR\", \"msg\": \"DB connection failed\", \"ts\": \"2024-03-10T09:06:00Z\"},\n {\"level\": \"INFO\", \"msg\": \"Retry succeeded\", \"ts\": \"2024-03-10T09:07:00Z\"},\n {\"level\": \"ERROR\", \"msg\": \"Timeout on request\", \"ts\": \"2024-03-10T09:10:00Z\"}\n ]\n}","output_data_sample":"[{\"msg\": \"DB connection failed\", \"ts\": \"2024-03-10T09:06:00Z\"}, {\"msg\": \"Timeout on request\", \"ts\": \"2024-03-10T09:10:00Z\"}]","transformation_instruction":"Extract only ERROR-level log entries and return them as a JSON array, keeping only the 'msg' and 'ts' fields."} {"id":"cmsshvp8r00adjmp2zd9waqkx","kind":"contributor_item","title":"Submission 9WAQKX","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = list(reader)\n headers = rows[0]\n data_rows = rows[1:]\n out = io.StringIO()\n writer = csv.writer(out)\n for i, header in enumerate(headers):\n writer.writerow([header] + [row[i] for row in data_rows])\n return out.getvalue().strip()\n","input_data_sample":"Alice,Bob,Carol\n10,20,30\n40,50,60\n70,80,90","output_data_sample":"Alice,10,40,70\r\nBob,20,50,80\r\nCarol,30,60,90","transformation_instruction":"Parse the CSV where the first row is column headers. Transpose the data so rows become columns and columns become rows, preserving the headers as the first column label. Return the transposed data as CSV."} {"id":"cmsshvp8r00afjmp2xk6buoh6","kind":"contributor_item","title":"Submission 6BUOH6","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n words = text.strip().lower().split()\n counts = Counter(words)\n filtered = {w: c for w, c in counts.items() if c >= 2}\n sorted_items = sorted(filtered.items(), key=lambda x: (-x[1], x[0]))\n return json.dumps(dict(sorted_items))\n","input_data_sample":"the quick brown fox jumps over the lazy dog the fox was very quick indeed","output_data_sample":"{\"the\": 3, \"fox\": 2, \"quick\": 2}","transformation_instruction":"Count word frequencies in the input text (case-insensitive). Return a JSON object sorted by frequency descending, then alphabetically for ties. Only include words with frequency >= 2."} {"id":"cmsshvp8r00aijmp2dfnus9if","kind":"contributor_item","title":"Submission NUS9IF","provisional":false,"output_code":"import re\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n result = []\n for line in lines:\n value = line.split('raw_text: ', 1)[1].strip().strip('\"')\n cleaned = re.sub(r' +', ' ', value).strip()\n result.append(cleaned)\n return '\\n'.join(result)\n","input_data_sample":"raw_text: \" Hello, World! \"\nraw_text: \"python programming \"\nraw_text: \" data science and AI \"\nraw_text: \" strip and normalize \"","output_data_sample":"Hello, World!\npython programming\ndata science and AI\nstrip and normalize","transformation_instruction":"For each line, extract the value after 'raw_text: ' (removing surrounding quotes), strip leading/trailing whitespace, collapse internal multiple spaces to a single space, and return one cleaned string per line as plain text."} {"id":"cmsshvp8r00ahjmp2x50cngv0","kind":"contributor_item","title":"Submission 0CNGV0","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n city_oldest = {}\n for row in reader:\n city = row['city']\n year = int(row['birth_year'])\n name = row['name']\n if city not in city_oldest or year < city_oldest[city][0] or (year == city_oldest[city][0] and name < city_oldest[city][1]):\n city_oldest[city] = (year, name)\n return json.dumps({city: info[1] for city, info in city_oldest.items()})\n","input_data_sample":"name,birth_year,city\nAlice,1990,Seattle\nBob,1985,Portland\nCarol,1992,Seattle\nDave,1988,Portland\nEve,1995,Seattle","output_data_sample":"{\"Seattle\": \"Alice\", \"Portland\": \"Bob\"}","transformation_instruction":"For each city, find the oldest person (minimum birth_year) and return a JSON object mapping city to the name of the oldest resident. If there is a tie, return the name that comes first alphabetically."} {"id":"cmsshvp8r00agjmp208jyqo9b","kind":"contributor_item","title":"Submission JYQO9B","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n data = json.loads(text.strip())\n groups = defaultdict(int)\n for entry in data:\n prefix = '.'.join(entry['ip'].split('.')[:2])\n groups[prefix] += entry['hits']\n sorted_groups = dict(sorted(groups.items(), key=lambda x: -x[1]))\n return json.dumps(sorted_groups)\n","input_data_sample":"[\n {\"ip\": \"192.168.1.1\", \"hits\": 245},\n {\"ip\": \"10.0.0.5\", \"hits\": 1},\n {\"ip\": \"192.168.1.2\", \"hits\": 89},\n {\"ip\": \"172.16.0.1\", \"hits\": 430},\n {\"ip\": \"10.0.0.8\", \"hits\": 5},\n {\"ip\": \"192.168.1.3\", \"hits\": 12}\n]","output_data_sample":"{\"172.16\": 430, \"192.168\": 346, \"10.0\": 6}","transformation_instruction":"Group IP addresses by their first two octets (subnet prefix), sum the hits per group, and return a JSON object mapping prefix to total hits, sorted by total hits descending."} {"id":"cmsshvp8r00akjmp20825hpci","kind":"contributor_item","title":"Submission 25HPCI","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n sensor_temps = defaultdict(list)\n for row in reader:\n sensor_temps[row['sensor_id']].append(float(row['temperature_c']))\n result = {}\n for sid, temps in sensor_temps.items():\n result[sid] = {\n 'min': round(min(temps), 2),\n 'max': round(max(temps), 2),\n 'avg': round(sum(temps) / len(temps), 2)\n }\n return json.dumps(result)\n","input_data_sample":"sensor_id,timestamp,temperature_c\nS1,2024-06-01 08:00,22.5\nS1,2024-06-01 09:00,23.1\nS1,2024-06-01 10:00,24.8\nS2,2024-06-01 08:00,18.0\nS2,2024-06-01 09:00,17.5\nS2,2024-06-01 10:00,19.2","output_data_sample":"{\"S1\": {\"min\": 22.5, \"max\": 24.8, \"avg\": 23.47}, \"S2\": {\"min\": 17.5, \"max\": 19.2, \"avg\": 18.23}}","transformation_instruction":"For each sensor, compute the min, max, and average temperature (rounded to 2 decimal places). Return a JSON object mapping sensor_id to an object with keys: min, max, avg."} {"id":"cmsshvp8r00ajjmp28sc1r7t7","kind":"contributor_item","title":"Submission C1R7T7","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text.strip())\n items = set()\n for order in data['orders']:\n if order['status'] == 'shipped':\n items.update(order['items'])\n return json.dumps(sorted(items))\n","input_data_sample":"{\n \"orders\": [\n {\"id\": \"A1\", \"items\": [\"apple\", \"banana\"], \"status\": \"shipped\"},\n {\"id\": \"A2\", \"items\": [\"cherry\"], \"status\": \"pending\"},\n {\"id\": \"A3\", \"items\": [\"apple\", \"cherry\", \"date\"], \"status\": \"shipped\"},\n {\"id\": \"A4\", \"items\": [\"banana\", \"date\"], \"status\": \"cancelled\"}\n ]\n}","output_data_sample":"[\"apple\", \"banana\", \"cherry\", \"date\"]","transformation_instruction":"From shipped orders only, collect all unique items across all such orders, sort them alphabetically, and return a JSON array of those item names."} {"id":"cmsshvp8r00amjmp2uhnhozgk","kind":"contributor_item","title":"Submission NHOZGK","provisional":false,"output_code":"import json\nfrom datetime import date, timedelta\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n dates = sorted(date.fromisoformat(d) for d in lines)\n ranges = []\n start = end = dates[0]\n for d in dates[1:]:\n if d == end + timedelta(days=1):\n end = d\n else:\n ranges.append({'start': start.isoformat(), 'end': end.isoformat()})\n start = end = d\n ranges.append({'start': start.isoformat(), 'end': end.isoformat()})\n return json.dumps(ranges)\n","input_data_sample":"2024-01-03\n2024-01-07\n2024-01-08\n2024-01-09\n2024-01-15\n2024-01-16\n2024-01-17\n2024-01-18","output_data_sample":"[{\"start\": \"2024-01-03\", \"end\": \"2024-01-03\"}, {\"start\": \"2024-01-07\", \"end\": \"2024-01-09\"}, {\"start\": \"2024-01-15\", \"end\": \"2024-01-18\"}]","transformation_instruction":"Given a list of dates (one per line, ISO format), group them into consecutive date ranges. Return a JSON array of objects with 'start' and 'end' keys. Single-day ranges have the same start and end."} {"id":"cmsshvp8r00aqjmp2khnqofr0","kind":"contributor_item","title":"Submission NQOFR0","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n data = json.loads(text.strip())\n tag_map = defaultdict(list)\n for item in data:\n for tag in item['tags']:\n tag_map[tag].append(item['sku'])\n result = {tag: sorted(skus) for tag, skus in sorted(tag_map.items())}\n return json.dumps(result)\n","input_data_sample":"[\n {\"sku\": \"X100\", \"tags\": [\"sale\", \"electronics\", \"featured\"]},\n {\"sku\": \"X200\", \"tags\": [\"electronics\", \"new\"]},\n {\"sku\": \"X300\", \"tags\": [\"sale\", \"clothing\"]},\n {\"sku\": \"X400\", \"tags\": [\"new\", \"clothing\", \"featured\"]}\n]","output_data_sample":"{\"clothing\": [\"X300\", \"X400\"], \"electronics\": [\"X100\", \"X200\"], \"featured\": [\"X100\", \"X400\"], \"new\": [\"X200\", \"X400\"], \"sale\": [\"X100\", \"X300\"]}","transformation_instruction":"Invert the tag-to-product mapping: return a JSON object where each tag maps to a sorted list of SKUs that have that tag."} {"id":"cmsshvp8r00anjmp2ibzzoo6w","kind":"contributor_item","title":"Submission ZZOO6W","provisional":false,"output_code":"import json\n\ndef flatten(obj, prefix=''):\n result = {}\n for key, val in obj.items():\n full_key = f'{prefix}.{key}' if prefix else key\n if isinstance(val, dict):\n result.update(flatten(val, full_key))\n else:\n result[full_key] = val\n return result\n\ndef transform(text):\n data = json.loads(text.strip())\n flat = flatten(data['config'])\n return json.dumps(flat)\n","input_data_sample":"{\n \"config\": {\n \"database\": {\"host\": \"localhost\", \"port\": 5432, \"name\": \"mydb\"},\n \"cache\": {\"host\": \"redis\", \"port\": 6379, \"ttl\": 300},\n \"app\": {\"debug\": true, \"workers\": 4}\n }\n}","output_data_sample":"{\"database.host\": \"localhost\", \"database.port\": 5432, \"database.name\": \"mydb\", \"cache.host\": \"redis\", \"cache.port\": 6379, \"cache.ttl\": 300, \"app.debug\": true, \"app.workers\": 4}","transformation_instruction":"Flatten the nested JSON config into a flat dictionary using dot notation for keys. Return as a JSON object. For example, 'database.host' should map to 'localhost'."} {"id":"cmsshvp8r00aojmp2yxobbv4m","kind":"contributor_item","title":"Submission OBBV4M","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict, OrderedDict\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n user_data = defaultdict(lambda: {'total_duration': 0, 'actions': []})\n for row in reader:\n uid = int(row['user_id'])\n action = row['action']\n dur = int(row['duration_seconds'])\n user_data[uid]['total_duration'] += dur\n if action not in user_data[uid]['actions']:\n user_data[uid]['actions'].append(action)\n result = [{'user_id': uid, 'total_duration': info['total_duration'], 'actions': info['actions']}\n for uid, info in sorted(user_data.items())]\n return json.dumps(result)\n","input_data_sample":"user_id,action,duration_seconds\n1,login,2\n1,view_page,45\n1,purchase,120\n2,login,3\n2,view_page,30\n3,login,1\n3,view_page,60\n3,view_page,90\n3,logout,5","output_data_sample":"[{\"user_id\": 1, \"total_duration\": 167, \"actions\": [\"login\", \"view_page\", \"purchase\"]}, {\"user_id\": 2, \"total_duration\": 33, \"actions\": [\"login\", \"view_page\"]}, {\"user_id\": 3, \"total_duration\": 156, \"actions\": [\"login\", \"view_page\", \"logout\"]}]","transformation_instruction":"For each user_id, compute the total session duration (sum of all duration_seconds) and list their unique actions in the order they first appear. Return a JSON array of objects with fields: user_id, total_duration, actions."} {"id":"cmsshvp8r00apjmp2e4eid7ly","kind":"contributor_item","title":"Submission EID7LY","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n rows = list(reader)\n cols = list(rows[0].keys())\n col_vals = {c: [float(r[c]) for r in rows] for c in cols}\n col_min = {c: min(col_vals[c]) for c in cols}\n col_max = {c: max(col_vals[c]) for c in cols}\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=cols)\n writer.writeheader()\n for row in rows:\n norm_row = {}\n for c in cols:\n v = float(row[c])\n mn, mx = col_min[c], col_max[c]\n norm_row[c] = round((v - mn) / (mx - mn), 4) if mx != mn else 0.0\n writer.writerow(norm_row)\n return out.getvalue().strip()\n","input_data_sample":"col_a,col_b,col_c\n1,5,9\n2,6,10\n3,7,11\n4,8,12","output_data_sample":"col_a,col_b,col_c\r\n0.0,0.0,0.0\r\n0.3333,0.3333,0.3333\r\n0.6667,0.6667,0.6667\r\n1.0,1.0,1.0","transformation_instruction":"Normalize each numeric column to the 0-1 range using min-max normalization: (value - min) / (max - min). Round each value to 4 decimal places. Return the result as CSV with the same headers."} {"id":"cmsshvp8r00atjmp2nwdbavc4","kind":"contributor_item","title":"Submission DBAVC4","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n result = {}\n for line in lines:\n parts = dict(pair.split('=', 1) for pair in line.split(';'))\n raw = parts['value']\n val = float(raw)\n result[parts['key']] = int(val) if val == int(val) else val\n return json.dumps(result)\n","input_data_sample":"key=timeout;value=30;unit=seconds\nkey=retries;value=3;unit=count\nkey=threshold;value=0.75;unit=ratio\nkey=batch_size;value=100;unit=count","output_data_sample":"{\"timeout\": 30, \"retries\": 3, \"threshold\": 0.75, \"batch_size\": 100}","transformation_instruction":"Parse each semicolon-separated key-value line. Extract the key and value fields and return a single JSON object mapping each key to its numeric value (as int if whole number, float otherwise)."} {"id":"cmsshvp8r00aujmp2jcs1x7qz","kind":"contributor_item","title":"Submission S1X7QZ","provisional":false,"output_code":"import json\n\ndef transform(text):\n nums = [int(x.strip()) for x in text.strip().split(',')]\n evens = [n for n in nums if n % 2 == 0]\n odds = [n for n in nums if n % 2 != 0]\n return json.dumps({\n 'sum_evens': sum(evens),\n 'sum_odds': sum(odds),\n 'count_evens': len(evens),\n 'count_odds': len(odds)\n })\n","input_data_sample":"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20","output_data_sample":"{\"sum_evens\": 110, \"sum_odds\": 100, \"count_evens\": 10, \"count_odds\": 10}","transformation_instruction":"Parse the comma-separated integers and compute: sum of evens, sum of odds, count of evens, count of odds. Return a JSON object with keys: sum_evens, sum_odds, count_evens, count_odds."} {"id":"cmsshvp8r00arjmp29jy7p97b","kind":"contributor_item","title":"Submission Y7P97B","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l.strip()]\n result = []\n for line in lines:\n parts = [p.strip() for p in line.split(';')]\n result.append({\n 'name': parts[0],\n 'email': parts[1],\n 'department': parts[2].title()\n })\n return json.dumps(result)\n","input_data_sample":"Maria Garcia; maria.garcia@corp.com; Engineering\nJohn Lee ; johnlee@corp.com ; Sales\n Sam Patel; sam.patel@corp.com; HR\nAna Souza;ana.souza@corp.com;Engineering","output_data_sample":"[{\"name\": \"Maria Garcia\", \"email\": \"maria.garcia@corp.com\", \"department\": \"Engineering\"}, {\"name\": \"John Lee\", \"email\": \"johnlee@corp.com\", \"department\": \"Sales\"}, {\"name\": \"Sam Patel\", \"email\": \"sam.patel@corp.com\", \"department\": \"Hr\"}, {\"name\": \"Ana Souza\", \"email\": \"ana.souza@corp.com\", \"department\": \"Engineering\"}]","transformation_instruction":"Parse the semicolon-delimited contact list. Trim whitespace from all fields. Standardize the department field to title case. Return a JSON array of objects with keys: name, email, department."} {"id":"cmsshvp8r00avjmp2n7fwuk5h","kind":"contributor_item","title":"Submission FWUK5H","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n data = json.loads(text.strip())\n steps = []\n for s in data['pipeline']:\n start = datetime.fromisoformat(s['start'])\n end = datetime.fromisoformat(s['end'])\n dur = int((end - start).total_seconds())\n steps.append({'step': s['step'], 'duration_seconds': dur})\n longest = max(steps, key=lambda x: x['duration_seconds'])['step']\n return json.dumps({'steps': steps, 'longest_step': longest})\n","input_data_sample":"{\n \"pipeline\": [\n {\"step\": \"ingest\", \"start\": \"2024-05-01T08:00:00\", \"end\": \"2024-05-01T08:15:30\"},\n {\"step\": \"validate\", \"start\": \"2024-05-01T08:15:30\", \"end\": \"2024-05-01T08:18:45\"},\n {\"step\": \"transform\", \"start\": \"2024-05-01T08:18:45\", \"end\": \"2024-05-01T09:02:10\"},\n {\"step\": \"load\", \"start\": \"2024-05-01T09:02:10\", \"end\": \"2024-05-01T09:10:00\"}\n ]\n}","output_data_sample":"{\"steps\": [{\"step\": \"ingest\", \"duration_seconds\": 930}, {\"step\": \"validate\", \"duration_seconds\": 195}, {\"step\": \"transform\", \"duration_seconds\": 2605}, {\"step\": \"load\", \"duration_seconds\": 470}], \"longest_step\": \"transform\"}","transformation_instruction":"For each pipeline step, calculate the duration in whole seconds. Also identify the step with the longest duration. Return a JSON object with 'steps' (array with step name and duration_seconds) and 'longest_step' (the step name)."} {"id":"cmsshvp8r00axjmp2rigizgj1","kind":"contributor_item","title":"Submission GIZGJ1","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n region_data = defaultdict(list)\n for row in reader:\n revenue = int(row['revenue'])\n expenses = int(row['expenses'])\n profit = revenue - expenses\n margin = round(profit / revenue * 100, 1)\n region_data[row['region']].append({\n 'quarter': row['report_date'],\n 'profit': profit,\n 'profit_margin_pct': margin\n })\n return json.dumps(dict(region_data))\n","input_data_sample":"report_date,region,revenue,expenses\n2024-Q1,North,450000,310000\n2024-Q1,South,320000,240000\n2024-Q2,North,510000,360000\n2024-Q2,South,410000,290000\n2024-Q3,North,480000,325000\n2024-Q3,South,395000,275000","output_data_sample":"{\"North\": [{\"quarter\": \"2024-Q1\", \"profit\": 140000, \"profit_margin_pct\": 31.1}, {\"quarter\": \"2024-Q2\", \"profit\": 150000, \"profit_margin_pct\": 29.4}, {\"quarter\": \"2024-Q3\", \"profit\": 155000, \"profit_margin_pct\": 32.3}], \"South\": [{\"quarter\": \"2024-Q1\", \"profit\": 80000, \"profit_margin_pct\": 25.0}, {\"quarter\": \"2024-Q2\", \"profit\": 120000, \"profit_margin_pct\": 29.3}, {\"quarter\": \"2024-Q3\", \"profit\": 120000, \"profit_margin_pct\": 30.4}]}","transformation_instruction":"For each region, compute the profit (revenue - expenses) and profit margin percentage (profit / revenue * 100, rounded to 1 decimal) for each quarter. Return a JSON object where each region maps to a list of objects with quarter, profit, and profit_margin_pct."} {"id":"cmsshvp8r00awjmp2vvizwr49","kind":"contributor_item","title":"Submission IZWR49","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n fruits = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n groups = defaultdict(list)\n for fruit in fruits:\n groups[fruit[0]].append(fruit)\n result = {letter: sorted(names) for letter, names in sorted(groups.items())}\n return json.dumps(result)\n","input_data_sample":"apple\nbanana\napricot\navocado\nblueberry\ncherry\nblackberry\ncantaloupe","output_data_sample":"{\"a\": [\"apple\", \"apricot\", \"avocado\"], \"b\": [\"banana\", \"blackberry\", \"blueberry\"], \"c\": [\"cantaloupe\", \"cherry\"]}","transformation_instruction":"Group the fruit names by their first letter. Return a JSON object mapping each starting letter to a sorted list of fruit names. Preserve the case as-is."} {"id":"cmssi2byc00czjmp2ytmkd90c","kind":"contributor_item","title":"Submission MKD90C","provisional":false,"output_code":"def transform(text):\n text = text.strip()\n trailing_dot = text.endswith('.')\n if trailing_dot:\n text = text[:-1]\n sentences = text.split('. ')\n reversed_sentences = [' '.join(s.split()[::-1]) for s in sentences]\n result = '. '.join(reversed_sentences)\n return result + '.' if trailing_dot else result\n","input_data_sample":"The quick fox jumps. A lazy dog sleeps.","output_data_sample":"jumps fox quick The. sleeps dog lazy A.","transformation_instruction":"Given a block of text with sentences separated by '. ', reverse the order of the words within each sentence but keep sentence order unchanged. Rejoin with '. '."} {"id":"cmssi2byc00cxjmp2h6sen9o3","kind":"contributor_item","title":"Submission SEN9O3","provisional":false,"output_code":"def transform(text):\n rows = []\n for line in text.strip().split('\\n'):\n parts = line.split('\\t')\n name = parts[0]\n scores = [float(x) for x in parts[1:]]\n avg = round(sum(scores) / len(scores), 1)\n rows.append((name, avg))\n rows.sort(key=lambda r: -r[1])\n return '\\n'.join(f'{n}: {a}' for n, a in rows)\n","input_data_sample":"Amy\t90\t85\t88\nBen\t70\t75\t80\nCleo\t95\t92\t98","output_data_sample":"Cleo: 95.0\nAmy: 87.7\nBen: 75.0","transformation_instruction":"Given tab-separated rows (no header) of student_name and 3 test scores, compute each student's average score rounded to 1 decimal, output as 'name: avg' lines sorted by average descending."} {"id":"cmssi2byc00d0jmp29y6lhbpk","kind":"contributor_item","title":"Submission 6LHBPK","provisional":false,"output_code":"import csv, io, json\nfrom collections import Counter\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n counts = Counter(row[1] for row in reader)\n return json.dumps(dict(counts))\n","input_data_sample":"2026-01-01T10:00,alice,login\n2026-01-01T10:05,bob,login\n2026-01-01T10:10,alice,click\n2026-01-01T10:15,alice,logout","output_data_sample":"{\"alice\": 3, \"bob\": 1}","transformation_instruction":"Parse a simple log of 'timestamp,user,action' CSV rows (no header) and return, as JSON, a mapping of each user to the count of their actions."} {"id":"cmssi2byc00d1jmp25w8n1cs2","kind":"contributor_item","title":"Submission 8N1CS2","provisional":false,"output_code":"def transform(text):\n nums = sorted(set(int(x.strip()) for x in text.strip().split(',')))\n return ','.join(str(n) for n in nums)\n","input_data_sample":"5, 3, 9, 3, 1, 5, 7, 1","output_data_sample":"1,3,5,7,9","transformation_instruction":"Given a comma-separated list of numbers, return the numbers sorted in ascending order with duplicates removed, as a comma-separated string."} {"id":"cmssi2byc00d2jmp2ac9qljef","kind":"contributor_item","title":"Submission 9QLJEF","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n header = [c.strip() for c in lines[0].strip('|').split('|')]\n rows = []\n for line in lines[2:]:\n cells = [c.strip() for c in line.strip('|').split('|')]\n rows.append(dict(zip(header, cells)))\n return json.dumps(rows)\n","input_data_sample":"| Name | Age |\n|------|-----|\n| Zoe | 22 |\n| Max | 31 |","output_data_sample":"[{\"Name\": \"Zoe\", \"Age\": \"22\"}, {\"Name\": \"Max\", \"Age\": \"31\"}]","transformation_instruction":"Convert a plain-text table of pipe-delimited rows (first row is header, second row is a separator of dashes) into a JSON array of objects keyed by header."} {"id":"cmssi2byc00d3jmp2ro3pzvdv","kind":"contributor_item","title":"Submission 3PZVDV","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n counts = Counter()\n for line in text.strip().split('\\n'):\n name = line.strip().rsplit('/', 1)[-1]\n if '.' in name:\n ext = name.rsplit('.', 1)[-1]\n else:\n ext = 'none'\n counts[ext] += 1\n return json.dumps(dict(counts))\n","input_data_sample":"src/app.py\nsrc/utils.py\nREADME\ndocs/guide.md\nbin/run\nsrc/test.py","output_data_sample":"{\"py\": 3, \"none\": 2, \"md\": 1}","transformation_instruction":"Given a list of file paths (one per line), return a JSON object mapping each unique file extension (without dot) to the count of files with that extension. Files with no extension are grouped under 'none'."} {"id":"cmssi2byc00d4jmp2e7spc1hy","kind":"contributor_item","title":"Submission SPC1HY","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for part in text.strip().split(';'):\n if '=' not in part:\n continue\n k, v = part.split('=', 1)\n result[k.strip()] = v.strip()\n return json.dumps(result)\n","input_data_sample":" session_id=abc123; theme = dark ; lang=en ","output_data_sample":"{\"session_id\": \"abc123\", \"theme\": \"dark\", \"lang\": \"en\"}","transformation_instruction":"Parse a semicolon-separated list of 'name=value' pairs (like a cookie header) into a JSON object, trimming whitespace around names and values."} {"id":"cmssi2byc00csjmp2661ifg1c","kind":"contributor_item","title":"Submission 1IFG1C","provisional":false,"output_code":"import re\n\ndef transform(text):\n text = text.strip()\n match = re.match(r'^(?:(\\d+)h)?(?:(\\d+)m)?(?:(\\d+)s)?$', text)\n h, m, s = (int(g) if g else 0 for g in match.groups())\n return str(h * 3600 + m * 60 + s)\n","input_data_sample":"2h30m15s","output_data_sample":"9015","transformation_instruction":"Convert a duration string like '2h30m15s' (any subset of hours/minutes/seconds) into total seconds as an integer string."} {"id":"cmssi2byc00cpjmp259uri4l5","kind":"contributor_item","title":"Submission URI4L5","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for line in text.strip().split('\\n'):\n if ':' not in line:\n continue\n k, v = line.split(':', 1)\n k, v = k.strip(), v.strip()\n try:\n if '.' in v:\n v = float(v)\n else:\n v = int(v)\n except ValueError:\n pass\n result[k] = v\n return json.dumps(result)\n","input_data_sample":"name: Priya\nage: 29\nheight: 5.6\ncity: Pune","output_data_sample":"{\"name\": \"Priya\", \"age\": 29, \"height\": 5.6, \"city\": \"Pune\"}","transformation_instruction":"Convert a list of 'key: value' lines (one per line) into a JSON object, casting numeric-looking values to int or float."} {"id":"cmssi2byc00cyjmp2m29vxekz","kind":"contributor_item","title":"Submission 9VXEKZ","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = []\n for line in text.strip().split('\\n'):\n line = line.strip().lstrip('#')\n r, g, b = int(line[0:2], 16), int(line[2:4], 16), int(line[4:6], 16)\n result.append([r, g, b])\n return json.dumps(result)\n","input_data_sample":"#FF0000\n#00FF00\n#1A2B3C","output_data_sample":"[[255, 0, 0], [0, 255, 0], [26, 43, 60]]","transformation_instruction":"Convert a list of hex color codes (one per line, like #RRGGBB) into their RGB decimal tuples, output as a JSON array of [r,g,b] arrays."} {"id":"cmssi2byc00d6jmp2abgo826h","kind":"contributor_item","title":"Submission GO826H","provisional":false,"output_code":"import math\n\ndef transform(text):\n tokens = text.strip().split()\n stack = []\n for tok in tokens:\n if tok in ('+', '-', '*', '/'):\n b = stack.pop()\n a = stack.pop()\n if tok == '+':\n stack.append(a + b)\n elif tok == '-':\n stack.append(a - b)\n elif tok == '*':\n stack.append(a * b)\n else:\n stack.append(int(math.trunc(a / b)))\n else:\n stack.append(int(tok))\n return str(stack[0])\n","input_data_sample":"5 1 2 + 4 * + 3 -","output_data_sample":"14","transformation_instruction":"Given a block of whitespace-separated tokens representing a simple postfix (RPN) arithmetic expression using +, -, *, / on integers, evaluate it and return the integer result as a string (use integer division truncated toward zero)."} {"id":"cmssi2byc00d7jmp2mohskmfz","kind":"contributor_item","title":"Submission HSKMFZ","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n totals = defaultdict(float)\n for row in reader:\n product, qty, price = row[0], float(row[1]), float(row[2])\n totals[product] += qty * price\n return json.dumps({k: round(v, 2) for k, v in totals.items()})\n","input_data_sample":"Widget,3,9.99\nGadget,1,19.99\nWidget,2,9.99","output_data_sample":"{\"Widget\": 49.95, \"Gadget\": 19.99}","transformation_instruction":"Given rows of 'product,quantity,price' CSV (no header), compute the total revenue (quantity*price) per product, output as JSON object mapping product to total revenue rounded to 2 decimals."} {"id":"cmssi2byc00d5jmp2o1z25ymx","kind":"contributor_item","title":"Submission Z25YMX","provisional":false,"output_code":"def transform(text):\n nums = [int(l.strip()) for l in text.strip().split('\\n')]\n result = []\n current_max = None\n for n in nums:\n current_max = n if current_max is None else max(current_max, n)\n result.append(current_max)\n return ','.join(str(x) for x in result)\n","input_data_sample":"3\n1\n4\n1\n5\n9\n2\n6","output_data_sample":"3,3,4,4,5,9,9,9","transformation_instruction":"Given a list of integers one per line, compute the running maximum after each element and output as a comma-separated string."} {"id":"cmssi2byc00cvjmp2nm9ryced","kind":"contributor_item","title":"Submission 9RYCED","provisional":false,"output_code":"def transform(text):\n nums = [int(x.strip()) for x in text.strip().split(',')]\n if not nums:\n return ''\n groups = []\n current, count = nums[0], 1\n for n in nums[1:]:\n if n == current:\n count += 1\n else:\n groups.append((current, count))\n current, count = n, 1\n groups.append((current, count))\n return ' '.join(f'{c}x{v}' for v, c in groups)\n","input_data_sample":"1,1,1,2,2,3,3,3,3,1","output_data_sample":"3x1 2x2 4x3 1x1","transformation_instruction":"Given a list of integers separated by commas, return them run-length encoded as pairs like '3xN' joined by spaces (e.g. consecutive equal values are grouped)."} {"id":"cmssi2byc00cujmp2r3omraky","kind":"contributor_item","title":"Submission OMRAKY","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n result = {}\n def flatten(obj, prefix=''):\n if isinstance(obj, dict):\n for k, v in obj.items():\n flatten(v, f'{prefix}.{k}' if prefix else k)\n else:\n result[prefix] = obj\n flatten(data)\n return json.dumps(result)\n","input_data_sample":"{\"user\": {\"name\": \"Sam\", \"address\": {\"city\": \"Delhi\", \"zip\": \"110001\"}}, \"active\": true}","output_data_sample":"{\"user.name\": \"Sam\", \"user.address.city\": \"Delhi\", \"user.address.zip\": \"110001\", \"active\": true}","transformation_instruction":"Convert a nested JSON object into a flattened single-level JSON object using dot notation for nested keys."} {"id":"cmssi2byc00cwjmp2bjmjbl3z","kind":"contributor_item","title":"Submission MJBL3Z","provisional":false,"output_code":"import json\n\ndef transform(text):\n items = []\n for line in text.strip().split('\\n'):\n line = line.strip()\n if line.startswith('- '):\n items.append(line[2:].strip())\n return json.dumps(items)\n","input_data_sample":"Shopping list:\n- Milk\n- Eggs\n- Bread\nDon't forget!\n- Butter","output_data_sample":"[\"Milk\", \"Eggs\", \"Bread\", \"Butter\"]","transformation_instruction":"Parse a simple Markdown unordered list (lines starting with '- ') and return a JSON array of the item strings, ignoring non-list lines."} {"id":"cmssi2byc00ctjmp2gw597xo9","kind":"contributor_item","title":"Submission 597XO9","provisional":false,"output_code":"def transform(text):\n best_name, best_score = None, None\n for line in text.strip().split('\\n'):\n name, score = line.split(',')\n name, score = name.strip(), int(score.strip())\n if best_score is None or score > best_score or (score == best_score and name < best_name):\n best_name, best_score = name, score\n return best_name\n","input_data_sample":"Alice,88\nBob,92\nCarol,92\nDave,75","output_data_sample":"Bob","transformation_instruction":"Given a list of (name, score) pairs one per line separated by a comma, return the name with the highest score. On a tie, return the alphabetically first name."} {"id":"cmssi2byc00cqjmp278w85sdm","kind":"contributor_item","title":"Submission W85SDM","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n return json.dumps(list(reader))\n","input_data_sample":"name,age,city\nAlice,30,NYC\nBob,25,LA","output_data_sample":"[{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"NYC\"}, {\"name\": \"Bob\", \"age\": \"25\", \"city\": \"LA\"}]","transformation_instruction":"Convert a CSV string with a header row into a JSON array of objects, one per data row."} {"id":"cmssi2byc00crjmp2sm4lzkba","kind":"contributor_item","title":"Submission 4LZKBA","provisional":false,"output_code":"import re\nfrom collections import Counter\n\ndef transform(text):\n words = re.findall(r\"[a-zA-Z']+\", text.lower())\n counts = Counter(words)\n top = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))[:3]\n return ','.join(f'{w}:{c}' for w, c in top)\n","input_data_sample":"The cat sat on the mat. The cat ran. A dog watched the cat run.","output_data_sample":"the:4,cat:3,a:1","transformation_instruction":"Given a block of text, return the top 3 most frequent words (lowercased, punctuation stripped) as a comma-separated 'word:count' list, ordered by count desc then alphabetically."} {"id":"cmssik3t000i8jmp28z7ynfvt","kind":"contributor_item","title":"Submission 7YNFVT","provisional":false,"output_code":"import re\nfrom datetime import datetime, timezone\n\ndef transform(input):\n def repl(m):\n ts = int(m.group(0))\n return datetime.fromtimestamp(ts, tz=timezone.utc).strftime(\"%Y-%m-%dT%H:%M:%SZ\")\n return re.sub(r\"\\b1\\d{9}\\b\", repl, input)\n","input_data_sample":"Event started at 1704067200 and ended at 1704070800.\nNext checkpoint scheduled for 1704074400.\n","output_data_sample":"Event started at 2024-01-01T00:00:00Z and ended at 2024-01-01T01:00:00Z.\nNext checkpoint scheduled for 2024-01-01T02:00:00Z.\n","transformation_instruction":"Find all 10-digit Unix timestamps embedded in free text and replace them in-place with their UTC ISO 8601 representation ('YYYY-MM-DDTHH:MM:SSZ')."} {"id":"cmssik3t000iejmp22sksc5xx","kind":"contributor_item","title":"Submission KSC5XX","provisional":false,"output_code":"import re\n\ndef transform(input):\n def repl(m):\n digits = m.group(0)\n return \"*\" * (len(digits) - 4) + digits[-4:]\n return re.sub(r\"\\d{10,}\", repl, input)\n","input_data_sample":"Card number 4111222233334444 was charged. Reference ID 998877665544 issued. Short code 12345 unaffected.\n","output_data_sample":"Card number ************4444 was charged. Reference ID ********5544 issued. Short code 12345 unaffected.\n","transformation_instruction":"Redact digit runs of length 10 or more in text, masking all but the last 4 digits with asterisks, leaving everything else (including shorter digit runs) unchanged."} {"id":"cmssik3t000icjmp2ttz67m66","kind":"contributor_item","title":"Submission Z67M66","provisional":false,"output_code":"def transform(input):\n lines = [l for l in input.strip().split(\"\\n\") if l.strip()]\n out_lines = []\n for line in lines:\n cols = [c.strip() for c in line.split(\"|\")]\n out_lines.append(\"\\t\".join(cols))\n return \"\\n\".join(out_lines)\n","input_data_sample":"Name|Role|Salary\nAlice|Engineer|90000\nBob|Designer|80000\n","output_data_sample":"Name\tRole\tSalary\nAlice\tEngineer\t90000\nBob\tDesigner\t80000","transformation_instruction":"Convert a pipe ('|') delimited text block (header + rows) into a tab-separated (TSV) text block."} {"id":"cmssik3t000idjmp2xdmcfwxn","kind":"contributor_item","title":"Submission MCFWXN","provisional":false,"output_code":"import json, re\nfrom collections import Counter\n\ndef transform(input):\n words = re.findall(r\"[a-zA-Z']+\", input.lower())\n counts = Counter(words)\n sorted_counts = dict(sorted(counts.items(), key=lambda x: (-x[1], x[0])))\n return json.dumps(sorted_counts)\n","input_data_sample":"The quick brown fox jumps over the lazy dog. The dog barks, and the fox runs away quickly.","output_data_sample":"{\"the\": 4, \"dog\": 2, \"fox\": 2, \"and\": 1, \"away\": 1, \"barks\": 1, \"brown\": 1, \"jumps\": 1, \"lazy\": 1, \"over\": 1, \"quick\": 1, \"quickly\": 1, \"runs\": 1}","transformation_instruction":"Compute a word-frequency histogram of a text block (case-insensitive, alphabetic words only) and return it as a JSON object sorted by descending frequency then alphabetically."} {"id":"cmssik3t000i9jmp2rrvlud4p","kind":"contributor_item","title":"Submission VLUD4P","provisional":false,"output_code":"import json\n\ndef transform(input):\n out = []\n for line in input.strip().split(\"\\n\"):\n line = line.strip()\n if line.startswith(\"- [ ]\") or line.startswith(\"- [x]\") or line.startswith(\"- [X]\"):\n done = line[3] in (\"x\", \"X\")\n task = line[6:].strip()\n out.append({\"task\": task, \"done\": done})\n return json.dumps(out)\n","input_data_sample":"- [x] Write project proposal\n- [ ] Review budget estimates\n- [x] Send invites\n- [ ] Finalize venue\n","output_data_sample":"[{\"task\": \"Write project proposal\", \"done\": true}, {\"task\": \"Review budget estimates\", \"done\": false}, {\"task\": \"Send invites\", \"done\": true}, {\"task\": \"Finalize venue\", \"done\": false}]","transformation_instruction":"Parse a Markdown checkbox task list ('- [ ] task' / '- [x] done') into a JSON array of objects with 'task' and 'done' (boolean) fields."} {"id":"cmssik3t000ibjmp2a8pe4pk4","kind":"contributor_item","title":"Submission PE4PK4","provisional":false,"output_code":"import json, re\n\ndef transform(input):\n matches = re.findall(r'\"([^\"]*)\"', input)\n return json.dumps(matches)\n","input_data_sample":"She said \"hello there\" and then asked \"how are you doing?\" before leaving with a quick \"goodbye\".","output_data_sample":"[\"hello there\", \"how are you doing?\", \"goodbye\"]","transformation_instruction":"Extract all double-quoted substrings from a block of free text into a JSON array of strings, in order of appearance."} {"id":"cmssik3t000iajmp2cvofv4v2","kind":"contributor_item","title":"Submission OFV4V2","provisional":false,"output_code":"import json\n\ndef to_camel(key):\n parts = key.split(\"_\")\n return parts[0] + \"\".join(p.capitalize() for p in parts[1:])\n\ndef convert(obj):\n if isinstance(obj, dict):\n return {to_camel(k): convert(v) for k, v in obj.items()}\n elif isinstance(obj, list):\n return [convert(v) for v in obj]\n else:\n return obj\n\ndef transform(input):\n data = json.loads(input)\n return json.dumps(convert(data))\n","input_data_sample":"{\"user_id\": 1, \"first_name\": \"Alice\", \"contact_info\": {\"email_address\": \"a@x.com\", \"phone_number\": \"555-1000\"}, \"order_items\": [{\"item_id\": 5, \"unit_price\": 9.99}]}","output_data_sample":"{\"userId\": 1, \"firstName\": \"Alice\", \"contactInfo\": {\"emailAddress\": \"a@x.com\", \"phoneNumber\": \"555-1000\"}, \"orderItems\": [{\"itemId\": 5, \"unitPrice\": 9.99}]}","transformation_instruction":"Recursively convert all snake_case keys in a nested JSON object (including within lists) into camelCase keys, preserving values and structure."} {"id":"cmssik3t000i0jmp2ugzv62kr","kind":"contributor_item","title":"Submission ZV62KR","provisional":false,"output_code":"import json, re\n\ndef transform(input):\n lines = [l.strip() for l in input.strip().split(\"\\n\") if l.strip()]\n results = []\n for line in lines:\n digits = re.sub(r\"\\D\", \"\", line)\n if len(digits) == 10:\n digits = \"1\" + digits\n results.append(\"+\" + digits)\n return json.dumps(results)\n","input_data_sample":"(415) 555-0132\n415.555.0198\n+1 415-555-0173\n1-415-555-0111\n","output_data_sample":"[\"+14155550132\", \"+14155550198\", \"+14155550173\", \"+14155550111\"]","transformation_instruction":"Normalize varied US phone number formats (parentheses, dots, dashes, with or without country code) into a JSON array of E.164-like strings ('+1' followed by 10 digits)."} {"id":"cmssik3t000i5jmp2ose1fpc8","kind":"contributor_item","title":"Submission E1FPC8","provisional":false,"output_code":"import json\n\ndef transform(input):\n result = {}\n for line in input.strip().split(\"\\n\"):\n if \":\" in line:\n k, v = line.split(\":\", 1)\n result[k.strip()] = v.strip()\n return json.dumps(result)\n","input_data_sample":"From: alice@example.com\nTo: bob@example.com\nSubject: Quarterly Report\nDate: Mon, 10 Aug 2026 09:00:00 -0000\nX-Priority: 1\n","output_data_sample":"{\"From\": \"alice@example.com\", \"To\": \"bob@example.com\", \"Subject\": \"Quarterly Report\", \"Date\": \"Mon, 10 Aug 2026 09:00:00 -0000\", \"X-Priority\": \"1\"}","transformation_instruction":"Extract 'Key: Value' pairs from an email-header-style text block into a flat JSON object."} {"id":"cmssik3t000hzjmp2je9by3qh","kind":"contributor_item","title":"Submission 9BY3QH","provisional":false,"output_code":"import re\n\ndef transform(input):\n total = 0.0\n for line in input.splitlines():\n m = re.search(r\"\\$([0-9,]+\\.\\d{2})\", line)\n if m:\n total += float(m.group(1).replace(\",\", \"\"))\n return f\"{total:.2f}\"\n","input_data_sample":"Item: Widget A x2 ......... $19.99\nItem: Widget B x1 ......... $1,250.00\nShipping fee .............. $15.50\nItem: Widget C x5 ......... $99.95\n","output_data_sample":"1385.44","transformation_instruction":"Extract all dollar amounts (formatted like $1,234.56) from semi-structured invoice line text and return their sum formatted to 2 decimal places as a string."} {"id":"cmssik3sz00hvjmp2zfuf6f0w","kind":"contributor_item","title":"Submission UF6F0W","provisional":false,"output_code":"import json\n\ndef transform(input):\n data = json.loads(input)\n out = {}\n def flat(obj, prefix=\"\"):\n if isinstance(obj, dict):\n for k, v in obj.items():\n flat(v, f\"{prefix}{k}.\")\n elif isinstance(obj, list):\n for i, v in enumerate(obj):\n flat(v, f\"{prefix}{i}.\")\n else:\n out[prefix[:-1]] = obj\n flat(data)\n return json.dumps(out)\n","input_data_sample":"{\"user\": {\"name\": \"Alice\", \"address\": {\"city\": \"Boston\", \"zip\": \"02110\"}}, \"tags\": [\"admin\", \"beta\"], \"active\": true}","output_data_sample":"{\"user.name\": \"Alice\", \"user.address.city\": \"Boston\", \"user.address.zip\": \"02110\", \"tags.0\": \"admin\", \"tags.1\": \"beta\", \"active\": true}","transformation_instruction":"Flatten a nested JSON object into a single-level dict with dotted-path keys (e.g. 'user.address.city'), including array indices as path segments (e.g. 'tags.0')."} {"id":"cmssik3t000hxjmp2z71t7wer","kind":"contributor_item","title":"Submission 1T7WER","provisional":false,"output_code":"import csv, io\n\ndef transform(input):\n reader = csv.DictReader(io.StringIO(input.strip()))\n fieldnames = reader.fieldnames\n rows = list(reader)\n dedup = {}\n for row in rows:\n dedup[row[\"id\"]] = row\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=fieldnames, lineterminator=\"\\n\")\n writer.writeheader()\n for row in dedup.values():\n writer.writerow(row)\n return out.getvalue().strip()\n","input_data_sample":"id,name,score\n1,Alice,10\n2,Bob,20\n1,Alice,15\n3,Carol,30\n2,Bob,25\n","output_data_sample":"id,name,score\n1,Alice,15\n2,Bob,25\n3,Carol,30","transformation_instruction":"Deduplicate CSV rows by the 'id' column, keeping only the last occurrence of each id, and return the deduplicated CSV (header + rows) as a string."} {"id":"cmssik3t000i1jmp2a99dr0tq","kind":"contributor_item","title":"Submission 9DR0TQ","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = [l for l in input.split(\"\\n\") if l.strip()]\n header = lines[0]\n import re\n cols = re.findall(r\"\\S+(?:\\s\\S+)*\", header)\n bounds = []\n idx = 0\n for c in cols:\n start = header.index(c, idx)\n bounds.append(start)\n idx = start + len(c)\n bounds.append(10**6)\n records = []\n for line in lines[1:]:\n rec = {}\n for i, name in enumerate(cols):\n val = line[bounds[i]:bounds[i+1]].strip()\n rec[name.strip()] = val\n records.append(rec)\n return json.dumps(records)\n","input_data_sample":"NAME AGE CITY\nAlice 30 Boston\nBob 25 Denver\nCarol 41 Reno\n","output_data_sample":"[{\"NAME\": \"Alice\", \"AGE\": \"30\", \"CITY\": \"Boston\"}, {\"NAME\": \"Bob\", \"AGE\": \"25\", \"CITY\": \"Denver\"}, {\"NAME\": \"Carol\", \"AGE\": \"41\", \"CITY\": \"Reno\"}]","transformation_instruction":"Convert a fixed-width text table (columns aligned by whitespace, header row defines column names and positions) into a JSON array of record objects."} {"id":"cmssik3t000i3jmp2nk5t0i75","kind":"contributor_item","title":"Submission 5T0I75","provisional":false,"output_code":"import json, re\n\ndef transform(input):\n records = []\n for line in input.strip().split(\"\\n\"):\n if not line.strip():\n continue\n pairs = re.findall(r'(\\w+)=(\"[^\"]*\"|\\S+)', line)\n rec = {}\n for k, v in pairs:\n if v.startswith('\"') and v.endswith('\"'):\n v = v[1:-1]\n rec[k] = v\n records.append(rec)\n return json.dumps(records)\n","input_data_sample":"level=INFO msg=\"User logged in\" user=alice ip=10.0.0.5\nlevel=ERROR msg=\"Connection failed\" user=bob ip=10.0.0.9\nlevel=WARN msg=\"Low disk space\" user=system ip=10.0.0.1\n","output_data_sample":"[{\"level\": \"INFO\", \"msg\": \"User logged in\", \"user\": \"alice\", \"ip\": \"10.0.0.5\"}, {\"level\": \"ERROR\", \"msg\": \"Connection failed\", \"user\": \"bob\", \"ip\": \"10.0.0.9\"}, {\"level\": \"WARN\", \"msg\": \"Low disk space\", \"user\": \"system\", \"ip\": \"10.0.0.1\"}]","transformation_instruction":"Parse log lines containing space-separated key=value pairs (values may be double-quoted with embedded spaces) into a JSON array of objects."} {"id":"cmssik3sz00hwjmp2oexlgscc","kind":"contributor_item","title":"Submission XLGSCC","provisional":false,"output_code":"import json\n\ndef transform(input):\n records = json.loads(input)\n out = {}\n for rec in records:\n out[rec[\"key\"]] = rec[\"value\"]\n return json.dumps(out)\n","input_data_sample":"[{\"key\": \"width\", \"value\": 100}, {\"key\": \"height\", \"value\": 200}, {\"key\": \"color\", \"value\": \"red\"}]","output_data_sample":"{\"width\": 100, \"height\": 200, \"color\": \"red\"}","transformation_instruction":"Pivot a JSON array of {\"key\":..., \"value\":...} records into a single flat JSON object mapping each key to its value."} {"id":"cmssik3t000hyjmp2g6vnssvx","kind":"contributor_item","title":"Submission VNSSVX","provisional":false,"output_code":"import json\n\ndef transform(input):\n result = {}\n current = None\n for line in input.splitlines():\n line = line.strip()\n if not line or line.startswith(\";\") or line.startswith(\"#\"):\n continue\n if line.startswith(\"[\") and line.endswith(\"]\"):\n current = line[1:-1]\n result[current] = {}\n elif \"=\" in line and current is not None:\n k, v = line.split(\"=\", 1)\n result[current][k.strip()] = v.strip()\n return json.dumps(result)\n","input_data_sample":"[server]\nhost = 0.0.0.0\nport = 8080\n\n[database]\nname = prod_db\nuser = admin\n; comment line\ntimeout = 30\n","output_data_sample":"{\"server\": {\"host\": \"0.0.0.0\", \"port\": \"8080\"}, \"database\": {\"name\": \"prod_db\", \"user\": \"admin\", \"timeout\": \"30\"}}","transformation_instruction":"Parse INI-style config text (sections in [brackets], key = value lines, ';' or '#' comments) into nested JSON keyed by section name."} {"id":"cmssik3t000i2jmp2h6u2h7wv","kind":"contributor_item","title":"Submission U2H7WV","provisional":false,"output_code":"import json\nfrom urllib.parse import parse_qs\n\ndef transform(input):\n parsed = parse_qs(input.strip())\n return json.dumps(parsed)\n","input_data_sample":"color=red&color=blue&size=M&tag=a&tag=b&tag=c","output_data_sample":"{\"color\": [\"red\", \"blue\"], \"size\": [\"M\"], \"tag\": [\"a\", \"b\", \"c\"]}","transformation_instruction":"Parse a URL query string, merging duplicate keys into arrays of their values, and return as a JSON object (using urllib.parse.parse_qs semantics)."} {"id":"cmssik3t000i4jmp2pbxfjdvw","kind":"contributor_item","title":"Submission XFJDVW","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = [l for l in input.split(\"\\n\") if l.strip()]\n root = {}\n stack = [(-1, root)]\n for line in lines:\n stripped = line.lstrip(\" \")\n indent = len(line) - len(stripped)\n key, _, val = stripped.partition(\":\")\n key = key.strip()\n val = val.strip()\n while stack and indent <= stack[-1][0]:\n stack.pop()\n parent = stack[-1][1]\n if val == \"\":\n child = {}\n parent[key] = child\n stack.append((indent, child))\n else:\n parent[key] = val\n return json.dumps(root)\n","input_data_sample":"server:\n host: localhost\n port: 8080\ndatabase:\n name: mydb\n credentials:\n user: admin\n password: secret\nlogging:\n level: debug\n","output_data_sample":"{\"server\": {\"host\": \"localhost\", \"port\": \"8080\"}, \"database\": {\"name\": \"mydb\", \"credentials\": {\"user\": \"admin\", \"password\": \"secret\"}}, \"logging\": {\"level\": \"debug\"}}","transformation_instruction":"Parse a simple YAML-like indented text block (2-space indentation, 'key:' for nested mappings, 'key: value' for scalars) into nested JSON."} {"id":"cmssik3t000i6jmp2pkft21yg","kind":"contributor_item","title":"Submission FT21YG","provisional":false,"output_code":"import csv, io, json\n\ndef transform(input):\n reader = csv.DictReader(io.StringIO(input.strip()))\n out = []\n for row in reader:\n tags = [t.strip() for t in row[\"tags\"].split(\";\") if t.strip()]\n for tag in tags:\n new_row = dict(row)\n new_row[\"tags\"] = tag\n out.append(new_row)\n return json.dumps(out)\n","input_data_sample":"id,name,tags\n1,Alice,admin;beta;tester\n2,Bob,viewer\n3,Carol,admin;viewer\n","output_data_sample":"[{\"id\": \"1\", \"name\": \"Alice\", \"tags\": \"admin\"}, {\"id\": \"1\", \"name\": \"Alice\", \"tags\": \"beta\"}, {\"id\": \"1\", \"name\": \"Alice\", \"tags\": \"tester\"}, {\"id\": \"2\", \"name\": \"Bob\", \"tags\": \"viewer\"}, {\"id\": \"3\", \"name\": \"Carol\", \"tags\": \"admin\"}, {\"id\": \"3\", \"name\": \"Carol\", \"tags\": \"viewer\"}]","transformation_instruction":"Given CSV rows with a semicolon-separated 'tags' column, explode each row into one row per tag, duplicating the other column values, and return as a JSON array of objects."} {"id":"cmssik3t000i7jmp2vl7qeg92","kind":"contributor_item","title":"Submission 7QEG92","provisional":false,"output_code":"def transform(input):\n lines = [l for l in input.strip().split(\"\\n\") if l.strip()]\n total = 0.0\n out_lines = []\n for line in lines:\n parts = line.split(\",\")\n amount = float(parts[-1])\n total += amount\n out_lines.append(line + \",\" + f\"{total:.2f}\")\n return \"\\n\".join(out_lines)\n","input_data_sample":"2026-01-01,Deposit,100.00\n2026-01-02,Deposit,50.00\n2026-01-03,Withdrawal,-30.00\n2026-01-04,Deposit,20.00\n","output_data_sample":"2026-01-01,Deposit,100.00,100.00\n2026-01-02,Deposit,50.00,150.00\n2026-01-03,Withdrawal,-30.00,120.00\n2026-01-04,Deposit,20.00,140.00","transformation_instruction":"Given CSV-like lines of 'date,description,amount', append a running cumulative total column to each line based on the amount field, returning the updated lines joined by newlines."} {"id":"cmssila2x00jyjmp2cxk195uv","kind":"contributor_item","title":"Submission K195UV","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n out = {}\n def rec(prefix, obj):\n if isinstance(obj, dict):\n for k, v in obj.items():\n rec(f\"{prefix}.{k}\" if prefix else k, v)\n else:\n out[prefix] = obj\n rec(\"\", data)\n return json.dumps(out, sort_keys=True)\n","input_data_sample":"{\"user\": {\"name\": \"Maria\", \"address\": {\"city\": \"Lima\", \"zip\": \"15001\"}}, \"active\": true}","output_data_sample":"{\"active\": true, \"user.address.city\": \"Lima\", \"user.address.zip\": \"15001\", \"user.name\": \"Maria\"}","transformation_instruction":"Flatten a nested JSON object into a single-level JSON object whose keys are dot-separated paths to each leaf value (e.g. 'user.address.city'). Keys in the output must be sorted alphabetically."} {"id":"cmssila2x00jzjmp2tl4ua1q5","kind":"contributor_item","title":"Submission 4UA1Q5","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n rows = []\n for r in reader:\n rows.append({\n \"id\": int(r[\"id\"]),\n \"name\": r[\"name\"],\n \"price\": float(r[\"price\"]),\n \"in_stock\": r[\"in_stock\"].strip().lower() == \"true\",\n })\n return json.dumps(rows)\n","input_data_sample":"id,name,price,in_stock\n1,Widget,9.99,true\n2,Gadget,19.5,false\n","output_data_sample":"[{\"id\": 1, \"name\": \"Widget\", \"price\": 9.99, \"in_stock\": true}, {\"id\": 2, \"name\": \"Gadget\", \"price\": 19.5, \"in_stock\": false}]","transformation_instruction":"Parse a CSV table with header row into a JSON array of objects, coercing 'id' to an integer, 'price' to a float, and 'in_stock' to a boolean (case-insensitive 'true'/'false'), leaving 'name' as a string."} {"id":"cmssila2x00k1jmp2o5zz92v5","kind":"contributor_item","title":"Submission ZZ92V5","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n totals = {}\n for rec in data:\n totals[rec[\"category\"]] = totals.get(rec[\"category\"], 0) + rec[\"amount\"]\n totals = {k: round(v, 2) for k, v in sorted(totals.items())}\n return json.dumps(totals)\n","input_data_sample":"[{\"category\": \"Books\", \"amount\": 12.5}, {\"category\": \"Electronics\", \"amount\": 99.99}, {\"category\": \"Books\", \"amount\": 7.25}, {\"category\": \"Electronics\", \"amount\": 20.0}, {\"category\": \"Toys\", \"amount\": 15.0}]","output_data_sample":"{\"Books\": 19.75, \"Electronics\": 119.99, \"Toys\": 15.0}","transformation_instruction":"Given a JSON array of sale records each with 'category' and 'amount', sum the amounts per category (rounded to 2 decimal places), and return a single JSON object mapping category name to total, with keys sorted alphabetically."} {"id":"cmssila2x00k0jmp2ni39aq9m","kind":"contributor_item","title":"Submission 39AQ9M","provisional":false,"output_code":"import re, json\n\ndef transform(text):\n lines = text.strip().split(\"\\n\")[1:]\n seen = []\n for line in lines:\n digits = re.sub(r\"\\D\", \"\", line)\n if digits.startswith(\"1\") and len(digits) == 11:\n digits = digits[1:]\n if len(digits) != 10:\n continue\n norm = \"+1\" + digits\n if norm not in seen:\n seen.append(norm)\n return json.dumps(seen)\n","input_data_sample":"Contacts:\n(415) 555-0132\n415-555-0198\n+1 415 555 0132\n555.0177\n","output_data_sample":"[\"+14155550132\", \"+14155550198\"]","transformation_instruction":"From a text listing of US phone numbers (first line is a 'Contacts:' header to skip), extract only valid 10-digit US numbers (with or without a leading '1' country code), normalize each to '+1XXXXXXXXXX' format, drop any line that doesn't yield exactly 10 digits, remove duplicates while preserving first-seen order, and return the result as a JSON array of strings."} {"id":"cmssis6l200nxjmp2aqr19140","kind":"contributor_item","title":"Submission R19140","provisional":false,"output_code":"def transform(input):\n emails = [e.strip() for e in input.strip().split('\\n') if e.strip()]\n domains = sorted(set(e.split('@')[1] for e in emails))\n return '\\n'.join(domains)\n","input_data_sample":"alice@example.com\nbob@gmail.com\ncarol@example.com\ndave@yahoo.com","output_data_sample":"example.com\ngmail.com\nyahoo.com","transformation_instruction":"Extract unique email domains, sort them alphabetically, and return them one per line."} {"id":"cmssis6l200nyjmp24qxkirq5","kind":"contributor_item","title":"Submission XKIRQ5","provisional":false,"output_code":"def transform(input):\n total = sum(int(line.split(':')[1]) for line in input.strip().split('\\n'))\n return str(total)\n","input_data_sample":"product_a:150\nproduct_b:200\nproduct_c:75\nproduct_d:125","output_data_sample":"550","transformation_instruction":"Sum the numeric values from colon-separated key:value pairs and return the total as a string."} {"id":"cmssis6l200nvjmp2djusjh4r","kind":"contributor_item","title":"Submission USJH4R","provisional":false,"output_code":"import json, urllib.parse\n\ndef transform(input):\n parsed = urllib.parse.parse_qs(input.strip())\n result = {k: v[0] if len(v) == 1 else v for k, v in parsed.items()}\n return json.dumps(result)\n","input_data_sample":"name=Alice&age=30&city=New+York&role=Developer","output_data_sample":"{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"New York\", \"role\": \"Developer\"}","transformation_instruction":"Parse a URL query string into a JSON object, decoding URL-encoded characters."} {"id":"cmssis6l200nwjmp25dbpmual","kind":"contributor_item","title":"Submission BPMUAL","provisional":false,"output_code":"def transform(input):\n return ','.join(w.strip().title() for w in input.split(','))\n","input_data_sample":"apple,banana,cherry,date","output_data_sample":"Apple,Banana,Cherry,Date","transformation_instruction":"Title-case each word in a comma-separated list and return the result as a comma-separated string."} {"id":"cmssis6l200nzjmp2xb3elovz","kind":"contributor_item","title":"Submission 3ELOVZ","provisional":false,"output_code":"import csv, json, io\n\ndef transform(input):\n reader = csv.DictReader(io.StringIO(input.strip()))\n return json.dumps(list(reader))\n","input_data_sample":"name,age,city\nAlice,30,Paris\nBob,25,London\n","output_data_sample":"[{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"Paris\"}, {\"name\": \"Bob\", \"age\": \"25\", \"city\": \"London\"}]","transformation_instruction":"Convert CSV input into a JSON array of objects using the first row as headers."} {"id":"cmssitudq00orjmp2u55coz38","kind":"contributor_item","title":"Submission 5COZ38","provisional":false,"output_code":"def transform(text):\n s = text.strip()\n if not s:\n return \"\"\n parts = []\n count = 1\n prev = s[0]\n for ch in s[1:]:\n if ch == prev:\n count += 1\n else:\n parts.append(f\"{prev}{count}\")\n prev = ch\n count = 1\n parts.append(f\"{prev}{count}\")\n return \"\".join(parts)","input_data_sample":"aaabbbccccd","output_data_sample":"a3b3c4d1","transformation_instruction":"Run-length encode a string of repeated characters into '' pairs concatenated together."} {"id":"cmssitudq00osjmp2rjgxci81","kind":"contributor_item","title":"Submission GXCI81","provisional":false,"output_code":"import json, csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()), delimiter=\"\\t\")\n rows = []\n for row in reader:\n converted = {}\n for k, v in row.items():\n try:\n converted[k] = int(v)\n except ValueError:\n try:\n converted[k] = float(v)\n except ValueError:\n converted[k] = v\n rows.append(converted)\n return json.dumps(rows)","input_data_sample":"name\tscore\tnote\nAlice\t95\tTop, great\nBob\t88.5\tGood","output_data_sample":"[{\"name\": \"Alice\", \"score\": 95, \"note\": \"Top, great\"}, {\"name\": \"Bob\", \"score\": 88.5, \"note\": \"Good\"}]","transformation_instruction":"Parse tab-separated values with a header row into a JSON array of objects, coercing numeric-looking fields to int or float."} {"id":"cmssitudq00otjmp230ti933g","kind":"contributor_item","title":"Submission TI933G","provisional":false,"output_code":"import json\n\ndef transform(text):\n ranges = []\n for part in text.strip().split(\",\"):\n a, b = part.strip().split(\"-\")\n ranges.append((int(a), int(b)))\n ranges.sort()\n merged = [ranges[0]]\n for start, end in ranges[1:]:\n last_start, last_end = merged[-1]\n if start <= last_end + 1:\n merged[-1] = (last_start, max(last_end, end))\n else:\n merged.append((start, end))\n return json.dumps([f\"{a}-{b}\" for a, b in merged])","input_data_sample":"1-3, 5-7, 2-4, 10-10, 8-9","output_data_sample":"[\"1-10\"]","transformation_instruction":"Parse a comma-separated list of 'start-end' integer ranges, merge overlapping or adjacent ranges, and return the merged ranges as a JSON array of 'start-end' strings."} {"id":"cmssjmldn00sqjmp2txyulq2t","kind":"contributor_item","title":"Submission YULQ2T","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n groups={}\n for r in csv.DictReader(io.StringIO(text)): groups.setdefault(r[\"sensor\"],[]).append(float(r[\"value\"]))\n out={k:{\"min\":min(v),\"max\":max(v),\"mean\":round(sum(v)/len(v),2)} for k,v in sorted(groups.items())}\n return json.dumps(out)","input_data_sample":"sensor,value\ns2,9\ns1,3\ns2,15\ns1,7\ns1,8","output_data_sample":"{\"s1\": {\"min\": 3.0, \"max\": 8.0, \"mean\": 6.0}, \"s2\": {\"min\": 9.0, \"max\": 15.0, \"mean\": 12.0}}","transformation_instruction":"Convert CSV sensor readings into JSON containing each sensor's minimum, maximum, and rounded mean, sorted by sensor id."} {"id":"cmssjmldn00spjmp23ft6fco9","kind":"contributor_item","title":"Submission T6FCO9","provisional":false,"output_code":"import json\ndef transform(text):\n totals={}\n for line in text.splitlines():\n r=json.loads(line); totals[r[\"account\"]]=totals.get(r[\"account\"],0)+r[\"amount\"]\n return json.dumps(dict(sorted(totals.items())))","input_data_sample":"{\"account\":\"a\",\"amount\":12.5}\n{\"account\":\"b\",\"amount\":4}\n{\"account\":\"a\",\"amount\":-2.25}","output_data_sample":"{\"a\": 10.25, \"b\": 4}","transformation_instruction":"Parse newline-delimited JSON events, sum numeric 'amount' values by 'account', and return a key-sorted JSON object."} {"id":"cmssjmldn00ssjmp26f70515i","kind":"contributor_item","title":"Submission 70515I","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n rows=[]\n for r in csv.DictReader(io.StringIO(text),delimiter=';'):\n q=int(r['quantity'])\n if q: rows.append({'sku':r['sku'],'quantity':q,'price':float(r['price'])})\n return json.dumps(rows)","input_data_sample":"sku;quantity;price\nA1;3;4.50\nB2;0;9.99\nC3;7;1.25","output_data_sample":"[{\"sku\": \"A1\", \"quantity\": 3, \"price\": 4.5}, {\"sku\": \"C3\", \"quantity\": 7, \"price\": 1.25}]","transformation_instruction":"Convert a semicolon-delimited inventory table to JSON, coercing quantity to int and price to float, while dropping rows with zero quantity."} {"id":"cmssjmldo00sujmp2vgmn6pph","kind":"contributor_item","title":"Submission MN6PPH","provisional":false,"output_code":"def transform(text):\n ranges=sorted(tuple(map(int,l.split('-'))) for l in text.splitlines() if l.strip())\n out=[]\n for a,b in ranges:\n if out and a<=out[-1][1]+1: out[-1]=(out[-1][0],max(out[-1][1],b))\n else: out.append((a,b))\n return '\\n'.join(f'{a}-{b}' for a,b in out)","input_data_sample":"8-10\n1-3\n4-6\n12-15\n10-12","output_data_sample":"1-6\n8-15","transformation_instruction":"Parse integer ranges, merge overlapping or adjacent ranges, and output one normalized 'start-end' range per line."} {"id":"cmssjmldn00stjmp272246a7u","kind":"contributor_item","title":"Submission 246A7U","provisional":false,"output_code":"import re\ndef transform(text):\n out=[]\n for line in text.splitlines():\n tag=re.sub(r'\\s+','-',line.strip().lower())\n if tag and tag not in out: out.append(tag)\n return ','.join(out)","input_data_sample":" Data Science \nAPI\ndata science\nRelease Candidate\napi ","output_data_sample":"data-science,api,release-candidate","transformation_instruction":"Normalize mixed newline-separated tags by trimming, lowercasing, replacing internal whitespace with hyphens, and returning unique tags in first-seen order."} {"id":"cmssjmldo00svjmp2i0a5jn5w","kind":"contributor_item","title":"Submission A5JN5W","provisional":false,"output_code":"import json\ndef transform(text):\n graph=json.loads(text); edges={f'{a}->{b}' for a,targets in graph.items() for b in targets}\n return json.dumps(sorted(edges))","input_data_sample":"{\"a\":[\"c\",\"b\",\"c\"],\"b\":[\"c\"],\"c\":[]}","output_data_sample":"[\"a->b\", \"a->c\", \"b->c\"]","transformation_instruction":"Convert a JSON adjacency map into a sorted edge list of 'source->target' strings, removing duplicate edges."} {"id":"cmssjmldo00swjmp2txnuklud","kind":"contributor_item","title":"Submission NUKLUD","provisional":false,"output_code":"import re,json\ndef transform(text):\n out=[]\n for line in text.splitlines():\n pairs=re.findall(r'(\\w+)=(\"[^\"]*\"|\\S+)',line); r={k:v.strip('\"') for k,v in pairs}\n if r.get('level')=='ERROR': r['code']=int(r['code']); out.append(r)\n return json.dumps(out)","input_data_sample":"level=INFO msg=\"ready now\" code=0\nlevel=ERROR msg=\"disk full\" code=28\nlevel=ERROR msg=\"bad token\" code=41","output_data_sample":"[{\"level\": \"ERROR\", \"msg\": \"disk full\", \"code\": 28}, {\"level\": \"ERROR\", \"msg\": \"bad token\", \"code\": 41}]","transformation_instruction":"Parse key=value log lines with quoted values and return a JSON array containing only ERROR records."} {"id":"cmssjmldo00syjmp2mjj1yysa","kind":"contributor_item","title":"Submission J1YYSA","provisional":false,"output_code":"import re\nfrom datetime import datetime,timezone\ndef transform(text):\n return re.sub(r'(?=depth: stack.pop()\n stack[-1][1][name]=node; stack.append((depth,node))\n return json.dumps(root)","input_data_sample":"hardware\n cpu\n storage\n ssd\nsoftware\n os","output_data_sample":"{\"hardware\": {\"cpu\": {}, \"storage\": {\"ssd\": {}}}, \"software\": {\"os\": {}}}","transformation_instruction":"Convert an indented category list into nested JSON where two-space indentation establishes parent-child relationships."} {"id":"cmssjmldo00t8jmp2gnuz9u90","kind":"contributor_item","title":"Submission UZ9U90","provisional":false,"output_code":"import json\ndef transform(text):\n out={}\n for r in json.loads(text):\n d=r['ts'][:10]; x=out.setdefault(d,{'count':0,'total':0}); x['count']+=1; x['total']+=r['value']\n return json.dumps(dict(sorted(out.items())))","input_data_sample":"[{\"ts\":\"2026-08-01T10:00:00Z\",\"value\":3},{\"ts\":\"2026-08-01T11:00:00Z\",\"value\":5},{\"ts\":\"2026-08-02T09:00:00Z\",\"value\":7}]","output_data_sample":"{\"2026-08-01\": {\"count\": 2, \"total\": 8}, \"2026-08-02\": {\"count\": 1, \"total\": 7}}","transformation_instruction":"Group JSON records by date (the YYYY-MM-DD prefix of ts) and return daily count and total value."} {"id":"cmssjmldo00tajmp20vanl488","kind":"contributor_item","title":"Submission ANL488","provisional":false,"output_code":"import re,json\ndef transform(text):\n out=[]\n for l in text.splitlines():\n parts={u:int(v) for v,u in re.findall(r'(\\d+)([hms])',l)}; out.append(parts.get('h',0)*3600+parts.get('m',0)*60+parts.get('s',0))\n return json.dumps(out)","input_data_sample":"1h 20m 5s\n45m\n2h 3s\n0s","output_data_sample":"[4805, 2700, 7203, 0]","transformation_instruction":"Parse duration tokens such as '1h 20m 5s' on each line and return total seconds as a JSON array."} {"id":"cmssjmldo00t9jmp24n1eoqw1","kind":"contributor_item","title":"Submission 1EOQW1","provisional":false,"output_code":"import json\ndef transform(text):\n rows=[list(map(int,l.split(','))) for l in text.splitlines()]\n return json.dumps([list(r) for r in zip(*rows[::-1])])","input_data_sample":"1,2,3,4\n5,6,7,8\n9,10,11,12","output_data_sample":"[[9, 5, 1], [10, 6, 2], [11, 7, 3], [12, 8, 4]]","transformation_instruction":"Convert a matrix of comma-separated integers into its clockwise 90-degree rotation as JSON."} {"id":"cmssjmldo00tbjmp2mmco8qud","kind":"contributor_item","title":"Submission CO8QUD","provisional":false,"output_code":"import json\ndef transform(text):\n def clean(x):\n if isinstance(x,dict):return {k:clean(v) for k,v in x.items() if v is not None}\n if isinstance(x,list):return [clean(v) for v in x]\n return x\n return json.dumps(clean(json.loads(text)))","input_data_sample":"[{\"id\":1,\"meta\":{\"x\":null,\"y\":2},\"tags\":[null,\"a\"]},{\"id\":2,\"note\":null}]","output_data_sample":"[{\"id\": 1, \"meta\": {\"y\": 2}, \"tags\": [null, \"a\"]}, {\"id\": 2}]","transformation_instruction":"Read JSON records, recursively remove keys whose value is null, and preserve null entries inside arrays."} {"id":"cmssjmldo00tdjmp2g1x6dt8h","kind":"contributor_item","title":"Submission X6DT8H","provisional":false,"output_code":"import re,json\ndef transform(text):\n out=[]\n for l in text.splitlines():\n m=re.match(r'^(#{1,6})\\s+(.+)$',l)\n if m:\n title=m.group(2); slug=re.sub(r'[^a-z0-9]+','-',title.lower()).strip('-'); out.append({'level':len(m.group(1)),'text':title,'slug':slug})\n return json.dumps(out)","input_data_sample":"# Main Title\ntext\n## API Reference\n### Error Codes!","output_data_sample":"[{\"level\": 1, \"text\": \"Main Title\", \"slug\": \"main-title\"}, {\"level\": 2, \"text\": \"API Reference\", \"slug\": \"api-reference\"}, {\"level\": 3, \"text\": \"Error Codes!\", \"slug\": \"error-codes\"}]","transformation_instruction":"Extract Markdown headings, returning JSON objects with level, text, and a lowercase hyphenated slug."} {"id":"cmssjmldo00tejmp2fjbdxg3i","kind":"contributor_item","title":"Submission BDXG3I","provisional":false,"output_code":"import json,itertools\ndef transform(text):\n data=json.loads(text); keys=list(data); rows=[dict(zip(keys,v)) for v in itertools.product(*(data[k] for k in keys))]\n return json.dumps(rows)","input_data_sample":"{\"color\":[\"red\",\"blue\"],\"size\":[\"S\",\"M\"],\"stock\":[1]}","output_data_sample":"[{\"color\": \"red\", \"size\": \"S\", \"stock\": 1}, {\"color\": \"red\", \"size\": \"M\", \"stock\": 1}, {\"color\": \"blue\", \"size\": \"S\", \"stock\": 1}, {\"color\": \"blue\", \"size\": \"M\", \"stock\": 1}]","transformation_instruction":"Convert a JSON object with array values into its Cartesian product as a JSON array of objects, preserving key order."} {"id":"cmssjmldo00tfjmp25mpfkram","kind":"contributor_item","title":"Submission PFKRAM","provisional":false,"output_code":"import json\ndef transform(text):\n c={'added':0,'removed':0,'context':0}\n for l in text.splitlines():\n if l.startswith(('+++','---')):continue\n if l.startswith('+'):c['added']+=1\n elif l.startswith('-'):c['removed']+=1\n elif l.startswith(' '):c['context']+=1\n return json.dumps(c)","input_data_sample":"--- a/file\n+++ b/file\n line one\n-old\n+new\n+extra\n unchanged","output_data_sample":"{\"added\": 2, \"removed\": 1, \"context\": 2}","transformation_instruction":"Parse a unified-diff-like block and return JSON counts of added, removed, and context lines, excluding file headers."} {"id":"cmssjmldo00tgjmp213xmhyk9","kind":"contributor_item","title":"Submission XMHYK9","provisional":false,"output_code":"import re,json\ndef transform(text):\n out={}\n for l in text.splitlines():\n if re.fullmatch(r'[^@\\s]+@[^@\\s]+\\.[^@\\s]+',l.strip()):\n d=l.rsplit('@',1)[1].lower(); out[d]=out.get(d,0)+1\n return json.dumps(dict(sorted(out.items())))","input_data_sample":"Ana@Example.COM\ninvalid\nbo@sub.example.com\ncy@example.com\n@missing","output_data_sample":"{\"example.com\": 2, \"sub.example.com\": 1}","transformation_instruction":"Convert newline-separated email addresses into a JSON object counting normalized domains, ignoring malformed lines."} {"id":"cmssjmldo00tijmp2qjbeede9","kind":"contributor_item","title":"Submission BEEDE9","provisional":false,"output_code":"import statistics\ndef transform(text):\n seen=[];out=[]\n for l in text.splitlines(): seen.append(int(l));out.append(str(statistics.median(seen)))\n return ','.join(out)","input_data_sample":"5\n1\n9\n3\n8","output_data_sample":"5,3.0,5,4.0,5","transformation_instruction":"Parse one integer per line and return a comma-separated running median after each value."} {"id":"cmssjmldo00tjjmp2ng5r65be","kind":"contributor_item","title":"Submission 5R65BE","provisional":false,"output_code":"import json,base64\ndef transform(text):\n out=[]\n for s in json.loads(text):\n try:out.append(base64.b64decode(s,validate=True).decode())\n except (ValueError,UnicodeDecodeError):out.append(None)\n return json.dumps(out)","input_data_sample":"[\"aGVsbG8=\",\"4pyT\",\"////\"]","output_data_sample":"[\"hello\", \"\\u2713\", null]","transformation_instruction":"Decode a JSON array of base64 strings as UTF-8 and return a JSON array, replacing invalid entries with null."} {"id":"cmssjmldo00tkjmp29612e6ey","kind":"contributor_item","title":"Submission 12E6EY","provisional":false,"output_code":"def transform(text):\n versions=[]\n for l in text.splitlines():\n parts=list(map(int,l.split('.')));parts += [0]*(3-len(parts));versions.append(tuple(parts[:3]))\n return '\\n'.join('.'.join(map(str,v)) for v in sorted(versions))","input_data_sample":"1.10\n1.2.3\n2\n1.2\n0.9.9","output_data_sample":"0.9.9\n1.2.0\n1.2.3\n1.10.0\n2.0.0","transformation_instruction":"Parse version strings, sort them numerically by dot-separated components, and return normalized three-component versions."} {"id":"cmssjmldo00tmjmp2p8j6iy8x","kind":"contributor_item","title":"Submission J6IY8X","provisional":false,"output_code":"import json\ndef transform(text):\n merged=[]\n for a,b in sorted(json.loads(text)):\n if merged and a<=merged[-1][1]:merged[-1][1]=max(b,merged[-1][1])\n else:merged.append([a,b])\n return str(sum(b-a for a,b in merged))","input_data_sample":"[[1,4],[3,6],[8,10],[10,12],[15,16]]","output_data_sample":"10","transformation_instruction":"Parse JSON time intervals and return their total covered length after merging overlaps, treating endpoints as continuous."} {"id":"cmssjmldo00tnjmp2p8rlm5as","kind":"contributor_item","title":"Submission RLM5AS","provisional":false,"output_code":"import json\nfrom pathlib import PurePosixPath\ndef transform(text):\n out={}\n for l in text.splitlines():\n p=PurePosixPath(l);ext=p.suffix[1:].lower() if p.suffix else '(none)';out.setdefault(ext,[]).append(p.name)\n return json.dumps({k:sorted(v) for k,v in sorted(out.items())})","input_data_sample":"src/app.PY\nREADME\narchive.tar.gz\ndocs/guide.md\n.test","output_data_sample":"{\"(none)\": [\".test\", \"README\"], \"gz\": [\"archive.tar.gz\"], \"md\": [\"guide.md\"], \"py\": [\"app.PY\"]}","transformation_instruction":"Parse newline-delimited paths and return JSON grouped by lowercase extension, using '(none)' for extensionless files."} {"id":"cmssjmldo00t1jmp2m7ny3ss9","kind":"contributor_item","title":"Submission NY3SS9","provisional":false,"output_code":"import json\ndef transform(text):\n out=[]\n for order in json.loads(text):\n for i in order['items']: out.append({'order_id':order['order_id'],'sku':i['sku'],'line_total':round(i['qty']*i['price'],2)})\n return json.dumps(out)","input_data_sample":"[{\"order_id\":\"o1\",\"items\":[{\"sku\":\"A\",\"qty\":2,\"price\":3.5},{\"sku\":\"B\",\"qty\":1,\"price\":9}]},{\"order_id\":\"o2\",\"items\":[{\"sku\":\"A\",\"qty\":4,\"price\":3.5}]}]","output_data_sample":"[{\"order_id\": \"o1\", \"sku\": \"A\", \"line_total\": 7.0}, {\"order_id\": \"o1\", \"sku\": \"B\", \"line_total\": 9}, {\"order_id\": \"o2\", \"sku\": \"A\", \"line_total\": 14.0}]","transformation_instruction":"Explode a JSON array of orders into one JSON row per line item, carrying order_id and computing line_total."} {"id":"cmssjmldo00tcjmp2grohub0c","kind":"contributor_item","title":"Submission OHUB0C","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n out={}\n for r in csv.DictReader(io.StringIO(text)): out[r['id']]={'name':r['name'],'score':int(r['score'])}\n return json.dumps(out)","input_data_sample":"id,name,score\n1,Ana,4\n2,Bo,7\n1,Ana,9","output_data_sample":"{\"1\": {\"name\": \"Ana\", \"score\": 9}, \"2\": {\"name\": \"Bo\", \"score\": 7}}","transformation_instruction":"Convert CSV rows into a JSON mapping from id to the last row for that id, coercing score to integer."} {"id":"cmssjmldo00thjmp2zp51fvka","kind":"contributor_item","title":"Submission 51FVKA","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n out=[]\n for r in csv.DictReader(io.StringIO(text)):\n lat,lon=float(r['lat']),float(r['lon'])\n if 10<=lat<=15 and 20<=lon<=25: out.append({'id':r['id'],'lat':lat,'lon':lon})\n return json.dumps(out)","input_data_sample":"id,lat,lon\na,10,20\nb,15,25\nc,9,22\nd,12,30","output_data_sample":"[{\"id\": \"a\", \"lat\": 10.0, \"lon\": 20.0}, {\"id\": \"b\", \"lat\": 15.0, \"lon\": 25.0}]","transformation_instruction":"Parse CSV latitude/longitude rows and return only points inside an inclusive bounding box as JSON."} {"id":"cmssjmldo00tljmp28u13tbdd","kind":"contributor_item","title":"Submission 13TBDD","provisional":false,"output_code":"def transform(text):\n rows=[(l.rsplit(' ',1)[0],int(l.rsplit(' ',1)[1])) for l in text.splitlines()];m=max(v for _,v in rows)\n return '\\n'.join(f'{k}: '+('#'*round(v/m*10)) for k,v in rows)","input_data_sample":"alpha 5\nbeta 10\ngamma 2","output_data_sample":"alpha: #####\nbeta: ##########\ngamma: ##","transformation_instruction":"Convert a text histogram of 'label count' rows into proportional ASCII bars scaled to a maximum width of 10."} {"id":"cmssjmldo00tpjmp24k9y58cw","kind":"contributor_item","title":"Submission 9Y58CW","provisional":false,"output_code":"def transform(text):\n return '\\n'.join(':'.join(part.zfill(4) for part in l.split(':')) for l in text.splitlines())","input_data_sample":"a:b:0:ff\n1:20:300:4000","output_data_sample":"000a:000b:0000:00ff\n0001:0020:0300:4000","transformation_instruction":"Parse colon-separated IPv6-like hex groups, left-pad each group to four characters, and join with colons."} {"id":"cmssjmldo00tyjmp2fpvllxbo","kind":"contributor_item","title":"Submission VLLXBO","provisional":false,"output_code":"import json\ndef transform(text):\n out={}\n for l in text.splitlines():\n name,raw=l.split(':',1)\n for dep in raw.split(','):out.setdefault(dep.strip(),set()).add(name.strip())\n return json.dumps({k:sorted(v) for k,v in sorted(out.items())})","input_data_sample":"app: api, db\nworker: db, queue\napi: db","output_data_sample":"{\"api\": [\"app\"], \"db\": [\"api\", \"app\", \"worker\"], \"queue\": [\"worker\"]}","transformation_instruction":"Convert lines of 'name: comma-separated dependencies' into a JSON reverse-dependency map with sorted unique dependents."} {"id":"cmssjmldn00srjmp2bzdg05wr","kind":"contributor_item","title":"Submission DG05WR","provisional":false,"output_code":"import json\ndef transform(text):\n out={}\n for line in text.splitlines():\n status=int(line.split()[2]); key=f\"{status//100}xx\"; out[key]=out.get(key,0)+1\n return json.dumps(dict(sorted(out.items())))","input_data_sample":"GET /a 200 12ms\nPOST /b 503 9ms\nGET /c 404 2ms\nPUT /d 201 30ms\nGET /e 500 1ms","output_data_sample":"{\"2xx\": 2, \"4xx\": 1, \"5xx\": 2}","transformation_instruction":"Parse Apache-style request lines and return a JSON object counting status-code classes (2xx, 4xx, 5xx)."} {"id":"cmssjmldo00tojmp2pyfv2csi","kind":"contributor_item","title":"Submission FV2CSI","provisional":false,"output_code":"import csv,io,json\ndef transform(text):\n out={}\n for r in csv.DictReader(io.StringIO(text)):\n x=out.setdefault(r['session'],{'first':int(r['ts']),'last':int(r['ts']),'count':0});t=int(r['ts']);x['first']=min(x['first'],t);x['last']=max(x['last'],t);x['count']+=1\n return json.dumps(dict(sorted(out.items())))","input_data_sample":"session,ts,event\na,10,start\nb,11,start\na,15,click\na,21,end\nb,18,end","output_data_sample":"{\"a\": {\"first\": 10, \"last\": 21, \"count\": 3}, \"b\": {\"first\": 11, \"last\": 18, \"count\": 2}}","transformation_instruction":"Convert CSV event rows to a JSON session summary using the first and last timestamps and event count per session."} {"id":"cmssjmldo00trjmp2vfxdyc74","kind":"contributor_item","title":"Submission XDYC74","provisional":false,"output_code":"import json\ndef transform(text):\n edges=json.loads(text);nodes={x for e in edges for x in e};out={n:[] for n in nodes}\n for a,b in edges:out[a].append(b)\n return json.dumps({k:sorted(v) for k,v in sorted(out.items())})","input_data_sample":"[[\"root\",\"b\"],[\"root\",\"a\"],[\"a\",\"x\"],[\"b\",\"x\"]]","output_data_sample":"{\"a\": [\"x\"], \"b\": [\"x\"], \"root\": [\"a\", \"b\"], \"x\": []}","transformation_instruction":"Convert a JSON list of parent-child edges into a JSON mapping of each node to its sorted children, including leaf nodes."} {"id":"cmssjmldo00tqjmp285kf73tt","kind":"contributor_item","title":"Submission KF73TT","provisional":false,"output_code":"import json,re\ndef transform(text):\n d=json.loads(text);return re.sub(r'\\{\\{(\\w+)\\}\\}',lambda m:str(d['values'].get(m.group(1),m.group(0))),d['template'])","input_data_sample":"{\"template\":\"Hi {{name}}, status={{status}}, id={{id}}\",\"values\":{\"name\":\"Ana\",\"status\":\"ready\"}}","output_data_sample":"Hi Ana, status=ready, id={{id}}","transformation_instruction":"Apply ordered text replacement rules from a JSON object to a template containing {{name}} placeholders, leaving unknown placeholders unchanged."} {"id":"cmssjmldo00ttjmp2tni1odn8","kind":"contributor_item","title":"Submission I1ODN8","provisional":false,"output_code":"import json,csv,io\ndef transform(text):\n rows=[json.loads(l) for l in text.splitlines()];fields=sorted({k for r in rows for k in r});out=io.StringIO();w=csv.DictWriter(out,fieldnames=fields,lineterminator='\\n');w.writeheader();w.writerows(rows);return out.getvalue().strip()","input_data_sample":"{\"b\":2,\"a\":1}\n{\"c\":4,\"a\":3}","output_data_sample":"a,b,c\n1,2,\n3,,4","transformation_instruction":"Convert one JSON object per line into a CSV string whose columns are the sorted union of all keys."} {"id":"cmssjmldo00tsjmp2k523pwg4","kind":"contributor_item","title":"Submission 23PWG4","provisional":false,"output_code":"import json\ndef transform(text):\n lines=text.splitlines();headers=lines[0].split();out=[]\n for l in lines[1:]:out.append(dict(zip(headers,l.split(maxsplit=len(headers)-1))))\n return json.dumps(out)","input_data_sample":"ID SCORE NOTE\n1 90 excellent work\n2 75 needs review","output_data_sample":"[{\"ID\": \"1\", \"SCORE\": \"90\", \"NOTE\": \"excellent work\"}, {\"ID\": \"2\", \"SCORE\": \"75\", \"NOTE\": \"needs review\"}]","transformation_instruction":"Parse a whitespace-separated table and return JSON rows using the first line as headers, while keeping the final column's remaining words together."} {"id":"cmssjmldo00twjmp2pljgu96n","kind":"contributor_item","title":"Submission JGU96N","provisional":false,"output_code":"import json\ndef transform(text):\n x=y=0\n for token in text.split(','):\n d,n=token[0],int(token[1:]);x += n if d=='E' else -n if d=='W' else 0;y += n if d=='N' else -n if d=='S' else 0\n return json.dumps({'x':x,'y':y,'distance':abs(x)+abs(y)})","input_data_sample":"N3,E2,S5,W1,N1","output_data_sample":"{\"x\": 1, \"y\": -1, \"distance\": 2}","transformation_instruction":"Convert a sequence of compass moves such as N3,E2 into the final coordinate and Manhattan distance as JSON."} {"id":"cmssjmldo00tujmp26ygj3dro","kind":"contributor_item","title":"Submission GJ3DRO","provisional":false,"output_code":"import json\ndef transform(text):\n groups={}\n for w in text.splitlines():groups.setdefault(''.join(sorted(w)),[]).append(w)\n out=[sorted(v) for v in groups.values() if len(v)>1];out.sort(key=lambda v:v[0]);return json.dumps(out)","input_data_sample":"listen\nsilent\nenlist\nrat\ntar\nsolo","output_data_sample":"[[\"enlist\", \"listen\", \"silent\"], [\"rat\", \"tar\"]]","transformation_instruction":"Parse a list of words and return JSON anagram groups with at least two members, sorting words and then groups by first word."} {"id":"cmssjmldo00tvjmp227546r92","kind":"contributor_item","title":"Submission 546R92","provisional":false,"output_code":"import json\ndef transform(text):\n rows=[r for r in json.loads(text) if r['weight']];return str(round(sum(r['score']*r['weight'] for r in rows)/sum(r['weight'] for r in rows),3))","input_data_sample":"[{\"score\":80,\"weight\":2},{\"score\":95,\"weight\":1},{\"score\":10,\"weight\":0}]","output_data_sample":"85.0","transformation_instruction":"Parse a JSON list of weighted scores and return the weighted mean rounded to three decimals, ignoring zero-weight rows."} {"id":"cmssjmldo00txjmp25pzh0xli","kind":"contributor_item","title":"Submission ZH0XLI","provisional":false,"output_code":"import json\ndef transform(text):\n out={}\n for r in json.loads(text):\n if r['id'] not in out or r['rev']>=out[r['id']]['rev']:out[r['id']]=r\n return json.dumps([out[k] for k in sorted(out)])","input_data_sample":"[{\"id\":\"a\",\"rev\":1,\"v\":\"old\"},{\"id\":\"b\",\"rev\":2,\"v\":\"x\"},{\"id\":\"a\",\"rev\":3,\"v\":\"new\"},{\"id\":\"b\",\"rev\":2,\"v\":\"last\"}]","output_data_sample":"[{\"id\": \"a\", \"rev\": 3, \"v\": \"new\"}, {\"id\": \"b\", \"rev\": 2, \"v\": \"last\"}]","transformation_instruction":"Parse JSON records and retain the highest revision per id, breaking equal-revision ties by the last occurrence."} {"id":"cmssjmldo00tzjmp2haimxgfh","kind":"contributor_item","title":"Submission IMXGFH","provisional":false,"output_code":"import json\ndef transform(text):\n m=json.loads(text);return json.dumps({'rows':[sum(r) for r in m],'columns':[sum(c) for c in zip(*m)],'diagonal':sum(m[i][i] for i in range(len(m)))})","input_data_sample":"[[2,3,4],[5,6,7],[8,9,10]]","output_data_sample":"{\"rows\": [9, 18, 27], \"columns\": [15, 18, 21], \"diagonal\": 18}","transformation_instruction":"Parse a JSON matrix and return JSON containing row sums, column sums, and the main diagonal sum."} {"id":"cmssjmldo00u0jmp2dtg5pd41","kind":"contributor_item","title":"Submission G5PD41","provisional":false,"output_code":"def transform(text):\n out=[]\n for l in text.splitlines():\n if ',' in l:last,first=map(str.strip,l.split(',',1))\n else:first,last=l.split(maxsplit=1)\n out.append(f'{last.title()}, {first.title()}')\n return '\\n'.join(sorted(out,key=str.lower))","input_data_sample":"Ada Lovelace\nHopper, Grace\nalan turing\nLiskov, Barbara","output_data_sample":"Hopper, Grace\nLiskov, Barbara\nLovelace, Ada\nTuring, Alan","transformation_instruction":"Normalize newline-separated names to 'Last, First' form, accepting either 'First Last' or 'Last, First', then sort case-insensitively."} {"id":"cmssjmldo00u2jmp22fod2jnd","kind":"contributor_item","title":"Submission OD2JND","provisional":false,"output_code":"import re,json\ndef transform(text):\n terms=re.findall(r'[+-]?[^+-]+',text.replace(' ',''));out={}\n for term in terms:\n sign=-1 if term.startswith('-') else 1;t=term.lstrip('+-')\n if 'x' in t:\n raw=t.split('x')[0];coef=sign*(int(raw) if raw else 1);power=int(t.split('^')[1]) if '^' in t else 1\n else:coef=sign*int(t);power=0\n out[str(power)]=coef\n return json.dumps(dict(sorted(out.items(),key=lambda kv:-int(kv[0]))))","input_data_sample":"3x^2-2x+5","output_data_sample":"{\"2\": 3, \"1\": -2, \"0\": 5}","transformation_instruction":"Parse a compact polynomial like '3x^2-2x+5' and return coefficient values for descending powers as JSON."} {"id":"cmssjmldo00u1jmp2pu4ao4aa","kind":"contributor_item","title":"Submission 4AO4AA","provisional":false,"output_code":"import json\ndef transform(text):\n last={};out={}\n for l in text.splitlines():\n r=json.loads(l);d=r['device'];out.setdefault(d,[])\n if d in last:out[d].append(r['value']-last[d])\n last[d]=r['value']\n return json.dumps(dict(sorted(out.items())))","input_data_sample":"{\"device\":\"a\",\"value\":10}\n{\"device\":\"b\",\"value\":3}\n{\"device\":\"a\",\"value\":14}\n{\"device\":\"a\",\"value\":9}\n{\"device\":\"b\",\"value\":8}","output_data_sample":"{\"a\": [4, -5], \"b\": [5]}","transformation_instruction":"Parse newline-delimited JSON measurements and compute consecutive deltas per device, returning JSON arrays keyed by device."} {"id":"cmssjn52m00u3jmp2tqjdjgf6","kind":"contributor_item","title":"Submission JDJGF6","provisional":false,"output_code":"import csv, io, json\n\ndef transform(input):\n rows = []\n for r in csv.DictReader(io.StringIO(input.strip())):\n qty = int(r[\"qty\"])\n price = float(r[\"unit_price\"])\n rows.append({\n \"sku\": r[\"sku\"],\n \"qty\": qty,\n \"unit_price\": price,\n \"line_total\": round(qty * price, 2),\n })\n return json.dumps(rows, separators=(\",\", \":\"))","input_data_sample":"sku,qty,unit_price\nA-100,3,4.50\nB-220,1,19.99\nC-005,12,0.75","output_data_sample":"[{\"sku\":\"A-100\",\"qty\":3,\"unit_price\":4.5,\"line_total\":13.5},{\"sku\":\"B-220\",\"qty\":1,\"unit_price\":19.99,\"line_total\":19.99},{\"sku\":\"C-005\",\"qty\":12,\"unit_price\":0.75,\"line_total\":9.0}]","transformation_instruction":"Parse the CSV and emit a JSON array of objects. Coerce qty to an integer and unit_price to a float, and add a computed line_total rounded to 2 decimals. Output compact JSON with keys in the order sku, qty, unit_price, line_total."} {"id":"cmssjn52m00u5jmp2rhzygwxw","kind":"contributor_item","title":"Submission ZYGWXW","provisional":false,"output_code":"import json\n\ndef transform(input):\n def walk(node, prefix, out):\n if isinstance(node, dict):\n for k, v in node.items():\n walk(v, \"%s.%s\" % (prefix, k) if prefix else k, out)\n elif isinstance(node, list):\n for i, v in enumerate(node):\n walk(v, \"%s.%d\" % (prefix, i), out)\n else:\n if node is None:\n rendered = \"null\"\n elif isinstance(node, bool):\n rendered = \"true\" if node else \"false\"\n else:\n rendered = str(node)\n out[prefix] = rendered\n\n leaves = {}\n walk(json.loads(input), \"\", leaves)\n return \"\\n\".join(\"%s=%s\" % (k, leaves[k]) for k in sorted(leaves))","input_data_sample":"{\"user\":{\"name\":\"ada\",\"langs\":[\"py\",\"js\"],\"addr\":{\"city\":\"London\",\"zip\":null}},\"active\":true}","output_data_sample":"active=true\nuser.addr.city=London\nuser.addr.zip=null\nuser.langs.0=py\nuser.langs.1=js\nuser.name=ada","transformation_instruction":"Flatten the nested JSON object into dotted key paths, one 'path=value' line per leaf, sorted by path. Index list elements numerically. Render null as 'null' and booleans lowercase."} {"id":"cmssjn52m00u6jmp2e8elaoh2","kind":"contributor_item","title":"Submission ELAOH2","provisional":false,"output_code":"def transform(input):\n lines = input.strip(\"\\n\").split(\"\\n\")[1:]\n out = []\n for line in lines:\n if not line.strip():\n continue\n name = line[0:10].strip()\n dept = line[10:19].strip()\n hours = line[19:].strip()\n out.append(\"%s|%s|%s\" % (name, dept, hours))\n return \"\\n\".join(out)","input_data_sample":"NAME DEPT HOURS\nAda Eng 38\nGrace Research 41\nLinus Eng 7","output_data_sample":"Ada|Eng|38\nGrace|Research|41\nLinus|Eng|7","transformation_instruction":"The input is fixed-width: NAME is columns 0-9, DEPT is 10-18, HOURS is 19 onward. Skip the header, strip each field, and emit 'name|dept|hours' lines preserving input order."} {"id":"cmssjn52m00u8jmp2hq7mm0m3","kind":"contributor_item","title":"Submission 7MM0M3","provisional":false,"output_code":"import re\nfrom datetime import datetime\n\nMONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\",\n \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"]\n\ndef transform(input):\n out = []\n for line in input.strip(\"\\n\").split(\"\\n\"):\n s = line.strip()\n iso = \"INVALID\"\n m = re.fullmatch(r\"(\\d{1,2})[/-](\\d{1,2})[/-](\\d{4})\", s)\n if m:\n d, mo, y = (int(g) for g in m.groups())\n iso = \"%04d-%02d-%02d\" % (y, mo, d)\n else:\n m = re.fullmatch(r\"(\\d{4})-(\\d{1,2})-(\\d{1,2})\", s)\n if m:\n y, mo, d = (int(g) for g in m.groups())\n iso = \"%04d-%02d-%02d\" % (y, mo, d)\n else:\n m = re.fullmatch(r\"([A-Za-z]{3})\\s+(\\d{1,2})\\s+(\\d{4})\", s)\n if m and m.group(1).title() in MONTHS:\n mo = MONTHS.index(m.group(1).title()) + 1\n iso = \"%04d-%02d-%02d\" % (int(m.group(3)), mo, int(m.group(2)))\n out.append(iso)\n return \"\\n\".join(out)","input_data_sample":"03/04/2021\n2021-4-5\nApr 6 2021\n06-04-2021\nnot a date","output_data_sample":"2021-04-03\n2021-04-05\n2021-04-06\n2021-04-06\nINVALID","transformation_instruction":"Normalise each line to ISO YYYY-MM-DD. Slash and dash numeric forms are DD/MM/YYYY. Accept 'Mon D YYYY'. Emit 'INVALID' for anything unparseable. One output line per input line, order preserved."} {"id":"cmssjn52m00uajmp236mrqfpj","kind":"contributor_item","title":"Submission MRQFPJ","provisional":false,"output_code":"def transform(input):\n last = {}\n for line in input.strip(\"\\n\").split(\"\\n\"):\n if not line.strip():\n continue\n user, event, time = line.split(\",\")\n last[user] = (event, time)\n return \"\\n\".join(\n \"%s,%s,%s\" % (u, last[u][0], last[u][1]) for u in sorted(last)\n )","input_data_sample":"u1,login,09:00\nu2,login,09:05\nu1,logout,17:30\nu3,login,09:07\nu2,logout,18:00\nu1,login,19:00","output_data_sample":"u1,login,19:00\nu2,logout,18:00\nu3,login,09:07","transformation_instruction":"Each line is 'user,event,time'. Keep only the LAST row for each user, then emit them sorted by user id ascending as 'user,event,time'."} {"id":"cmssjn52m00ucjmp2v662ilb9","kind":"contributor_item","title":"Submission 62ILB9","provisional":false,"output_code":"import json\n\ndef transform(input):\n rows = json.loads(input)\n cols = list(rows[0].keys())\n widths = {c: max(len(c), *(len(str(r[c])) for r in rows)) for c in cols}\n def line(cells):\n return \"| \" + \" | \".join(cells) + \" |\"\n out = [line([c.ljust(widths[c]) for c in cols]),\n line([\"-\" * widths[c] for c in cols])]\n for r in rows:\n out.append(line([str(r[c]).ljust(widths[c]) for c in cols]))\n return \"\\n\".join(out)","input_data_sample":"[{\"id\":1,\"name\":\"ada\"},{\"id\":42,\"name\":\"grace hopper\"},{\"id\":7,\"name\":\"bob\"}]","output_data_sample":"| id | name |\n| -- | ------------ |\n| 1 | ada |\n| 42 | grace hopper |\n| 7 | bob |","transformation_instruction":"Render the JSON array as a GitHub-flavoured markdown table. Columns come from the first object's keys in order. Pad every cell with spaces so each column is as wide as its widest value (including the header), and use '---' dashes matching that width."} {"id":"cmssjn52m00uejmp21m1jk2bo","kind":"contributor_item","title":"Submission 1JK2BO","provisional":false,"output_code":"import csv, io, json\n\ndef transform(input):\n out = []\n for r in csv.DictReader(io.StringIO(input.strip(\"\\n\"))):\n tags = [t for t in (r[\"tags\"] or \"\").split(\",\") if t]\n out.append({\"id\": int(r[\"id\"]), \"title\": r[\"title\"], \"tags\": tags})\n return json.dumps(out, indent=2)","input_data_sample":"id,title,tags\n1,\"Hello, World\",\"intro,basics\"\n2,\"Say \"\"hi\"\"\",\"greeting\"\n3,Plain,","output_data_sample":"[\n {\n \"id\": 1,\n \"title\": \"Hello, World\",\n \"tags\": [\n \"intro\",\n \"basics\"\n ]\n },\n {\n \"id\": 2,\n \"title\": \"Say \\\"hi\\\"\",\n \"tags\": [\n \"greeting\"\n ]\n },\n {\n \"id\": 3,\n \"title\": \"Plain\",\n \"tags\": []\n }\n]","transformation_instruction":"Parse the CSV honouring quoted fields and escaped double quotes. Split the tags field on commas into a list (empty field becomes an empty list). Emit a JSON array with 2-space indentation."} {"id":"cmssjn52m00u7jmp2rcvj3oad","kind":"contributor_item","title":"Submission VJ3OAD","provisional":false,"output_code":"def transform(input):\n lines = input.strip(\"\\n\").split(\"\\n\")[1:]\n agg = {}\n for line in lines:\n if not line.strip():\n continue\n region, amount = line.split(\"\\t\")\n entry = agg.setdefault(region, [0, 0])\n entry[0] += 1\n entry[1] += int(amount)\n rows = sorted(agg.items(), key=lambda kv: (-kv[1][1], kv[0]))\n out = [\"region,count,total,mean\"]\n for region, (count, total) in rows:\n out.append(\"%s,%d,%d,%s\" % (region, count, total, round(total / count, 1)))\n return \"\\n\".join(out)","input_data_sample":"region\tamount\nnorth\t120\nsouth\t80\nnorth\t45\neast\t200\nsouth\t20","output_data_sample":"region,count,total,mean\neast,1,200,200.0\nnorth,2,165,82.5\nsouth,2,100,50.0","transformation_instruction":"Group the TSV rows by region and emit 'region,count,total,mean' lines. Mean is rounded to 1 decimal. Sort by total descending, then region ascending. Include a header row."} {"id":"cmssjn52m00ubjmp2p7x0znea","kind":"contributor_item","title":"Submission X0ZNEA","provisional":false,"output_code":"def transform(input):\n quarters = [\"Q1\", \"Q2\", \"Q3\", \"Q4\"]\n table = {}\n for line in input.strip(\"\\n\").split(\"\\n\")[1:]:\n if not line.strip():\n continue\n product, quarter, units = line.split(\",\")\n table.setdefault(product, {})[quarter] = int(units)\n out = [\"product,\" + \",\".join(quarters)]\n for product in sorted(table):\n cells = [str(table[product].get(q, 0)) for q in quarters]\n out.append(product + \",\" + \",\".join(cells))\n return \"\\n\".join(out)","input_data_sample":"product,quarter,units\nwidget,Q1,10\nwidget,Q3,7\ngadget,Q1,4\ngadget,Q2,9","output_data_sample":"product,Q1,Q2,Q3,Q4\ngadget,4,9,0,0\nwidget,10,0,7,0","transformation_instruction":"Pivot the long CSV into a wide table with one row per product and a column per quarter Q1..Q4 in order. Use 0 for missing combinations. Emit CSV with a header row, products sorted alphabetically."} {"id":"cmssjn52m00udjmp2nszqmt54","kind":"contributor_item","title":"Submission ZQMT54","provisional":false,"output_code":"from itertools import groupby\n\ndef transform(input):\n runs = [(ch, len(list(grp))) for ch, grp in groupby(input.strip())]\n encoded = \",\".join(\"%s:%d\" % (ch, n) for ch, n in runs)\n best_ch, best_n = runs[0]\n for ch, n in runs[1:]:\n if n > best_n:\n best_ch, best_n = ch, n\n return \"%s\\nruns=%d longest=%s\" % (encoded, len(runs), best_ch)","input_data_sample":"aaabbbbcccaadddddd","output_data_sample":"a:3,b:4,c:3,a:2,d:6\nruns=5 longest=d","transformation_instruction":"Run-length encode the string as 'char:count' pairs joined by commas in order of appearance, then append a second line 'runs=N longest=CHAR' where longest is the character of the single longest run (earliest wins on a tie)."} {"id":"cmssjn52m00ufjmp2mb0ycyad","kind":"contributor_item","title":"Submission 0YCYAD","provisional":false,"output_code":"import re\nfrom collections import Counter\n\nSTOP = {\"the\", \"a\"}\n\ndef transform(input):\n words = re.findall(r\"[a-z']+\", input.lower())\n counts = Counter(w for w in words if w not in STOP)\n top = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))[:5]\n return \",\".join(\"%s=%d\" % (w, n) for w, n in top)","input_data_sample":"The quick brown fox jumps over the lazy dog.\nThe dog barks; the fox runs! A quick escape.","output_data_sample":"dog=2,fox=2,quick=2,barks=1,brown=1","transformation_instruction":"Count word frequencies case-insensitively, stripping punctuation. Exclude the stopwords 'the' and 'a'. Emit the top 5 as 'word=count' sorted by count descending then word ascending, comma separated on one line."} {"id":"cmssjn52m00u4jmp2bjrke4ml","kind":"contributor_item","title":"Submission RKE4ML","provisional":false,"output_code":"from urllib.parse import unquote_plus\n\ndef transform(input):\n pairs = {}\n for part in input.strip().split(\"&\"):\n if not part:\n continue\n key, sep, val = part.partition(\"=\")\n key = unquote_plus(key)\n val = unquote_plus(val) if sep else \"\"\n seen = pairs.setdefault(key, [])\n if val not in seen:\n seen.append(val)\n return \"\\n\".join(\"%s: %s\" % (k, \"|\".join(pairs[k])) for k in sorted(pairs))","input_data_sample":"tag=red&size=10&tag=blue&debug&size=10&name=wide%20grip","output_data_sample":"debug: \nname: wide grip\nsize: 10\ntag: red|blue","transformation_instruction":"Parse the URL query string. Percent-decode values, represent a bare key with no '=' as the literal token , collapse exact duplicate values for the same key, and emit one 'key: v1|v2' line per key sorted alphabetically by key."} {"id":"cmssjn52m00u9jmp2blrsxelc","kind":"contributor_item","title":"Submission RSXELC","provisional":false,"output_code":"import json\n\ndef transform(input):\n data, section = {}, None\n for raw in input.strip(\"\\n\").split(\"\\n\"):\n line = raw.strip()\n if not line or line.startswith(\";\"):\n continue\n if line.startswith(\"[\") and line.endswith(\"]\"):\n section = line[1:-1]\n data.setdefault(section, {})\n continue\n key, _, val = line.partition(\"=\")\n key, val = key.strip(), val.strip()\n if val.lower() in (\"true\", \"false\"):\n coerced = val.lower() == \"true\"\n elif val.lstrip(\"-\").isdigit():\n coerced = int(val)\n else:\n coerced = val\n data[section][key] = coerced\n return json.dumps(data, indent=2, sort_keys=True)","input_data_sample":"; app config\n[server]\nport = 8080\nhost = 0.0.0.0\ndebug = false\n\n[cache]\nttl = 300\nenabled = true","output_data_sample":"{\n \"cache\": {\n \"enabled\": true,\n \"ttl\": 300\n },\n \"server\": {\n \"debug\": false,\n \"host\": \"0.0.0.0\",\n \"port\": 8080\n }\n}","transformation_instruction":"Parse the INI text into nested JSON. Ignore comment lines starting with ';'. Coerce integer-looking values to ints and true/false to booleans. Emit JSON with 2-space indentation and sorted keys."} {"id":"cmssjn52m00uhjmp2c7mwa55l","kind":"contributor_item","title":"Submission MWA55L","provisional":false,"output_code":"from decimal import Decimal\n\ndef transform(input):\n cents, out = 0, []\n for line in input.strip(\"\\n\").split(\"\\n\"):\n s = line.strip().replace(\",\", \"\")\n neg = s.startswith(\"-\")\n s = s.lstrip(\"-\").lstrip(\"$\")\n value = int(Decimal(s) * 100)\n if neg:\n value = -value\n cents += value\n out.append(str(value))\n out.append(\"total=%d\" % cents)\n return \"\\n\".join(out)","input_data_sample":"$1,234.56\n-$0.07\n$12\n$1,000,000.00","output_data_sample":"123456\n-7\n1200\n100000000\ntotal=100124649","transformation_instruction":"Convert each currency string to an exact integer number of cents (no floating point rounding error), one per line, then append a final line 'total=N' with the sum in cents."} {"id":"cmssjn52m00ujjmp2hf3ui6u9","kind":"contributor_item","title":"Submission 3UI6U9","provisional":false,"output_code":"def transform(input):\n sets = {}\n for line in input.strip(\"\\n\").split(\"\\n\"):\n name, _, vals = line.partition(\":\")\n sets[name.strip()] = {int(v) for v in vals.strip().split(\",\") if v.strip()}\n left, right = sets[\"left\"], sets[\"right\"]\n def render(s):\n return \",\".join(str(v) for v in sorted(s)) if s else \"-\"\n return \"only_left=%s\\nboth=%s\\nonly_right=%s\" % (\n render(left - right), render(left & right), render(right - left))","input_data_sample":"left: 1,2,5,8,13\nright: 2,3,5,13,21","output_data_sample":"only_left=1,8\nboth=2,5,13\nonly_right=3,21","transformation_instruction":"Compare the two comma-separated id lists. Emit exactly three lines: 'only_left=...', 'both=...', 'only_right=...', each a comma-separated ascending list of integers, using '-' when a set is empty."} {"id":"cmssjn52m00ugjmp2pbyw839t","kind":"contributor_item","title":"Submission YW839T","provisional":false,"output_code":"import json\n\ndef transform(input):\n index = {}\n for line in input.strip(\"\\n\").split(\"\\n\"):\n if not line.strip():\n continue\n rec = json.loads(line)\n index.setdefault(rec[\"sym\"], set()).add(rec[\"file\"])\n return \"\\n\".join(\n \"%s -> %s\" % (sym, \", \".join(sorted(index[sym]))) for sym in sorted(index)\n )","input_data_sample":"{\"file\":\"a.py\",\"sym\":\"parse\"}\n{\"file\":\"b.py\",\"sym\":\"parse\"}\n{\"file\":\"a.py\",\"sym\":\"emit\"}\n{\"file\":\"c.py\",\"sym\":\"emit\"}\n{\"file\":\"a.py\",\"sym\":\"parse\"}","output_data_sample":"emit -> a.py, c.py\nparse -> a.py, b.py","transformation_instruction":"Build an inverted index from symbol to the sorted unique list of files defining it. Emit 'sym -> f1, f2' lines sorted by symbol name."} {"id":"cmssjn52n00ukjmp2niid4ym3","kind":"contributor_item","title":"Submission ID4YM3","provisional":false,"output_code":"def transform(input):\n lines = [l for l in input.strip(\"\\n\").split(\"\\n\") if l.strip()]\n depths = [(len(l) - len(l.lstrip(\" \"))) // 2 for l in lines]\n names = [l.strip() for l in lines]\n out, stack = [], []\n for i, (d, name) in enumerate(zip(depths, names)):\n stack = stack[:d] + [name]\n is_leaf = i + 1 == len(lines) or depths[i + 1] <= d\n if is_leaf:\n out.append(\"/\".join(stack))\n return \"\\n\".join(out)","input_data_sample":"src\n api\n routes.py\n schema.py\n utils\n io.py\ntests\n test_api.py","output_data_sample":"src/api/routes.py\nsrc/api/schema.py\nsrc/utils/io.py\ntests/test_api.py","transformation_instruction":"The input is a two-space-indented tree. Emit the full slash-joined path of every LEAF node (a line with no more-indented line after it), in input order."} {"id":"cmssjn52m00uijmp2tj77g71j","kind":"contributor_item","title":"Submission 77G71J","provisional":false,"output_code":"def transform(input):\n limit = 20\n lines, current = [], \"\"\n for word in input.split():\n if not current:\n current = word\n elif len(current) + 1 + len(word) <= limit:\n current += \" \" + word\n else:\n lines.append(current)\n current = word\n if current:\n lines.append(current)\n return \"\\n\".join(lines)","input_data_sample":"The quick brown fox jumps over the extraordinarily lazy dog near the riverbank","output_data_sample":"The quick brown fox\njumps over the\nextraordinarily lazy\ndog near the\nriverbank","transformation_instruction":"Greedily wrap the text to a maximum line width of 20 characters without splitting words. A word longer than the limit gets its own line. Emit the wrapped lines."} {"id":"cmssjn52n00uljmp243gqxprd","kind":"contributor_item","title":"Submission GQXPRD","provisional":false,"output_code":"def transform(input):\n out = []\n for line in input.strip(\"\\n\").split(\"\\n\"):\n if not line.strip():\n continue\n email, _, age = line.partition(\",\")\n local, at, domain = email.partition(\"@\")\n if not at or \"@\" in domain or \".\" not in domain or not local:\n out.append(\"REJECT %s bad_email\" % email)\n continue\n if not age.strip().lstrip(\"-\").isdigit():\n out.append(\"REJECT %s bad_age\" % email)\n continue\n n = int(age)\n if n < 18:\n out.append(\"REJECT %s underage\" % email)\n elif n > 120:\n out.append(\"REJECT %s bad_age\" % email)\n else:\n out.append(\"VALID %s %d\" % (email, n))\n return \"\\n\".join(out)","input_data_sample":"alice@example.com,32\nbob@example,17\ncarol@example.org,abc\ndave@example.net,45","output_data_sample":"VALID alice@example.com 32\nREJECT bob@example bad_email\nREJECT carol@example.org bad_age\nVALID dave@example.net 45","transformation_instruction":"Each line is 'email,age'. A record is valid when the email contains exactly one '@' with a dot in the domain and the age is an integer between 18 and 120 inclusive. Emit 'VALID ' or 'REJECT ' where reason is 'bad_email', 'bad_age' or 'underage', checking email first. Preserve input order."} {"id":"cmssjn52n00umjmp27pis1akd","kind":"contributor_item","title":"Submission IS1AKD","provisional":false,"output_code":"def transform(input):\n rows = [line.split(\",\") for line in input.strip(\"\\n\").split(\"\\n\") if line.strip()]\n width = max(len(r) for r in rows)\n padded = [r + [\"\"] * (width - len(r)) for r in rows]\n return \"\\n\".join(\",\".join(col) for col in zip(*padded))","input_data_sample":"a,b,c\n1,2,3,4\nx,y","output_data_sample":"a,1,x\nb,2,y\nc,3,\n,4,","transformation_instruction":"Transpose the ragged CSV. Pad short rows with empty strings out to the longest row length first, then emit the transposed rows as comma-separated lines."} {"id":"cmssl1xtl014rjmp20g3dokux","kind":"contributor_item","title":"Submission 3DOKUX","provisional":false,"output_code":"import json\n\ndef transform(text):\n totals = {}\n for line in text.strip().split('\\n'):\n fields = {}\n for token in line.strip().split():\n if '=' in token:\n key, value = token.split('=', 1)\n fields[key] = value\n endpoint = fields.get('endpoint')\n duration = fields.get('duration_ms')\n if endpoint is not None and duration is not None:\n totals[endpoint] = totals.get(endpoint, 0) + int(duration)\n return json.dumps(totals)","input_data_sample":"endpoint=/login duration_ms=120 status=200\nendpoint=/login duration_ms=95 status=200\nendpoint=/data duration_ms=340 status=500\nendpoint=/data duration_ms=210 status=200\nendpoint=/login duration_ms=80 status=404","output_data_sample":"{\"/login\": 295, \"/data\": 550}","transformation_instruction":"Parse space-separated key=value log lines and compute the total 'duration_ms' per 'endpoint', returning a JSON object mapping endpoint to total duration."} {"id":"cmssl1xtl014qjmp2zy50g0i2","kind":"contributor_item","title":"Submission 50G0I2","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n current = None\n for raw_line in text.strip().split('\\n'):\n line = raw_line.strip()\n if not line:\n continue\n if line.startswith('[') and line.endswith(']'):\n current = line[1:-1]\n result[current] = {}\n elif '=' in line and current is not None:\n key, value = line.split('=', 1)\n result[current][key.strip()] = value.strip()\n return json.dumps(result)","input_data_sample":"[server]\nhost = 127.0.0.1\nport = 8080\n\n[auth]\nenabled = true\ntimeout = 30\n","output_data_sample":"{\"server\": {\"host\": \"127.0.0.1\", \"port\": \"8080\"}, \"auth\": {\"enabled\": \"true\", \"timeout\": \"30\"}}","transformation_instruction":"Parse a simple INI-style config with [section] headers and key=value lines into a nested JSON object of sections to key/value maps, stripping whitespace."} {"id":"cmssl1xtl014pjmp2rpcrgfwo","kind":"contributor_item","title":"Submission CRGFWO","provisional":false,"output_code":"import csv\nimport io\nimport json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n result = []\n for row in reader:\n parsed = {}\n for key, value in row.items():\n value = value.strip()\n if value.isdigit():\n parsed[key] = int(value)\n else:\n try:\n parsed[key] = float(value)\n except ValueError:\n parsed[key] = value\n result.append(parsed)\n return json.dumps(result)","input_data_sample":"name,age,score\nAlice,30,92.5\nBob,25,88\nCara,22,79.25","output_data_sample":"[{\"name\": \"Alice\", \"age\": 30, \"score\": 92.5}, {\"name\": \"Bob\", \"age\": 25, \"score\": 88}, {\"name\": \"Cara\", \"age\": 22, \"score\": 79.25}]","transformation_instruction":"Parse a CSV block with a header row into a JSON array of objects, converting numeric-looking values to int or float."} {"id":"cmssl1xtl014sjmp2cwvjzjx8","kind":"contributor_item","title":"Submission VJZJX8","provisional":false,"output_code":"import re\nimport json\n\ndef transform(text):\n pattern = r'[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}'\n matches = re.findall(pattern, text)\n unique = sorted(set(m.lower() for m in matches))\n return json.dumps(unique)","input_data_sample":"Contact Alice at alice@example.com or Alice@Example.com for support. Bob's email is bob@example.org. For urgent issues, reach alice@example.com again or try admin@example.com.","output_data_sample":"[\"admin@example.com\", \"alice@example.com\", \"bob@example.org\"]","transformation_instruction":"Extract all email addresses from a block of free text, remove duplicates (case-insensitive), and return a JSON array of the unique addresses sorted alphabetically in lowercase."} {"id":"cmssl1xtl014ujmp2dlwh59jn","kind":"contributor_item","title":"Submission WH59JN","provisional":false,"output_code":"import re\nimport json\n\ndef transform(text):\n slugs = []\n for line in text.split('\\n'):\n line = line.strip()\n if not line:\n continue\n lowered = line.lower()\n cleaned = re.sub(r'[^a-z0-9]+', '-', lowered)\n slug = cleaned.strip('-')\n slugs.append(slug)\n return json.dumps(slugs)","input_data_sample":"Hello, World!\n Python -- The Amazing Language \n\n \nAI & Machine Learning: 2024 Trends\n???Weird***Title###","output_data_sample":"[\"hello-world\", \"python-the-amazing-language\", \"ai-machine-learning-2024-trends\", \"weird-title\"]","transformation_instruction":"Convert each line of text (article titles) into a URL-friendly slug: lowercase, alphanumeric with hyphens replacing whitespace/punctuation, collapsing consecutive hyphens and stripping leading/trailing hyphens. Skip blank lines. Return a JSON array of slugs in the original order."} {"id":"cmssl1xtl014tjmp251xedbg6","kind":"contributor_item","title":"Submission XEDBG6","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n stack = [(-1, result)]\n for raw_line in text.rstrip('\\n').split('\\n'):\n if not raw_line.strip():\n continue\n indent = len(raw_line) - len(raw_line.lstrip(' '))\n key, _, value = raw_line.strip().partition(':')\n key = key.strip()\n value = value.strip()\n while stack and indent <= stack[-1][0]:\n stack.pop()\n parent = stack[-1][1]\n if value == '':\n new_dict = {}\n parent[key] = new_dict\n stack.append((indent, new_dict))\n else:\n parent[key] = value\n return json.dumps(result)","input_data_sample":"database:\n host: localhost\n port: 5432\ncache:\n provider: redis\n ttl: 60\n","output_data_sample":"{\"database\": {\"host\": \"localhost\", \"port\": \"5432\"}, \"cache\": {\"provider\": \"redis\", \"ttl\": \"60\"}}","transformation_instruction":"Parse a minimal YAML-like structure using 2-space indentation to denote nested keys under a parent, and convert it into a nested JSON object. Leaf values are strings."} {"id":"cmssl1xtm014wjmp2g477hu0z","kind":"contributor_item","title":"Submission 77HU0Z","provisional":false,"output_code":"import json\n\ndef transform(text):\n results = []\n for line in text.strip().split('\\n'):\n parts = line.strip().split()\n a, op, b = parts[0], parts[1], parts[2]\n a_num = int(a)\n b_num = int(b)\n if op == '+':\n results.append(a_num + b_num)\n elif op == '-':\n results.append(a_num - b_num)\n elif op == '*':\n results.append(a_num * b_num)\n elif op == '/':\n results.append(a_num / b_num)\n return json.dumps(results)","input_data_sample":"12 + 8\n10 - 15\n6 * 7\n9 / 4\n20 / 5","output_data_sample":"[20, -5, 42, 2.25, 4.0]","transformation_instruction":"Parse a list of simple two-operand arithmetic expressions (format 'NUM OP NUM', where OP is +, -, *, or /), compute each result, and return a JSON array of results. Division should always produce a float per Python true-division semantics; other operations should produce integers when both operands are integers."} {"id":"cmssl1xtl014vjmp2ushe7bsd","kind":"contributor_item","title":"Submission HE7BSD","provisional":false,"output_code":"def transform(text):\n lines = [l for l in text.strip().split('\\n') if l.strip()]\n rows = [line.split('\\t') for line in lines]\n header = rows[0]\n body = rows[1:]\n header_line = '| ' + ' | '.join(header) + ' |'\n separator_line = '| ' + ' | '.join(['---'] * len(header)) + ' |'\n body_lines = ['| ' + ' | '.join(row) + ' |' for row in body]\n return '\\n'.join([header_line, separator_line] + body_lines)","input_data_sample":"Name\tRole\tYears\nAlice\tEngineer\t5\nBob\tManager\t8","output_data_sample":"| Name | Role | Years |\n| --- | --- | --- |\n| Alice | Engineer | 5 |\n| Bob | Manager | 8 |","transformation_instruction":"Convert tab-separated values (TSV) text with a header row into a Markdown table string, including the header separator row of dashes."} {"id":"cmssl1xtm014xjmp2oxly6es5","kind":"contributor_item","title":"Submission LY6ES5","provisional":false,"output_code":"import json\n\nROMAN_VALUES = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}\n\ndef roman_to_int(s):\n total = 0\n prev = 0\n for ch in reversed(s):\n value = ROMAN_VALUES[ch]\n if value < prev:\n total -= value\n else:\n total += value\n prev = value\n return total\n\ndef transform(text):\n values = [roman_to_int(line.strip()) for line in text.strip().split('\\n') if line.strip()]\n return json.dumps({'values': values, 'total': sum(values)})","input_data_sample":"XIV\nIX\nXL\nMCMXCIV\nIII","output_data_sample":"{\"values\": [14, 9, 40, 1994, 3], \"total\": 2060}","transformation_instruction":"Convert each line (a Roman numeral, uppercase) into its integer value using standard subtractive notation rules, and return a JSON object with a 'values' array (in original order) and a 'total' field equal to their sum."} {"id":"cmssl1xtm014yjmp22dvptqjf","kind":"contributor_item","title":"Submission VPTQJF","provisional":false,"output_code":"import json\n\ndef transform(text):\n records = []\n for line in text.strip().split('\\n'):\n record = {}\n for pair in line.split(';'):\n pair = pair.strip()\n if not pair:\n continue\n key, _, value = pair.partition(':')\n key = key.strip()\n value = value.strip()\n if value.lstrip('-').isdigit():\n record[key] = int(value)\n else:\n record[key] = value\n records.append(record)\n return json.dumps(records)","input_data_sample":"id: 1; name: Widget; price: 25; in_stock: true\nid: 2; name: Gadget; price: 40; in_stock: false\nid: 3; name: Gizmo; price: 15; in_stock: true","output_data_sample":"[{\"id\": 1, \"name\": \"Widget\", \"price\": 25, \"in_stock\": \"true\"}, {\"id\": 2, \"name\": \"Gadget\", \"price\": 40, \"in_stock\": \"false\"}, {\"id\": 3, \"name\": \"Gizmo\", \"price\": 15, \"in_stock\": \"true\"}]","transformation_instruction":"Parse text where each line is a record of semicolon-separated 'key: value' pairs, and convert it into a JSON array of objects. Values that look like integers should be converted to int; all other values (including 'true'/'false') remain strings."} {"id":"cmssl2whj0155jmp209jo2tjc","kind":"contributor_item","title":"Submission JO2TJC","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = list(reader)\n header = rows[0]\n data_rows = rows[1:]\n transposed = {header[i]: [row[i] for row in data_rows] for i in range(len(header))}\n return json.dumps(transposed)\n","input_data_sample":"name,age,city\nAlice,30,NYC\nBob,25,LA\n","output_data_sample":"{\"name\": [\"Alice\", \"Bob\"], \"age\": [\"30\", \"25\"], \"city\": [\"NYC\", \"LA\"]}","transformation_instruction":"Parse a CSV table and transpose it into a JSON object mapping each column header to a list of that column's values."} {"id":"cmssl2whj0156jmp2sg72upqs","kind":"contributor_item","title":"Submission 72UPQS","provisional":false,"output_code":"import re\n\ndef transform(text):\n return re.sub(r'[\\w.+-]+@[\\w-]+\\.[\\w.-]+', '[REDACTED]', text)\n","input_data_sample":"Contact us at support@example.com or sales@example.org for help.\nCC: admin@internal.net","output_data_sample":"Contact us at [REDACTED] or [REDACTED] for help.\nCC: [REDACTED]","transformation_instruction":"Redact all email addresses in the input text, replacing each with the literal string '[REDACTED]', leaving all other text unchanged."} {"id":"cmssl2whj0154jmp23r3jgi1d","kind":"contributor_item","title":"Submission 3JGI1D","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n groups = defaultdict(list)\n for line in text.strip().split('\\n'):\n line = line.strip()\n if not line:\n continue\n level = line[1:line.index(']')]\n msg = line[line.index(']')+2:]\n groups[level].append(msg)\n return json.dumps(dict(groups))\n","input_data_sample":"[ERROR] Connection refused\n[INFO] Server started\n[ERROR] Timeout occurred\n[WARN] Disk space low\n[INFO] Request handled\n","output_data_sample":"{\"ERROR\": [\"Connection refused\", \"Timeout occurred\"], \"INFO\": [\"Server started\", \"Request handled\"], \"WARN\": [\"Disk space low\"]}","transformation_instruction":"Group bracketed log lines like '[LEVEL] message' by their level into a JSON object mapping level to a list of messages, preserving order."} {"id":"cmssl2whi0153jmp2q2rrdq4e","kind":"contributor_item","title":"Submission RRDQ4E","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n section = None\n for line in text.strip().split('\\n'):\n line = line.strip()\n if not line:\n continue\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1]\n result[section] = {}\n elif '=' in line and section:\n k, v = line.split('=', 1)\n result[section][k.strip()] = v.strip()\n return json.dumps(result)\n","input_data_sample":"[server]\nhost = 0.0.0.0\nport = 8080\n[database]\nname = mydb\ntimeout = 30\n","output_data_sample":"{\"server\": {\"host\": \"0.0.0.0\", \"port\": \"8080\"}, \"database\": {\"name\": \"mydb\", \"timeout\": \"30\"}}","transformation_instruction":"Parse an INI-style config file with [section] headers into a nested JSON object of section -> {key: value}."} {"id":"cmssldaii015njmp26p0rucir","kind":"contributor_item","title":"Submission 0RUCIR","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n pairs = []\n\n def walk(node, prefix):\n if isinstance(node, dict):\n for k, v in node.items():\n walk(v, prefix + '.' + k if prefix else k)\n elif isinstance(node, list):\n for i, v in enumerate(node):\n walk(v, prefix + '[' + str(i) + ']')\n else:\n if isinstance(node, bool):\n rendered = 'true' if node else 'false'\n else:\n rendered = str(node)\n pairs.append(prefix + '=' + rendered)\n\n walk(data, '')\n return '\\n'.join(sorted(pairs))\n","input_data_sample":"{\"service\": {\"name\": \"auth\", \"retries\": 3}, \"limits\": {\"cpu\": \"500m\", \"tags\": [\"prod\", \"eu\"]}, \"active\": true}","output_data_sample":"active=true\nlimits.cpu=500m\nlimits.tags[0]=prod\nlimits.tags[1]=eu\nservice.name=auth\nservice.retries=3","transformation_instruction":"Flatten a nested JSON object into dotted-path 'key=value' lines sorted alphabetically by key. Index list elements with a bracketed position, for example limits.tags[0]. Render booleans lowercase as true/false."} {"id":"cmssldaii015ojmp23k50ckkx","kind":"contributor_item","title":"Submission 50CKKX","provisional":false,"output_code":"import json, re\n\nLINE = re.compile(r'^(\\S+) \\S+ \\S+ \\[[^\\]]+\\] \"(\\w+) (\\S+) [^\"]*\" (\\d{3}) (\\d+)$')\n\ndef transform(text):\n stats = {}\n for raw in text.strip().split('\\n'):\n m = LINE.match(raw.strip())\n if not m:\n continue\n _, _, path, status, size = m.groups()\n entry = stats.setdefault(path, {'requests': 0, 'errors': 0, 'bytes': 0})\n entry['requests'] += 1\n entry['bytes'] += int(size)\n if int(status) >= 400:\n entry['errors'] += 1\n rows = [\n {\n 'path': path,\n 'requests': e['requests'],\n 'error_rate': round(e['errors'] / e['requests'], 2),\n 'bytes': e['bytes'],\n }\n for path, e in stats.items()\n ]\n rows.sort(key=lambda r: (-r['requests'], r['path']))\n return json.dumps(rows)\n","input_data_sample":"10.0.0.4 - - [12/Aug/2026:09:14:02] \"GET /api/users HTTP/1.1\" 200 431\n10.0.0.9 - - [12/Aug/2026:09:14:05] \"POST /api/users HTTP/1.1\" 201 88\n10.0.0.4 - - [12/Aug/2026:09:15:41] \"GET /api/orders HTTP/1.1\" 500 12\n10.0.0.7 - - [12/Aug/2026:09:16:00] \"GET /api/users HTTP/1.1\" 404 0\n10.0.0.4 - - [12/Aug/2026:09:16:22] \"GET /api/orders HTTP/1.1\" 500 12\n","output_data_sample":"[{\"path\": \"/api/users\", \"requests\": 3, \"error_rate\": 0.33, \"bytes\": 519}, {\"path\": \"/api/orders\", \"requests\": 2, \"error_rate\": 1.0, \"bytes\": 24}]","transformation_instruction":"Parse Common Log Format lines and emit a JSON array of objects, one per request path, containing 'path', 'requests', 'error_rate' (share of responses with status 400 or above, rounded to two decimals) and 'bytes' (total bytes). Sort by requests descending, then path ascending."} {"id":"cmssldaii015kjmp2yjb07w4g","kind":"contributor_item","title":"Submission B07W4G","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n section = None\n for raw in text.strip().split('\\n'):\n line = raw.strip()\n if not line or line.startswith((';', '#')):\n continue\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1].strip()\n continue\n if '=' not in line or section is None:\n continue\n key, _, value = line.partition('=')\n value = value.strip()\n if value.isdigit():\n value = int(value)\n elif value.lower() in ('yes', 'no'):\n value = value.lower() == 'yes'\n result[section + '.' + key.strip()] = value\n return json.dumps(result)\n","input_data_sample":"[db]\nhost = localhost\nport = 5432\n\n[cache]\nhost = redis.internal\nttl = 300\nenabled = yes\n","output_data_sample":"{\"db.host\": \"localhost\", \"db.port\": 5432, \"cache.host\": \"redis.internal\", \"cache.ttl\": 300, \"cache.enabled\": true}","transformation_instruction":"Parse an INI-style config into a flat JSON object whose keys are 'section.option'. Coerce values that are all digits to integers and the words yes/no to booleans; leave everything else as strings. Keys must appear in the order they occur in the input."} {"id":"cmssldaii015ljmp2k8ylnxvm","kind":"contributor_item","title":"Submission YLNXVM","provisional":false,"output_code":"def transform(text):\n def key(tag):\n body = tag.lstrip('v')\n core, _, pre = body.partition('-')\n nums = [int(p) for p in core.split('.')]\n if not pre:\n return (nums, 1, [])\n parts = []\n for p in pre.split('.'):\n parts.append((0, int(p), '') if p.isdigit() else (1, 0, p))\n return (nums, 0, parts)\n\n tags = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n return '\\n'.join(sorted(tags, key=key))\n","input_data_sample":"v1.10.0\nv1.2.0\nv1.10.0-rc.2\nv2.0.0\nv1.10.0-rc.10\nv1.2.10\n","output_data_sample":"v1.2.0\nv1.2.10\nv1.10.0-rc.2\nv1.10.0-rc.10\nv1.10.0\nv2.0.0","transformation_instruction":"Sort a list of semantic version tags in ascending precedence order, one per line. Compare major, minor and patch numerically (not lexicographically), and rank a pre-release version below the same version without a pre-release. Compare numeric pre-release identifiers numerically. Keep the leading 'v' in the output."} {"id":"cmssldaii015mjmp20uqim3fh","kind":"contributor_item","title":"Submission QIM3FH","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n rows = list(csv.DictReader(io.StringIO(text.strip())))\n products = sorted({r['product'] for r in rows})\n totals = {}\n order = []\n for r in rows:\n region = r['region']\n if region not in totals:\n totals[region] = {}\n order.append(region)\n totals[region][r['product']] = totals[region].get(r['product'], 0) + int(r['units'])\n out = io.StringIO()\n writer = csv.writer(out, lineterminator='\\n')\n writer.writerow(['region'] + products)\n for region in order:\n writer.writerow([region] + [totals[region].get(p, 0) for p in products])\n return out.getvalue().strip()\n","input_data_sample":"region,product,units\n\"West, Coastal\",widget,12\nEast,widget,5\n\"West, Coastal\",gadget,3\nEast,gadget,8\nEast,widget,7\n","output_data_sample":"region,gadget,widget\n\"West, Coastal\",3,12\nEast,8,12","transformation_instruction":"Read a CSV where some fields are quoted and contain commas. Produce a pivot table as CSV: the first column is 'region', followed by one column per distinct product sorted alphabetically, with each cell the summed units for that region and product (0 when absent). Region rows appear in first-seen order. Use \\n line endings and re-quote any field containing a comma."} {"id":"cmsslvn1o0178jmp2hb6asu2y","kind":"contributor_item","title":"Submission 6ASU2Y","provisional":false,"output_code":"import csv, io\nfrom datetime import datetime\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n latest = {}\n for row in reader:\n sku = row['sku']\n ts = datetime.fromisoformat(row['updated_at'])\n if sku not in latest or ts > latest[sku][0]:\n latest[sku] = (ts, row)\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=['sku', 'name', 'quantity', 'updated_at'])\n writer.writeheader()\n for sku in sorted(latest):\n writer.writerow(latest[sku][1])\n return out.getvalue().strip()\n","input_data_sample":"sku,name,quantity,updated_at\nA100,Widget,50,2026-01-01T09:00:00\nA100,Widget,45,2026-01-03T14:00:00\nB200,Gadget,10,2026-01-02T11:00:00\nA100,Widget,48,2026-01-02T08:00:00\nB200,Gadget,12,2026-01-01T10:00:00\n","output_data_sample":"sku,name,quantity,updated_at\r\nA100,Widget,45,2026-01-03T14:00:00\r\nB200,Gadget,10,2026-01-02T11:00:00","transformation_instruction":"Given a CSV inventory log with columns sku,name,quantity,updated_at where the same sku may appear multiple times with different updated_at timestamps, deduplicate so only the row with the most recent updated_at is kept per sku. Return the deduplicated rows as CSV sorted by sku ascending."} {"id":"cmsslvn1o0175jmp2l4nxd2id","kind":"contributor_item","title":"Submission NXD2ID","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n totals = defaultdict(float)\n for row in reader:\n totals[row['region']] += float(row['revenue'])\n result = {region: round(total, 2) for region, total in sorted(totals.items())}\n return json.dumps(result)\n","input_data_sample":"region,product,revenue\nEast,Widget,120.50\nWest,Gadget,89.99\nEast,Gizmo,45.00\nNorth,Widget,200.00\nWest,Widget,75.25\nEast,Widget,60.00\n","output_data_sample":"{\"East\": 225.5, \"North\": 200.0, \"West\": 165.24}","transformation_instruction":"Parse CSV sales records with columns region, product, revenue. Sum revenue per region (rounding to 2 decimals) and return a JSON object mapping region name to total revenue, with keys in alphabetical order."} {"id":"cmsslvn1o017bjmp2opfs9b83","kind":"contributor_item","title":"Submission FS9B83","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n subjects = [f for f in reader.fieldnames if f != 'student']\n rows = []\n for row in reader:\n for subj in subjects:\n rows.append({'student': row['student'], 'subject': subj, 'score': row[subj]})\n rows.sort(key=lambda r: (r['student'], r['subject']))\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=['student', 'subject', 'score'])\n writer.writeheader()\n writer.writerows(rows)\n return out.getvalue().strip()\n","input_data_sample":"student,math,science,english\nAlice,85,90,78\nBob,70,65,80\n","output_data_sample":"student,subject,score\r\nAlice,english,78\r\nAlice,math,85\r\nAlice,science,90\r\nBob,english,80\r\nBob,math,70\r\nBob,science,65","transformation_instruction":"Convert a wide-format CSV of student scores (columns: student, plus one column per subject) into long format with columns student, subject, score — one row per student-subject pair. Sort rows by student, then by subject name alphabetically. Return as CSV."} {"id":"cmsslvn1o017fjmp26zqjrb1u","kind":"contributor_item","title":"Submission QJRB1U","provisional":false,"output_code":"import json, csv, io\n\ndef transform(text):\n data = json.loads(text)\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow(['order_id', 'customer', 'sku', 'qty', 'unit_price', 'line_total'])\n for item in data['items']:\n line_total = round(item['qty'] * item['unit_price'], 2)\n writer.writerow([data['order_id'], data['customer'], item['sku'], item['qty'], item['unit_price'], line_total])\n return out.getvalue().strip()\n","input_data_sample":"{\"order_id\": \"ORD-500\", \"customer\": \"Dana Lee\", \"items\": [{\"sku\": \"X1\", \"qty\": 2, \"unit_price\": 9.99}, {\"sku\": \"X2\", \"qty\": 1, \"unit_price\": 24.5}]}","output_data_sample":"order_id,customer,sku,qty,unit_price,line_total\r\nORD-500,Dana Lee,X1,2,9.99,19.98\r\nORD-500,Dana Lee,X2,1,24.5,24.5","transformation_instruction":"Given a JSON order object with order_id, customer, and a nested 'items' array (each with sku, qty, unit_price), explode it into one CSV row per line item with columns order_id, customer, sku, qty, unit_price, line_total (line_total = qty * unit_price, rounded to 2 decimals). Return as CSV."} {"id":"cmsslvn1o017jjmp2ifxi3fo8","kind":"contributor_item","title":"Submission XI3FO8","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n names = [p['name'] for p in data if p['in_stock'] and p['price'] < 20.00]\n return json.dumps(sorted(names))\n","input_data_sample":"[{\"name\": \"Widget\", \"price\": 12.5, \"in_stock\": true}, {\"name\": \"Gadget\", \"price\": 45.0, \"in_stock\": true}, {\"name\": \"Gizmo\", \"price\": 8.0, \"in_stock\": false}, {\"name\": \"Doohickey\", \"price\": 19.99, \"in_stock\": true}]","output_data_sample":"[\"Doohickey\", \"Widget\"]","transformation_instruction":"Given a JSON array of product objects with name, price, in_stock, filter to only products that are in stock AND priced strictly below 20.00. Return a JSON array of just the matching product names, sorted alphabetically."} {"id":"cmsslvn1o017ljmp28qkwzd3r","kind":"contributor_item","title":"Submission KWZD3R","provisional":false,"output_code":"import csv, io\nfrom collections import defaultdict\n\ndef transform(text):\n reader = list(csv.DictReader(io.StringIO(text.strip())))\n questions = sorted(set(r['question'] for r in reader))\n users = defaultdict(dict)\n for r in reader:\n users[r['user']][r['question']] = r['answer']\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow(['user'] + questions)\n for user in sorted(users):\n writer.writerow([user] + [users[user].get(q, '') for q in questions])\n return out.getvalue().strip()\n","input_data_sample":"user,question,answer\nu1,q1,Yes\nu1,q2,No\nu2,q1,No\nu2,q2,No\nu3,q1,Yes\nu3,q2,Yes\n","output_data_sample":"user,q1,q2\r\nu1,Yes,No\r\nu2,No,No\r\nu3,Yes,Yes","transformation_instruction":"Given a long-format CSV of survey responses with columns user, question, answer, pivot it to wide format: one row per user, one column per distinct question (columns sorted alphabetically by question id), with cell values being the answer. Return as CSV with header 'user' followed by the question columns, rows sorted by user."} {"id":"cmsslvn1o0176jmp25ojfckr4","kind":"contributor_item","title":"Submission JFCKR4","provisional":false,"output_code":"import json, csv, io\n\ndef transform(text):\n data = json.loads(text)\n out = io.StringIO()\n fieldnames = ['id', 'name', 'address_city', 'address_zip', 'active']\n writer = csv.DictWriter(out, fieldnames=fieldnames)\n writer.writeheader()\n for rec in data:\n row = {\n 'id': rec['id'],\n 'name': rec['name'],\n 'address_city': rec['address']['city'],\n 'address_zip': rec['address']['zip'],\n 'active': rec['active'],\n }\n writer.writerow(row)\n return out.getvalue().strip()\n","input_data_sample":"[{\"id\": 1, \"name\": \"Alice\", \"address\": {\"city\": \"Boston\", \"zip\": \"02118\"}, \"active\": true}, {\"id\": 2, \"name\": \"Bob\", \"address\": {\"city\": \"Austin\", \"zip\": \"73301\"}, \"active\": false}]","output_data_sample":"id,name,address_city,address_zip,active\r\n1,Alice,Boston,02118,True\r\n2,Bob,Austin,73301,False","transformation_instruction":"Given a JSON array of user records where each record has a nested 'address' object with 'city' and 'zip', flatten each record into a flat CSV row with columns id,name,address_city,address_zip,active (address fields prefixed with 'address_'). Return the CSV as a string."} {"id":"cmsslvn1o017ajmp2vxj2sjuq","kind":"contributor_item","title":"Submission J2SJUQ","provisional":false,"output_code":"import re, json\nfrom collections import Counter\n\nSTOPWORDS = {'the', 'and', 'over', 'while', 'a', 'an', 'to', 'of', 'in', 'is', 'it'}\n\ndef transform(text):\n words = re.findall(r\"[a-zA-Z']+\", text.lower())\n words = [w for w in words if w not in STOPWORDS]\n counts = Counter(words)\n top = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))[:5]\n return json.dumps(top)\n","input_data_sample":"The quick brown fox jumps over the lazy dog. The dog barks, and the fox runs away quickly. The lazy dog sleeps while the fox watches.","output_data_sample":"[[\"dog\", 3], [\"fox\", 3], [\"lazy\", 2], [\"away\", 1], [\"barks\", 1]]","transformation_instruction":"Given a paragraph of English text, tokenize it into lowercase alphabetic words (apostrophes allowed), remove a small fixed stopword list ('the','and','over','while','a','an','to','of','in','is','it'), count word frequencies, and return the top 5 most frequent words as a JSON array of [word, count] pairs sorted by count descending, then alphabetically ascending for ties."} {"id":"cmsslvn1o017djmp2754jqr9x","kind":"contributor_item","title":"Submission 4JQR9X","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n cust_map = {c['customer_id']: c['name'] for c in data['customers']}\n result = []\n for order in data['orders']:\n result.append({\n 'order_id': order['order_id'],\n 'customer_name': cust_map.get(order['customer_id'], 'Unknown'),\n 'amount': order['amount'],\n })\n result.sort(key=lambda r: r['order_id'])\n return json.dumps(result)\n","input_data_sample":"{\"orders\": [{\"order_id\": 1001, \"customer_id\": \"C1\", \"amount\": 250.0}, {\"order_id\": 1002, \"customer_id\": \"C2\", \"amount\": 75.5}, {\"order_id\": 1003, \"customer_id\": \"C1\", \"amount\": 120.0}], \"customers\": [{\"customer_id\": \"C1\", \"name\": \"Alice Chen\"}, {\"customer_id\": \"C2\", \"name\": \"Bob Martin\"}]}","output_data_sample":"[{\"order_id\": 1001, \"customer_name\": \"Alice Chen\", \"amount\": 250.0}, {\"order_id\": 1002, \"customer_name\": \"Bob Martin\", \"amount\": 75.5}, {\"order_id\": 1003, \"customer_name\": \"Alice Chen\", \"amount\": 120.0}]","transformation_instruction":"Given a JSON object with two keys 'orders' (list of order_id, customer_id, amount) and 'customers' (list of customer_id, name), join each order with its customer's name via customer_id, producing a JSON array of objects with order_id, customer_name, amount, sorted by order_id ascending. Use 'Unknown' for any order whose customer_id has no matching customer."} {"id":"cmsslvn1o017mjmp2iflic069","kind":"contributor_item","title":"Submission LIC069","provisional":false,"output_code":"import json\n\ndef flatten(d, prefix=''):\n items = {}\n for k, v in d.items():\n new_key = f'{prefix}.{k}' if prefix else k\n if isinstance(v, dict):\n items.update(flatten(v, new_key))\n else:\n items[new_key] = v\n return items\n\ndef transform(text):\n data = json.loads(text)\n flat = flatten(data)\n return json.dumps(dict(sorted(flat.items())))\n","input_data_sample":"{\"app\": {\"name\": \"EMORA\", \"server\": {\"host\": \"localhost\", \"port\": 8080, \"tls\": {\"enabled\": true}}}, \"debug\": false}","output_data_sample":"{\"app.name\": \"EMORA\", \"app.server.host\": \"localhost\", \"app.server.port\": 8080, \"app.server.tls.enabled\": true, \"debug\": false}","transformation_instruction":"Given a deeply nested JSON configuration object, flatten it into a single-level JSON object whose keys are dot-separated paths to each leaf value (non-dict values). Return the flattened object as JSON with keys sorted alphabetically."} {"id":"cmsslvn1o0177jmp2kie2x5rh","kind":"contributor_item","title":"Submission E2X5RH","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l.strip()]\n counts = Counter()\n for line in lines:\n parts = line.split()\n status = int(parts[-1])\n path = parts[-2]\n if status >= 500:\n counts[path] += 1\n ordered = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))\n return json.dumps({k: v for k, v in ordered})\n","input_data_sample":"2026-01-01T10:00:00Z GET /api/users 200\n2026-01-01T10:00:05Z GET /api/orders 503\n2026-01-01T10:00:07Z POST /api/orders 500\n2026-01-01T10:00:09Z GET /api/users 500\n2026-01-01T10:00:11Z GET /api/health 200\n","output_data_sample":"{\"/api/orders\": 2, \"/api/users\": 1}","transformation_instruction":"Parse space-delimited server log lines of the form ' '. Keep only lines with an HTTP status code of 500 or greater, count how many such error lines occurred per path, and return a JSON object mapping path to count, ordered by count descending (ties broken alphabetically by path)."} {"id":"cmsslvn1o017cjmp294f3hnpl","kind":"contributor_item","title":"Submission F3HNPL","provisional":false,"output_code":"import csv, io\nfrom collections import defaultdict\n\nMONTH_ORDER = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n totals = defaultdict(lambda: defaultdict(int))\n months_seen = set()\n for row in reader:\n totals[row['region']][row['month']] += int(row['amount'])\n months_seen.add(row['month'])\n months = [m for m in MONTH_ORDER if m in months_seen]\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow(['region'] + months)\n for region in sorted(totals):\n writer.writerow([region] + [totals[region].get(m, 0) for m in months])\n return out.getvalue().strip()\n","input_data_sample":"region,month,amount\nEast,Jan,100\nEast,Feb,150\nWest,Jan,80\nWest,Feb,90\nEast,Jan,50\n","output_data_sample":"region,Jan,Feb\r\nEast,150,150\r\nWest,80,90","transformation_instruction":"Given a long-format CSV of transactions with columns region, month, amount (month values are 3-letter abbreviations, integer amounts), pivot into a wide table: one row per region, one column per month (ordered chronologically Jan..Dec, only including months present in the data), with cell values being the sum of amount for that region/month. Return as CSV with header 'region' followed by the month columns."} {"id":"cmsslvn1o0179jmp23hzacazk","kind":"contributor_item","title":"Submission ZACAZK","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n temps = [d['temp'] for d in data]\n result = []\n for i, d in enumerate(data):\n window = temps[max(0, i-2):i+1]\n avg = round(sum(window) / len(window), 2)\n result.append({'time': d['time'], 'rolling_avg': avg})\n return json.dumps(result)\n","input_data_sample":"[{\"time\": \"08:00\", \"temp\": 20.0}, {\"time\": \"08:05\", \"temp\": 21.0}, {\"time\": \"08:10\", \"temp\": 22.0}, {\"time\": \"08:15\", \"temp\": 23.0}, {\"time\": \"08:20\", \"temp\": 24.0}]","output_data_sample":"[{\"time\": \"08:00\", \"rolling_avg\": 20.0}, {\"time\": \"08:05\", \"rolling_avg\": 20.5}, {\"time\": \"08:10\", \"rolling_avg\": 21.0}, {\"time\": \"08:15\", \"rolling_avg\": 22.0}, {\"time\": \"08:20\", \"rolling_avg\": 23.0}]","transformation_instruction":"Given a JSON array of sensor readings each with 'time' and 'temp', compute a trailing rolling average of temp over a window of up to 3 readings (the current reading plus the up-to-2 preceding readings; early readings use whatever readings are available). Return a JSON array of objects with 'time' and 'rolling_avg' (rounded to 2 decimals), preserving original order."} {"id":"cmsslvn1o017gjmp2iaqx11s8","kind":"contributor_item","title":"Submission QX11S8","provisional":false,"output_code":"import csv, io, json, re\n\ndef clean_name(name):\n name = name.strip()\n name = re.sub(r'\\s+', ' ', name)\n return name.title()\n\ndef clean_email(email):\n email = email.strip().lower()\n email = email.replace(' ', '')\n return email\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n result = []\n for row in reader:\n result.append({\n 'name': clean_name(row['raw_name']),\n 'email': clean_email(row['raw_email']),\n })\n return json.dumps(result)\n","input_data_sample":"raw_name,raw_email\n\" ALICE Johnson \",\"Alice.Johnson@EXAMPLE.com \"\n\"bob DAVIS\",\" bob_davis@Example.COM\"\n\" CARLA ruiz\",\"carla.ruiz@example.com \"\n","output_data_sample":"[{\"name\": \"Alice Johnson\", \"email\": \"alice.johnson@example.com\"}, {\"name\": \"Bob Davis\", \"email\": \"bob_davis@example.com\"}, {\"name\": \"Carla Ruiz\", \"email\": \"carla.ruiz@example.com\"}]","transformation_instruction":"Given a CSV of raw_name, raw_email pairs with inconsistent capitalization and extraneous whitespace, clean each name into title case with single spaces (trimmed), and clean each email by trimming whitespace, removing internal spaces, and lowercasing. Return a JSON array of objects with 'name' and 'email' in original row order."} {"id":"cmsslvn1o017ejmp2n9airp1d","kind":"contributor_item","title":"Submission AIRP1D","provisional":false,"output_code":"import csv, io, json\nfrom datetime import datetime\n\ndef parse_date(s):\n for fmt in ('%m/%d/%Y', '%Y-%m-%d', '%d-%m-%Y'):\n try:\n return datetime.strptime(s, fmt).strftime('%Y-%m-%d')\n except ValueError:\n continue\n raise ValueError(f'Unrecognized date format: {s}')\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n result = []\n for row in reader:\n price = float(row['price'].replace('$', '').replace(',', ''))\n result.append({\n 'item': row['item'],\n 'price': round(price, 2),\n 'purchase_date': parse_date(row['purchase_date']),\n })\n return json.dumps(result)\n","input_data_sample":"item,price,purchase_date\nLaptop,\"$1,299.99\",03/15/2026\nMouse,$25.00,2026-03-16\nKeyboard,\"$89.5\",15-03-2026\n","output_data_sample":"[{\"item\": \"Laptop\", \"price\": 1299.99, \"purchase_date\": \"2026-03-15\"}, {\"item\": \"Mouse\", \"price\": 25.0, \"purchase_date\": \"2026-03-16\"}, {\"item\": \"Keyboard\", \"price\": 89.5, \"purchase_date\": \"2026-03-15\"}]","transformation_instruction":"Given a CSV of purchases with columns item, price (formatted as a dollar amount, possibly with thousands-separator commas and quoted), purchase_date (in one of three inconsistent formats: MM/DD/YYYY, YYYY-MM-DD, or DD-MM-YYYY), normalize price to a plain float and purchase_date to ISO format YYYY-MM-DD. Return a JSON array of objects with item, price, purchase_date in original row order."} {"id":"cmsslvn1o017ijmp2plrhyggh","kind":"contributor_item","title":"Submission RHYGGH","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n data = json.loads(text)\n groups = defaultdict(list)\n for rec in data:\n groups[rec['department']].append(rec['salary'])\n result = {}\n for dept in sorted(groups):\n salaries = groups[dept]\n result[dept] = {\n 'count': len(salaries),\n 'avg_salary': round(sum(salaries) / len(salaries), 2)\n }\n return json.dumps(result)\n","input_data_sample":"[{\"name\": \"Alice\", \"department\": \"Engineering\", \"salary\": 95000}, {\"name\": \"Bob\", \"department\": \"Sales\", \"salary\": 65000}, {\"name\": \"Carla\", \"department\": \"Engineering\", \"salary\": 105000}, {\"name\": \"Dan\", \"department\": \"Sales\", \"salary\": 70000}, {\"name\": \"Eve\", \"department\": \"Marketing\", \"salary\": 60000}]","output_data_sample":"{\"Engineering\": {\"count\": 2, \"avg_salary\": 100000.0}, \"Marketing\": {\"count\": 1, \"avg_salary\": 60000.0}, \"Sales\": {\"count\": 2, \"avg_salary\": 67500.0}}","transformation_instruction":"Given a JSON array of employee records with name, department, salary, group employees by department and compute the count of employees and average salary (rounded to 2 decimals) per department. Return a JSON object mapping department name to an object with 'count' and 'avg_salary', with department keys in alphabetical order."} {"id":"cmsslvn1o017hjmp2wxl80ry3","kind":"contributor_item","title":"Submission L80RY3","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n seen = set()\n rows = []\n for row in reader:\n key = row['email'].lower()\n if key not in seen:\n seen.add(key)\n rows.append(row)\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=['id', 'name', 'email'])\n writer.writeheader()\n writer.writerows(rows)\n return out.getvalue().strip()\n","input_data_sample":"id,name,email\n1,Alice,alice@example.com\n2,Alice Cooper,ALICE@example.com\n3,Bob,bob@example.com\n4,Bob Two,bob@example.com\n5,Carla,carla@example.com\n","output_data_sample":"id,name,email\r\n1,Alice,alice@example.com\r\n3,Bob,bob@example.com\r\n5,Carla,carla@example.com","transformation_instruction":"Given a CSV of id,name,email rows where the same email address may appear more than once with different casing, deduplicate rows by email (case-insensitive), keeping only the first occurrence in file order. Return the deduplicated rows as CSV, preserving original row order among the kept rows."} {"id":"cmsslvn1o017kjmp2rxif6fr9","kind":"contributor_item","title":"Submission IF6FR9","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = list(csv.DictReader(io.StringIO(text.strip())))\n closes = [float(r['close']) for r in reader]\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow(['date', 'moving_avg_3'])\n for i in range(2, len(reader)):\n window = closes[i-2:i+1]\n avg = round(sum(window)/3, 2)\n writer.writerow([reader[i]['date'], avg])\n return out.getvalue().strip()\n","input_data_sample":"date,close\n2026-01-01,100.0\n2026-01-02,102.0\n2026-01-03,101.0\n2026-01-04,105.0\n2026-01-05,107.0\n","output_data_sample":"date,moving_avg_3\r\n2026-01-03,101.0\r\n2026-01-04,102.67\r\n2026-01-05,104.33","transformation_instruction":"Given a CSV of daily stock closing prices with columns date, close, compute a 3-day trailing moving average of close, emitting a result only once a full 3-day window is available (i.e., starting from the 3rd row onward). Return a CSV with columns date, moving_avg_3 (rounded to 2 decimals), where date is the date of the last day in each window."} {"id":"cmsslvn1o017njmp2thsbabgf","kind":"contributor_item","title":"Submission SBABGF","provisional":false,"output_code":"import re, json\n\nEMAIL_RE = re.compile(r'[\\w.+-]+@[\\w-]+\\.[\\w.-]+')\nPHONE_RE = re.compile(r'\\(?\\d{3}\\)?[\\s.-]?\\d{3}-\\d{4}')\n\ndef transform(text):\n emails = sorted(set(EMAIL_RE.findall(text)))\n phones = sorted(set(PHONE_RE.findall(text)))\n return json.dumps({'emails': emails, 'phones': phones})\n","input_data_sample":"Contact us: John Doe - john.doe@company.com or call (555) 123-4567. Alternatively reach Sales at sales@company.org, phone 555-987-6543.","output_data_sample":"{\"emails\": [\"john.doe@company.com\", \"sales@company.org\"], \"phones\": [\"(555) 123-4567\", \"555-987-6543\"]}","transformation_instruction":"Given an unstructured block of text containing contact information, extract all email addresses and all US-style phone numbers (formats like '(555) 123-4567' or '555-987-6543'). Return a JSON object with keys 'emails' and 'phones', each a sorted, de-duplicated JSON array of the extracted strings."} {"id":"cmsslvn1o017ojmp279ow3vvw","kind":"contributor_item","title":"Submission OW3VVW","provisional":false,"output_code":"import json\nfrom collections import defaultdict, Counter\n\ndef transform(text):\n data = json.loads(text)\n by_day = defaultdict(Counter)\n for rec in data:\n day = rec['timestamp'].split('T')[0]\n by_day[day][rec['event']] += 1\n result = {}\n for day in sorted(by_day):\n result[day] = dict(sorted(by_day[day].items()))\n return json.dumps(result)\n","input_data_sample":"[{\"timestamp\": \"2026-02-01T09:15:00\", \"event\": \"login\"}, {\"timestamp\": \"2026-02-01T10:00:00\", \"event\": \"click\"}, {\"timestamp\": \"2026-02-01T11:30:00\", \"event\": \"login\"}, {\"timestamp\": \"2026-02-02T08:00:00\", \"event\": \"logout\"}, {\"timestamp\": \"2026-02-02T08:05:00\", \"event\": \"click\"}, {\"timestamp\": \"2026-02-02T08:10:00\", \"event\": \"click\"}]","output_data_sample":"{\"2026-02-01\": {\"click\": 1, \"login\": 2}, \"2026-02-02\": {\"click\": 2, \"logout\": 1}}","transformation_instruction":"Given a JSON array of event log records with 'timestamp' (ISO datetime string) and 'event' (event type name), group events by calendar day (YYYY-MM-DD portion of the timestamp) and count occurrences of each event type within each day. Return a nested JSON object: outer keys are dates (sorted ascending), inner keys are event type names (sorted alphabetically) mapped to their count for that day."} {"id":"cmssm4xl101bujmp2k0r8yfxx","kind":"contributor_item","title":"Submission R8YFXX","provisional":false,"output_code":"def transform(text):\n temps = [float(x) for x in text.strip().split(',')]\n celsius = [round((f - 32) * 5 / 9, 1) for f in temps]\n return ','.join(str(c) for c in celsius)\n","input_data_sample":"32,68,98.6,212","output_data_sample":"0.0,20.0,37.0,100.0","transformation_instruction":"Convert a comma-separated list of Fahrenheit temperatures into Celsius, rounded to 1 decimal place, comma-separated."} {"id":"cmssm4xl101bsjmp25dxw8wr2","kind":"contributor_item","title":"Submission XW8WR2","provisional":false,"output_code":"import csv, json, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n return json.dumps(list(reader))\n","input_data_sample":"name,age,city\nAlice,30,NYC\nBob,25,LA\n","output_data_sample":"[{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"NYC\"}, {\"name\": \"Bob\", \"age\": \"25\", \"city\": \"LA\"}]","transformation_instruction":"Parse a CSV with a header row into a JSON array of objects, one object per data row."} {"id":"cmssm4xl101btjmp2lrkzfiug","kind":"contributor_item","title":"Submission KZFIUG","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n def flatten(obj, prefix=''):\n items = {}\n for k, v in obj.items():\n new_key = f\"{prefix}.{k}\" if prefix else k\n if isinstance(v, dict):\n items.update(flatten(v, new_key))\n else:\n items[new_key] = v\n return items\n return json.dumps(flatten(data))\n","input_data_sample":"{\"user\": {\"name\": \"Ada\", \"address\": {\"city\": \"London\", \"zip\": \"E1\"}}, \"active\": true}","output_data_sample":"{\"user.name\": \"Ada\", \"user.address.city\": \"London\", \"user.address.zip\": \"E1\", \"active\": true}","transformation_instruction":"Flatten a nested JSON object into a single-level JSON object with dot-notation keys."} {"id":"cmssm4xl101bwjmp2dds4l2fw","kind":"contributor_item","title":"Submission S4L2FW","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n def to_camel(key):\n parts = key.split('_')\n return parts[0] + ''.join(p.capitalize() for p in parts[1:])\n result = {to_camel(k): v for k, v in data.items()}\n return json.dumps(result)\n","input_data_sample":"{\"first_name\": \"Ada\", \"last_name\": \"Lovelace\", \"user_id\": 42}","output_data_sample":"{\"firstName\": \"Ada\", \"lastName\": \"Lovelace\", \"userId\": 42}","transformation_instruction":"Convert all snake_case keys in a flat JSON object to camelCase, keeping values unchanged."} {"id":"cmssm4xl101bvjmp2w3zfn2xx","kind":"contributor_item","title":"Submission ZFN2XX","provisional":false,"output_code":"import re, json\n\ndef transform(text):\n emails = re.findall(r'[\\w.+-]+@[\\w-]+\\.[\\w.-]+', text)\n emails = [e.rstrip('.') for e in emails]\n unique_sorted = sorted(set(emails))\n return json.dumps(unique_sorted)\n","input_data_sample":"Contact us at support@example.com or sales@example.com. For urgent issues email support@example.com again or admin@test.org.","output_data_sample":"[\"admin@test.org\", \"sales@example.com\", \"support@example.com\"]","transformation_instruction":"Extract all unique email addresses from the text, sort them alphabetically, and return as a JSON array of strings."} {"id":"cmssnl4rm000xg4p2o39ql7fo","kind":"contributor_item","title":"Submission 9QL7FO","provisional":false,"output_code":"def transform(text):\n import json\n records = []\n for line in text.strip().splitlines():\n parts = line.split(';')\n d = {}\n for p in parts:\n k, v = p.split(':', 1)\n k = k.strip()\n v = v.strip()\n d[k] = None if v.upper() == 'N/A' else v\n records.append(d)\n return json.dumps(records)\n","input_data_sample":"Name: Alice Johnson; Phone: 555-1234; Email: alice@example.com\nName: Bob Smith; Phone: N/A; Email: bob@example.com\nName: Carol White; Phone: 555-9876; Email: N/A\n","output_data_sample":"[{\"Name\": \"Alice Johnson\", \"Phone\": \"555-1234\", \"Email\": \"alice@example.com\"}, {\"Name\": \"Bob Smith\", \"Phone\": null, \"Email\": \"bob@example.com\"}, {\"Name\": \"Carol White\", \"Phone\": \"555-9876\", \"Email\": null}]","transformation_instruction":"Each line is a semi-structured contact record with 'Key: value' pairs separated by semicolons (Name, Phone, Email). Parse each line into a JSON object with lowercase-preserved original keys, converting any value of 'N/A' (case-insensitive) to null. Return a JSON array of these objects."} {"id":"cmssnl4rm000yg4p24bvre6as","kind":"contributor_item","title":"Submission VRE6AS","provisional":false,"output_code":"def transform(text):\n import csv, io, json\n reader = csv.DictReader(io.StringIO(text))\n return json.dumps(list(reader))\n","input_data_sample":"name,quote\nAlice,\"She said, \"\"Hello, world!\"\"\"\nBob,\"Simple text\"\nCarol,\"Multi, part, quote\"\n","output_data_sample":"[{\"name\": \"Alice\", \"quote\": \"She said, \\\"Hello, world!\\\"\"}, {\"name\": \"Bob\", \"quote\": \"Simple text\"}, {\"name\": \"Carol\", \"quote\": \"Multi, part, quote\"}]","transformation_instruction":"Parse this CSV file correctly, respecting RFC-4180 quoting rules where fields may contain embedded commas and doubled double-quotes as escaped quote characters. Return a JSON array of objects, one per row, keyed by the header column names."} {"id":"cmssnl4rm000ng4p2zybb071w","kind":"contributor_item","title":"Submission BB071W","provisional":false,"output_code":"def transform(text):\n import csv, io\n lines = [l for l in text.splitlines() if l.strip() != '']\n header_line = lines[0]\n starts = [i for i, c in enumerate(header_line) if c != ' ' and (i == 0 or header_line[i - 1] == ' ')]\n max_len = max(len(l) for l in lines)\n starts.append(max_len)\n\n def split_line(line, starts):\n vals = []\n for idx in range(len(starts) - 1):\n s, e = starts[idx], starts[idx + 1]\n vals.append(line[s:e].strip())\n return vals\n\n headers = split_line(header_line, starts)\n rows = [split_line(l, starts) for l in lines[1:]]\n out = io.StringIO()\n writer = csv.writer(out, lineterminator='\\n')\n writer.writerow(headers)\n for r in rows:\n writer.writerow(r)\n return out.getvalue()\n","input_data_sample":"NAME AGE CITY \nJohn Doe 34 New York \nJane Smith 29 Boston \nAl Lee 45 San Francisco \n","output_data_sample":"NAME,AGE,CITY\nJohn Doe,34,New York\nJane Smith,29,Boston\nAl Lee,45,San Francisco\n","transformation_instruction":"This is a fixed-width text table (columns aligned by the header's start positions). Detect column boundaries from the header row, extract each column's values by slicing at those positions and stripping whitespace, and return the data reformatted as standard comma-separated CSV text (including the header row)."} {"id":"cmssnl4rm000wg4p20jksceih","kind":"contributor_item","title":"Submission KSCEIH","provisional":false,"output_code":"def transform(text):\n import json\n lines = [l for l in text.strip().splitlines() if l.strip()]\n header = [c.strip() for c in lines[0].strip('|').split('|')]\n rows = lines[2:]\n result = []\n for line in rows:\n cells = [c.strip() for c in line.strip('|').split('|')]\n d = {}\n for h, c in zip(header, cells):\n if c == '':\n d[h] = None\n else:\n try:\n d[h] = int(c)\n except ValueError:\n d[h] = c\n result.append(d)\n return json.dumps(result)\n","input_data_sample":"| Name | Score | Grade |\n|------|-------|-------|\n| Alice | 92 | A |\n| Bob | 78 | C |\n| Carol | | B |\n","output_data_sample":"[{\"Name\": \"Alice\", \"Score\": 92, \"Grade\": \"A\"}, {\"Name\": \"Bob\", \"Score\": 78, \"Grade\": \"C\"}, {\"Name\": \"Carol\", \"Score\": null, \"Grade\": \"B\"}]","transformation_instruction":"Parse this Markdown table (header row, separator row, then data rows) into a JSON array of objects keyed by column name. Numeric-looking cell values should become integers, empty cells should become null, and all other cells stay strings."} {"id":"cmssnl4rm000og4p2pw2zg0fn","kind":"contributor_item","title":"Submission 2ZG0FN","provisional":false,"output_code":"def transform(text):\n import configparser, json\n cp = configparser.ConfigParser()\n cp.read_string(text)\n\n def coerce(v):\n vl = v.lower()\n if vl in ('true', 'false'):\n return vl == 'true'\n try:\n if '.' in v:\n return float(v)\n return int(v)\n except ValueError:\n return v\n\n result = {}\n for section in cp.sections():\n result[section] = {k: coerce(v) for k, v in cp.items(section)}\n return json.dumps(result)\n","input_data_sample":"[server]\nhost = localhost\nport = 8080\ndebug = true\ntimeout = 30.5\n\n[database]\nname = mydb\nuser = admin\nssl = false\n","output_data_sample":"{\"server\": {\"host\": \"localhost\", \"port\": 8080, \"debug\": true, \"timeout\": 30.5}, \"database\": {\"name\": \"mydb\", \"user\": \"admin\", \"ssl\": false}}","transformation_instruction":"Parse this INI-style configuration text into a JSON object keyed by section name, where each section maps its keys to values coerced to the correct type: 'true'/'false' become booleans, numeric strings become int or float, everything else stays a string."} {"id":"cmssnl4rm000qg4p2p88jc5tj","kind":"contributor_item","title":"Submission 8JC5TJ","provisional":false,"output_code":"def transform(text):\n import json\n from datetime import datetime\n formats = [\"%m/%d/%Y\", \"%d-%b-%Y\", \"%B %d, %Y\", \"%Y.%m.%d\"]\n results = []\n for line in text.strip().splitlines():\n line = line.strip()\n parsed = None\n for fmt in formats:\n try:\n parsed = datetime.strptime(line, fmt)\n break\n except ValueError:\n continue\n results.append(parsed.strftime(\"%Y-%m-%d\") if parsed else None)\n return json.dumps(results)\n","input_data_sample":"08/10/2026\n15-Aug-2026\nAugust 20, 2026\n2026.09.05\nnot-a-date\n","output_data_sample":"[\"2026-08-10\", \"2026-08-15\", \"2026-08-20\", \"2026-09-05\", null]","transformation_instruction":"Each line contains a date in one of several inconsistent formats (MM/DD/YYYY, DD-Mon-YYYY, Month DD, YYYY, or YYYY.MM.DD). Normalize every parseable date to ISO 8601 (YYYY-MM-DD). If a line cannot be parsed as any known format, use null for that entry. Return a JSON array preserving the original line order."} {"id":"cmssnl4rm0011g4p24b9j2j4r","kind":"contributor_item","title":"Submission 9J2J4R","provisional":false,"output_code":"def transform(text):\n import csv, io, json\n from collections import defaultdict\n reader = csv.DictReader(io.StringIO(text))\n sums = defaultdict(float)\n counts = defaultdict(int)\n order = []\n for row in reader:\n minute_key = row['timestamp'][:16]\n if minute_key not in sums:\n order.append(minute_key)\n sums[minute_key] += float(row['value'])\n counts[minute_key] += 1\n result = [{\"minute\": k, \"average\": round(sums[k] / counts[k], 2)} for k in order]\n return json.dumps(result)\n","input_data_sample":"timestamp,value\n2026-08-10 10:00:01,20\n2026-08-10 10:00:15,22\n2026-08-10 10:00:47,21\n2026-08-10 10:01:05,30\n2026-08-10 10:01:50,28\n","output_data_sample":"[{\"minute\": \"2026-08-10 10:00\", \"average\": 21.0}, {\"minute\": \"2026-08-10 10:01\", \"average\": 29.0}]","transformation_instruction":"This CSV has timestamped sensor readings with second-level precision and multiple readings per minute. Truncate each timestamp to the minute (drop seconds), group readings by minute, and compute the average value per minute (rounded to 2 decimals). Return a JSON array of objects with keys 'minute' and 'average', in chronological order of first appearance."} {"id":"cmssnl4rm000sg4p2sln4jgin","kind":"contributor_item","title":"Submission N4JGIN","provisional":false,"output_code":"def transform(text):\n import html, re\n decoded = html.unescape(text)\n decoded = decoded.replace('\\xa0', ' ')\n normalized = re.sub(r'\\s+', ' ', decoded).strip()\n return normalized\n","input_data_sample":"Price: <$50>   Free Shipping!\t\tHurry & save now.\n\n Limited time offer... "Don't miss it"","output_data_sample":"Price: <$50> Free Shipping! Hurry & save now. Limited time offer... \"Don't miss it\"","transformation_instruction":"This text contains HTML entities (<, >, &, ", ',  ) and irregular whitespace (tabs, multiple spaces, blank lines). Decode all HTML entities to their literal characters, convert non-breaking spaces to regular spaces, collapse all runs of whitespace into single spaces, and trim leading/trailing whitespace. Return the cleaned plain text string."} {"id":"cmssnl4rm000lg4p2dikj0k1i","kind":"contributor_item","title":"Submission KJ0K1I","provisional":false,"output_code":"def transform(text):\n import re, json\n from collections import defaultdict\n pattern = re.compile(r'^(\\S+) - - \\[.*?\\] \"\\S+ \\S+ \\S+\" (\\d{3})')\n counts = defaultdict(lambda: defaultdict(int))\n for line in text.strip().splitlines():\n m = pattern.match(line)\n if not m:\n continue\n ip, status = m.group(1), m.group(2)\n counts[ip][status] += 1\n result = {ip: dict(sorted(counts[ip].items())) for ip in sorted(counts)}\n return json.dumps(result)\n","input_data_sample":"192.168.1.1 - - [10/Aug/2026:13:55:36] \"GET /index.html HTTP/1.1\" 200 1024\n192.168.1.2 - - [10/Aug/2026:13:56:01] \"GET /about HTTP/1.1\" 404 512\n192.168.1.1 - - [10/Aug/2026:13:57:22] \"POST /login HTTP/1.1\" 200 256\n192.168.1.1 - - [10/Aug/2026:13:58:10] \"GET /missing HTTP/1.1\" 404 128\n192.168.1.3 - - [10/Aug/2026:13:59:00] \"GET /index.html HTTP/1.1\" 500 64\n192.168.1.2 - - [10/Aug/2026:14:00:00] \"GET /index.html HTTP/1.1\" 200 1024\n","output_data_sample":"{\"192.168.1.1\": {\"200\": 2, \"404\": 1}, \"192.168.1.2\": {\"200\": 1, \"404\": 1}, \"192.168.1.3\": {\"500\": 1}}","transformation_instruction":"Parse this Apache-style access log. For each client IP address, count how many requests resulted in each HTTP status code. Return a JSON object mapping IP address to an object of {status_code: count}, with IP addresses and status codes both sorted ascending."} {"id":"cmssnl4rm000mg4p2tibvvn2d","kind":"contributor_item","title":"Submission BVVN2D","provisional":false,"output_code":"def transform(text):\n import json\n from urllib.parse import unquote\n from collections import defaultdict\n grouped = defaultdict(list)\n for part in text.split('&'):\n if not part:\n continue\n if '=' in part:\n k, v = part.split('=', 1)\n else:\n k, v = part, ''\n grouped[unquote(k)].append(unquote(v))\n\n def coerce(v):\n if v.lower() == 'true':\n return True\n if v.lower() == 'false':\n return False\n try:\n if '.' in v:\n return float(v)\n return int(v)\n except ValueError:\n return v\n\n result = {}\n for k, vals in grouped.items():\n if len(vals) > 1:\n result[k] = [coerce(v) for v in vals]\n else:\n result[k] = coerce(vals[0])\n return json.dumps(result)\n","input_data_sample":"tag=python&tag=data&tag=csv&user=jdoe&active=true&limit=10¬e=hello%20world","output_data_sample":"{\"tag\": [\"python\", \"data\", \"csv\"], \"user\": \"jdoe\", \"active\": true, \"limit\": 10, \"note\": \"hello world\"}","transformation_instruction":"Parse this URL query string. Percent-decode keys and values (leave literal '+' characters as-is, do not treat them as spaces). If a key appears more than once, collect all its values into a JSON array in order of appearance; otherwise store it as a scalar. Coerce 'true'/'false' to booleans and numeric-looking values to int/float. Return the result as a JSON object."} {"id":"cmssnl4rm000kg4p2iuxoc8p1","kind":"contributor_item","title":"Submission XOC8P1","provisional":false,"output_code":"def transform(text):\n import csv, io, json\n reader = csv.DictReader(io.StringIO(text))\n totals = {}\n for row in reader:\n cat = row['category']\n try:\n price = float(row['price'])\n except (ValueError, TypeError):\n price = 0.0\n try:\n qty = float(row['qty'])\n except (ValueError, TypeError):\n qty = 0.0\n totals[cat] = totals.get(cat, 0.0) + price * qty\n totals = {k: round(v, 2) for k, v in sorted(totals.items())}\n return json.dumps(totals)\n","input_data_sample":"category,product,price,qty\nElectronics,Widget,19.99,3\nElectronics,Gadget,,5\nGroceries,Apple,0.50,10\nGroceries,Bread,2.00,\nElectronics,Gizmo,9.99,2\nToys,Ball,5.00,4\nGroceries,Milk,abc,3\n","output_data_sample":"{\"Electronics\": 79.95, \"Groceries\": 5.0, \"Toys\": 20.0}","transformation_instruction":"Parse this CSV of product sales. Treat missing or non-numeric price/qty values as 0. Compute total revenue (price*qty) per category, round to 2 decimals, and return a JSON object mapping category name to total revenue, with keys sorted alphabetically."} {"id":"cmssnl4rm000rg4p277p7nilx","kind":"contributor_item","title":"Submission P7NILX","provisional":false,"output_code":"def transform(text):\n import csv, io, json\n from collections import defaultdict\n reader = csv.DictReader(io.StringIO(text))\n sums = defaultdict(float)\n counts = defaultdict(int)\n for row in reader:\n try:\n amt = float(row['amount'])\n except (ValueError, TypeError):\n amt = 0.0\n sums[row['region']] += amt\n counts[row['region']] += 1\n result = []\n for region in sums:\n total = sums[region]\n avg = total / counts[region]\n result.append({\"region\": region, \"total\": round(total, 2), \"average\": round(avg, 2)})\n result.sort(key=lambda x: -x['total'])\n return json.dumps(result)\n","input_data_sample":"region,salesperson,amount\nEast,Tom,1200\nWest,Anna,900\nEast,Lisa,800\nWest,Mike,1100\nEast,Tom,500\nNorth,Sam,700\n","output_data_sample":"[{\"region\": \"East\", \"total\": 2500.0, \"average\": 833.33}, {\"region\": \"West\", \"total\": 2000.0, \"average\": 1000.0}, {\"region\": \"North\", \"total\": 700.0, \"average\": 700.0}]","transformation_instruction":"Parse this CSV of sales records and group them by region. For each region compute the total sale amount and the average sale amount (both rounded to 2 decimals). Return a JSON array of objects with keys 'region', 'total', 'average', sorted by total descending."} {"id":"cmssnl4rm000pg4p2kd2gk6sy","kind":"contributor_item","title":"Submission 2GK6SY","provisional":false,"output_code":"def transform(text):\n import json\n records = []\n for rec in text.split(';'):\n rec = rec.strip()\n if not rec:\n continue\n fields = rec.split('|')\n d = {}\n for f in fields:\n k, v = f.split(':', 1)\n k = k.strip()\n if k == 'scores':\n d[k] = [int(x) for x in v.split(',')]\n elif k == 'id':\n d[k] = int(v)\n else:\n d[k] = v.strip()\n records.append(d)\n return json.dumps(records)\n","input_data_sample":"id:1|name:Alice|scores:90,85,88;id:2|name:Bob|scores:70,75;id:3|name:Carol|scores:100,95,90","output_data_sample":"[{\"id\": 1, \"name\": \"Alice\", \"scores\": [90, 85, 88]}, {\"id\": 2, \"name\": \"Bob\", \"scores\": [70, 75]}, {\"id\": 3, \"name\": \"Carol\", \"scores\": [100, 95, 90]}]","transformation_instruction":"This text encodes student records separated by ';', with fields inside each record separated by '|' as key:value pairs. The 'scores' field is a comma-separated list of integers and 'id' is an integer. Parse this into a JSON array of objects with properly typed fields."} {"id":"cmssnl4rm000ug4p2cuigx5fj","kind":"contributor_item","title":"Submission IGX5FJ","provisional":false,"output_code":"def transform(text):\n import csv, io\n rows = []\n keys_order = []\n for line in text.strip().splitlines():\n fields = line.split('|')\n d = {}\n for f in fields:\n k, v = f.split('=', 1)\n d[k] = v\n if k not in keys_order:\n keys_order.append(k)\n rows.append(d)\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=keys_order, lineterminator='\\n')\n writer.writeheader()\n for r in rows:\n writer.writerow(r)\n return out.getvalue()\n","input_data_sample":"timestamp=2026-08-10T10:00:00|user=jdoe|action=login|status=success\ntimestamp=2026-08-10T10:05:00|user=asmith|action=login|status=failed\ntimestamp=2026-08-10T10:06:00|user=jdoe|action=logout|status=success\n","output_data_sample":"timestamp,user,action,status\n2026-08-10T10:00:00,jdoe,login,success\n2026-08-10T10:05:00,asmith,login,failed\n2026-08-10T10:06:00,jdoe,logout,success\n","transformation_instruction":"This log has one event per line, with pipe-separated key=value fields. Extract the fields from every line and convert the whole log into standard CSV text, using the key names from the first line as column headers, in the order they first appear."} {"id":"cmssnl4rm000vg4p2cva9eg68","kind":"contributor_item","title":"Submission A9EG68","provisional":false,"output_code":"def transform(text):\n import json\n from collections import Counter\n counts = Counter()\n for line in text.strip().splitlines():\n if not line.strip():\n continue\n obj = json.loads(line)\n level = obj.get('level', 'INFO')\n counts[level] += 1\n return json.dumps(dict(sorted(counts.items())))\n","input_data_sample":"{\"msg\": \"start\", \"level\": \"INFO\"}\n{\"msg\": \"disk low\", \"level\": \"WARNING\"}\n{\"msg\": \"oops\"}\n{\"msg\": \"crash\", \"level\": \"ERROR\"}\n{\"msg\": \"another warn\", \"level\": \"WARNING\"}\n{\"msg\": \"ok\"}\n","output_data_sample":"{\"ERROR\": 1, \"INFO\": 3, \"WARNING\": 2}","transformation_instruction":"This is a JSON Lines (JSONL) log where each line is an independent JSON object with a 'msg' field and an optional 'level' field. Entries missing 'level' should be treated as 'INFO'. Count how many entries fall into each level and return a JSON object mapping level name to count, with keys sorted alphabetically."} {"id":"cmssnl4rm000tg4p2s3xe597x","kind":"contributor_item","title":"Submission XE597X","provisional":false,"output_code":"def transform(text):\n import json\n seen = []\n seen_set = set()\n for line in text.splitlines():\n line = line.strip()\n if not line:\n continue\n normalized = ' '.join(line.split()).title()\n if normalized not in seen_set:\n seen_set.add(normalized)\n seen.append(normalized)\n return json.dumps(seen)\n","input_data_sample":" ALICE johnson \nBob SMITH\nalice Johnson\n\tCAROL white\nBOB smith \n","output_data_sample":"[\"Alice Johnson\", \"Bob Smith\", \"Carol White\"]","transformation_instruction":"Each line is a person's name with inconsistent capitalization and irregular internal/leading/trailing whitespace (tabs, multiple spaces). Normalize each name to Title Case with single spaces between words, remove duplicate names (case-insensitive after normalization), and return a JSON array of the unique names in their first-seen order."} {"id":"cmssnl4rm000zg4p256qqyrz0","kind":"contributor_item","title":"Submission QQYRZ0","provisional":false,"output_code":"def transform(text):\n import csv, io, json\n reader = csv.reader(io.StringIO(text), delimiter='\\t')\n rows = list(reader)\n header = rows[0]\n data_rows = rows[1:]\n result = []\n for row in data_rows:\n merged = {}\n for h, v in zip(header, row):\n if h not in merged:\n merged[h] = v\n elif merged[h] == '' and v != '':\n merged[h] = v\n result.append(merged)\n return json.dumps(result)\n","input_data_sample":"id\tname\tname\temail\n1\tAlice\t\ta@example.com\n2\t\tBob\tb@example.com\n","output_data_sample":"[{\"id\": \"1\", \"name\": \"Alice\", \"email\": \"a@example.com\"}, {\"id\": \"2\", \"name\": \"Bob\", \"email\": \"b@example.com\"}]","transformation_instruction":"This is tab-separated data whose header row contains a duplicated column name ('name' appears twice, representing two data-entry attempts for the same field). For each row, merge the duplicate columns by keeping the first non-empty value among them. Return a JSON array of objects with one 'name' key per row (duplicate columns collapsed)."} {"id":"cmssnl4rm0013g4p2gq3d4ieq","kind":"contributor_item","title":"Submission 3D4IEQ","provisional":false,"output_code":"def transform(text):\n import csv, io, json\n from datetime import datetime\n formats = [\"%m/%d/%Y\", \"%Y-%m-%d\", \"%d-%b-%Y\"]\n reader = csv.DictReader(io.StringIO(text))\n result = []\n for row in reader:\n d = dict(row)\n raw = row['signup_date'].strip()\n parsed = None\n if raw:\n for fmt in formats:\n try:\n parsed = datetime.strptime(raw, fmt).strftime(\"%Y-%m-%d\")\n break\n except ValueError:\n continue\n d['signup_date'] = parsed\n result.append(d)\n return json.dumps(result)\n","input_data_sample":"id,name,signup_date\n1,Alice,08/10/2026\n2,Bob,2026-08-11\n3,Carol,\n4,Dave,11-Aug-2026\n","output_data_sample":"[{\"id\": \"1\", \"name\": \"Alice\", \"signup_date\": \"2026-08-10\"}, {\"id\": \"2\", \"name\": \"Bob\", \"signup_date\": \"2026-08-11\"}, {\"id\": \"3\", \"name\": \"Carol\", \"signup_date\": null}, {\"id\": \"4\", \"name\": \"Dave\", \"signup_date\": \"2026-08-11\"}]","transformation_instruction":"Parse this CSV of user signups whose 'signup_date' column mixes MM/DD/YYYY, YYYY-MM-DD, and DD-Mon-YYYY formats, with some rows missing the date entirely. Normalize every present date to ISO 8601 (YYYY-MM-DD) and use null for missing dates. Return a JSON array of the row objects with the normalized 'signup_date' field."} {"id":"cmssnl4rm0012g4p23pea6ic2","kind":"contributor_item","title":"Submission EA6IC2","provisional":false,"output_code":"def transform(text):\n import json\n tree = {}\n for line in text.strip().splitlines():\n parts = [p.strip() for p in line.split('>')]\n node = tree\n for p in parts:\n node = node.setdefault(p, {})\n return json.dumps(tree)\n","input_data_sample":"Home > Electronics > Phones > Smartphones\nHome > Electronics > Laptops\nHome > Garden > Tools\nHome > Electronics > Phones > Accessories\n","output_data_sample":"{\"Home\": {\"Electronics\": {\"Phones\": {\"Smartphones\": {}, \"Accessories\": {}}, \"Laptops\": {}}, \"Garden\": {\"Tools\": {}}}}","transformation_instruction":"Each line is a category breadcrumb path with segments separated by '>'. Merge all the paths into a single nested tree structure where each category name maps to an object of its child categories (leaf categories map to an empty object). Return the tree as a JSON object."} {"id":"cmssnl4rm0010g4p27wyah7bg","kind":"contributor_item","title":"Submission YAH7BG","provisional":false,"output_code":"def transform(text):\n import json\n result = {}\n for line in text.strip().splitlines():\n line = line.strip()\n if not line.startswith('export '):\n continue\n line = line[len('export '):]\n key, val = line.split('=', 1)\n val = val.strip()\n if val.startswith('\"') and val.endswith('\"'):\n result[key] = val[1:-1]\n continue\n if val.lower() in ('true', 'false'):\n result[key] = val.lower() == 'true'\n continue\n if ',' in val:\n result[key] = val.split(',')\n continue\n try:\n result[key] = float(val) if '.' in val else int(val)\n except ValueError:\n result[key] = val\n return json.dumps(result)\n","input_data_sample":"export DEBUG=true\nexport MAX_RETRIES=5\nexport TIMEOUT=30.0\nexport APP_NAME=\"My App\"\nexport FEATURE_FLAGS=beta,new_ui,dark_mode\n","output_data_sample":"{\"DEBUG\": true, \"MAX_RETRIES\": 5, \"TIMEOUT\": 30.0, \"APP_NAME\": \"My App\", \"FEATURE_FLAGS\": [\"beta\", \"new_ui\", \"dark_mode\"]}","transformation_instruction":"Parse these shell-style 'export KEY=VALUE' lines into a single JSON object. Coerce 'true'/'false' to booleans, plain integers and decimals to numbers, strip surrounding double quotes from quoted string values, and split comma-separated values (with no quotes) into a JSON array of strings. Return the resulting JSON object."} {"id":"cmssq261b003dg4p26bbpnl59","kind":"contributor_item","title":"Submission BPNL59","provisional":false,"output_code":"def transform(text):\n versions = [v.strip() for v in text.split(',') if v.strip()]\n versions.sort(key=lambda v: tuple(int(p) for p in v.split('.')))\n return ', '.join(versions)\n","input_data_sample":"1.9.2, 1.10.0, 0.4.12, 1.9.10, 2.0.0, 0.4.2","output_data_sample":"0.4.2, 0.4.12, 1.9.2, 1.9.10, 1.10.0, 2.0.0","transformation_instruction":"Sort semantic version strings in ascending order by numeric component (so 1.10.0 comes after 1.9.2) and return them comma-separated."} {"id":"cmssq261b003cg4p2ofduxq69","kind":"contributor_item","title":"Submission DUXQ69","provisional":false,"output_code":"def transform(text):\n lines = [l for l in text.strip().split('\\n') if l.strip()]\n rows = [l.split('\\t') for l in lines[1:]]\n metrics = sorted({r[1] for r in rows})\n dates = []\n table = {}\n for date, metric, value in rows:\n if date not in table:\n table[date] = {}\n dates.append(date)\n table[date][metric] = value\n out = ['\\t'.join(['date'] + metrics)]\n for date in dates:\n out.append('\\t'.join([date] + [table[date].get(m, '0') for m in metrics]))\n return '\\n'.join(out)\n","input_data_sample":"date\tmetric\tvalue\n2026-01-01\tclicks\t5\n2026-01-01\tviews\t90\n2026-01-02\tviews\t70\n","output_data_sample":"date\tclicks\tviews\n2026-01-01\t5\t90\n2026-01-02\t0\t70","transformation_instruction":"Pivot long-format 'date\\tmetric\\tvalue' TSV into wide TSV with a header row of 'date' plus each metric sorted alphabetically. Missing combinations become 0."} {"id":"cmssq261b003gg4p2sz669sy9","kind":"contributor_item","title":"Submission 669SY9","provisional":false,"output_code":"import re\n\ndef transform(text):\n units = {'h': 3600, 'm': 60, 's': 1}\n out = []\n for line in text.split('\\n'):\n spec = line.strip()\n if not spec:\n continue\n total = 0\n for amount, unit in re.findall(r'(\\d+)([hms])', spec):\n total += int(amount) * units[unit]\n out.append('{}={}'.format(spec, total))\n return '\\n'.join(out)\n","input_data_sample":"1h30m\n45s\n2h\n3m10s\n10h0m1s\n","output_data_sample":"1h30m=5400\n45s=45\n2h=7200\n3m10s=190\n10h0m1s=36001","transformation_instruction":"Parse compact duration strings like '1h30m', '45s', '2h', '3m10s' into total seconds and return 'original=seconds' lines in the input order."} {"id":"cmssq261b003kg4p22evglt7o","kind":"contributor_item","title":"Submission VGLT7O","provisional":false,"output_code":"import re\n\ndef transform(text):\n entries = []\n for line in text.split('\\n'):\n match = re.match(r'^(#+)\\s+(.*)$', line.strip())\n if match:\n entries.append((len(match.group(1)), match.group(2).strip()))\n if not entries:\n return ''\n base = min(level for level, _ in entries)\n out = []\n for level, title in entries:\n slug = re.sub(r'[^a-z0-9]+', '-', title.lower()).strip('-')\n out.append('{}- {} (#{})'.format(' ' * (level - base), title, slug))\n return '\\n'.join(out)\n","input_data_sample":"# Getting Started\nsome text\n## Install & Setup\n### Windows Notes\n## FAQ\n","output_data_sample":"- Getting Started (#getting-started)\n - Install & Setup (#install-setup)\n - Windows Notes (#windows-notes)\n - FAQ (#faq)","transformation_instruction":"Build a table of contents from Markdown ATX headings: indent two spaces per level below the top level found, and render each as '- (#<slug>)' with a lowercase hyphen slug."} {"id":"cmssq261b003jg4p2zrqnwk0w","kind":"contributor_item","title":"Submission QNWK0W","provisional":false,"output_code":"import re\n\ndef transform(text):\n out = []\n for line in text.split('\\n'):\n raw = line.strip()\n if not raw:\n continue\n digits = re.sub(r'\\D', '', raw)\n if len(digits) == 11 and digits.startswith('1'):\n digits = digits[1:]\n if len(digits) != 10:\n out.append('INVALID:{}'.format(raw))\n else:\n out.append('+1-{}-{}-{}'.format(digits[:3], digits[3:6], digits[6:]))\n return '\\n'.join(out)\n","input_data_sample":"(415) 555-0132\n+1 415 555 9000\n555-0100\n14155552671\n","output_data_sample":"+1-415-555-0132\n+1-415-555-9000\nINVALID:555-0100\n+1-415-555-2671","transformation_instruction":"Normalize phone numbers to '+1-XXX-XXX-XXXX' when they have exactly 10 digits (or 11 starting with 1); otherwise emit 'INVALID:<original>'. One result per input line."} {"id":"cmssq261b003bg4p2h17r5qi9","kind":"contributor_item","title":"Submission 7R5QI9","provisional":false,"output_code":"def transform(text):\n seen = set()\n kept = []\n for line in text.split('\\n'):\n addr = line.strip()\n if not addr:\n continue\n key = addr.lower()\n if key in seen:\n continue\n seen.add(key)\n kept.append(addr)\n return '\\n'.join(kept + ['count={}'.format(len(kept))])\n","input_data_sample":"Ana@Example.com\nbob@example.com\nANA@example.com\ncarl@Example.COM\nbob@Example.com\n","output_data_sample":"Ana@Example.com\nbob@example.com\ncarl@Example.COM\ncount=3","transformation_instruction":"Deduplicate a newline-separated list of email addresses case-insensitively, keeping the first spelling seen, and return them one per line followed by a final 'count=N' line."} {"id":"cmssq261b003hg4p22iabmml1","kind":"contributor_item","title":"Submission ABMML1","provisional":false,"output_code":"def transform(text):\n cells = {}\n max_row = max_col = 0\n for line in text.split('\\n'):\n if not line.strip():\n continue\n row, col, value = [p.strip() for p in line.split(',')]\n row, col = int(row), int(col)\n cells[(row, col)] = value\n max_row = max(max_row, row)\n max_col = max(max_col, col)\n grid = []\n for r in range(max_row + 1):\n grid.append(' '.join(cells.get((r, c), '.') for c in range(max_col + 1)))\n return '\\n'.join(grid)\n","input_data_sample":"0,0,7\n2,3,4\n1,1,9\n0,3,2\n","output_data_sample":"7 . . 2\n. 9 . .\n. . . 4","transformation_instruction":"Convert 'row,col,value' triplets into a dense space-separated grid sized to the maximum row and column present, filling absent cells with '.'."} {"id":"cmssq261b0037g4p2s6pajz16","kind":"contributor_item","title":"Submission PAJZ16","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows = []\n for line in text.split('\\n'):\n if not line.strip():\n continue\n rows.append({\n 'sku': line[0:7].strip(),\n 'name': line[7:20].strip(),\n 'qty': int(line[20:].strip()),\n })\n return json.dumps(rows)\n","input_data_sample":"A1001 widget bolt 42\nA1002 hex nut 7\nA1003 washer plate 115\n","output_data_sample":"[{\"sku\": \"A1001\", \"name\": \"widget bolt\", \"qty\": 42}, {\"sku\": \"A1002\", \"name\": \"hex nut\", \"qty\": 7}, {\"sku\": \"A1003\", \"name\": \"washer plate\", \"qty\": 115}]","transformation_instruction":"Parse fixed-width records (cols 0-6 sku, 7-19 name, 20-end qty) into a JSON array of objects with keys sku, name, qty (qty as integer). Trim padding whitespace; skip blank lines."} {"id":"cmssq261b003ag4p272rnhn15","kind":"contributor_item","title":"Submission RNHN15","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n section = None\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line or line.startswith(';'):\n continue\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1]\n result[section] = {}\n continue\n key, _, value = line.partition('=')\n key = key.strip()\n value = value.strip()\n if value in ('true', 'false'):\n coerced = value == 'true'\n elif value.lstrip('-').isdigit():\n coerced = int(value)\n else:\n coerced = value\n result[section][key] = coerced\n return json.dumps(result)\n","input_data_sample":"; deployment\n[server]\nhost = localhost\nport = 8080\ndebug = false\n\n[cache]\nttl = 300\nname = edge-1\n","output_data_sample":"{\"server\": {\"host\": \"localhost\", \"port\": 8080, \"debug\": false}, \"cache\": {\"ttl\": 300, \"name\": \"edge-1\"}}","transformation_instruction":"Parse an INI-style config into nested JSON by section. Coerce 'true'/'false' to booleans and bare integers to numbers; leave everything else as a string. Ignore ';' comment lines."} {"id":"cmssq261b0038g4p2twuuz5kf","kind":"contributor_item","title":"Submission UUZ5KF","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n totals = {}\n for row in reader:\n totals[row['region']] = totals.get(row['region'], 0) + int(row['amount'])\n ordered = sorted(totals.items(), key=lambda kv: (-kv[1], kv[0]))\n return '\\n'.join('{}={}'.format(k, v) for k, v in ordered)\n","input_data_sample":"region,amount\nnorth,120\nsouth,80\nnorth,45\neast,80\nsouth,20\n","output_data_sample":"north=165\nsouth=100\neast=80","transformation_instruction":"Read CSV with headers region,amount and return lines 'region=total' sorted by descending total then ascending region name. Totals are integers."} {"id":"cmssq261b003fg4p2ntf8tqha","kind":"contributor_item","title":"Submission F8TQHA","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n rows = json.loads(text)\n keys = sorted({k for row in rows for k in row})\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=keys, restval='', lineterminator='\\n')\n writer.writeheader()\n for row in rows:\n writer.writerow(row)\n return out.getvalue().strip()\n","input_data_sample":"[{\"name\": \"Ada, R.\", \"note\": \"said \\\"hi\\\"\", \"id\": 1}, {\"id\": 2, \"name\": \"Bo\"}]","output_data_sample":"id,name,note\n1,\"Ada, R.\",\"said \"\"hi\"\"\"\n2,Bo,","transformation_instruction":"Convert a JSON array of objects into CSV. Use the union of all keys sorted alphabetically as the header, leave missing values empty, and quote fields per standard CSV rules."} {"id":"cmssq261b003ig4p2uckc1aio","kind":"contributor_item","title":"Submission KC1AIO","provisional":false,"output_code":"def transform(text):\n nums = sorted({int(p) for p in text.split(',') if p.strip()})\n parts = []\n start = prev = nums[0]\n for value in nums[1:] + [None]:\n if value is not None and value == prev + 1:\n prev = value\n continue\n parts.append(str(start) if start == prev else '{}-{}'.format(start, prev))\n if value is not None:\n start = prev = value\n return ','.join(parts)\n","input_data_sample":"3, 1, 2, 7, 8, 9, 12, 15, 16","output_data_sample":"1-3,7-9,12,15-16","transformation_instruction":"Collapse a comma-separated list of integers into sorted ranges: consecutive runs become 'start-end', isolated values stay bare, joined by commas."} {"id":"cmssq261b003lg4p2ea9gfeza","kind":"contributor_item","title":"Submission 9GFEZA","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n before, after = data['before'], data['after']\n lines = []\n for key in sorted(set(before) | set(after)):\n if key not in before:\n lines.append('added {} {}'.format(key, after[key]))\n elif key not in after:\n lines.append('removed {} {}'.format(key, before[key]))\n elif before[key] != after[key]:\n lines.append('changed {} {}->{}'.format(key, before[key], after[key]))\n return '\\n'.join(lines)\n","input_data_sample":"{\"before\": {\"a\": 10, \"b\": 20, \"c\": 30}, \"after\": {\"a\": 10, \"b\": 25, \"d\": 40}}","output_data_sample":"changed b 20->25\nremoved c 30\nadded d 40","transformation_instruction":"Given a JSON object with 'before' and 'after' maps of id->price, report changes as sorted lines: 'added id price', 'removed id price', or 'changed id old->new'. Skip unchanged ids."} {"id":"cmssq261b0039g4p2zy440vo1","kind":"contributor_item","title":"Submission 440VO1","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n flat = {}\n def walk(node, prefix):\n if isinstance(node, dict):\n for key, value in node.items():\n walk(value, prefix + '.' + key if prefix else key)\n elif isinstance(node, list):\n for index, value in enumerate(node):\n walk(value, '{}.{}'.format(prefix, index))\n else:\n flat[prefix] = node\n walk(data, '')\n return json.dumps(flat, sort_keys=True)\n","input_data_sample":"{\"user\": {\"name\": \"dana\", \"tags\": [\"a\", \"b\"]}, \"active\": true, \"meta\": {\"score\": 4}}","output_data_sample":"{\"active\": true, \"meta.score\": 4, \"user.name\": \"dana\", \"user.tags.0\": \"a\", \"user.tags.1\": \"b\"}","transformation_instruction":"Flatten a nested JSON object into dotted key paths, indexing list elements numerically, and return the result as a JSON object with keys sorted alphabetically."} {"id":"cmssq261b003eg4p2dylw9s28","kind":"contributor_item","title":"Submission LW9S28","provisional":false,"output_code":"def transform(text):\n s = text.strip()\n out = []\n index = 0\n while index < len(s):\n run = 1\n while index + run < len(s) and s[index + run] == s[index]:\n run += 1\n if run >= 3:\n out.append('{}{}'.format(run, s[index]))\n else:\n out.append(s[index] * run)\n index += run\n return ''.join(out)\n","input_data_sample":"aaabccddddde","output_data_sample":"3abcc5de","transformation_instruction":"Run-length encode a string, but only collapse runs of 3 or more characters into '<count><char>'; shorter runs are emitted literally."} {"id":"cmssuehje0087g4p2hwbt2amc","kind":"contributor_item","title":"Submission BT2AMC","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for part in text.strip().split(','):\n k,v=part.split('=',1); out[k]=int(v)\n return json.dumps(out)","input_data_sample":"a=3,b=4,c=5","output_data_sample":"{\"a\": 3, \"b\": 4, \"c\": 5}","transformation_instruction":"Parse comma-separated key=value pairs and return a JSON object with integer values."} {"id":"cmssuehje0089g4p2r13snugu","kind":"contributor_item","title":"Submission 3SNUGU","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n return json.dumps(dict(Counter(text.split())))","input_data_sample":"red red blue green red blue","output_data_sample":"{\"red\": 3, \"blue\": 2, \"green\": 1}","transformation_instruction":"Count whitespace-separated tokens and return a JSON object of token frequencies."} {"id":"cmssuehje008eg4p2y6iymqgl","kind":"contributor_item","title":"Submission IYMQGL","provisional":false,"output_code":"import json\n\ndef transform(text):\n return json.dumps({k:float(v) for k,v in (line.split(',') for line in text.strip().splitlines())})","input_data_sample":"A,12.5\nB,7\nC,3.25","output_data_sample":"{\"A\": 12.5, \"B\": 7.0, \"C\": 3.25}","transformation_instruction":"Convert label,value rows into a JSON object with floating-point values."} {"id":"cmssuehjg008ig4p2x3skqvio","kind":"contributor_item","title":"Submission SKQVIO","provisional":false,"output_code":"import csv,io,json\n\ndef transform(text):\n rows=list(csv.DictReader(io.StringIO(text)))\n for r in rows:r['id']=int(r['id'])\n return json.dumps(rows)","input_data_sample":"id,name\n1,Ada\n2,Linus\n3,Grace","output_data_sample":"[{\"id\": 1, \"name\": \"Ada\"}, {\"id\": 2, \"name\": \"Linus\"}, {\"id\": 3, \"name\": \"Grace\"}]","transformation_instruction":"Convert a two-column CSV with header into a JSON array of records, converting id to integer."} {"id":"cmssuehjg008lg4p2f7ybpgny","kind":"contributor_item","title":"Submission YBPGNY","provisional":false,"output_code":"import json\n\ndef transform(text):\n m=[[int(x) for x in line.split()] for line in text.strip().splitlines()]\n return json.dumps([sum(col) for col in zip(*m)])","input_data_sample":"1 2 3\n4 5 6\n7 8 9","output_data_sample":"[12, 15, 18]","transformation_instruction":"Parse a whitespace-separated integer matrix and return its column sums as a JSON array."} {"id":"cmssuehjg008ng4p201gibav2","kind":"contributor_item","title":"Submission GIBAV2","provisional":false,"output_code":"import json\n\ndef transform(text):\n return json.dumps([line.strip().lower() for line in text.splitlines() if line.strip()])","input_data_sample":" Alpha \n\n Beta\nGamma ","output_data_sample":"[\"alpha\", \"beta\", \"gamma\"]","transformation_instruction":"Trim each line, remove blank lines, lowercase the remaining values, and return a JSON array."} {"id":"cmssuehjg008pg4p21zdsn6on","kind":"contributor_item","title":"Submission DSN6ON","provisional":false,"output_code":"import json\n\ndef transform(text):\n return json.dumps([int(a)-int(b) for a,b in (line.split(',') for line in text.strip().splitlines())])","input_data_sample":"100,20\n50,5\n25,0","output_data_sample":"[80, 45, 25]","transformation_instruction":"For each comma-separated gross,discount row, compute net=gross-discount and return nets as a JSON array."} {"id":"cmssuehjg008qg4p2fq45lnqn","kind":"contributor_item","title":"Submission 45LNQN","provisional":false,"output_code":"import json\n\ndef transform(text):\n obj=json.loads(text)\n return json.dumps([u['name'] for u in obj['users'] if u['active']])","input_data_sample":"{\"users\":[{\"name\":\"Ada\",\"active\":true},{\"name\":\"Bob\",\"active\":false},{\"name\":\"Cara\",\"active\":true}]}","output_data_sample":"[\"Ada\", \"Cara\"]","transformation_instruction":"Parse the JSON and return a JSON array containing names of active users."} {"id":"cmssuehjg008rg4p21r8oh7ab","kind":"contributor_item","title":"Submission 8OH7AB","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows=[line.split(',') for line in text.strip().splitlines()]\n return json.dumps([list(col) for col in zip(*rows)])","input_data_sample":"a,b,c\nd,e,f","output_data_sample":"[[\"a\", \"d\"], [\"b\", \"e\"], [\"c\", \"f\"]]","transformation_instruction":"Transpose comma-separated rows and return the transposed matrix as JSON."} {"id":"cmssuehjg008tg4p2kdsd1ubv","kind":"contributor_item","title":"Submission SD1UBV","provisional":false,"output_code":"import csv,io,json\n\ndef transform(text):\n rows=csv.DictReader(io.StringIO(text))\n return json.dumps([r['first_name']+' '+r['last_name'] for r in rows])","input_data_sample":"first_name,last_name\nAda,Lovelace\nGrace,Hopper","output_data_sample":"[\"Ada Lovelace\", \"Grace Hopper\"]","transformation_instruction":"Convert CSV rows into full-name strings and return them as a JSON array."} {"id":"cmssuehjg008yg4p2hy3tkivx","kind":"contributor_item","title":"Submission 3TKIVX","provisional":false,"output_code":"import json\n\ndef transform(text):\n out=[]\n for line in text.strip().splitlines():\n k,v=line.split('='); out.extend([k]*int(v))\n return json.dumps(out)","input_data_sample":"cat=2\ndog=5\nbird=1","output_data_sample":"[\"cat\", \"cat\", \"dog\", \"dog\", \"dog\", \"dog\", \"dog\", \"bird\"]","transformation_instruction":"Parse key=count lines and expand them into a JSON array repeating each key count times, preserving input key order."} {"id":"cmssuehjg008xg4p28c91lqhv","kind":"contributor_item","title":"Submission 91LQHV","provisional":false,"output_code":"import json\n\ndef transform(text):\n total=0; out=[]\n for x in map(int,text.split(',')):\n total+=x; out.append(total)\n return json.dumps(out)","input_data_sample":"5,10,15,20","output_data_sample":"[5, 15, 30, 50]","transformation_instruction":"Convert comma-separated integers into cumulative sums and return them as a JSON array."} {"id":"cmssuehjg008zg4p2nsxnjoae","kind":"contributor_item","title":"Submission XNJOAE","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for line in text.strip().splitlines():\n k,a,b=line.split(); out[k]=max(int(a),int(b))\n return json.dumps(out)","input_data_sample":"A 3 7\nB 10 4\nC 6 6","output_data_sample":"{\"A\": 7, \"B\": 10, \"C\": 6}","transformation_instruction":"For each whitespace-separated label,x,y row, return a JSON object mapping label to the larger integer."} {"id":"cmssuehjh0090g4p2csskniau","kind":"contributor_item","title":"Submission SKNIAU","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n c=Counter(text.split(','))\n return json.dumps(sorted(c,key=lambda k:(-c[k],k)))","input_data_sample":"alpha,beta,gamma,beta,alpha,alpha","output_data_sample":"[\"alpha\", \"beta\", \"gamma\"]","transformation_instruction":"Return a JSON array of tokens sorted by decreasing frequency and then alphabetically."} {"id":"cmssuehje008bg4p2t8cpxd7m","kind":"contributor_item","title":"Submission CPXD7M","provisional":false,"output_code":"import json\n\ndef transform(text):\n out={}\n for line in text.strip().splitlines():\n k,v=line.split(':',1); v=v.strip(); out[k.strip()]= True if v=='true' else False if v=='false' else v\n return json.dumps(out)","input_data_sample":"name: Ada Lovelace\nrole: Engineer\nactive: true","output_data_sample":"{\"name\": \"Ada Lovelace\", \"role\": \"Engineer\", \"active\": true}","transformation_instruction":"Parse colon-separated lines into a JSON object, converting true/false values to booleans."} {"id":"cmssuehje008ag4p21v289yez","kind":"contributor_item","title":"Submission 289YEZ","provisional":false,"output_code":"import json\n\ndef transform(text):\n nums=[int(x) for x in text.split(',') if x]\n return json.dumps({'count':len(nums),'sum':sum(nums),'min':min(nums),'max':max(nums)})","input_data_sample":"10,20,30,40,50","output_data_sample":"{\"count\": 5, \"sum\": 150, \"min\": 10, \"max\": 50}","transformation_instruction":"Parse comma-separated integers and return a JSON object containing count, sum, minimum, and maximum."} {"id":"cmssuehje0088g4p2imv9vrhj","kind":"contributor_item","title":"Submission V9VRHJ","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows=[]\n for line in text.strip().splitlines():\n name,score=line.split('|'); rows.append({'name':name,'score':int(score)})\n return json.dumps(rows)","input_data_sample":"alice|90\nbob|75\ncarol|88","output_data_sample":"[{\"name\": \"alice\", \"score\": 90}, {\"name\": \"bob\", \"score\": 75}, {\"name\": \"carol\", \"score\": 88}]","transformation_instruction":"Convert pipe-delimited name-score rows into a JSON array of objects with score as an integer."} {"id":"cmssuehje008cg4p2hirfgsq5","kind":"contributor_item","title":"Submission RFGSQ5","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n d=defaultdict(int)\n for line in text.strip().splitlines():\n day,val=line.split(','); d[day]+=int(val)\n return json.dumps(dict(d))","input_data_sample":"2026-08-14,12\n2026-08-15,8\n2026-08-14,5","output_data_sample":"{\"2026-08-14\": 17, \"2026-08-15\": 8}","transformation_instruction":"Aggregate comma-separated date,value rows by date and return summed values as JSON."} {"id":"cmssuehje008fg4p2lxy7in63","kind":"contributor_item","title":"Submission Y7IN63","provisional":false,"output_code":"import json\n\ndef transform(text):\n return json.dumps([w for w in text.split() if len(w)>=4])","input_data_sample":"one two three four five","output_data_sample":"[\"three\", \"four\", \"five\"]","transformation_instruction":"Return a JSON array containing only words with length at least four, preserving order."} {"id":"cmssuehje008dg4p201ypmvy3","kind":"contributor_item","title":"Submission YPMVY3","provisional":false,"output_code":"import json\n\ndef transform(text):\n seen=set(); out=[]\n for line in text.strip().splitlines():\n if line not in seen: seen.add(line); out.append(line)\n return json.dumps(out)","input_data_sample":"alpha\nbeta\nalpha\ngamma\nbeta\nalpha","output_data_sample":"[\"alpha\", \"beta\", \"gamma\"]","transformation_instruction":"Return a JSON array of unique lines in first-seen order."} {"id":"cmssuehjg008jg4p2r8b8qhfe","kind":"contributor_item","title":"Submission B8QHFE","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows=[line.split(':',1) for line in text.strip().splitlines()]\n rows.sort(key=lambda x:int(x[0]))\n return json.dumps([v for _,v in rows])","input_data_sample":"3:apple\n1:pear\n2:banana","output_data_sample":"[\"pear\", \"banana\", \"apple\"]","transformation_instruction":"Sort colon-separated priority:text rows by numeric priority and return only the text values as JSON array."} {"id":"cmssuehjg008kg4p21lrl4io6","kind":"contributor_item","title":"Submission RL4IO6","provisional":false,"output_code":"import json\n\ndef transform(text):\n s=text.strip(); out=[]\n for ch in s:\n if out and out[-1][0]==ch: out[-1][1]+=1\n else: out.append([ch,1])\n return json.dumps(out)","input_data_sample":"aaabccccdd","output_data_sample":"[[\"a\", 3], [\"b\", 1], [\"c\", 4], [\"d\", 2]]","transformation_instruction":"Run-length encode the input string as a JSON array of [character,count] pairs."} {"id":"cmssuehjg008hg4p2li1g7yfe","kind":"contributor_item","title":"Submission 1G7YFE","provisional":false,"output_code":"import json\n\ndef transform(text):\n nums=[int(x) for x in text.splitlines() if x.strip()]\n return json.dumps({'negative':[x for x in nums if x<0],'zero':[x for x in nums if x==0],'positive':[x for x in nums if x>0]})","input_data_sample":"5\n-2\n7\n0\n-1","output_data_sample":"{\"negative\": [-2, -1], \"zero\": [0], \"positive\": [5, 7]}","transformation_instruction":"Partition newline-separated integers into negative, zero, and positive arrays in JSON."} {"id":"cmssuehjg008mg4p2r1rqhiq3","kind":"contributor_item","title":"Submission RQHIQ3","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n d=defaultdict(float)\n for line in text.strip().splitlines():\n k,v=line.split(':'); d[k]+=float(v)\n return json.dumps({k:round(v,2) for k,v in d.items()})","input_data_sample":"usd:10.50\neur:3.25\nusd:2.00","output_data_sample":"{\"usd\": 12.5, \"eur\": 3.25}","transformation_instruction":"Aggregate currency:value lines by currency and return totals rounded to two decimals in JSON."} {"id":"cmssuehjg008og4p2locb51ad","kind":"contributor_item","title":"Submission CB51AD","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n d=defaultdict(list)\n for line in text.strip().splitlines():\n i,c=line.split(','); d[c].append(i)\n return json.dumps(dict(d))","input_data_sample":"p1,red\np2,blue\np3,red\np4,green","output_data_sample":"{\"red\": [\"p1\", \"p3\"], \"blue\": [\"p2\"], \"green\": [\"p4\"]}","transformation_instruction":"Group first-column IDs by second-column category and return a JSON object mapping category to ID arrays."} {"id":"cmssuehjg008sg4p2b5en7jxp","kind":"contributor_item","title":"Submission EN7JXP","provisional":false,"output_code":"import json\n\ndef transform(text):\n vals=[float(x) for x in text.splitlines() if x.strip()]\n return json.dumps({'mean':round(sum(vals)/len(vals),2),'count':len(vals)})","input_data_sample":"10.4\n11.6\n9.9\n12.1","output_data_sample":"{\"mean\": 11.0, \"count\": 4}","transformation_instruction":"Parse newline-separated floats and return a JSON object with the rounded arithmetic mean and count."} {"id":"cmssuehjg008ug4p2ze2cq8ya","kind":"contributor_item","title":"Submission 2CQ8YA","provisional":false,"output_code":"import json\n\ndef transform(text):\n pairs=[part.split(':') for part in text.strip().split(';')]\n pairs.sort(key=lambda kv:(-int(kv[1]),kv[0]))\n return json.dumps([k for k,_ in pairs])","input_data_sample":"a:1;b:2;c:3","output_data_sample":"[\"c\", \"b\", \"a\"]","transformation_instruction":"Parse semicolon-separated key:value entries and return keys sorted by descending numeric value as a JSON array."} {"id":"cmssuehjg008vg4p2zzt0lot7","kind":"contributor_item","title":"Submission T0LOT7","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n ts=[datetime.fromisoformat(x.replace('Z','+00:00')) for x in text.strip().splitlines()]\n return json.dumps([int((ts[i+1]-ts[i]).total_seconds()) for i in range(len(ts)-1)])","input_data_sample":"2026-08-14T10:00:00Z\n2026-08-14T10:02:30Z\n2026-08-14T10:10:00Z","output_data_sample":"[150, 450]","transformation_instruction":"Parse ISO timestamps and return elapsed seconds between each adjacent pair as a JSON array."} {"id":"cmssuehjg008wg4p2llegmawc","kind":"contributor_item","title":"Submission EGMAWC","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n d=defaultdict(list)\n for line in text.strip().splitlines():\n k,v=line.split('='); d[k].append(int(v))\n return json.dumps(dict(d))","input_data_sample":"a=1\nb=2\na=3\nc=4","output_data_sample":"{\"a\": [1, 3], \"b\": [2], \"c\": [4]}","transformation_instruction":"Parse repeated key=value lines and return a JSON object mapping each key to an array of integer values."} {"id":"cmst2i3cz00bag4p2r84ifkti","kind":"contributor_item","title":"Submission 4IFKTI","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n return json.dumps([dict(row) for row in reader])\n","input_data_sample":"id,name,active\n1,Alice,true\n2,Bob,false","output_data_sample":"[{\"id\": \"1\", \"name\": \"Alice\", \"active\": \"true\"}, {\"id\": \"2\", \"name\": \"Bob\", \"active\": \"false\"}]","transformation_instruction":"Parse CSV text with a header row and return a JSON array of objects, one per data row, with values kept as strings."} {"id":"cmst2i3cz00bdg4p28u7icgtn","kind":"contributor_item","title":"Submission 7ICGTN","provisional":false,"output_code":"def transform(text):\n def camel(s):\n parts = s.split('_')\n return parts[0] + ''.join(p.capitalize() for p in parts[1:])\n return '\\n'.join(camel(l) for l in text.strip().split('\\n'))\n","input_data_sample":"user_id\nfirst_name\nis_active_now\nx","output_data_sample":"userId\nfirstName\nisActiveNow\nx","transformation_instruction":"Convert a snake_case identifier list (one per line) into camelCase, returned as a newline-separated string in the same order."} {"id":"cmst2i3cz00bcg4p2zmmx9lsv","kind":"contributor_item","title":"Submission MX9LSV","provisional":false,"output_code":"import json\n\ndef transform(text):\n d = {}\n for line in text.strip().split('\\n'):\n if ':' in line:\n k, v = line.split(':', 1)\n d[k.strip()] = v.strip()\n return json.dumps(d)\n","input_data_sample":"host: localhost\nport: 8080\nhost: 127.0.0.1\ndebug: true","output_data_sample":"{\"host\": \"127.0.0.1\", \"port\": \"8080\", \"debug\": \"true\"}","transformation_instruction":"Given lines of 'key: value' pairs, return them as a JSON object. If a key repeats, the last value wins."} {"id":"cmst2i3cz00bhg4p2x4qpcp4q","kind":"contributor_item","title":"Submission QPCP4Q","provisional":false,"output_code":"import json\n\ndef transform(text):\n line = text.rstrip('\\n')\n return json.dumps({'name': line[0:10].strip(), 'age': line[10:13].strip(), 'city': line[13:].strip()})\n","input_data_sample":"Alice 030New York","output_data_sample":"{\"name\": \"Alice\", \"age\": \"030\", \"city\": \"New York\"}","transformation_instruction":"Given a fixed-width record where columns are at positions 0-9 (name), 10-12 (age), 13+ (city), return a JSON object with those three trimmed fields."} {"id":"cmst2i3cz00bfg4p2v7uxwpuo","kind":"contributor_item","title":"Submission UXWPUO","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n words = text.strip().lower().split()\n c = Counter(words)\n return json.dumps({k: c[k] for k in sorted(c)})\n","input_data_sample":"the Cat sat on the mat the cat","output_data_sample":"{\"cat\": 2, \"mat\": 1, \"on\": 1, \"sat\": 1, \"the\": 3}","transformation_instruction":"Given a block of text, return a JSON object mapping each distinct word (lowercased, split on whitespace) to its count, with keys sorted alphabetically."} {"id":"cmst2i3cz00big4p23j1k7h42","kind":"contributor_item","title":"Submission 1K7H42","provisional":false,"output_code":"import json\n\ndef transform(text):\n out = []\n total = 0.0\n for l in text.strip().split('\\n'):\n total += float(l)\n out.append(round(total, 1))\n return json.dumps(out)\n","input_data_sample":"1.5\n2.25\n0.25\n-1.0","output_data_sample":"[1.5, 3.8, 4.0, 3.0]","transformation_instruction":"Given newline-separated floats, return a JSON array of the running (cumulative) sum after each value, each rounded to one decimal place."} {"id":"cmst2i3cz00bog4p2ixzp16jr","kind":"contributor_item","title":"Submission ZP16JR","provisional":false,"output_code":"import json, io, csv\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()), delimiter='\\t')\n out = []\n for row in reader:\n obj = {}\n for k, v in row.items():\n obj[k] = int(v) if v.isdigit() else v\n out.append(obj)\n return json.dumps(out)\n","input_data_sample":"name\tage\tzip\nAlice\t30\t07008\nBob\t25\t10001","output_data_sample":"[{\"name\": \"Alice\", \"age\": 30, \"zip\": 7008}, {\"name\": \"Bob\", \"age\": 25, \"zip\": 10001}]","transformation_instruction":"Given tab-separated values with a header, return a JSON array of objects, coercing any all-digit field to an integer."} {"id":"cmst2i3cz00bpg4p203m7jo6l","kind":"contributor_item","title":"Submission M7JO6L","provisional":false,"output_code":"import json\n\ndef transform(text):\n ips = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n ips.sort(key=lambda ip: tuple(int(o) for o in ip.split('.')))\n return json.dumps(ips)\n","input_data_sample":"10.0.0.2\n10.0.0.10\n9.255.255.255\n10.0.0.1","output_data_sample":"[\"9.255.255.255\", \"10.0.0.1\", \"10.0.0.2\", \"10.0.0.10\"]","transformation_instruction":"Given a list of IPv4 addresses (one per line), return a JSON array sorted numerically by octet, not lexicographically."} {"id":"cmst2i3cz00bmg4p2k6yhkzgr","kind":"contributor_item","title":"Submission YHKZGR","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows = json.loads(text)\n out = {}\n for r in rows:\n out[r['category']] = out.get(r['category'], 0) + r['amount']\n return json.dumps(out)\n","input_data_sample":"[{\"category\": \"food\", \"amount\": 10}, {\"category\": \"toys\", \"amount\": 5}, {\"category\": \"food\", \"amount\": 7}]","output_data_sample":"{\"food\": 17, \"toys\": 5}","transformation_instruction":"Given a JSON array of objects each with 'category' and 'amount', return a JSON object summing amount per category, keys in first-seen order."} {"id":"cmst2i3cz00bqg4p2eqey3ivk","kind":"contributor_item","title":"Submission EY3IVK","provisional":false,"output_code":"import json\n\ndef transform(text):\n out = {}\n for line in text.strip().split('\\n'):\n k, v = line.split('=', 1)\n vl = v.strip().lower()\n if vl == 'true':\n out[k.strip()] = True\n elif vl == 'false':\n out[k.strip()] = False\n elif v.strip().isdigit():\n out[k.strip()] = int(v.strip())\n else:\n out[k.strip()] = v.strip()\n return json.dumps(out)\n","input_data_sample":"enabled=TRUE\nretries=3\nname=server1\nverbose=False","output_data_sample":"{\"enabled\": true, \"retries\": 3, \"name\": \"server1\", \"verbose\": false}","transformation_instruction":"Given key-value lines in 'k=v' form, return a JSON object where any value that is 'true' or 'false' (case-insensitive) becomes a boolean and any all-digit value becomes an integer."} {"id":"cmst2i3d000bsg4p2zdgk98nl","kind":"contributor_item","title":"Submission GK98NL","provisional":false,"output_code":"import json\n\ndef transform(text):\n d = json.loads(text)\n mean = sum(d.values()) / len(d)\n return json.dumps(sorted(k for k, v in d.items() if v >= mean))\n","input_data_sample":"{\"a\": 50, \"b\": 90, \"c\": 70, \"d\": 30}","output_data_sample":"[\"b\", \"c\"]","transformation_instruction":"Given a JSON object of scores, return a JSON array of keys whose value is at or above the mean, sorted alphabetically."} {"id":"cmst2i3d000btg4p282fj5k8v","kind":"contributor_item","title":"Submission FJ5K8V","provisional":false,"output_code":"import re\n\ndef transform(text):\n out = []\n for ch, count in re.findall(r'([a-z])(\\d+)', text.strip()):\n out.append(ch * int(count))\n return ''.join(out)\n","input_data_sample":"a3b1c2z5","output_data_sample":"aaabcczzzzz","transformation_instruction":"Given a run-length spec like 'a3b1c2', expand it into the full string 'aaabcc'."} {"id":"cmst2i3d000brg4p20zbpufyr","kind":"contributor_item","title":"Submission BPUFYR","provisional":false,"output_code":"def transform(text):\n lines = text.split('\\n')\n return '\\n'.join('{}:\\t{}'.format(i, l) for i, l in enumerate(lines, 1))\n","input_data_sample":"first\nsecond\nthird","output_data_sample":"1:\tfirst\n2:\tsecond\n3:\tthird","transformation_instruction":"Given a multi-line string, return it with each line prefixed by its 1-based line number, a colon, and a tab; join with newlines."} {"id":"cmst2i3cz00bbg4p2p2z9qyd2","kind":"contributor_item","title":"Submission Z9QYD2","provisional":false,"output_code":"import json\n\ndef transform(text):\n nums = [int(l) for l in text.strip().split('\\n') if l.strip()]\n return json.dumps({'sum': sum(nums), 'min': min(nums), 'max': max(nums), 'mean': round(sum(nums)/len(nums), 2)})\n","input_data_sample":"4\n8\n15\n16\n23\n42","output_data_sample":"{\"sum\": 108, \"min\": 4, \"max\": 42, \"mean\": 18.0}","transformation_instruction":"Given newline-separated integers, return a JSON object with keys 'sum', 'min', 'max', and 'mean' where mean is rounded to two decimal places."} {"id":"cmst2i3cz00beg4p21cfm44o9","kind":"contributor_item","title":"Submission FM44O9","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n nums = json.loads(text)\n c = Counter(nums)\n return json.dumps(sorted(n for n in c if c[n] > 1))\n","input_data_sample":"[3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]","output_data_sample":"[1, 3, 5]","transformation_instruction":"Given a JSON array of numbers, return a JSON array containing only the numbers that appear more than once, in ascending order, each listed once."} {"id":"cmst2i3cz00bng4p2bzthy2uk","kind":"contributor_item","title":"Submission THY2UK","provisional":false,"output_code":"import re\n\ndef transform(text):\n m = re.search(r'[.!?]', text)\n if not m:\n return text.strip()\n return text[:m.end()].strip()\n","input_data_sample":"Hello there. This is the second one! And a third.","output_data_sample":"Hello there.","transformation_instruction":"Given a paragraph, return the first sentence (text up to and including the first period, question mark, or exclamation mark), trimmed."} {"id":"cmst2i3cz00bgg4p21s5p28jv","kind":"contributor_item","title":"Submission 5P28JV","provisional":false,"output_code":"def transform(text):\n pairs = []\n for part in text.strip().split(';'):\n name, score = part.split('=')\n pairs.append((name.strip(), int(score)))\n pairs.sort(key=lambda p: (-p[1], p[0]))\n return '\\n'.join(p[0] for p in pairs)\n","input_data_sample":"alice=90;bob=85;carol=90;dave=85","output_data_sample":"alice\ncarol\nbob\ndave","transformation_instruction":"Parse a semicolon-separated list of 'name=score' pairs and return the names sorted by descending score, then alphabetically for ties, as a newline-separated string."} {"id":"cmst2i3cz00bjg4p2uz2fhyjv","kind":"contributor_item","title":"Submission 2FHYJV","provisional":false,"output_code":"import json\n\ndef transform(text):\n d = json.loads(text)\n lines = []\n for k in sorted(d):\n v = d[k]\n if isinstance(v, bool):\n v = 'true' if v else 'false'\n lines.append('{}={}'.format(k, v))\n return '\\n'.join(lines)\n","input_data_sample":"{\"zebra\": 1, \"apple\": true, \"mango\": false}","output_data_sample":"apple=true\nmango=false\nzebra=1","transformation_instruction":"Convert a flat JSON object into a list of 'key=value' lines sorted by key, joining with newlines. Boolean values become lowercase 'true'/'false'."} {"id":"cmst2i3cz00bkg4p2osb4qvw0","kind":"contributor_item","title":"Submission B4QVW0","provisional":false,"output_code":"import json\n\ndef transform(text):\n def is_prime(n):\n if n < 2:\n return False\n i = 2\n while i * i <= n:\n if n % i == 0:\n return False\n i += 1\n return True\n nums = [int(x) for x in text.strip().split(',')]\n return json.dumps([[n, is_prime(n)] for n in nums])\n","input_data_sample":"1,2,3,4,17,18","output_data_sample":"[[1, false], [2, true], [3, true], [4, false], [17, true], [18, false]]","transformation_instruction":"Given a comma-separated list of integers, return a JSON array of [value, is_prime] pairs preserving order, where is_prime is a boolean."} {"id":"cmst2i3cz00blg4p2slgkmhvm","kind":"contributor_item","title":"Submission GKMHVM","provisional":false,"output_code":"import re\n\ndef transform(text):\n total = 0\n for line in text.strip().split('\\n'):\n m = re.match(r'(?:(\\d+)h)?(?:(\\d+)m)?$', line.strip())\n h = int(m.group(1)) if m and m.group(1) else 0\n mins = int(m.group(2)) if m and m.group(2) else 0\n total += h * 60 + mins\n return str(total)\n","input_data_sample":"1h30m\n45m\n2h\n15m","output_data_sample":"270","transformation_instruction":"Given lines each containing a duration like '1h30m' or '45m' or '2h', return the total number of minutes as a plain integer string."} {"id":"cmst5hn7o00d6g4p28em3boyg","kind":"contributor_item","title":"Submission M3BOYG","provisional":false,"output_code":"MONTHS = ('January', 'February', 'March', 'April', 'May', 'June', 'July',\n 'August', 'September', 'October', 'November', 'December')\nDAYS = ('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday')\n\n\ndef join_list(items):\n if len(items) == 1:\n return items[0]\n return ', '.join(items[:-1]) + ' and ' + items[-1]\n\n\ndef describe_unit(field, singular, plural):\n if field == '*':\n return 'every ' + singular\n if field.startswith('*/'):\n return 'every ' + field[2:] + 'th ' + singular\n parts = field.split(',')\n if len(parts) == 1:\n return singular + ' ' + parts[0]\n return plural + ' ' + join_list(parts)\n\n\ndef transform(text):\n out = []\n for raw in text.split('\\n'):\n expression = raw.strip()\n if not expression:\n continue\n fields = expression.split()\n if len(fields) != 5:\n out.append(expression + ' => ERROR: expected 5 fields')\n continue\n minute, hour, dom, month, dow = fields\n parts = [describe_unit(minute, 'minute', 'minutes'),\n describe_unit(hour, 'hour', 'hours')]\n parts.append('every day of the month' if dom == '*' else 'day-of-month ' + dom)\n parts.append('every month' if month == '*' else MONTHS[int(month) - 1])\n if dow == '*':\n parts.append('every day of the week')\n elif '-' in dow:\n start, end = dow.split('-')\n parts.append(DAYS[int(start)] + ' through ' + DAYS[int(end)])\n else:\n parts.append(DAYS[int(dow)])\n out.append(expression + ' => ' + ', '.join(parts))\n return '\\n'.join(out)\n","input_data_sample":"*/15 * * * *\n0 9,17 * * 1-5\n30 2 1 * *\n0 0 * 12 0\n0 12 * *\n","output_data_sample":"*/15 * * * * => every 15th minute, every hour, every day of the month, every month, every day of the week\n0 9,17 * * 1-5 => minute 0, hours 9 and 17, every day of the month, every month, Monday through Friday\n30 2 1 * * => minute 30, hour 2, day-of-month 1, every month, every day of the week\n0 0 * 12 0 => minute 0, hour 0, every day of the month, December, Sunday\n0 12 * * => ERROR: expected 5 fields","transformation_instruction":"Describe each cron expression in English. Each non-blank input line is one expression; split it on whitespace.\nIf it does not have exactly 5 fields, the description is 'ERROR: expected 5 fields'. Otherwise the fields are minute, hour, day-of-month, month and day-of-week, and each is rendered by these rules:\n- minute: '*' -> 'every minute'; '*/N' -> 'every Nth minute'; a single number M -> 'minute M'; a comma list -> 'minutes ' followed by the numbers joined with ', ' except that the last two are joined with ' and '.\n- hour: '*' -> 'every hour'; '*/N' -> 'every Nth hour'; a single number H -> 'hour H'; a comma list -> 'hours ' followed by the same joining rule.\n- day-of-month: '*' -> 'every day of the month'; a single number D -> 'day-of-month D'.\n- month: '*' -> 'every month'; a single number 1-12 -> the English month name ('January' ... 'December').\n- day-of-week: '*' -> 'every day of the week'; a single number 0-6 -> the English day name where 0 is 'Sunday' and 6 is 'Saturday'; a range 'A-B' -> '<name of A> through <name of B>'.\nJoin the five rendered fields with ', ' in that order to form the description.\nEmit one line per input line as '<expression> => <description>', where the expression is the input line stripped of surrounding whitespace, and return the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00d9g4p2oqkeobs8","kind":"contributor_item","title":"Submission KEOBS8","provisional":false,"output_code":"import base64\n\n\ndef transform(text):\n lines = text.split('\\n')\n width = int(lines[0].split('=', 1)[1].strip())\n payload = ''.join(''.join(line.split()) for line in lines[1:])\n payload = payload.replace('=', '')\n while len(payload) % 4 != 0:\n payload += '='\n out = [payload[i:i + width] for i in range(0, len(payload), width)]\n decoded = base64.b64decode(payload)\n out.append('bytes=' + str(len(decoded)))\n return '\\n'.join(out)\n","input_data_sample":"WIDTH=20\nSGVsbG8sIER\nhdGFCb3VudHkh\n\nIFRoaXMgaXMg YSBiYXNlNjQg cmV3cmFwIHRlc3Q\n","output_data_sample":"SGVsbG8sIERhdGFCb3Vu\ndHkhIFRoaXMgaXMgYSBi\nYXNlNjQgcmV3cmFwIHRl\nc3Q=\nbytes=47","transformation_instruction":"Re-wrap a base64 payload that arrived in ragged, unpadded chunks.\nThe first line is 'WIDTH=N' giving the target line width in characters. Every following line is a fragment of one single base64 payload.\nConcatenate the fragments after removing ALL whitespace characters (including the line breaks and any spaces inside a fragment). Strip any '=' characters that are already present, then re-append the correct padding: while the length is not a multiple of 4, append one '='.\nEmit the padded payload split into consecutive lines of exactly N characters, with the final line holding the remainder (possibly fewer than N characters).\nThen append a final line 'bytes=M' where M is the number of bytes obtained by base64-decoding the padded payload.\nReturn the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00ddg4p26u61a7gn","kind":"contributor_item","title":"Submission 61A7GN","provisional":false,"output_code":"import json\n\n\ndef transform(text):\n head, body = text.split('\\n', 1)\n maxdepth = int(head.split('=', 1)[1].strip())\n data = json.loads(body)\n out = []\n\n def walk(array, level):\n for element in array:\n if isinstance(element, list) and level <= maxdepth:\n walk(element, level + 1)\n else:\n out.append(json.dumps(element, separators=(',', ':')))\n\n walk(data, 1)\n return '\\n'.join(out)\n","input_data_sample":"maxdepth=2\n[1, [2, 3, [4, [5, 6]]], \"a\", [], [[7], 8], null]\n","output_data_sample":"1\n2\n3\n4\n[5,6]\n\"a\"\n7\n8\nnull","transformation_instruction":"Flatten a nested JSON array, but only down to a given nesting depth.\nThe first line is 'maxdepth=N'. Everything after the first line is one JSON array (the outermost array).\nAssign levels like this: the direct elements of the outermost array are at level 1, the elements of an array at level L are at level L+1. Walk the structure in order; when an element is an array, expand it (emit its elements instead of itself) if its own level is less than or equal to N, and otherwise emit that array itself as one item. Non-array elements are always emitted. An array that is expanded and has no elements contributes nothing.\nRender every emitted item as compact JSON using separators ',' and ':' with no spaces, so strings keep their double quotes and JSON null is rendered as 'null'.\nReturn the rendered items one per line, joined with '\\n' and with no trailing newline."} {"id":"cmst5hn7o00dfg4p203l13nl2","kind":"contributor_item","title":"Submission L13NL2","provisional":false,"output_code":"def transform(text):\n files = []\n minus_path = None\n current = None\n for line in text.split('\\n'):\n if line.startswith('\\\\'):\n continue\n if line.startswith('--- '):\n minus_path = line[4:].strip()\n current = None\n continue\n if line.startswith('+++ '):\n plus_path = line[4:].strip()\n if plus_path == '/dev/null':\n path = minus_path[2:] if minus_path.startswith('a/') else minus_path\n else:\n path = plus_path[2:] if plus_path.startswith('b/') else plus_path\n current = {'path': path, 'added': 0, 'removed': 0}\n files.append(current)\n continue\n if line.startswith('@@'):\n continue\n if current is None:\n continue\n if line.startswith('+'):\n current['added'] += 1\n elif line.startswith('-'):\n current['removed'] += 1\n out = []\n total_added = 0\n total_removed = 0\n for entry in files:\n changed = entry['added'] + entry['removed']\n marks = '+' * entry['added'] + '-' * entry['removed']\n out.append('{} | {} {}'.format(entry['path'], changed, marks))\n total_added += entry['added']\n total_removed += entry['removed']\n\n def plural(count, word):\n return '{} {}{}'.format(count, word, '' if count == 1 else 's')\n\n out.append('{} changed, {}(+), {}(-)'.format(\n plural(len(files), 'file'),\n plural(total_added, 'insertion'),\n plural(total_removed, 'deletion')))\n return '\\n'.join(out)\n","input_data_sample":"diff --git a/app/main.py b/app/main.py\nindex 83db48f..bf269f4 100644\n--- a/app/main.py\n+++ b/app/main.py\n@@ -1,5 +1,6 @@\n import sys\n-import os\n+import pathlib\n+import json\n def main():\n pass\ndiff --git a/README.md b/README.md\ndeleted file mode 100644\n--- a/README.md\n+++ /dev/null\n@@ -1,2 +0,0 @@\n-# Project\n-Docs\n\\ No newline at end of file\n","output_data_sample":"app/main.py | 3 ++-\nREADME.md | 2 --\n2 files changed, 2 insertions(+), 3 deletions(-)","transformation_instruction":"Produce a git-style diffstat from a unified diff.\nScan the input line by line. A line starting with '--- ' or '+++ ' is a file header, a line starting with '@@' is a hunk header, and a line starting with '\\' (such as '\\ No newline at end of file') is ignored. Inside a hunk, a line starting with '+' counts as one insertion and a line starting with '-' counts as one deletion; any other line is context.\nA file's reported path comes from its '+++ ' header with a leading 'b/' removed, except when that header is '+++ /dev/null', in which case use the '--- ' header path with a leading 'a/' removed. Files appear in the output in the order their headers appear in the input.\nFor each file emit '<path> | <changed> <marks>' where <changed> is insertions plus deletions and <marks> is one '+' per insertion followed by one '-' per deletion, with no scaling.\nThen emit a final summary line '<F> file<s> changed, <I> insertion<s>(+), <D> deletion<s>(-)' where F, I and D are the totals and each of the three words takes an 's' only when its number is not 1.\nReturn the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00d0g4p25nr9la3x","kind":"contributor_item","title":"Submission R9LA3X","provisional":false,"output_code":"def transform(text):\n def to_minutes(hhmm):\n hours, minutes = hhmm.split(':')\n return int(hours) * 60 + int(minutes)\n\n def to_clock(total):\n return '{:02d}:{:02d}'.format(total // 60, total % 60)\n\n intervals = []\n for line in text.split('\\n'):\n line = line.strip()\n if not line:\n continue\n start_text, end_text = line.split('-')\n start = to_minutes(start_text)\n end = to_minutes(end_text)\n if end <= start:\n continue\n intervals.append((start, end))\n intervals.sort()\n merged = []\n for start, end in intervals:\n if merged and start <= merged[-1][1]:\n if end > merged[-1][1]:\n merged[-1][1] = end\n else:\n merged.append([start, end])\n lines = [to_clock(s) + '-' + to_clock(e) for s, e in merged]\n lines.append('total=' + str(sum(e - s for s, e in merged)))\n return '\\n'.join(lines)\n","input_data_sample":"09:00-10:30\n10:30-11:00\n13:15-14:00\n09:45-10:00\n16:00-15:00\n12:00-12:00\n","output_data_sample":"09:00-11:00\n13:15-14:00\ntotal=165","transformation_instruction":"Merge a list of same-day time ranges. Each non-blank input line is 'HH:MM-HH:MM' and describes the half-open interval [start, end) in minutes since midnight.\n1. Discard any interval whose end is less than or equal to its start (this drops reversed and zero-length ranges).\n2. Sort the surviving intervals by start ascending, then by end ascending.\n3. Merge two intervals whenever the next start is less than OR EQUAL TO the current end, so intervals that merely touch at a boundary are merged into one.\n4. Emit each merged interval as 'HH:MM-HH:MM' with hours and minutes zero-padded to two digits, one per line, in ascending order.\n5. Append a final line 'total=N' where N is the sum of the merged interval lengths in minutes.\nReturn the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00d1g4p277eqhmv6","kind":"contributor_item","title":"Submission EQHMV6","provisional":false,"output_code":"PAIRS = (\n (1000, 'M'), (900, 'CM'), (500, 'D'), (400, 'CD'),\n (100, 'C'), (90, 'XC'), (50, 'L'), (40, 'XL'),\n (10, 'X'), (9, 'IX'), (5, 'V'), (4, 'IV'), (1, 'I'),\n)\nDIGITS = {'M': 1000, 'D': 500, 'C': 100, 'L': 50, 'X': 10, 'V': 5, 'I': 1}\n\n\ndef to_roman(number):\n out = []\n remaining = number\n for value, symbol in PAIRS:\n while remaining >= value:\n out.append(symbol)\n remaining -= value\n return ''.join(out)\n\n\ndef transform(text):\n lines = []\n for raw in text.split('\\n'):\n token = raw.strip()\n if not token:\n continue\n if token.isdigit():\n number = int(token)\n result = to_roman(number) if 1 <= number <= 3999 else 'ERROR'\n elif all(ch in DIGITS for ch in token):\n total = 0\n for index, ch in enumerate(token):\n value = DIGITS[ch]\n nxt = DIGITS[token[index + 1]] if index + 1 < len(token) else 0\n total += -value if value < nxt else value\n result = str(total) if to_roman(total) == token else 'ERROR'\n else:\n result = 'ERROR'\n lines.append(token + ' -> ' + result)\n return '\\n'.join(lines)\n","input_data_sample":"1994\nXLII\n0\n4000\nIIII\nMMXXVI\n58\niv\n","output_data_sample":"1994 -> MCMXCIV\nXLII -> 42\n0 -> ERROR\n4000 -> ERROR\nIIII -> ERROR\nMMXXVI -> 2026\n58 -> LVIII\niv -> ERROR","transformation_instruction":"Convert each non-blank line of a mixed list between Arabic integers and Roman numerals.\nFor each line, strip surrounding whitespace and classify the token:\n1. If it consists only of decimal digits, parse it as an integer. If the integer is between 1 and 3999 inclusive, convert it to a Roman numeral using the standard subtractive pairs (M=1000, CM=900, D=500, CD=400, C=100, XC=90, L=50, XL=40, X=10, IX=9, V=5, IV=4, I=1) applied greedily from largest to smallest. Otherwise the result is 'ERROR'.\n2. Otherwise, if it consists only of the upper-case letters M, D, C, L, X, V and I, evaluate it with the usual rule (a smaller value immediately before a larger one is subtracted, otherwise added). Accept it only if it is the canonical form, i.e. converting the resulting integer back to a Roman numeral by the greedy rule reproduces the token exactly; if it does, the result is that integer written in decimal, otherwise the result is 'ERROR'.\n3. Any other token (including lower-case Roman numerals) gives 'ERROR'.\nEmit one line per input line, in input order, formatted as '<token> -> <result>' with a single space on each side of '->'.\nReturn the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00d8g4p2p7ynk12v","kind":"contributor_item","title":"Submission YNK12V","provisional":false,"output_code":"def transform(text):\n kept = []\n seen = {}\n skipped = 0\n for raw in text.split('\\n'):\n address = raw.strip()\n if not address:\n continue\n if address.count('@') != 1:\n skipped += 1\n continue\n local, domain = address.lower().split('@')\n if not local or not domain:\n skipped += 1\n continue\n if '+' in local:\n local = local.split('+', 1)[0]\n if domain in ('gmail.com', 'googlemail.com'):\n local = local.replace('.', '')\n domain = 'gmail.com'\n key = local + '@' + domain\n if key not in seen:\n seen[key] = True\n kept.append(address)\n kept.append('skipped=' + str(skipped))\n return '\\n'.join(kept)\n","input_data_sample":"First.Last+news@Gmail.com\nfirstlast@gmail.com\nBob@Example.COM\nbob@example.com\nb.o.b@example.com\ncarol@googlemail.com\nc.a.r.o.l@gmail.com\nnot-an-email\ndave@@example.com\n Eve@Example.com\n","output_data_sample":"First.Last+news@Gmail.com\nBob@Example.COM\nb.o.b@example.com\ncarol@googlemail.com\nEve@Example.com\nskipped=2","transformation_instruction":"Deduplicate a list of email addresses using provider-aware canonical keys.\nStrip surrounding whitespace from every line and skip lines that are then empty. A line is invalid, and is skipped and counted, if it does not contain exactly one '@', or if the part before or after the '@' is empty.\nFor a valid address build its canonical key like this: lower-case the whole address; drop everything from the first '+' in the local part up to (but not including) the '@'; if the domain is 'gmail.com' or 'googlemail.com', remove every '.' from the local part and use the domain 'gmail.com'; for any other domain leave the local part's dots alone.\nKeep only the FIRST address of each distinct key and output it exactly as it appeared in the input after whitespace stripping (original casing, dots and '+tag' preserved), one per line, in order of first appearance.\nThen append a final line 'skipped=N' where N is the number of invalid lines.\nReturn the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00czg4p2in512vp6","kind":"contributor_item","title":"Submission 512VP6","provisional":false,"output_code":"def transform(text):\n def key(version):\n core = version\n build = ''\n if '+' in core:\n core, build = core.split('+', 1)\n pre = ''\n if '-' in core:\n core, pre = core.split('-', 1)\n major, minor, patch = (int(p) for p in core.split('.'))\n if pre == '':\n pre_key = (1,)\n else:\n ids = []\n for ident in pre.split('.'):\n if ident.isdigit():\n ids.append((0, int(ident), ''))\n else:\n ids.append((1, 0, ident))\n pre_key = (0, tuple(ids))\n return (major, minor, patch, pre_key)\n\n versions = []\n for line in text.split('\\n'):\n line = line.strip()\n if not line:\n continue\n if line.startswith('v'):\n line = line[1:]\n versions.append(line)\n versions.sort(key=key)\n return '\\n'.join(versions)\n","input_data_sample":"1.0.0\n1.0.0-alpha\n1.0.0-alpha.1\n1.0.0-alpha.beta\n1.0.0-beta.2\n1.0.0-beta.11\n1.0.0-rc.1+build.5\nv2.1.0\n\n0.9.10\n","output_data_sample":"0.9.10\n1.0.0-alpha\n1.0.0-alpha.1\n1.0.0-alpha.beta\n1.0.0-beta.2\n1.0.0-beta.11\n1.0.0-rc.1+build.5\n1.0.0\n2.1.0","transformation_instruction":"Sort a newline-separated list of SemVer 2.0.0 version strings into ascending precedence order.\nIgnore blank lines. A single optional leading 'v' is stripped from each version and is NOT present in the output.\nPrecedence rules:\n1. Compare major, then minor, then patch as integers.\n2. Build metadata (everything from the first '+' onward) is ignored for comparison but is preserved verbatim in the output.\n3. A version WITH a pre-release (text after the first '-') has LOWER precedence than the same major.minor.patch without one.\n4. Pre-releases are compared by splitting on '.' and comparing identifiers left to right: an identifier made only of digits is compared numerically and always ranks lower than an identifier containing a non-digit; two non-numeric identifiers are compared by ASCII string order.\n5. If all identifiers of the shorter pre-release equal their counterparts, the version with MORE identifiers has higher precedence.\nThe input contains no two versions with equal precedence.\nReturn the versions one per line, ascending, with no trailing newline."} {"id":"cmst5hn7o00d2g4p2jvryxnvw","kind":"contributor_item","title":"Submission RYXNVW","provisional":false,"output_code":"def transform(text):\n lines = text.split('\\n')\n if lines and lines[-1] == '':\n lines = lines[:-1]\n header = lines[0]\n shift = int(header.split(':', 1)[1].strip()) % 26\n out = []\n for line in lines[1:]:\n chars = []\n for ch in line:\n if 'a' <= ch <= 'z':\n chars.append(chr((ord(ch) - 97 + shift) % 26 + 97))\n elif 'A' <= ch <= 'Z':\n chars.append(chr((ord(ch) - 65 + shift) % 26 + 65))\n else:\n chars.append(ch)\n out.append(''.join(chars))\n return '\\n'.join(out)\n","input_data_sample":"shift: -3\nAttack at Dawn, 07:00!\n\nZulu & aardvark -- ready?\n","output_data_sample":"Xqqxzh xq Axtk, 07:00!\n\nWrir & xxoasxoh -- obxav?","transformation_instruction":"Apply a Caesar shift to a block of text.\nThe FIRST line of the input has the form 'shift: N' where N is an integer that may be negative or larger than 26; reduce it modulo 26 to get the effective shift. Every line after the first is body text.\nShift each ASCII letter forward by the effective shift, wrapping within its own alphabet, and preserve its case ('A'-'Z' stay upper case, 'a'-'z' stay lower case). Leave every other character, including digits, punctuation and spaces, exactly as it is.\nKeep the body lines in their original order, including blank lines, and do not emit the 'shift:' header line.\nReturn the transformed body lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00d7g4p2bu7ijk9g","kind":"contributor_item","title":"Submission 7IJK9G","provisional":false,"output_code":"import urllib.parse\n\nSMALL_WORDS = ('and', 'of', 'the', 'in')\nSUFFIXES = ('.html', '.htm', '.php')\n\n\ndef render_segment(segment):\n for suffix in SUFFIXES:\n if segment.endswith(suffix):\n segment = segment[:-len(suffix)]\n break\n words = [w for w in segment.replace('-', ' ').replace('_', ' ').split(' ') if w]\n rendered = []\n for index, word in enumerate(words):\n if index > 0 and word.lower() in SMALL_WORDS:\n rendered.append(word.lower())\n else:\n rendered.append(word[:1].upper() + word[1:])\n return ' '.join(rendered)\n\n\ndef transform(text):\n out = []\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line:\n continue\n line = line.split('#', 1)[0]\n line = line.split('?', 1)[0]\n marker = line.find('://')\n if marker != -1:\n slash = line.find('/', marker + 3)\n line = line[slash:] if slash != -1 else ''\n path = urllib.parse.unquote(line, encoding='utf-8')\n segments = [s for s in path.split('/') if s]\n crumbs = ['Home'] + [render_segment(s) for s in segments]\n out.append(' > '.join(c for c in crumbs if c))\n return '\\n'.join(out)\n","input_data_sample":"https://example.com/docs/getting-started/install-guide.html?ref=nav\nhttps://example.com/\nhttps://example.com/blog/2026/the-art-of-data_cleaning\n/shop/mens-shoes/#reviews\n","output_data_sample":"Home > Docs > Getting Started > Install Guide\nHome\nHome > Blog > 2026 > The Art of Data Cleaning\nHome > Shop > Mens Shoes","transformation_instruction":"Turn each URL into a breadcrumb trail.\nFor every non-blank line: discard anything from the first '#' onward, then anything from the first '?' onward. Remove a leading scheme and host by deleting a leading 'scheme://host' when the remainder starts with '://' after a scheme; concretely, if the text contains '://', drop everything up to and including the first '/' that follows it. Then percent-decode the path using UTF-8 and split it on '/', dropping empty segments.\nFor each segment: if it ends with '.html', '.htm' or '.php' (case-sensitive) remove that suffix; replace every '-' and '_' with a space; split on spaces and drop empty words; then capitalise each word by upper-casing its first character and leaving the rest unchanged, EXCEPT that a word equal to 'and', 'of', 'the' or 'in' (compared lower-case) stays entirely lower-case unless it is the first word of the segment. Rejoin the words with single spaces.\nThe breadcrumb is the literal 'Home' followed by the rendered segments, joined with ' > ' (space, greater-than, space). A URL with no path segments yields just 'Home'.\nEmit one breadcrumb per input line in input order, joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00deg4p2sj3j3ij6","kind":"contributor_item","title":"Submission 3J3IJ6","provisional":false,"output_code":"import csv\n\nRATES = {'food': 0, 'book': 5, 'general': 10, 'luxury': 20}\n\n\ndef transform(text):\n lines = [l for l in text.split('\\n') if l != '']\n reader = csv.DictReader(lines)\n out = []\n subtotal_sum = 0\n tax_sum = 0\n skipped = 0\n for row in reader:\n qty_text = (row.get('qty') or '').strip()\n price_text = (row.get('unit_price_cents') or '').strip()\n try:\n qty = int(qty_text)\n price = int(price_text)\n except ValueError:\n skipped += 1\n continue\n category = (row.get('category') or '').strip()\n rate = RATES.get(category, RATES['general'])\n subtotal = qty * price\n tax = (subtotal * rate + 50) // 100\n subtotal_sum += subtotal\n tax_sum += tax\n out.append('{} x{} = {} (tax {})'.format(row['name'], qty, subtotal, tax))\n out.append('SUBTOTAL=' + str(subtotal_sum))\n out.append('TAX=' + str(tax_sum))\n out.append('TOTAL=' + str(subtotal_sum + tax_sum))\n out.append('SKIPPED=' + str(skipped))\n return '\\n'.join(out)\n","input_data_sample":"name,qty,unit_price_cents,category\nSourdough Loaf,2,650,food\nNovel,1,1899,book\nUSB Cable,3,999,general\nPerfume,1,12500,luxury\nMystery Item,1,500,widgets\nBroken Row,,300,general\nFree Sample,0,250,food\n","output_data_sample":"Sourdough Loaf x2 = 1300 (tax 0)\nNovel x1 = 1899 (tax 95)\nUSB Cable x3 = 2997 (tax 300)\nPerfume x1 = 12500 (tax 2500)\nMystery Item x1 = 500 (tax 50)\nFree Sample x0 = 0 (tax 0)\nSUBTOTAL=19196\nTAX=2945\nTOTAL=22141\nSKIPPED=1","transformation_instruction":"Total a shopping cart whose tax rate depends on the line's category.\nThe input is CSV with the header 'name,qty,unit_price_cents,category'. All money is in integer cents.\nTax rates by category: 'food' 0 percent, 'book' 5 percent, 'general' 10 percent, 'luxury' 20 percent. Any other category is taxed at the 'general' rate of 10 percent.\nSkip a data row, and count it as skipped, if its qty field or its unit_price_cents field is empty or is not a valid integer. A qty of 0 is a valid row and simply contributes zero.\nFor each kept row: subtotal = qty * unit_price_cents, and tax = (subtotal * rate_percent + 50) // 100 (integer floor division, i.e. round half up to the nearest cent).\nEmit one line per kept row, in input order, as '<name> x<qty> = <subtotal> (tax <tax>)'. Then emit, in this order, the lines 'SUBTOTAL=<sum of subtotals>', 'TAX=<sum of taxes>', 'TOTAL=<subtotal sum plus tax sum>' and 'SKIPPED=<count>'.\nReturn the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00dhg4p27t7tv6ms","kind":"contributor_item","title":"Submission 7TV6MS","provisional":false,"output_code":"import re\n\nKEY_RE = re.compile(r'^[A-Za-z_][A-Za-z0-9_]*$')\nREF_RE = re.compile(r'\\$\\{([A-Za-z_][A-Za-z0-9_]*)\\}')\n\n\ndef transform(text):\n values = {}\n interpolating = {}\n ignored = 0\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line or line.startswith('#'):\n continue\n if line.startswith('export '):\n line = line[len('export '):].strip()\n if '=' not in line:\n ignored += 1\n continue\n key, value = line.split('=', 1)\n key = key.strip()\n if not KEY_RE.match(key):\n ignored += 1\n continue\n value = value.strip()\n expand = True\n if len(value) >= 2 and value[0] == '\"' and value[-1] == '\"':\n value = value[1:-1]\n elif len(value) >= 2 and value[0] == \"'\" and value[-1] == \"'\":\n value = value[1:-1]\n expand = False\n values[key] = value\n interpolating[key] = expand\n for _ in range(10):\n for key in list(values):\n if not interpolating[key]:\n continue\n values[key] = REF_RE.sub(lambda m: values.get(m.group(1), ''), values[key])\n out = [k + '=' + values[k] for k in sorted(values)]\n out.append('ignored=' + str(ignored))\n return '\\n'.join(out)\n","input_data_sample":"# database settings\nDB_HOST=localhost\nDB_PORT=5432\nDB_URL=postgres://${DB_USER}:${DB_PASS}@${DB_HOST}:${DB_PORT}/app\nDB_USER=admin\nexport DB_PASS='s3cr3t#1'\nGREETING=\"Hello ${DB_USER}\"\nEMPTY=\nLITERAL='raw ${DB_USER}'\nbadline\nPATH_EXTRA=$HOME/bin\nTIMEOUT=${MISSING}30\n","output_data_sample":"DB_HOST=localhost\nDB_PASS=s3cr3t#1\nDB_PORT=5432\nDB_URL=postgres://admin:s3cr3t#1@localhost:5432/app\nDB_USER=admin\nEMPTY=\nGREETING=Hello admin\nLITERAL=raw ${DB_USER}\nPATH_EXTRA=$HOME/bin\nTIMEOUT=30\nignored=1","transformation_instruction":"Parse a .env style file and resolve '${VAR}' references.\nIgnore lines that are empty after stripping and lines whose first non-space character is '#'. Strip a leading 'export ' prefix. A line is ignored and counted as ignored if it has no '=' or if the text before the first '=', once stripped, does not match the regular expression [A-Za-z_][A-Za-z0-9_]* .\nTake the raw value as everything after the first '=', stripped of surrounding whitespace. If it starts and ends with a double quote (length at least two), remove the quotes and mark the value as interpolating. If it starts and ends with a single quote, remove the quotes and mark it as literal, i.e. never interpolated. Otherwise keep it as it is and mark it as interpolating. If the same key is defined twice, the later definition wins and the earlier one is discarded (it is NOT counted as ignored).\nThen resolve references by repeating this pass exactly 10 times: for every interpolating value, replace each occurrence of '${NAME}' - where NAME matches [A-Za-z_][A-Za-z0-9_]* - with the current value of NAME if NAME is one of the parsed keys, or with the empty string if it is not. Only the '${NAME}' form is a reference; a bare '$NAME' is left untouched.\nEmit one 'KEY=value' line per parsed key, sorted by key in ascending Unicode code point order (a key whose value is empty produces 'KEY=' with nothing after the '='), then a final line 'ignored=N' with the ignored-line count.\nReturn the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00cyg4p2mou3rcs2","kind":"contributor_item","title":"Submission U3RCS2","provisional":false,"output_code":"def transform(text):\n values = {}\n for line in text.split('\\n'):\n if not line.strip():\n continue\n if ':' not in line:\n continue\n raw_name, raw_value = line.split(':', 1)\n parts = raw_name.strip().lower().split('-')\n name = '-'.join(p[:1].upper() + p[1:] for p in parts)\n value = raw_value.strip()\n if name not in values:\n values[name] = []\n if value:\n values[name].append(value)\n lines = []\n for name in sorted(values):\n joined = ', '.join(values[name])\n lines.append(name + ': ' + joined if joined else name + ':')\n return '\\n'.join(lines)\n","input_data_sample":"content-type: application/json\nX-Request-ID: abc-123\naccept: text/html\nset-cookie: session=a1\nthis line has no colon\nSET-COOKIE: theme=dark\nx-empty:\nHost: api.example.com\n","output_data_sample":"Accept: text/html\nContent-Type: application/json\nHost: api.example.com\nSet-Cookie: session=a1, theme=dark\nX-Empty:\nX-Request-Id: abc-123","transformation_instruction":"Normalise a raw HTTP header block into a canonical, sorted list.\n1. Process the input line by line, ignoring lines that are empty after stripping and lines that contain no ':' character.\n2. Split each remaining line at the FIRST ':' only: the part before is the name, the part after is the value.\n3. Canonicalise the name: strip surrounding whitespace, lowercase it, then upper-case the first character of each '-'-separated token and lowercase the rest (so 'content-type' and 'X-Request-ID' become 'Content-Type' and 'X-Request-Id').\n4. Strip leading and trailing whitespace from the value.\n5. Collect the values of each canonical name in the order the lines appeared in the input, discarding values that are the empty string, and join the remaining ones with ', ' (comma then one space).\n6. Emit one line per canonical name, sorted by canonical name in ascending Unicode code point order.\n7. Format each line as 'Name: value'. If the joined value is empty (the name had no non-empty value), emit 'Name:' with nothing after the colon and no trailing space.\nJoin the emitted lines with '\\n' and return them with no trailing newline."} {"id":"cmst5hn7o00d5g4p25zrbub5i","kind":"contributor_item","title":"Submission RBUB5I","provisional":false,"output_code":"def transform(text):\n lines = [l for l in text.split('\\n') if l.strip()]\n cc = lines[0].split('=', 1)[1].strip()\n out = []\n for raw in lines[1:]:\n body = raw\n for marker in ('x', 'X'):\n position = body.find(marker)\n if position != -1:\n body = body[:position]\n plus = body.lstrip().startswith('+')\n digits = ''.join(ch for ch in body if ch.isdigit())\n if plus:\n national = digits\n elif digits.startswith('00'):\n national = digits[2:]\n elif digits.startswith('0'):\n national = cc + digits[1:]\n else:\n national = cc + digits\n if 8 <= len(national) <= 15:\n out.append('+' + national)\n else:\n out.append('INVALID')\n return '\\n'.join(out)\n","input_data_sample":"cc=61\n+61 2 9374 4000\n(02) 9374 4002\n00 44 20 7946 0958\n0412 345 678 x102\n1234\n+1-800-555-0199\n","output_data_sample":"+61293744000\n+61293744002\n+442079460958\n+61412345678\nINVALID\n+18005550199","transformation_instruction":"Normalise a list of raw phone numbers to E.164.\nThe first line is 'cc=N' giving the default country calling code as digits. Every following non-blank line is one raw number.\nFor each raw number, in this order:\n1. Drop an extension: if the line contains 'x' or 'X', discard that character and everything after it.\n2. Note whether the remaining text, after stripping leading whitespace, starts with '+'. Then keep only its digit characters.\n3. Build the international digits: if the '+' was present, use the digits as they are; else if the digits start with '00', drop that '00' and use the rest; else if the digits start with a single '0', drop that '0' and prepend the default country code; otherwise prepend the default country code to all the digits.\n4. If the resulting digit string has fewer than 8 or more than 15 digits, the result for that line is the literal 'INVALID'; otherwise it is '+' followed by those digits.\nEmit one result per input number line, in input order, and return them joined with '\\n' with no trailing newline."} {"id":"cmst5hn7o00d3g4p2wv6j2gac","kind":"contributor_item","title":"Submission 6J2GAC","provisional":false,"output_code":"def transform(text):\n lines = [l for l in text.split('\\n') if l.strip()]\n rows, cols = (int(p) for p in lines[0].split())\n grid = [[0] * cols for _ in range(rows)]\n for line in lines[1:]:\n row, col, value = (int(p) for p in line.split())\n if 0 <= row < rows and 0 <= col < cols:\n grid[row][col] = value\n rendered = [[str(v) for v in row] for row in grid]\n width = 0\n for row in rendered:\n for cell in row:\n if len(cell) > width:\n width = len(cell)\n return '\\n'.join(' '.join(cell.rjust(width) for cell in row) for row in rendered)\n","input_data_sample":"3 4\n0 0 5\n1 2 -12\n2 3 7\n1 2 34\n5 0 9\n2 -1 4\n","output_data_sample":" 5 0 0 0\n 0 0 34 0\n 0 0 0 7","transformation_instruction":"Expand a sparse matrix given as triplets into a dense text grid.\nThe first non-blank line holds two integers 'ROWS COLS' separated by whitespace. Every following non-blank line holds three integers 'ROW COL VALUE' with zero-based indices.\nRules: start from a grid of all zeros; ignore any triplet whose row is not in [0, ROWS-1] or whose column is not in [0, COLS-1]; if two kept triplets address the same cell, the one appearing LATER in the input wins.\nRender the grid with one row per line. Every value is rendered with str() and right-aligned in a field whose width is the length of the longest rendered value anywhere in the finished grid (minus signs count towards that length); cells are separated by a single space. Because of the right alignment no line ends in whitespace.\nReturn the rows joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00d4g4p27b2z6rbn","kind":"contributor_item","title":"Submission 2Z6RBN","provisional":false,"output_code":"import re\n\nPLACEHOLDER = re.compile(r'\\{\\{([^{}]*)\\}\\}')\n\n\ndef transform(text):\n lines = text.split('\\n')\n if lines and lines[-1] == '':\n lines = lines[:-1]\n separator = lines.index('---')\n table = {}\n for line in lines[:separator]:\n if '=' not in line:\n continue\n key, value = line.split('=', 1)\n table[key.strip()] = value\n\n def replace(match):\n body = match.group(1)\n if '|' in body:\n name, default = body.split('|', 1)\n default = default.strip()\n else:\n name, default = body, ''\n name = name.strip()\n if name in table:\n return table[name]\n return default\n\n rendered = [PLACEHOLDER.sub(replace, line).rstrip() for line in lines[separator + 1:]]\n return '\\n'.join(rendered)\n","input_data_sample":"name=Ada\ncity=\ntitle=Engineer\n---\nHello {{ name }}, welcome to {{city|Unknown}}.\nRole: {{title}} / Team: {{team|Core}}\nContact: {{email}}\n","output_data_sample":"Hello Ada, welcome to .\nRole: Engineer / Team: Core\nContact:","transformation_instruction":"Render a small text template against a variable table.\nThe input has two sections separated by a line containing exactly '---'. Lines before it are variable definitions 'key=value' split at the FIRST '='; the key is stripped of surrounding whitespace and the value is taken verbatim after the '=' (so 'city=' defines city as the empty string). Lines after the separator are the template, in order.\nIn the template, replace every placeholder of the form '{{ NAME }}' or '{{ NAME|DEFAULT }}' (the name and the optional default are stripped of surrounding whitespace) as follows: if NAME is defined in the table use its value even when that value is the empty string; otherwise use DEFAULT if the placeholder supplied one; otherwise use the empty string.\nReplacement values are inserted literally and are never rescanned for placeholders.\nFinally strip trailing whitespace from every rendered line so no line ends in a space.\nReturn the rendered lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00dbg4p2fzjacqg4","kind":"contributor_item","title":"Submission JACQG4","provisional":false,"output_code":"from decimal import Decimal, ROUND_HALF_UP\n\nFACTORS = {\n 'in': ('cm', Decimal('2.54')),\n 'ft': ('m', Decimal('0.3048')),\n 'mi': ('km', Decimal('1.609344')),\n 'lb': ('kg', Decimal('0.45359237')),\n 'oz': ('g', Decimal('28.349523125')),\n 'gal': ('L', Decimal('3.785411784')),\n}\nCENT = Decimal('0.01')\n\n\ndef transform(text):\n out = []\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line:\n continue\n parts = line.split()\n amount = Decimal(parts[0])\n unit = parts[1]\n if unit == 'F':\n value = (amount - Decimal('32')) * Decimal(5) / Decimal(9)\n target = 'C'\n elif unit in FACTORS:\n target, factor = FACTORS[unit]\n value = amount * factor\n else:\n out.append(line + ' = UNSUPPORTED')\n continue\n rounded = value.quantize(CENT, rounding=ROUND_HALF_UP)\n out.append(line + ' = ' + str(rounded) + ' ' + target)\n return '\\n'.join(out)\n","input_data_sample":"12 in\n3 ft\n26.2 mi\n150 lb\n8 oz\n98.6 F\n-40 F\n5 gal\n7 furlong\n","output_data_sample":"12 in = 30.48 cm\n3 ft = 0.91 m\n26.2 mi = 42.16 km\n150 lb = 68.04 kg\n8 oz = 226.80 g\n98.6 F = 37.00 C\n-40 F = -40.00 C\n5 gal = 18.93 L\n7 furlong = UNSUPPORTED","transformation_instruction":"Convert a list of imperial measurements to metric.\nEach non-blank line is '<number> <unit>' separated by whitespace, where the number may be negative or fractional.\nSupported units and their exact conversions are: 'in' -> cm, multiply by 2.54; 'ft' -> m, multiply by 0.3048; 'mi' -> km, multiply by 1.609344; 'lb' -> kg, multiply by 0.45359237; 'oz' -> g, multiply by 28.349523125; 'gal' -> L, multiply by 3.785411784 (US liquid gallon); 'F' -> C, subtract 32 then multiply by 5 and divide by 9.\nDo the arithmetic in exact decimal (Python's decimal module, not binary floats) and round the result to exactly two decimal places using ROUND_HALF_UP. Always show two decimal places, keeping trailing zeros.\nEmit one line per input line as '<original line stripped> = <result> <metric unit>'. If the unit is not one of the seven supported ones, emit '<original line stripped> = UNSUPPORTED' instead.\nReturn the lines joined with '\\n' and no trailing newline."} {"id":"cmst5hn7o00dag4p2kk8m8b1g","kind":"contributor_item","title":"Submission 8M8B1G","provisional":false,"output_code":"import csv\nimport io\n\n\ndef transform(text):\n lines = text.split('\\n')\n if lines and lines[-1] == '':\n lines = lines[:-1]\n separator = lines.index('---')\n mapping = []\n for line in lines[:separator]:\n if '->' not in line:\n continue\n source, target = line.split('->', 1)\n mapping.append((source.strip(), target.strip()))\n rows = list(csv.reader(lines[separator + 1:]))\n header = rows[0]\n index_of = {}\n for position, name in enumerate(header):\n if name not in index_of:\n index_of[name] = position\n out = io.StringIO()\n writer = csv.writer(out, lineterminator='\\n', quoting=csv.QUOTE_MINIMAL)\n writer.writerow([target for _, target in mapping])\n for row in rows[1:]:\n record = []\n for source, _ in mapping:\n position = index_of.get(source)\n if position is None or position >= len(row):\n record.append('')\n else:\n record.append(row[position])\n writer.writerow(record)\n return out.getvalue().rstrip('\\n')\n","input_data_sample":"sku->Item Code\nname->Product\nprice->Unit Price\ndiscount->Discount\n---\nname,sku,price,notes\n\"Widget, large\",W-100,19.99,n/a\nGadget,G-200,5.00\nDoohickey,D-300,,extra,ignored\n","output_data_sample":"Item Code,Product,Unit Price,Discount\nW-100,\"Widget, large\",19.99,\nG-200,Gadget,5.00,\nD-300,Doohickey,,","transformation_instruction":"Reorder and rename the columns of a CSV according to a header map.\nThe input has two sections separated by a line containing exactly '---'. Each line before the separator is 'source_column->output_column'; the order of these lines is the order of the output columns. Lines after the separator are CSV data parsed with standard rules (comma delimiter, double-quote quoting), the first of which is the header row.\nFor every data row, produce one output row containing, for each map entry in order, the value of that source column. Handle the edge cases as follows: if a source column name does not appear in the CSV header, its output value is the empty string for every row; if a row has fewer fields than the header, the missing fields count as the empty string; if a row has more fields than the header, the extra fields are ignored.\nWrite the result as CSV using the output column names as the header row, comma delimiter, minimal quoting (a field is quoted only if it contains a comma, a double quote, a carriage return or a newline) and '\\n' as the line terminator.\nReturn the CSV text with no trailing newline."} {"id":"cmst5hn7o00dcg4p2jdk0udhg","kind":"contributor_item","title":"Submission K0UDHG","provisional":false,"output_code":"def transform(text):\n out = []\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line:\n continue\n digits = line.replace(' ', '').replace('-', '')\n if not digits.isdigit() or not digits.isascii():\n out.append(line + ': INVALID_CHARS')\n continue\n if len(digits) < 13 or len(digits) > 19:\n out.append(line + ': INVALID_LENGTH')\n continue\n total = 0\n for position, ch in enumerate(reversed(digits)):\n value = int(ch)\n if position % 2 == 1:\n value *= 2\n if value > 9:\n value -= 9\n total += value\n status = 'VALID' if total % 10 == 0 else 'FAILED_CHECKSUM'\n masked = '*' * (len(digits) - 4) + digits[-4:]\n out.append(masked + ': ' + status)\n return '\\n'.join(out)\n","input_data_sample":"4539 1488 0343 6467\n4539-1488-0343-6468\n79927398713\n6011 1111 1111 1117\n5500 0000 0000 0004\n1234 5678 9012 345a\n","output_data_sample":"************6467: VALID\n************6468: FAILED_CHECKSUM\n79927398713: INVALID_LENGTH\n************1117: VALID\n************0004: VALID\n1234 5678 9012 345a: INVALID_CHARS","transformation_instruction":"Validate a list of payment card numbers with the Luhn algorithm and mask them.\nFor each non-blank line, strip surrounding whitespace, then remove every space and every '-' character. Then, in order:\n1. If the remaining text contains any character that is not an ASCII digit, the line's status is 'INVALID_CHARS'.\n2. Otherwise, if the number of digits is below 13 or above 19, the status is 'INVALID_LENGTH'.\n3. Otherwise apply the Luhn check: walking the digits from right to left, leave every first digit unchanged and double every second digit, subtracting 9 from any doubled value greater than 9; the status is 'VALID' if the resulting sum is divisible by 10, and 'FAILED_CHECKSUM' if it is not.\nThe label for a line is its masked number when the status is 'VALID' or 'FAILED_CHECKSUM' - the digit string with every digit except the last four replaced by '*' - and the whitespace-stripped ORIGINAL line otherwise.\nEmit one line per input line as '<label>: <status>', in input order, joined with '\\n' and with no trailing newline."} {"id":"cmst5hn7o00dgg4p2wlgc3p1s","kind":"contributor_item","title":"Submission GC3P1S","provisional":false,"output_code":"import json\n\n\ndef to_scalar(raw):\n value = raw\n if not value.startswith('\"') and not value.startswith(\"'\"):\n position = value.find(' #')\n if position != -1:\n value = value[:position]\n value = value.strip()\n if len(value) >= 2 and ((value[0] == '\"' and value[-1] == '\"') or (value[0] == \"'\" and value[-1] == \"'\")):\n return value[1:-1]\n if value == 'true':\n return True\n if value == 'false':\n return False\n if value in ('null', '~'):\n return None\n body = value[1:] if value.startswith('-') else value\n if body.isdigit() and body.isascii():\n return int(value)\n try:\n return float(value)\n except ValueError:\n return value\n\n\ndef parse_block(entries, index, indent):\n if entries[index][1].startswith('- '):\n items = []\n while index < len(entries) and entries[index][0] == indent and entries[index][1].startswith('- '):\n items.append(to_scalar(entries[index][1][2:]))\n index += 1\n return items, index\n mapping = {}\n while index < len(entries) and entries[index][0] == indent:\n content = entries[index][1]\n key, _, rest = content.partition(':')\n key = key.strip()\n if rest.strip() == '':\n child, index = parse_block(entries, index + 1, indent + 2)\n mapping[key] = child\n else:\n mapping[key] = to_scalar(rest.strip())\n index += 1\n return mapping, index\n\n\ndef transform(text):\n entries = []\n for line in text.split('\\n'):\n if not line.strip():\n continue\n if line.lstrip().startswith('#'):\n continue\n entries.append((len(line) - len(line.lstrip(' ')), line.strip()))\n parsed, _ = parse_block(entries, 0, 0)\n return json.dumps(parsed, indent=2)\n","input_data_sample":"# service configuration\nname: api-gateway\nversion: 2\nenabled: true\nreplicas: 3 # desired count\ntimeout: 1.5\nnotes: null\nowner:\n team: platform\n email: \"ops@example.com\"\ntags:\n - production\n - \"eu-west\"\n - 42\nlimits:\n cpu: 500m\n memory: 1Gi\n","output_data_sample":"{\n \"name\": \"api-gateway\",\n \"version\": 2,\n \"enabled\": true,\n \"replicas\": 3,\n \"timeout\": 1.5,\n \"notes\": null,\n \"owner\": {\n \"team\": \"platform\",\n \"email\": \"ops@example.com\"\n },\n \"tags\": [\n \"production\",\n \"eu-west\",\n 42\n ],\n \"limits\": {\n \"cpu\": \"500m\",\n \"memory\": \"1Gi\"\n }\n}","transformation_instruction":"Parse a restricted YAML-like configuration block into JSON.\nIgnore lines that are empty after stripping and lines whose first non-space character is '#'. Indentation is always a multiple of two spaces, and a nested block is always indented exactly two spaces deeper than the 'key:' line that introduces it.\nA line of the form 'key: value' is a scalar entry; a line of the form 'key:' with nothing after the colon introduces a nested block, which is either a mapping (its lines are 'key: value' or 'key:') or a list (all of its lines start with '- '). List items are scalars only. Mapping keys keep the order in which they appear.\nBefore converting a scalar, remove an inline comment: if the value does not begin with a single or double quote and the two-character sequence ' #' occurs in it, drop that sequence and everything after it; then strip surrounding whitespace.\nConvert a scalar like this: if it starts and ends with a double quote, or starts and ends with a single quote, and is at least two characters long, the value is the text between the quotes as a string; else 'true' becomes JSON true and 'false' becomes JSON false; else 'null' or '~' becomes JSON null; else a token matching an optional '-' followed by digits only becomes an integer; else a token that Python's float() accepts becomes a number; else it stays a string.\nReturn the resulting object serialised with json.dumps using indent=2 (two-space indentation, keys in insertion order, no sort), with no trailing newline."} {"id":"cmsu45j0500fgg4p2tg3a30f5","kind":"contributor_item","title":"Submission 3A30F5","provisional":false,"output_code":"def transform(text):\n added = 0\n removed = 0\n for line in text.split('\\n'):\n if line.startswith('+++') or line.startswith('---'):\n continue\n if line.startswith('+'):\n added += 1\n elif line.startswith('-'):\n removed += 1\n return 'added={} removed={} net={}'.format(added, removed, added - removed)\n","input_data_sample":"--- a/app.py\n+++ b/app.py\n@@ -1,4 +1,5 @@\n context\n-old one\n-old two\n+new one\n+new two\n+new three\n context\n","output_data_sample":"added=3 removed=2 net=1","transformation_instruction":"Collapse a unified-diff hunk into a summary: count added and removed lines (ignoring the +++/--- headers) and return 'added=N removed=M net=K' where net is added minus removed."} {"id":"cmsu45j0500fhg4p2ts9frwvl","kind":"contributor_item","title":"Submission 9FRWVL","provisional":false,"output_code":"def transform(text):\n totals = {}\n for line in text.strip().split('\\n'):\n if not line.strip():\n continue\n code, amount = line.split()\n totals[code] = totals.get(code, 0.0) + float(amount)\n return '\\n'.join('{} {:.2f}'.format(c, totals[c]) for c in sorted(totals))\n","input_data_sample":"USD 10.5\nEUR 3\nUSD 0.25\nGBP 7.125\nEUR 1.5\n","output_data_sample":"EUR 4.50\nGBP 7.12\nUSD 10.75","transformation_instruction":"Given 'currency amount' lines, sum per currency and return 'CUR total' lines sorted by currency code, with totals formatted to exactly two decimal places."} {"id":"cmsu45j0500feg4p2bjz4cde7","kind":"contributor_item","title":"Submission Z4CDE7","provisional":false,"output_code":"def transform(text):\n children = {}\n seen_child = set()\n nodes = set()\n for line in text.strip().split('\\n'):\n if not line.strip():\n continue\n parent, child = line.strip().split('>')\n children.setdefault(parent, []).append(child)\n seen_child.add(child)\n nodes.add(parent)\n nodes.add(child)\n out = []\n def emit(node, depth):\n out.append(' ' * depth + node)\n for kid in sorted(children.get(node, [])):\n emit(kid, depth + 1)\n for root in sorted(nodes - seen_child):\n emit(root, 0)\n return '\\n'.join(out)\n","input_data_sample":"app>web\napp>api\nweb>static\napi>db\nlib>util\n","output_data_sample":"app\n api\n db\n web\n static\nlib\n util","transformation_instruction":"Given lines of 'parent>child', emit an indented tree from every root (a node that is never a child), two spaces per level, children sorted alphabetically, roots sorted alphabetically."} {"id":"cmsu45j0500ffg4p2j5779mzj","kind":"contributor_item","title":"Submission 779MZJ","provisional":false,"output_code":"def transform(text):\n rows = []\n for line in text.strip().split('\\n')[1:]:\n if not line.strip():\n continue\n name, score = line.split(',')\n rows.append((name.strip(), int(score)))\n def grade(score):\n for cutoff, letter in ((90, 'A'), (80, 'B'), (70, 'C')):\n if score >= cutoff:\n return letter\n return 'F'\n rows.sort(key=lambda r: (-r[1], r[0]))\n return '\\n'.join('{} {}'.format(n, grade(s)) for n, s in rows)\n","input_data_sample":"name,score\nrhea,90\nolu,89\nmina,70\nkade,69\nbea,90\n","output_data_sample":"bea A\nrhea A\nolu B\nmina C\nkade F","transformation_instruction":"Read 'name,score' CSV lines and return 'name grade' lines where the grade is the letter band A (>=90), B (>=80), C (>=70), else F, ordered by descending score then ascending name."} {"id":"cmsu45j0500fdg4p27m7or3ys","kind":"contributor_item","title":"Submission 7OR3YS","provisional":false,"output_code":"def transform(text):\n entries = []\n for line in text.strip().split('\\n'):\n if not line.strip():\n continue\n clock, name = line.split(None, 1)\n hours, minutes = clock.split(':')\n entries.append((int(hours) * 60 + int(minutes), name.strip()))\n entries.sort()\n lines = ['{}: {}'.format(name, mins) for mins, name in entries]\n lines.append('span={}'.format(entries[-1][0] - entries[0][0]))\n return '\\n'.join(lines)\n","input_data_sample":"09:15 standup\n14:05 review\n08:00 prep\n17:30 wrapup\n","output_data_sample":"prep: 480\nstandup: 555\nreview: 845\nwrapup: 1050\nspan=570","transformation_instruction":"Parse 'HH:MM name' schedule lines and return each entry as 'name: minutes-since-midnight', sorted chronologically, followed by a final 'span=N' line giving minutes between first and last."} {"id":"cmsue07fp00ghg4p2e0h0inqd","kind":"contributor_item","title":"Submission H0INQD","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n readings = {}\n for row in csv.DictReader(io.StringIO(text.strip())):\n readings.setdefault(row[\"sensor\"], []).append(float(row[\"reading\"]))\n summary = {}\n for sensor, values in readings.items():\n summary[sensor] = {\n \"min\": min(values),\n \"max\": max(values),\n \"mean\": round(sum(values) / len(values), 2),\n }\n return json.dumps(summary)\n","input_data_sample":"sensor,reading\nt1,20.5\nt1,22.5\nt2,-3.0\nt2,-5.0\nt2,1.0\n","output_data_sample":"{\"t1\": {\"min\": 20.5, \"max\": 22.5, \"mean\": 21.5}, \"t2\": {\"min\": -5.0, \"max\": 1.0, \"mean\": -2.33}}","transformation_instruction":"For each sensor return min, max and mean of its readings as JSON, mean rounded to 2 decimals. Sensors are listed in first-seen order. Negative readings are included."} {"id":"cmsue07fp00grg4p28lb6t3w8","kind":"contributor_item","title":"Submission B6T3W8","provisional":false,"output_code":"def transform(text):\n masked = []\n for chunk in text.strip().split(\";\"):\n _, _, number = chunk.partition(\"=\")\n number = number.strip()\n if not number:\n continue\n if len(number) <= 4:\n masked.append(number)\n else:\n masked.append(\"*\" * (len(number) - 4) + number[-4:])\n return \"\\n\".join(masked)\n","input_data_sample":"acct=100200300400;acct=9;acct=44445555\n","output_data_sample":"********0400\n9\n****5555","transformation_instruction":"Mask each account number so only the last four characters remain visible, replacing the rest with '*'. Numbers of four characters or fewer are left untouched. Return the masked values one per line."} {"id":"cmsue07fp00gsg4p2izvioqb0","kind":"contributor_item","title":"Submission VIOQB0","provisional":false,"output_code":"import re\n\ndef transform(text):\n def key(name):\n parts = re.split(r\"(\\d+)\", name)\n return [int(part) if part.isdigit() else part.casefold() for part in parts]\n names = [line.strip() for line in text.strip().split(\"\\n\") if line.strip()]\n return \"\\n\".join(sorted(names, key=key))\n","input_data_sample":"file10.txt\nfile2.txt\nFile1.txt\nfile20.txt\n","output_data_sample":"File1.txt\nfile2.txt\nfile10.txt\nfile20.txt","transformation_instruction":"Sort the filenames naturally: split each name into digit and non-digit runs, compare text case-insensitively and digit runs numerically. Return the sorted names one per line."} {"id":"cmsue07fo00gfg4p22qm2hlzh","kind":"contributor_item","title":"Submission M2HLZH","provisional":false,"output_code":"def transform(text):\n keep = {\"WARN\", \"ERROR\"}\n rows = [\"time\\tlevel\\tmessage\"]\n for line in text.strip().split(\"\\n\"):\n parts = line.split(None, 3)\n if len(parts) < 4:\n continue\n date, time, level, message = parts\n if level not in keep:\n continue\n rows.append(time + \"\\t\" + level + \"\\t\" + message.strip())\n return \"\\n\".join(rows)\n","input_data_sample":"2026-01-04 09:12:01 WARN disk usage 91%\n2026-01-04 09:12:04 INFO heartbeat ok\n2026-01-04 09:13:00 ERROR upload failed retry=2\nmalformed line without level\n","output_data_sample":"time\tlevel\tmessage\n09:12:01\tWARN\tdisk usage 91%\n09:13:00\tERROR\tupload failed retry=2","transformation_instruction":"Convert the log into TSV with header 'time\\tlevel\\tmessage', keeping only WARN and ERROR lines. Use just the time portion of the timestamp. Lines that do not match the expected shape are skipped."} {"id":"cmsue07fp00glg4p25ssyvwqe","kind":"contributor_item","title":"Submission SYVWQE","provisional":false,"output_code":"def transform(text):\n seen = set()\n kept = []\n for line in text.split(\"\\n\"):\n stripped = line.strip()\n if not stripped:\n continue\n key = stripped.casefold()\n if key in seen:\n continue\n seen.add(key)\n kept.append(stripped)\n return \"\\n\".join(kept)\n","input_data_sample":"beta\nalpha\nBeta\nalpha\ngamma\n\nbeta\n","output_data_sample":"beta\nalpha\ngamma","transformation_instruction":"Remove duplicate lines case-insensitively, keeping the first spelling seen and the original order. Blank lines are dropped. Return the remaining lines."} {"id":"cmsue07fp00gog4p2gskv0ri0","kind":"contributor_item","title":"Submission KV0RI0","provisional":false,"output_code":"def transform(text):\n factors = {\"h\": 3600, \"m\": 60, \"s\": 1}\n rows = [\"duration,seconds\"]\n for line in text.strip().split(\"\\n\"):\n duration = line.strip()\n total = 0\n for token in duration.split():\n total += int(token[:-1]) * factors[token[-1]]\n rows.append(duration + \",\" + str(total))\n return \"\\n\".join(rows)\n","input_data_sample":"1h 30m\n45m\n2h\n0m\n1h 5m 30s\n","output_data_sample":"duration,seconds\n1h 30m,5400\n45m,2700\n2h,7200\n0m,0\n1h 5m 30s,3930","transformation_instruction":"Convert each duration into total seconds, returning CSV with header 'duration,seconds' preserving the input order."} {"id":"cmsue07fq00gtg4p2yrzg28uf","kind":"contributor_item","title":"Submission ZG28UF","provisional":false,"output_code":"import json\n\ndef transform(text):\n groups = {}\n for line in text.strip().split(\"\\n\"):\n name, _rank, status = line.strip().split(\"|\")\n groups.setdefault(status, []).append(name)\n ordered = {status: sorted(groups[status]) for status in sorted(groups)}\n return json.dumps(ordered)\n","input_data_sample":"alpha|1|active\nbeta|2|retired\ngamma|3|active\n","output_data_sample":"{\"active\": [\"alpha\", \"gamma\"], \"retired\": [\"beta\"]}","transformation_instruction":"Group the pipe-delimited rows by their status column and return JSON mapping each status to the sorted list of names, with statuses in alphabetical order."} {"id":"cmsue07fo00geg4p24aqy8wbx","kind":"contributor_item","title":"Submission QY8WBX","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n totals = {}\n for row in reader:\n totals[row[\"region\"]] = totals.get(row[\"region\"], 0) + int(row[\"units\"])\n ordered = sorted(totals.items(), key=lambda pair: (-pair[1], pair[0]))\n lines = [\"region,total\"]\n for region, total in ordered:\n lines.append(region + \",\" + str(total))\n return \"\\n\".join(lines)\n","input_data_sample":"region,units\nnorth,10\nsouth,4\nnorth,6\neast,0\nsouth,11\n","output_data_sample":"region,total\nnorth,16\nsouth,15\neast,0","transformation_instruction":"Aggregate the CSV by region, summing units. Return CSV with header 'region,total' sorted by total descending, then region ascending for ties. Regions totalling zero are still included."} {"id":"cmsue07fo00gcg4p2pbr9ejby","kind":"contributor_item","title":"Submission R9EJBY","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [line for line in text.strip().split(\"\\n\") if line.strip()]\n rows = []\n for line in lines[1:]:\n sku = line[0:9].strip()\n qty = int(line[9:14].strip())\n unit_price = float(line[14:].strip())\n if qty == 0:\n continue\n rows.append({\n \"sku\": sku,\n \"qty\": qty,\n \"line_total\": round(qty * unit_price, 2),\n })\n return json.dumps(rows)\n","input_data_sample":"SKU QTY UNIT_PRICE\nAX-100 012 0004.50\nBX-220 000 0012.00\nCX-330 007 0000.99\n","output_data_sample":"[{\"sku\": \"AX-100\", \"qty\": 12, \"line_total\": 54.0}, {\"sku\": \"CX-330\", \"qty\": 7, \"line_total\": 6.93}]","transformation_instruction":"Parse the fixed-width inventory report (columns SKU, QTY, UNIT_PRICE) and return a JSON array of objects with keys sku, qty (integer, leading zeros stripped) and line_total (qty * unit_price rounded to 2 decimals). Skip rows whose qty is zero."} {"id":"cmsue07fo00gdg4p2te2qn262","kind":"contributor_item","title":"Submission 2QN262","provisional":false,"output_code":"import json\n\ndef transform(text):\n config = {}\n section = None\n for line in text.strip().split(\"\\n\"):\n line = line.strip()\n if not line:\n continue\n if line.startswith(\"[\") and line.endswith(\"]\"):\n section = line[1:-1]\n config[section] = {}\n continue\n key, _, raw = line.partition(\"=\")\n key, raw = key.strip(), raw.strip()\n if raw in (\"true\", \"false\"):\n value = raw == \"true\"\n elif raw.isdigit():\n value = int(raw)\n else:\n value = raw\n config[section][key] = value\n return json.dumps(config)\n","input_data_sample":"[app]\nretries = 3\ndebug = true\nname = ingest worker\n\n[db]\nport = 5432\nssl = false\n","output_data_sample":"{\"app\": {\"retries\": 3, \"debug\": true, \"name\": \"ingest worker\"}, \"db\": {\"port\": 5432, \"ssl\": false}}","transformation_instruction":"Parse the INI-style config into nested JSON, coercing values: 'true'/'false' become booleans, all-digit values become integers, everything else stays a string. Section names become top-level keys."} {"id":"cmsue07fp00gjg4p2eve0oebn","kind":"contributor_item","title":"Submission E0OEBN","provisional":false,"output_code":"import json\n\ndef transform(text):\n blocks = [block for block in text.strip().split(\"\\n\\n\") if block.strip()]\n lines = []\n for block in blocks:\n record = {}\n for line in block.strip().split(\"\\n\"):\n key, _, value = line.partition(\":\")\n record[key.strip()] = value.strip()\n lines.append(json.dumps(record, separators=(\",\", \":\")))\n return \"\\n\".join(lines)\n","input_data_sample":"id: 41\nstatus: open\n\nid: 42\nstatus: closed\nnote: duplicate\n\nid: 43\nstatus: open\n","output_data_sample":"{\"id\":\"41\",\"status\":\"open\"}\n{\"id\":\"42\",\"status\":\"closed\",\"note\":\"duplicate\"}\n{\"id\":\"43\",\"status\":\"open\"}","transformation_instruction":"Split the blank-line separated 'key: value' blocks into JSON Lines — one compact JSON object per block, one per output line, preserving key order within a block."} {"id":"cmsue07fp00gig4p2on3l6vuf","kind":"contributor_item","title":"Submission 3L6VUF","provisional":false,"output_code":"import json\n\ndef transform(text):\n root = []\n stack = [(-1, root)]\n for line in text.rstrip().split(\"\\n\"):\n if not line.strip():\n continue\n indent = len(line) - len(line.lstrip(\" \"))\n label = line.strip().lstrip(\"-\").strip()\n node = {label: []}\n while stack and stack[-1][0] >= indent:\n stack.pop()\n stack[-1][1].append(node)\n stack.append((indent, node[label]))\n return json.dumps(root)\n","input_data_sample":"- platform\n - ingest\n - parser\n - storage\n- web\n - api\n","output_data_sample":"[{\"platform\": [{\"ingest\": [{\"parser\": []}]}, {\"storage\": []}]}, {\"web\": [{\"api\": []}]}]","transformation_instruction":"Convert the two-space-indented Markdown bullet list into nested JSON where each node maps its label to a list of child nodes, and a leaf maps to an empty list."} {"id":"cmsue07fo00ggg4p25x2oz0ql","kind":"contributor_item","title":"Submission 2OZ0QL","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n records = json.loads(text)\n out = io.StringIO()\n writer = csv.writer(out, lineterminator=\"\\n\")\n writer.writerow([\"name\", \"qty\"])\n for record in records:\n writer.writerow([record[\"name\"], record[\"qty\"]])\n return out.getvalue().strip()\n","input_data_sample":"[{\"name\": \"Bolt, 5mm\", \"qty\": 12}, {\"name\": \"Nut \\\"hex\\\"\", \"qty\": 3}]","output_data_sample":"name,qty\n\"Bolt, 5mm\",12\n\"Nut \"\"hex\"\"\",3","transformation_instruction":"Convert the JSON array into CSV with header 'name,qty', applying standard CSV quoting so that names containing commas or double quotes survive a round trip. Rows keep their original order."} {"id":"cmsue07fp00gng4p2mf0e53fx","kind":"contributor_item","title":"Submission 0E53FX","provisional":false,"output_code":"def transform(text):\n values = []\n for line in text.strip().split(\"\\n\"):\n raw = line.strip().replace(\"USD\", \"\").replace(\"$\", \"\").replace(\",\", \"\").strip()\n values.append(format(float(raw), \".2f\"))\n return \"\\n\".join(values)\n","input_data_sample":"$1,299.50\n-$45\n$0.05\nUSD 12.10\n","output_data_sample":"1299.50\n-45.00\n0.05\n12.10","transformation_instruction":"Normalise the currency amounts to plain signed decimals with exactly two decimal places, stripping symbols, thousands separators and the 'USD' prefix. Return one value per line in the original order."} {"id":"cmsue07fp00gkg4p2rp0nl09u","kind":"contributor_item","title":"Submission 0NL09U","provisional":false,"output_code":"def transform(text):\n units = [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\"]\n lines = []\n for line in text.strip().split(\"\\n\"):\n name, _, raw = line.partition(\"\\t\")\n size = float(raw)\n if size == 0:\n lines.append(name + \": 0 B\")\n continue\n index = 0\n while size >= 1024 and index < len(units) - 1:\n size /= 1024\n index += 1\n lines.append(name + \": \" + format(round(size, 1), \".1f\") + \" \" + units[index])\n return \"\\n\".join(lines)\n","input_data_sample":"archive.tar\t1536\nvideo.mkv\t2411724800\nnotes.txt\t0\nimage.png\t1048576\n","output_data_sample":"archive.tar: 1.5 KiB\nvideo.mkv: 2.2 GiB\nnotes.txt: 0 B\nimage.png: 1.0 MiB","transformation_instruction":"Convert byte sizes to human-readable units using binary multiples (1024), one decimal place, choosing the largest unit that keeps the value >= 1. Zero stays '0 B'. Output 'name: size' lines in the original order."} {"id":"cmsue07fp00gmg4p2z9pit05u","kind":"contributor_item","title":"Submission PIT05U","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n rows = list(csv.DictReader(io.StringIO(text.strip())))\n metrics = sorted({row[\"metric\"] for row in rows})\n table = {}\n for row in rows:\n table.setdefault(row[\"date\"], {})[row[\"metric\"]] = row[\"value\"]\n out = io.StringIO()\n writer = csv.writer(out, lineterminator=\"\\n\")\n writer.writerow([\"date\"] + metrics)\n for date in sorted(table):\n writer.writerow([date] + [table[date].get(metric, \"\") for metric in metrics])\n return out.getvalue().strip()\n","input_data_sample":"date,metric,value\n2026-01-01,cpu,10\n2026-01-01,mem,40\n2026-01-02,cpu,15\n","output_data_sample":"date,cpu,mem\n2026-01-01,10,40\n2026-01-02,15,","transformation_instruction":"Pivot the long-format CSV to wide: one row per date, one column per metric (columns sorted alphabetically). Missing combinations become empty cells. Header starts with 'date'."} {"id":"cmsue07fp00gqg4p2ptoqolyg","kind":"contributor_item","title":"Submission OQOLYG","provisional":false,"output_code":"import json\n\ndef transform(text):\n flat = {}\n\n def walk(node, prefix):\n if isinstance(node, dict):\n for key, value in node.items():\n walk(value, prefix + \".\" + key if prefix else key)\n elif isinstance(node, list):\n for index, value in enumerate(node):\n walk(value, prefix + \".\" + str(index))\n else:\n flat[prefix] = json.dumps(node)\n\n walk(json.loads(text), \"\")\n return \"\\n\".join(path + \"=\" + flat[path] for path in sorted(flat))\n","input_data_sample":"{\"server\": {\"host\": \"db1\", \"ports\": [5432, 5433]}, \"debug\": false}","output_data_sample":"debug=false\nserver.host=\"db1\"\nserver.ports.0=5432\nserver.ports.1=5433","transformation_instruction":"Flatten the nested JSON into dotted paths, indexing list elements by position, and return 'path=value' lines sorted by path. Values are rendered as JSON literals, so strings keep their double quotes and booleans stay lowercase."} {"id":"cmsue07fp00gpg4p2gl32zvrd","kind":"contributor_item","title":"Submission 32ZVRD","provisional":false,"output_code":"def transform(text):\n counts = {}\n for word in text.lower().split():\n counts[word] = counts.get(word, 0) + 1\n ordered = sorted(counts.items(), key=lambda pair: (-pair[1], pair[0]))\n return \"\\n\".join(word + \"=\" + str(count) for word, count in ordered[:3])\n","input_data_sample":"the cat sat\nthe mat sat\nThe CAT ran\n","output_data_sample":"the=3\ncat=2\nsat=2","transformation_instruction":"Count word frequencies case-insensitively and return the top 3 as 'word=count' lines, ordered by count descending then word ascending."} {"id":"cmsue07fq00gug4p2z9o6nf88","kind":"contributor_item","title":"Submission O6NF88","provisional":false,"output_code":"def transform(text):\n rows = []\n for line in text.rstrip(\"\\n\").split(\"\\n\"):\n rows.append(\"chars=\" + str(len(line)) + \" bytes=\" + str(len(line.encode(\"utf-8\"))))\n return \"\\n\".join(rows)\n","input_data_sample":"Grüße, Team\nnaïve café\nplain ascii\n","output_data_sample":"chars=11 bytes=13\nchars=10 bytes=12\nchars=11 bytes=11","transformation_instruction":"For each line report the character count and the byte length when encoded as UTF-8, as 'chars=<n> bytes=<n>' lines, so that multi-byte characters are visible as a difference."} {"id":"cmsue07fq00gvg4p2h0z7jcme","kind":"contributor_item","title":"Submission Z7JCME","provisional":false,"output_code":"def transform(text):\n rows = []\n for index, line in enumerate(text.strip().split(\"\\n\"), start=1):\n total = sum(int(cell) if cell.strip() else 0 for cell in line.split(\",\"))\n rows.append(\"row\" + str(index) + \": \" + str(total))\n return \"\\n\".join(rows)\n","input_data_sample":"10,20,30\n5,,15\n,,\n7,8,9\n","output_data_sample":"row1: 60\nrow2: 20\nrow3: 0\nrow4: 24","transformation_instruction":"Sum each CSV row, treating empty cells as zero, and return 'row<N>: <sum>' lines numbered from 1. A row of only empty cells sums to 0."} {"id":"cmsugzt3200hcg4p2di7wcjsk","kind":"contributor_item","title":"Submission 7WCJSK","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n header = lines[0].split('\\t')\n rows = []\n for line in lines[1:]:\n values = line.split('\\t')\n rows.append(dict(zip(header, values)))\n return json.dumps(rows)\n","input_data_sample":"name\tage\tcity\nAlice\t30\tNYC\nBob\t25\tLA\n","output_data_sample":"[{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"NYC\"}, {\"name\": \"Bob\", \"age\": \"25\", \"city\": \"LA\"}]","transformation_instruction":"Convert a tab-separated values block (first row is the header) into a JSON array of objects, one per data row."} {"id":"cmsugzt3200hbg4p2ohl32rks","kind":"contributor_item","title":"Submission L32RKS","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n section = None\n for line in text.strip().split('\\n'):\n line = line.strip()\n if not line or line.startswith('#'):\n continue\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1]\n result[section] = {}\n elif '=' in line and section:\n k, v = line.split('=', 1)\n result[section][k.strip()] = v.strip()\n return json.dumps(result)\n","input_data_sample":"[server]\nhost = localhost\nport = 8080\n\n[database]\nname = mydb\nuser = admin\n","output_data_sample":"{\"server\": {\"host\": \"localhost\", \"port\": \"8080\"}, \"database\": {\"name\": \"mydb\", \"user\": \"admin\"}}","transformation_instruction":"Parse a simple INI-style config with [section] headers and key = value lines into a nested JSON object keyed by section, then key."} {"id":"cmsugzt3300hfg4p2i1yxe5pr","kind":"contributor_item","title":"Submission YXE5PR","provisional":false,"output_code":"import re\n\ndef transform(text):\n nums = [float(n) for n in re.findall(r'-?\\d+\\.?\\d*', text)]\n total = sum(nums)\n return str(total) if total != int(total) else str(int(total))\n","input_data_sample":"Order #1023: 3 items at 12.50 each, plus 2 items at 7 each, shipping -5 discount","output_data_sample":"1042.5","transformation_instruction":"Extract every number (integer or decimal, including negatives) embedded anywhere in the free text and return the sum as a plain string, without a trailing '.0' when the result is a whole number."} {"id":"cmsugzt3300heg4p2w56tdabi","kind":"contributor_item","title":"Submission 6TDABI","provisional":false,"output_code":"import json\n\ndef transform(text):\n pairs = [p.strip() for p in text.strip().split(';') if p.strip()]\n d = {}\n for p in pairs:\n k, v = p.split(':', 1)\n d[k.strip()] = v.strip()\n return json.dumps(dict(sorted(d.items())))\n","input_data_sample":"zebra: stripes; apple: fruit; mango: fruit","output_data_sample":"{\"apple\": \"fruit\", \"mango\": \"fruit\", \"zebra\": \"stripes\"}","transformation_instruction":"Parse a semicolon-separated list of 'key: value' pairs into a JSON object with keys sorted alphabetically."} {"id":"cmsugzt3200hdg4p2mx341zif","kind":"contributor_item","title":"Submission 341ZIF","provisional":false,"output_code":"def transform(text):\n words = text.strip().split()\n result = []\n i = 0\n while i < len(words):\n w = words[i]\n count = 1\n while i + count < len(words) and words[i + count] == w:\n count += 1\n result.append(f\"{w}x{count}\" if count > 1 else w)\n i += count\n return ' '.join(result)\n","input_data_sample":"the the the cat sat sat on on on on the mat","output_data_sample":"thex3 cat satx2 onx4 the mat","transformation_instruction":"Collapse consecutive duplicate whitespace-separated words into a single 'wordxN' token when N>1 (keep single occurrences as-is), preserving overall word order."} {"id":"cmsuhh08w00jmg4p2p8uxys68","kind":"contributor_item","title":"Submission UXYS68","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.split('\\n') if l.strip()]\n rows = []\n for line in lines:\n name = line[0:10].strip()\n age = line[10:13].strip()\n city = line[13:].strip()\n rows.append({\"name\": name, \"age\": int(age), \"city\": city})\n return json.dumps(rows)\n","input_data_sample":"Alice 30 New York\nBob 25 Boston \n","output_data_sample":"[{\"name\": \"Alice\", \"age\": 30, \"city\": \"New York\"}, {\"name\": \"Bob\", \"age\": 25, \"city\": \"Boston\"}]","transformation_instruction":"Parse fixed-width text rows (name in columns 0-9, age in columns 10-12, city in the remainder) into a JSON array of objects with name, age (as an integer), and city."} {"id":"cmsuhh08w00jog4p2h4lt72ge","kind":"contributor_item","title":"Submission LT72GE","provisional":false,"output_code":"def transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n header, *rows = lines\n seen = {}\n order = []\n for row in rows:\n key = row.split(',')[0]\n if key not in seen:\n order.append(key)\n seen[key] = row\n out_lines = [header] + [seen[k] for k in order]\n return '\\n'.join(out_lines)\n","input_data_sample":"id,value\n1,a\n2,b\n1,c\n3,d\n2,e","output_data_sample":"id,value\n1,c\n2,e\n3,d","transformation_instruction":"Given CSV text with a header row and an id column first, deduplicate rows by id, keeping only the last occurrence of each id, and preserve the first-seen order of ids."} {"id":"cmsuhh08w00jng4p2mahirt2f","kind":"contributor_item","title":"Submission HIRT2F","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for pair in text.strip().split(','):\n k, v = pair.split('=', 1)\n k, v = k.strip(), v.strip()\n if v.lower() in ('true', 'false'):\n result[k] = v.lower() == 'true'\n else:\n try:\n result[k] = int(v)\n except ValueError:\n try:\n result[k] = float(v)\n except ValueError:\n result[k] = v\n return json.dumps(result)\n","input_data_sample":"name=Widget, price=19.99, in_stock=true, quantity=42","output_data_sample":"{\"name\": \"Widget\", \"price\": 19.99, \"in_stock\": true, \"quantity\": 42}","transformation_instruction":"Parse a comma-separated list of key=value pairs into a JSON object, inferring the type of each value as boolean, integer, float, or string."} {"id":"cmsuhh08w00jqg4p2kunxyqyc","kind":"contributor_item","title":"Submission NXYQYC","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for pair in text.strip().split(';'):\n if not pair.strip():\n continue\n tag, value = pair.split(':', 1)\n result[tag.strip()] = value.strip()\n return json.dumps(result)\n","input_data_sample":"author:Jane Doe;year:2024;genre:Fiction","output_data_sample":"{\"author\": \"Jane Doe\", \"year\": \"2024\", \"genre\": \"Fiction\"}","transformation_instruction":"Parse a semicolon-separated list of tag:value pairs into a JSON object mapping each tag to its value."} {"id":"cmsuhh08w00jpg4p2utzj3mi0","kind":"contributor_item","title":"Submission ZJ3MI0","provisional":false,"output_code":"import json\n\ndef transform(text):\n temps = [float(x.strip()) for x in text.strip().split(',')]\n fahrenheit = [round(t * 9/5 + 32, 1) for t in temps]\n return json.dumps(fahrenheit)\n","input_data_sample":"0, 20, 37, 100","output_data_sample":"[32.0, 68.0, 98.6, 212.0]","transformation_instruction":"Parse a comma-separated list of Celsius temperature readings and convert them to Fahrenheit, rounded to 1 decimal place, returned as a JSON array."} {"id":"cmsujal4500lwg4p24v3d9vu9","kind":"contributor_item","title":"Submission 3D9VU9","provisional":false,"output_code":"import csv, json, io\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n result = []\n for row in reader:\n result.append({'name': row[0], 'age': int(row[1]), 'role': row[2]})\n return json.dumps(result)\n","input_data_sample":"John Doe,32,Engineer\nJane Smith,28,Designer\nBob Lee,45,Manager","output_data_sample":"[{\"name\": \"John Doe\", \"age\": 32, \"role\": \"Engineer\"}, {\"name\": \"Jane Smith\", \"age\": 28, \"role\": \"Designer\"}, {\"name\": \"Bob Lee\", \"age\": 45, \"role\": \"Manager\"}]","transformation_instruction":"Parse CSV rows of name,age,role (no header) into a JSON array of objects with keys name, age (as int), role."} {"id":"cmsujal4500m0g4p2peqf0l8v","kind":"contributor_item","title":"Submission QF0L8V","provisional":false,"output_code":"import json\n\ndef transform(text):\n totals = {}\n for line in text.strip().split('\\n'):\n date, product, qty = line.split(',')\n totals[product] = totals.get(product, 0) + int(qty)\n return json.dumps({k: totals[k] for k in sorted(totals)})\n","input_data_sample":"2026-01-15,widget,3\n2026-01-16,gadget,1\n2026-01-15,widget,2\n2026-01-17,widget,5","output_data_sample":"{\"gadget\": 1, \"widget\": 10}","transformation_instruction":"Parse lines of date,product,quantity and sum quantities per product across all dates, returning a JSON object sorted by product name."} {"id":"cmsujal4500lxg4p2d5v861zr","kind":"contributor_item","title":"Submission V861ZR","provisional":false,"output_code":"def transform(text):\n lines = text.split('\\n')\n cleaned = []\n for line in lines:\n cleaned.append(' '.join(line.split()))\n return '\\n'.join(cleaned)\n","input_data_sample":" Hello World \n This is a Test ","output_data_sample":"Hello World\nThis is a Test","transformation_instruction":"Normalize whitespace: collapse multiple spaces into one, strip leading/trailing whitespace on each line, and join lines with a single newline."} {"id":"cmsujal4500lyg4p28cd4n13v","kind":"contributor_item","title":"Submission D4N13V","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for pair in text.strip().split(','):\n k, v = pair.split(':')\n result[k] = int(v)\n result['_total'] = sum(result.values())\n return json.dumps(result)\n","input_data_sample":"apple:3,banana:5,cherry:2","output_data_sample":"{\"apple\": 3, \"banana\": 5, \"cherry\": 2, \"_total\": 10}","transformation_instruction":"Parse a comma-separated key:value inventory string into a JSON object mapping each key to its integer value, and add a computed '_total' key summing all values."} {"id":"cmsujal4500lzg4p25sdcpyhn","kind":"contributor_item","title":"Submission DCPYHN","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n result = {}\n for row in reader:\n score = int(row['score'])\n if score >= 90:\n grade = 'A'\n elif score >= 80:\n grade = 'B'\n else:\n grade = 'C'\n result[row['id']] = grade\n return json.dumps(result)\n","input_data_sample":"id,score\n1,85\n2,92\n3,78\n4,95","output_data_sample":"{\"1\": \"B\", \"2\": \"A\", \"3\": \"C\", \"4\": \"A\"}","transformation_instruction":"Given a CSV of id,score, return a JSON object mapping each id to a letter grade: A for score>=90, B for 80-89, C for below 80."} {"id":"cmsuqx5uo011tg4p2wygv0auc","kind":"contributor_item","title":"Submission GV0AUC","provisional":false,"output_code":"import json\nimport re\n\n\ndef transform(text):\n line = text.strip()\n pattern = r'(\\w+)=(\"[^\"]*\"|\\S+)'\n pairs = re.findall(pattern, line)\n result = {}\n for key, value in pairs:\n if value.startswith('\"') and value.endswith('\"'):\n value = value[1:-1]\n elif re.fullmatch(r'-?\\d+', value):\n value = int(value)\n elif re.fullmatch(r'-?\\d+\\.\\d+', value):\n value = float(value)\n result[key] = value\n return json.dumps(result)","input_data_sample":"level=INFO msg=\"user created successfully\" user_id=42 ip=10.0.0.5 latency_ms=12.5 retries=0","output_data_sample":"{\"level\": \"INFO\", \"msg\": \"user created successfully\", \"user_id\": 42, \"ip\": \"10.0.0.5\", \"latency_ms\": 12.5, \"retries\": 0}","transformation_instruction":"Parse a logfmt-style key=value log line into a JSON object. Quoted values (e.g. msg=\"...\") may contain spaces and must have their surrounding quotes stripped. Values that look numeric should be converted to int or float, but a value that merely resembles a number — like an IP address — must remain a string."} {"id":"cmsuqx5uo011ug4p2gmlyhv3q","kind":"contributor_item","title":"Submission LYHV3Q","provisional":false,"output_code":"import csv\nimport io\nfrom collections import defaultdict\n\n\ndef transform(text):\n totals = defaultdict(float)\n counts = defaultdict(int)\n for line in text.strip().split('\\n'):\n line = line.strip()\n if not line:\n continue\n category, amount = line.rsplit(' ', 1)\n totals[category] += float(amount)\n counts[category] += 1\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow(['category', 'total', 'count'])\n for category in sorted(totals):\n writer.writerow([category, f'{totals[category]:.2f}', counts[category]])\n return out.getvalue().strip()","input_data_sample":"groceries 45.50\ntransport 12.00\ndry goods 30.25\ndining 60.00\ntransport 8.75\ndry goods 15.00","output_data_sample":"category,total,count\r\ndining,60.00,1\r\ndry goods,45.25,2\r\ngroceries,45.50,1\r\ntransport,20.75,2","transformation_instruction":"Each line is '<category> <amount>', one transaction per line; category names may themselves contain spaces (e.g. 'dry goods'). Aggregate the total amount and transaction count per category, and output as CSV with header 'category,total,count', rows sorted alphabetically by category, amounts formatted to exactly 2 decimal places."} {"id":"cmsv71ouv019bg4p2d0tfpoot","kind":"contributor_item","title":"Submission TFPOOT","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n records = []\n for row in reader:\n rec = {}\n for k, v in row.items():\n v = v.strip()\n if v.lower() in ('true', 'false'):\n rec[k] = v.lower() == 'true'\n else:\n try:\n rec[k] = int(v)\n except ValueError:\n try:\n rec[k] = float(v)\n except ValueError:\n rec[k] = v\n records.append(rec)\n return json.dumps(records)\n","input_data_sample":"sku,quantity,price,in_stock\nA100,12,4.99,true\nB200,0,19.5,false\nC300,7,3,true\n","output_data_sample":"[{\"sku\": \"A100\", \"quantity\": 12, \"price\": 4.99, \"in_stock\": true}, {\"sku\": \"B200\", \"quantity\": 0, \"price\": 19.5, \"in_stock\": false}, {\"sku\": \"C300\", \"quantity\": 7, \"price\": 3, \"in_stock\": true}]","transformation_instruction":"Parse a CSV string with a header row into a JSON array of records, coercing each cell to int, float, or bool where possible (leaving other values as strings)."} {"id":"cmsv723vq019jg4p2rtrfqv03","kind":"contributor_item","title":"Submission RFQV03","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n\n def flatten(obj, prefix=''):\n items = {}\n if isinstance(obj, dict):\n for k, v in obj.items():\n new_key = f\"{prefix}.{k}\" if prefix else k\n items.update(flatten(v, new_key))\n elif isinstance(obj, list):\n for i, v in enumerate(obj):\n new_key = f\"{prefix}[{i}]\"\n items.update(flatten(v, new_key))\n else:\n items[prefix] = obj\n return items\n\n return json.dumps(flatten(data), sort_keys=True)\n","input_data_sample":"{\"user\": {\"id\": 42, \"name\": \"Priya\", \"address\": {\"city\": \"Pune\", \"zip\": \"411001\"}, \"tags\": [\"vip\", \"beta\"]}, \"active\": true}","output_data_sample":"{\"active\": true, \"user.address.city\": \"Pune\", \"user.address.zip\": \"411001\", \"user.id\": 42, \"user.name\": \"Priya\", \"user.tags[0]\": \"vip\", \"user.tags[1]\": \"beta\"}","transformation_instruction":"Flatten an arbitrarily nested JSON object (including lists) into a single-level JSON object whose keys use dot notation for nested dicts and bracket notation like key[0] for list indices, with keys sorted alphabetically."} {"id":"cmsv72j0h019sg4p2hdlqvgg8","kind":"contributor_item","title":"Submission LQVGG8","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n rows = json.loads(text)\n agg = defaultdict(lambda: {\"total_revenue\": 0.0, \"order_count\": 0})\n for r in rows:\n key = r[\"region\"]\n agg[key][\"total_revenue\"] += r[\"amount\"]\n agg[key][\"order_count\"] += 1\n result = []\n for region, vals in sorted(agg.items()):\n result.append({\n \"region\": region,\n \"total_revenue\": round(vals[\"total_revenue\"], 2),\n \"order_count\": vals[\"order_count\"],\n \"avg_order_value\": round(vals[\"total_revenue\"] / vals[\"order_count\"], 2)\n })\n return json.dumps(result)\n","input_data_sample":"[{\"region\": \"west\", \"amount\": 120.5}, {\"region\": \"east\", \"amount\": 80.0}, {\"region\": \"west\", \"amount\": 30.0}, {\"region\": \"east\", \"amount\": 45.25}, {\"region\": \"west\", \"amount\": 10.0}]","output_data_sample":"[{\"region\": \"east\", \"total_revenue\": 125.25, \"order_count\": 2, \"avg_order_value\": 62.62}, {\"region\": \"west\", \"total_revenue\": 160.5, \"order_count\": 3, \"avg_order_value\": 53.5}]","transformation_instruction":"Group a JSON array of order records by 'region' and compute total_revenue, order_count, and avg_order_value per region, returning a JSON array sorted by region name."} {"id":"cmsv73ibi01a0g4p2g28jff3y","kind":"contributor_item","title":"Submission 8JFF3Y","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n out = []\n for line in lines:\n digits = re.sub(r'\\D', '', line)\n if len(digits) == 11 and digits.startswith('1'):\n digits = digits[1:]\n if len(digits) != 10:\n out.append({\"raw\": line, \"normalized\": None, \"valid\": False})\n continue\n normalized = f\"+1-{digits[0:3]}-{digits[3:6]}-{digits[6:10]}\"\n out.append({\"raw\": line, \"normalized\": normalized, \"valid\": True})\n return json.dumps(out)\n","input_data_sample":"(555) 123-4567\n555.987.6543\n1-555-222-3333\n12345\n","output_data_sample":"[{\"raw\": \"(555) 123-4567\", \"normalized\": \"+1-555-123-4567\", \"valid\": true}, {\"raw\": \"555.987.6543\", \"normalized\": \"+1-555-987-6543\", \"valid\": true}, {\"raw\": \"1-555-222-3333\", \"normalized\": \"+1-555-222-3333\", \"valid\": true}, {\"raw\": \"12345\", \"normalized\": null, \"valid\": false}]","transformation_instruction":"Normalize a list of messy US phone number strings (varied punctuation) into E.164-like '+1-XXX-XXX-XXXX' format, flagging entries that cannot be parsed into exactly 10 digits as invalid."} {"id":"cmsv749af01acg4p2qr9z0ww9","kind":"contributor_item","title":"Submission 9Z0WW9","provisional":false,"output_code":"import json\nfrom collections import OrderedDict\n\ndef transform(text):\n rows = json.loads(text)\n pivot = OrderedDict()\n months = []\n for r in rows:\n product = r[\"product\"]\n month = r[\"month\"]\n if month not in months:\n months.append(month)\n pivot.setdefault(product, {})[month] = r[\"units_sold\"]\n months.sort()\n result = []\n for product, vals in pivot.items():\n row = {\"product\": product}\n for m in months:\n row[m] = vals.get(m, 0)\n result.append(row)\n return json.dumps(result)\n","input_data_sample":"[{\"product\": \"Widget\", \"month\": \"2026-01\", \"units_sold\": 10}, {\"product\": \"Widget\", \"month\": \"2026-02\", \"units_sold\": 15}, {\"product\": \"Gadget\", \"month\": \"2026-01\", \"units_sold\": 5}, {\"product\": \"Gadget\", \"month\": \"2026-03\", \"units_sold\": 8}]","output_data_sample":"[{\"product\": \"Widget\", \"2026-01\": 10, \"2026-02\": 15, \"2026-03\": 0}, {\"product\": \"Gadget\", \"2026-01\": 5, \"2026-02\": 0, \"2026-03\": 8}]","transformation_instruction":"Pivot a JSON array of {product, month, units_sold} records into a wide table with one row per product and one column per month (sorted chronologically), filling missing month/product combinations with 0."} {"id":"cmsv74vi201ang4p2sz8ngxy6","kind":"contributor_item","title":"Submission 8NGXY6","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n rows = json.loads(text)\n latest = {}\n for r in rows:\n key = (r[\"customer_id\"], r[\"product_sku\"])\n ts = datetime.fromisoformat(r[\"updated_at\"].replace(\"Z\", \"+00:00\"))\n if key not in latest or ts > latest[key][0]:\n latest[key] = (ts, r)\n result = [r for _, r in sorted(latest.values(), key=lambda x: (x[1][\"customer_id\"], x[1][\"product_sku\"]))]\n return json.dumps(result)\n","input_data_sample":"[{\"customer_id\": 1, \"product_sku\": \"A1\", \"status\": \"pending\", \"updated_at\": \"2026-01-01T10:00:00Z\"}, {\"customer_id\": 1, \"product_sku\": \"A1\", \"status\": \"shipped\", \"updated_at\": \"2026-01-03T10:00:00Z\"}, {\"customer_id\": 2, \"product_sku\": \"B2\", \"status\": \"pending\", \"updated_at\": \"2026-01-02T10:00:00Z\"}, {\"customer_id\": 1, \"product_sku\": \"A1\", \"status\": \"delivered\", \"updated_at\": \"2026-01-02T10:00:00Z\"}]","output_data_sample":"[{\"customer_id\": 1, \"product_sku\": \"A1\", \"status\": \"shipped\", \"updated_at\": \"2026-01-03T10:00:00Z\"}, {\"customer_id\": 2, \"product_sku\": \"B2\", \"status\": \"pending\", \"updated_at\": \"2026-01-02T10:00:00Z\"}]","transformation_instruction":"Deduplicate a JSON array of order-status update records using the composite key (customer_id, product_sku), keeping only the record with the most recent 'updated_at' timestamp for each key, and return the results sorted by customer_id then product_sku."} {"id":"cmsv75d6601ayg4p2rxcbgv67","kind":"contributor_item","title":"Submission CBGV67","provisional":false,"output_code":"import json\n\ndef transform(text):\n rows = json.loads(text)\n out = []\n for r in rows:\n migrated = {\n \"id\": r[\"user_id\"],\n \"profile\": {\n \"first_name\": r[\"first_name\"],\n \"last_name\": r[\"last_name\"],\n \"email\": r[\"email_address\"]\n },\n \"contact\": {\n \"phone\": r.get(\"phone_number\"),\n },\n \"meta\": {\n \"created\": r[\"signup_date\"]\n }\n }\n out.append(migrated)\n return json.dumps(out)\n","input_data_sample":"[{\"user_id\": 1, \"first_name\": \"Ana\", \"last_name\": \"Silva\", \"email_address\": \"ana@example.com\", \"phone_number\": \"555-1000\", \"signup_date\": \"2025-11-01\"}, {\"user_id\": 2, \"first_name\": \"Ben\", \"last_name\": \"Lee\", \"email_address\": \"ben@example.com\", \"phone_number\": null, \"signup_date\": \"2025-12-15\"}]","output_data_sample":"[{\"id\": 1, \"profile\": {\"first_name\": \"Ana\", \"last_name\": \"Silva\", \"email\": \"ana@example.com\"}, \"contact\": {\"phone\": \"555-1000\"}, \"meta\": {\"created\": \"2025-11-01\"}}, {\"id\": 2, \"profile\": {\"first_name\": \"Ben\", \"last_name\": \"Lee\", \"email\": \"ben@example.com\"}, \"contact\": {\"phone\": null}, \"meta\": {\"created\": \"2025-12-15\"}}]","transformation_instruction":"Migrate a flat legacy user-record JSON schema into a nested schema grouping fields under 'profile', 'contact', and 'meta' objects, renaming id and email fields appropriately."} {"id":"cmsv75vxl01bag4p23lnpf07h","kind":"contributor_item","title":"Submission NPF07H","provisional":false,"output_code":"import json, csv, io\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l.strip()]\n records = [json.loads(l) for l in lines]\n fieldnames = []\n for r in records:\n for k in r.keys():\n if k not in fieldnames:\n fieldnames.append(k)\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=fieldnames)\n writer.writeheader()\n for r in records:\n writer.writerow(r)\n return out.getvalue().strip()\n","input_data_sample":"{\"id\": 1, \"name\": \"Alpha\", \"score\": 88}\n{\"id\": 2, \"name\": \"Beta\", \"score\": 92}\n{\"id\": 3, \"name\": \"Gamma\", \"score\": 79}","output_data_sample":"id,name,score\r\n1,Alpha,88\r\n2,Beta,92\r\n3,Gamma,79","transformation_instruction":"Convert newline-delimited JSON (JSON Lines) records into a CSV string with a header row derived from the union of all keys in first-seen order."} {"id":"cmsv76ahq01blg4p2h0c3uxgw","kind":"contributor_item","title":"Submission C3UXGW","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n formats = [\"%m/%d/%Y\", \"%d-%m-%Y\", \"%Y.%m.%d\", \"%B %d, %Y\"]\n out = []\n for line in lines:\n parsed = None\n for fmt in formats:\n try:\n parsed = datetime.strptime(line, fmt)\n break\n except ValueError:\n continue\n out.append(parsed.strftime(\"%Y-%m-%d\") if parsed else None)\n return json.dumps(out)\n","input_data_sample":"03/15/2026\n25-12-2025\n2026.01.09\nMarch 3, 2026\n","output_data_sample":"[\"2026-03-15\", \"2025-12-25\", \"2026-01-09\", \"2026-03-03\"]","transformation_instruction":"Parse a list of dates written in several different inconsistent formats (MM/DD/YYYY, DD-MM-YYYY, YYYY.MM.DD, and 'Month DD, YYYY') and normalize each to ISO 8601 'YYYY-MM-DD', returning null for any that fail to parse."} {"id":"cmsv76qy701bxg4p2smnenho8","kind":"contributor_item","title":"Submission NENHO8","provisional":false,"output_code":"import json, re\nfrom collections import Counter\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l.strip()]\n counts = Counter()\n for line in lines:\n m = re.search(r'\"\\w+ \\S+ HTTP/\\d\\.\\d\"\\s+(\\d{3})', line)\n if m:\n counts[m.group(1)] += 1\n return json.dumps(dict(sorted(counts.items())))\n","input_data_sample":"127.0.0.1 - - [10/Aug/2026:10:00:00] \"GET /index.html HTTP/1.1\" 200 512\n127.0.0.1 - - [10/Aug/2026:10:00:05] \"GET /missing HTTP/1.1\" 404 128\n127.0.0.1 - - [10/Aug/2026:10:00:07] \"POST /login HTTP/1.1\" 200 256\n127.0.0.1 - - [10/Aug/2026:10:00:09] \"GET /error HTTP/1.1\" 500 64\n","output_data_sample":"{\"200\": 2, \"404\": 1, \"500\": 1}","transformation_instruction":"Parse Apache-style access log lines and count occurrences of each HTTP status code, returning a JSON object mapping status code strings to counts sorted by code."} {"id":"cmsv777sa01c9g4p2npm8qdaw","kind":"contributor_item","title":"Submission M8QDAW","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n out = []\n for order in data:\n for item in order[\"items\"]:\n out.append({\n \"order_id\": order[\"order_id\"],\n \"customer\": order[\"customer\"],\n \"sku\": item[\"sku\"],\n \"qty\": item[\"qty\"],\n \"line_total\": round(item[\"qty\"] * item[\"unit_price\"], 2)\n })\n return json.dumps(out)\n","input_data_sample":"[{\"order_id\": \"O1\", \"customer\": \"Kai\", \"items\": [{\"sku\": \"X1\", \"qty\": 2, \"unit_price\": 5.5}, {\"sku\": \"X2\", \"qty\": 1, \"unit_price\": 12.0}]}, {\"order_id\": \"O2\", \"customer\": \"Mei\", \"items\": [{\"sku\": \"X3\", \"qty\": 3, \"unit_price\": 4.0}]}]","output_data_sample":"[{\"order_id\": \"O1\", \"customer\": \"Kai\", \"sku\": \"X1\", \"qty\": 2, \"line_total\": 11.0}, {\"order_id\": \"O1\", \"customer\": \"Kai\", \"sku\": \"X2\", \"qty\": 1, \"line_total\": 12.0}, {\"order_id\": \"O2\", \"customer\": \"Mei\", \"sku\": \"X3\", \"qty\": 3, \"line_total\": 12.0}]","transformation_instruction":"Explode a JSON array of orders, each containing a nested list of line items, into a flat JSON array of one row per line item including order_id, customer, sku, qty, and a computed line_total (qty * unit_price, rounded to 2 decimals)."} {"id":"cmsv77qiw01ckg4p2vawis9vk","kind":"contributor_item","title":"Submission WIS9VK","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n header = [h.strip().lower().replace(' ', '_') for h in next(reader)]\n out = []\n for row in reader:\n if not any(c.strip() for c in row):\n continue\n rec = {}\n for k, v in zip(header, row):\n v = v.strip().strip('\"').strip()\n if v == '' or v.upper() == 'N/A':\n rec[k] = None\n else:\n try:\n rec[k] = int(v)\n except ValueError:\n try:\n rec[k] = float(v)\n except ValueError:\n rec[k] = v\n out.append(rec)\n return json.dumps(out)\n","input_data_sample":" Full Name , Age , City \n\" Zara Khan \" , 29 , \" Lahore \"\nOmar Farooq, N/A ,Karachi\n,, \n","output_data_sample":"[{\"full_name\": \"Zara Khan\", \"age\": 29, \"city\": \"Lahore\"}, {\"full_name\": \"Omar Farooq\", \"age\": null, \"city\": \"Karachi\"}]","transformation_instruction":"Clean a messy CSV string with inconsistent whitespace, quoted fields, and 'N/A' placeholders: normalize header names to lowercase snake_case, trim and unquote values, convert 'N/A' and empty strings to null, coerce numeric strings to int/float, and drop fully blank rows."} {"id":"cmsv786es01cxg4p2jcv48jd1","kind":"contributor_item","title":"Submission V48JD1","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n rows = json.loads(text)\n weighted = defaultdict(lambda: [0.0, 0.0])\n for r in rows:\n weighted[r[\"course\"]][0] += r[\"grade\"] * r[\"credits\"]\n weighted[r[\"course\"]][1] += r[\"credits\"]\n result = {course: round(total / weight, 2) for course, (total, weight) in weighted.items()}\n return json.dumps(result, sort_keys=True)\n","input_data_sample":"[{\"course\": \"Math\", \"grade\": 90, \"credits\": 3}, {\"course\": \"Math\", \"grade\": 80, \"credits\": 4}, {\"course\": \"Physics\", \"grade\": 70, \"credits\": 2}, {\"course\": \"Physics\", \"grade\": 95, \"credits\": 3}]","output_data_sample":"{\"Math\": 84.29, \"Physics\": 85.0}","transformation_instruction":"Compute the credit-weighted average grade per course from a JSON array of {course, grade, credits} records, returning a JSON object mapping course name to the rounded weighted average."} {"id":"cmsv78lrn01d8g4p2mt5nm3xk","kind":"contributor_item","title":"Submission 5NM3XK","provisional":false,"output_code":"import re, json\n\ndef transform(text):\n tags = re.findall(r'<(\\w+)([^>]*)>([^<]*)</\\1>', text)\n result = {}\n for name, attrs_str, value in tags:\n attrs = dict(re.findall(r'(\\w+)=\"([^\"]*)\"', attrs_str))\n entry = {\"value\": value.strip()}\n if attrs:\n entry[\"attributes\"] = attrs\n result[name] = entry\n return json.dumps(result, sort_keys=True)\n","input_data_sample":"<config><host port=\"8080\">localhost</host><timeout unit=\"ms\">3000</timeout><debug>true</debug></config>","output_data_sample":"{\"debug\": {\"value\": \"true\"}, \"host\": {\"attributes\": {\"port\": \"8080\"}, \"value\": \"localhost\"}, \"timeout\": {\"attributes\": {\"unit\": \"ms\"}, \"value\": \"3000\"}}","transformation_instruction":"Parse a simple single-line XML-like config string into a JSON object, extracting each top-level child tag's text value and any XML attributes it has, keyed by tag name."} {"id":"cmsv791cd01dig4p2yden9jp6","kind":"contributor_item","title":"Submission EN9JP6","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n id_field = reader.fieldnames[0]\n year_fields = reader.fieldnames[1:]\n out = []\n for row in reader:\n for year in year_fields:\n val = row[year].strip()\n if val == '':\n continue\n out.append({\n id_field: row[id_field],\n \"year\": year,\n \"value\": float(val) if '.' in val else int(val)\n })\n return json.dumps(out)\n","input_data_sample":"country,2023,2024,2025\nUSA,100,110,\nIndia,80,90,95\n","output_data_sample":"[{\"country\": \"USA\", \"year\": \"2023\", \"value\": 100}, {\"country\": \"USA\", \"year\": \"2024\", \"value\": 110}, {\"country\": \"India\", \"year\": \"2023\", \"value\": 80}, {\"country\": \"India\", \"year\": \"2024\", \"value\": 90}, {\"country\": \"India\", \"year\": \"2025\", \"value\": 95}]","transformation_instruction":"Reshape a wide CSV with an id column followed by multiple year columns into a long/tidy JSON array of {id_field, year, value} records, skipping any cells that are blank for a given year."} {"id":"cmsv79loh01dwg4p24sq2rm2r","kind":"contributor_item","title":"Submission Q2RM2R","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n rows = json.loads(text)\n rows = sorted(rows, key=lambda r: (r[\"user\"], r[\"ts\"]))\n sessions = []\n current = None\n GAP_MINUTES = 30\n for r in rows:\n ts = datetime.fromisoformat(r[\"ts\"])\n if current is None or current[\"user\"] != r[\"user\"] or (ts - current[\"last_ts\"]).total_seconds() > GAP_MINUTES * 60:\n if current:\n sessions.append({\"user\": current[\"user\"], \"start\": current[\"start\"], \"end\": current[\"last_ts\"].isoformat(), \"event_count\": current[\"count\"]})\n current = {\"user\": r[\"user\"], \"start\": r[\"ts\"], \"last_ts\": ts, \"count\": 1}\n else:\n current[\"last_ts\"] = ts\n current[\"count\"] += 1\n if current:\n sessions.append({\"user\": current[\"user\"], \"start\": current[\"start\"], \"end\": current[\"last_ts\"].isoformat(), \"event_count\": current[\"count\"]})\n return json.dumps(sessions)\n","input_data_sample":"[{\"user\": \"u1\", \"ts\": \"2026-05-01T09:00:00\"}, {\"user\": \"u1\", \"ts\": \"2026-05-01T09:10:00\"}, {\"user\": \"u1\", \"ts\": \"2026-05-01T10:00:00\"}, {\"user\": \"u2\", \"ts\": \"2026-05-01T09:05:00\"}, {\"user\": \"u1\", \"ts\": \"2026-05-01T10:05:00\"}]","output_data_sample":"[{\"user\": \"u1\", \"start\": \"2026-05-01T09:00:00\", \"end\": \"2026-05-01T09:10:00\", \"event_count\": 2}, {\"user\": \"u1\", \"start\": \"2026-05-01T10:00:00\", \"end\": \"2026-05-01T10:05:00\", \"event_count\": 2}, {\"user\": \"u2\", \"start\": \"2026-05-01T09:05:00\", \"end\": \"2026-05-01T09:05:00\", \"event_count\": 1}]","transformation_instruction":"Sessionize a JSON array of per-user timestamped events into sessions, starting a new session whenever the gap between consecutive events for the same user exceeds 30 minutes, and return each session's user, start time, end time, and event count."} {"id":"cmsv7a1w601e8g4p2pym4thii","kind":"contributor_item","title":"Submission M4THII","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n rows = json.loads(text)\n by_category = defaultdict(list)\n for r in rows:\n by_category[r[\"category\"]].append(r)\n result = []\n for category in sorted(by_category):\n top = sorted(by_category[category], key=lambda r: -r[\"sales\"])[:2]\n result.append({\"category\": category, \"top_products\": [{\"product\": p[\"product\"], \"sales\": p[\"sales\"]} for p in top]})\n return json.dumps(result)\n","input_data_sample":"[{\"category\": \"electronics\", \"product\": \"TV\", \"sales\": 500}, {\"category\": \"electronics\", \"product\": \"Phone\", \"sales\": 900}, {\"category\": \"electronics\", \"product\": \"Radio\", \"sales\": 100}, {\"category\": \"furniture\", \"product\": \"Chair\", \"sales\": 200}, {\"category\": \"furniture\", \"product\": \"Table\", \"sales\": 300}]","output_data_sample":"[{\"category\": \"electronics\", \"top_products\": [{\"product\": \"Phone\", \"sales\": 900}, {\"product\": \"TV\", \"sales\": 500}]}, {\"category\": \"furniture\", \"top_products\": [{\"product\": \"Table\", \"sales\": 300}, {\"product\": \"Chair\", \"sales\": 200}]}]","transformation_instruction":"Group a JSON array of {category, product, sales} records by category and return, for each category (sorted alphabetically), the top 2 products by sales in descending order."} {"id":"cmsv7ahlz01egg4p2ysec68y9","kind":"contributor_item","title":"Submission EC68Y9","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n out = []\n for line in lines:\n m = re.match(r'^([\\w\\s\\-]+):\\s*([\\d.]+)\\s*(kg|lb|g)$', line.strip())\n if not m:\n out.append({\"raw\": line, \"kg\": None})\n continue\n name, amount, unit = m.group(1).strip(), float(m.group(2)), m.group(3)\n if unit == 'kg':\n kg = amount\n elif unit == 'lb':\n kg = amount * 0.453592\n else:\n kg = amount / 1000\n out.append({\"item\": name, \"kg\": round(kg, 3)})\n return json.dumps(out)\n","input_data_sample":"Flour: 2 kg\nSugar: 4.4 lb\nSalt: 500 g\nBadline\n","output_data_sample":"[{\"item\": \"Flour\", \"kg\": 2.0}, {\"item\": \"Sugar\", \"kg\": 1.996}, {\"item\": \"Salt\", \"kg\": 0.5}, {\"raw\": \"Badline\", \"kg\": null}]","transformation_instruction":"Normalize a list of 'item: amount unit' strings with mixed weight units (kg, lb, g) into a JSON array converting every amount to kilograms (rounded to 3 decimals), marking unparseable lines with a null kg value."} {"id":"cmsv7ayxh01eng4p2yyftp46o","kind":"contributor_item","title":"Submission FTP46O","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n pairs = json.loads(text)\n children = defaultdict(list)\n all_nodes = set()\n child_nodes = set()\n for p in pairs:\n children[p[\"parent\"]].append(p[\"child\"])\n all_nodes.add(p[\"parent\"])\n all_nodes.add(p[\"child\"])\n child_nodes.add(p[\"child\"])\n roots = sorted(all_nodes - child_nodes)\n\n depth = {}\n def assign_depth(node, d):\n depth[node] = d\n for c in sorted(children.get(node, [])):\n assign_depth(c, d + 1)\n\n for r in roots:\n assign_depth(r, 0)\n\n result = [{\"node\": n, \"depth\": depth[n]} for n in sorted(depth)]\n return json.dumps(result)\n","input_data_sample":"[{\"parent\": \"CEO\", \"child\": \"VP_Eng\"}, {\"parent\": \"CEO\", \"child\": \"VP_Sales\"}, {\"parent\": \"VP_Eng\", \"child\": \"Manager_A\"}, {\"parent\": \"Manager_A\", \"child\": \"Dev1\"}, {\"parent\": \"VP_Sales\", \"child\": \"Manager_B\"}]","output_data_sample":"[{\"node\": \"CEO\", \"depth\": 0}, {\"node\": \"Dev1\", \"depth\": 3}, {\"node\": \"Manager_A\", \"depth\": 2}, {\"node\": \"Manager_B\", \"depth\": 2}, {\"node\": \"VP_Eng\", \"depth\": 1}, {\"node\": \"VP_Sales\", \"depth\": 1}]","transformation_instruction":"Build a tree from a JSON array of {parent, child} pairs and compute the depth of every node from its root (nodes that never appear as a child are roots at depth 0), returning a JSON array of {node, depth} sorted by node name."} {"id":"cmsv7bg7q01evg4p2qwqf1ahp","kind":"contributor_item","title":"Submission QF1AHP","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n rows = json.loads(text)\n rows = sorted(rows, key=lambda r: (r[\"account\"], r[\"date\"]))\n running = defaultdict(float)\n out = []\n for r in rows:\n running[r[\"account\"]] += r[\"amount\"]\n out.append({\n \"account\": r[\"account\"],\n \"date\": r[\"date\"],\n \"amount\": r[\"amount\"],\n \"running_total\": round(running[r[\"account\"]], 2)\n })\n return json.dumps(out)\n","input_data_sample":"[{\"account\": \"acc1\", \"date\": \"2026-02-01\", \"amount\": 100.0}, {\"account\": \"acc2\", \"date\": \"2026-02-01\", \"amount\": 50.0}, {\"account\": \"acc1\", \"date\": \"2026-02-03\", \"amount\": -30.5}, {\"account\": \"acc2\", \"date\": \"2026-02-05\", \"amount\": 20.0}, {\"account\": \"acc1\", \"date\": \"2026-02-04\", \"amount\": 15.25}]","output_data_sample":"[{\"account\": \"acc1\", \"date\": \"2026-02-01\", \"amount\": 100.0, \"running_total\": 100.0}, {\"account\": \"acc1\", \"date\": \"2026-02-03\", \"amount\": -30.5, \"running_total\": 69.5}, {\"account\": \"acc1\", \"date\": \"2026-02-04\", \"amount\": 15.25, \"running_total\": 84.75}, {\"account\": \"acc2\", \"date\": \"2026-02-01\", \"amount\": 50.0, \"running_total\": 50.0}, {\"account\": \"acc2\", \"date\": \"2026-02-05\", \"amount\": 20.0, \"running_total\": 70.0}]","transformation_instruction":"Compute a running cumulative total of 'amount' per account over time from a JSON array of dated transactions (sorted by account then date), returning each transaction annotated with its running_total rounded to 2 decimals."} {"id":"cmsv88bdo01ggg4p2zodak850","kind":"contributor_item","title":"Submission DAK850","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n headers = data[\"headers\"]\n rows = data[\"rows\"]\n # transpose: each original column becomes a row, prefixed by its header\n transposed = []\n for col_idx, header in enumerate(headers):\n row = [header] + [r[col_idx] for r in rows]\n transposed.append(row)\n return json.dumps({\"headers\": [\"field\"] + [f\"row{i+1}\" for i in range(len(rows))], \"rows\": transposed})\n","input_data_sample":"{\"headers\": [\"name\", \"age\", \"city\"], \"rows\": [[\"Alice\", 30, \"NYC\"], [\"Bob\", 25, \"LA\"], [\"Cara\", 35, \"SF\"]]}","output_data_sample":"{\"headers\": [\"field\", \"row1\", \"row2\", \"row3\"], \"rows\": [[\"name\", \"Alice\", \"Bob\", \"Cara\"], [\"age\", 30, 25, 35], [\"city\", \"NYC\", \"LA\", \"SF\"]]}","transformation_instruction":"Transpose a table given as JSON with 'headers' and 'rows' (list of row arrays) so each original column becomes a row. Output JSON with new 'headers' (['field', 'row1', 'row2', ...]) and 'rows' where each row starts with the original column header followed by that column's values in order."} {"id":"cmsv88x3d01gjg4p2gzmqymcg","kind":"contributor_item","title":"Submission MQYMCG","provisional":false,"output_code":"import json\nfrom datetime import datetime, timedelta\n\ndef transform(text):\n records = json.loads(text)\n # bucket timestamps into hourly buckets, average the value in each bucket\n buckets = {}\n for r in records:\n ts = datetime.fromisoformat(r[\"ts\"].replace(\"Z\", \"+00:00\"))\n bucket_key = ts.strftime(\"%Y-%m-%dT%H:00:00Z\")\n buckets.setdefault(bucket_key, []).append(r[\"value\"])\n\n if not buckets:\n return json.dumps([])\n\n sorted_keys = sorted(buckets.keys())\n start = datetime.fromisoformat(sorted_keys[0].replace(\"Z\", \"+00:00\"))\n end = datetime.fromisoformat(sorted_keys[-1].replace(\"Z\", \"+00:00\"))\n\n result = []\n last_avg = None\n cur = start\n while cur <= end:\n key = cur.strftime(\"%Y-%m-%dT%H:00:00Z\")\n if key in buckets:\n vals = buckets[key]\n avg = round(sum(vals) / len(vals), 2)\n last_avg = avg\n filled = False\n else:\n avg = last_avg\n filled = True\n result.append({\"hour\": key, \"avg_value\": avg, \"filled\": filled})\n cur += timedelta(hours=1)\n return json.dumps(result)\n","input_data_sample":"[{\"ts\": \"2026-05-01T08:05:00Z\", \"value\": 10}, {\"ts\": \"2026-05-01T08:40:00Z\", \"value\": 20}, {\"ts\": \"2026-05-01T10:15:00Z\", \"value\": 5}, {\"ts\": \"2026-05-01T11:00:00Z\", \"value\": 7}, {\"ts\": \"2026-05-01T11:50:00Z\", \"value\": 9}]","output_data_sample":"[{\"hour\": \"2026-05-01T08:00:00Z\", \"avg_value\": 15.0, \"filled\": false}, {\"hour\": \"2026-05-01T09:00:00Z\", \"avg_value\": 15.0, \"filled\": true}, {\"hour\": \"2026-05-01T10:00:00Z\", \"avg_value\": 5.0, \"filled\": false}, {\"hour\": \"2026-05-01T11:00:00Z\", \"avg_value\": 8.0, \"filled\": false}]","transformation_instruction":"Given a JSON list of {\"ts\": ISO8601 timestamp, \"value\": number} records, resample into hourly buckets from the earliest to the latest hour present, averaging values within each hour (rounded to 2 decimals). For hours with no records, forward-fill the last known average and mark 'filled': true; hours with real data get 'filled': false. Return a JSON list of {\"hour\", \"avg_value\", \"filled\"} in chronological order."} {"id":"cmsv89dsx01gmg4p2w5bi5rof","kind":"contributor_item","title":"Submission BI5ROF","provisional":false,"output_code":"import json\n\ndef transform(text):\n tree = json.loads(text)\n\n def rollup(node):\n if \"children\" not in node or not node[\"children\"]:\n node[\"total\"] = node.get(\"value\", 0)\n return node[\"total\"]\n total = node.get(\"value\", 0)\n for child in node[\"children\"]:\n total += rollup(child)\n node[\"total\"] = total\n return total\n\n rollup(tree)\n return json.dumps(tree)\n","input_data_sample":"{\"name\": \"root\", \"value\": 0, \"children\": [{\"name\": \"A\", \"value\": 5, \"children\": [{\"name\": \"A1\", \"value\": 3}, {\"name\": \"A2\", \"value\": 4}]}, {\"name\": \"B\", \"value\": 2, \"children\": [{\"name\": \"B1\", \"value\": 10}]}]}","output_data_sample":"{\"name\": \"root\", \"value\": 0, \"children\": [{\"name\": \"A\", \"value\": 5, \"children\": [{\"name\": \"A1\", \"value\": 3, \"total\": 3}, {\"name\": \"A2\", \"value\": 4, \"total\": 4}], \"total\": 12}, {\"name\": \"B\", \"value\": 2, \"children\": [{\"name\": \"B1\", \"value\": 10, \"total\": 10}], \"total\": 12}], \"total\": 24}","transformation_instruction":"Given a JSON tree where each node has 'name', 'value', and optional 'children' (list of nodes), compute a 'total' field on every node equal to its own 'value' plus the recursive sum of all descendant 'value' fields (a hierarchical rollup). Return the tree as JSON with the added 'total' fields, preserving all original fields and structure."} {"id":"cmsv89v6301gpg4p250ql61qo","kind":"contributor_item","title":"Submission QL61QO","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n payload = json.loads(text)\n template = payload[\"template\"]\n data = payload[\"data\"]\n\n pattern = re.compile(r\"\\{\\{\\s*([\\w.]+)\\s*(?:\\|\\s*([^}]*?)\\s*)?\\}\\}\")\n\n def resolve(path):\n cur = data\n for part in path.split(\".\"):\n if isinstance(cur, dict) and part in cur and cur[part] not in (None, \"\"):\n cur = cur[part]\n else:\n return None\n return cur\n\n def repl(m):\n path = m.group(1)\n default = m.group(2)\n val = resolve(path)\n if val is None:\n return default if default is not None else \"\"\n return str(val)\n\n return pattern.sub(repl, template)\n","input_data_sample":"{\"template\": \"Hello {{name|Guest}}, your order #{{order.id}} ships to {{order.city|Unknown City}}. Balance: {{account.balance|0}}\", \"data\": {\"name\": \"Priya\", \"order\": {\"id\": \"A1029\", \"city\": \"\"}, \"account\": {}}}","output_data_sample":"Hello Priya, your order #A1029 ships to Unknown City. Balance: 0","transformation_instruction":"Given a JSON object with a 'template' string containing placeholders of the form {{field.path}} or {{field.path|default}}, and a 'data' object, render the template by substituting each placeholder with the value found by following the dotted path in data. If the path resolves to a missing key or an empty string, use the placeholder's default text instead (or empty string if no default given). Return the rendered plain-text string."} {"id":"cmsv8afc801gsg4p2bhfbweis","kind":"contributor_item","title":"Submission FBWEIS","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n values = [d[\"value\"] for d in data]\n sorted_vals = sorted(values)\n n = len(sorted_vals)\n\n def percentile(p):\n idx = p * (n - 1)\n lo = int(idx)\n hi = min(lo + 1, n - 1)\n frac = idx - lo\n return sorted_vals[lo] + (sorted_vals[hi] - sorted_vals[lo]) * frac\n\n q1 = percentile(0.25)\n q3 = percentile(0.75)\n iqr = q3 - q1\n lower = q1 - 1.5 * iqr\n upper = q3 + 1.5 * iqr\n\n kept, removed = [], []\n for d in data:\n if lower <= d[\"value\"] <= upper:\n kept.append(d)\n else:\n removed.append(d)\n\n return json.dumps({\n \"q1\": round(q1, 2), \"q3\": round(q3, 2), \"iqr\": round(iqr, 2),\n \"lower_bound\": round(lower, 2), \"upper_bound\": round(upper, 2),\n \"kept\": kept, \"removed\": removed\n })\n","input_data_sample":"[{\"id\": 1, \"value\": 12}, {\"id\": 2, \"value\": 14}, {\"id\": 3, \"value\": 15}, {\"id\": 4, \"value\": 13}, {\"id\": 5, \"value\": 200}, {\"id\": 6, \"value\": 16}, {\"id\": 7, \"value\": 11}, {\"id\": 8, \"value\": -50}]","output_data_sample":"{\"q1\": 11.75, \"q3\": 15.25, \"iqr\": 3.5, \"lower_bound\": 6.5, \"upper_bound\": 20.5, \"kept\": [{\"id\": 1, \"value\": 12}, {\"id\": 2, \"value\": 14}, {\"id\": 3, \"value\": 15}, {\"id\": 4, \"value\": 13}, {\"id\": 6, \"value\": 16}, {\"id\": 7, \"value\": 11}], \"removed\": [{\"id\": 5, \"value\": 200}, {\"id\": 8, \"value\": -50}]}","transformation_instruction":"Given a JSON list of {\"id\", \"value\"} records, detect outliers using the IQR method (linear-interpolation quartiles): compute Q1, Q3, IQR = Q3-Q1, and bounds [Q1-1.5*IQR, Q3+1.5*IQR]. Return a JSON object with 'q1', 'q3', 'iqr', 'lower_bound', 'upper_bound' (each rounded to 2 decimals), 'kept' (records within bounds, original order preserved), and 'removed' (records outside bounds, original order preserved)."} {"id":"cmsv8awvc01gvg4p244mzdze2","kind":"contributor_item","title":"Submission MZDZE2","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n triples = data[\"entries\"]\n n_rows = data[\"rows\"]\n n_cols = data[\"cols\"]\n dense = [[0 for _ in range(n_cols)] for _ in range(n_rows)]\n for e in triples:\n dense[e[\"row\"]][e[\"col\"]] = e[\"value\"]\n return json.dumps(dense)\n","input_data_sample":"{\"rows\": 3, \"cols\": 4, \"entries\": [{\"row\": 0, \"col\": 1, \"value\": 5}, {\"row\": 1, \"col\": 3, \"value\": 7}, {\"row\": 2, \"col\": 0, \"value\": 9}, {\"row\": 0, \"col\": 3, \"value\": 2}]}","output_data_sample":"[[0, 5, 0, 2], [0, 0, 0, 7], [9, 0, 0, 0]]","transformation_instruction":"Given a JSON object with 'rows', 'cols' (dense matrix dimensions) and 'entries' (a sparse list of {\"row\", \"col\", \"value\"} triples), build the dense matrix as a 2D JSON array of size rows x cols, filling unspecified cells with 0 and placing each entry's value at its [row][col] position."} {"id":"cmsv8bf0201gzg4p2f16u3pus","kind":"contributor_item","title":"Submission 6U3PUS","provisional":false,"output_code":"import json, csv, io\n\ndef transform(text):\n data = json.loads(text)\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow([\"source\", \"target\", \"weight\"])\n for node, edges in data.items():\n for edge in edges:\n if isinstance(edge, dict):\n writer.writerow([node, edge[\"to\"], edge[\"weight\"]])\n else:\n writer.writerow([node, edge, 1])\n return out.getvalue().strip()\n","input_data_sample":"{\"A\": [{\"to\": \"B\", \"weight\": 4}, {\"to\": \"C\", \"weight\": 2}], \"B\": [{\"to\": \"C\", \"weight\": 5}], \"C\": []}","output_data_sample":"source,target,weight\r\nA,B,4\r\nA,C,2\r\nB,C,5","transformation_instruction":"Given a JSON adjacency-list graph where each key is a node name mapped to a list of edges (each edge either an object {\"to\", \"weight\"} or a plain node-name string implying weight 1), convert it into a CSV edge list with header 'source,target,weight', one row per edge in the order nodes and their edges appear in the input."} {"id":"cmsv8cag401h3g4p2nht7qn1w","kind":"contributor_item","title":"Submission T7QN1W","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n rates = data[\"rates\"] # to USD\n txns = data[\"transactions\"]\n out = []\n grand_total = 0.0\n for t in txns:\n currency = t[\"currency\"]\n amount = t[\"amount\"]\n if currency not in rates:\n out.append({**t, \"usd_amount\": None, \"error\": f\"unknown currency {currency}\"})\n continue\n usd = round(amount * rates[currency], 2)\n grand_total += usd\n out.append({**t, \"usd_amount\": usd})\n return json.dumps({\"transactions\": out, \"grand_total_usd\": round(grand_total, 2)})\n","input_data_sample":"{\"rates\": {\"EUR\": 1.08, \"GBP\": 1.27, \"USD\": 1.0, \"JPY\": 0.0067}, \"transactions\": [{\"id\": \"t1\", \"amount\": 100, \"currency\": \"EUR\"}, {\"id\": \"t2\", \"amount\": 50, \"currency\": \"GBP\"}, {\"id\": \"t3\", \"amount\": 200, \"currency\": \"USD\"}, {\"id\": \"t4\", \"amount\": 1000, \"currency\": \"JPY\"}, {\"id\": \"t5\", \"amount\": 75, \"currency\": \"CHF\"}]}","output_data_sample":"{\"transactions\": [{\"id\": \"t1\", \"amount\": 100, \"currency\": \"EUR\", \"usd_amount\": 108.0}, {\"id\": \"t2\", \"amount\": 50, \"currency\": \"GBP\", \"usd_amount\": 63.5}, {\"id\": \"t3\", \"amount\": 200, \"currency\": \"USD\", \"usd_amount\": 200.0}, {\"id\": \"t4\", \"amount\": 1000, \"currency\": \"JPY\", \"usd_amount\": 6.7}, {\"id\": \"t5\", \"amount\": 75, \"currency\": \"CHF\", \"usd_amount\": null, \"error\": \"unknown currency CHF\"}], \"grand_total_usd\": 378.2}","transformation_instruction":"Given a JSON object with 'rates' (currency code -> USD conversion rate) and 'transactions' (list of {\"id\", \"amount\", \"currency\"}), convert each transaction's amount to USD (rounded to 2 decimals) using the rate table. If a transaction's currency isn't in the rate table, set its usd_amount to null and add an 'error' field describing the unknown currency, and exclude it from the grand total. Return JSON with 'transactions' (each augmented with usd_amount and optional error) and 'grand_total_usd' (sum of all valid usd_amount values, rounded to 2 decimals)."} {"id":"cmsv8dno601h7g4p2fmnr5314","kind":"contributor_item","title":"Submission NR5314","provisional":false,"output_code":"import json, re\nfrom collections import Counter\n\ndef transform(text):\n stopwords = {\"the\", \"a\", \"an\", \"and\", \"or\", \"of\", \"to\", \"in\", \"is\", \"it\", \"on\"}\n words = re.findall(r\"[a-zA-Z']+\", text.lower())\n filtered = [w for w in words if w not in stopwords]\n counts = Counter(filtered)\n top = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))\n return json.dumps({\"total_tokens\": len(filtered), \"unique_tokens\": len(counts), \"frequencies\": top})\n","input_data_sample":"The quick brown fox jumps over the lazy dog. The dog barks, and the fox runs to the woods in the night.","output_data_sample":"{\"total_tokens\": 13, \"unique_tokens\": 11, \"frequencies\": [[\"dog\", 2], [\"fox\", 2], [\"barks\", 1], [\"brown\", 1], [\"jumps\", 1], [\"lazy\", 1], [\"night\", 1], [\"over\", 1], [\"quick\", 1], [\"runs\", 1], [\"woods\", 1]]}","transformation_instruction":"Given a raw text passage, tokenize it into lowercase alphabetic word tokens (stripping punctuation), remove a fixed stopword list (the, a, an, and, or, of, to, in, is, it, on), and build a frequency table. Return JSON with 'total_tokens' (count after stopword removal), 'unique_tokens' (distinct word count), and 'frequencies' (list of [word, count] pairs sorted by count descending then alphabetically ascending)."} {"id":"cmsv8eux901hcg4p261kwffg0","kind":"contributor_item","title":"Submission KWFFG0","provisional":false,"output_code":"import json\n\ndef transform(text):\n payload = json.loads(text)\n schema = payload[\"schema\"] # field -> type (\"int\",\"float\",\"bool\",\"str\")\n records = payload[\"records\"]\n\n def coerce(value, typ):\n if value is None:\n return None, False\n try:\n if typ == \"int\":\n return int(str(value).strip()), True\n if typ == \"float\":\n return float(str(value).strip()), True\n if typ == \"bool\":\n s = str(value).strip().lower()\n if s in (\"true\", \"1\", \"yes\"):\n return True, True\n if s in (\"false\", \"0\", \"no\"):\n return False, True\n return value, False\n if typ == \"str\":\n return str(value), True\n except (ValueError, TypeError):\n return value, False\n return value, False\n\n out = []\n for rec in records:\n coerced = {}\n errors = []\n for field, typ in schema.items():\n if field not in rec:\n errors.append(f\"missing:{field}\")\n continue\n val, ok = coerce(rec[field], typ)\n coerced[field] = val\n if not ok:\n errors.append(f\"invalid:{field}\")\n out.append({\"record\": coerced, \"valid\": len(errors) == 0, \"errors\": errors})\n return json.dumps(out)\n","input_data_sample":"{\"schema\": {\"id\": \"int\", \"price\": \"float\", \"active\": \"bool\", \"name\": \"str\"}, \"records\": [{\"id\": \"12\", \"price\": \"9.99\", \"active\": \"yes\", \"name\": \"Widget\"}, {\"id\": \"abc\", \"price\": \"5.5\", \"active\": \"true\", \"name\": 42}, {\"id\": \"3\", \"price\": \"7.25\", \"active\": \"maybe\"}]}","output_data_sample":"[{\"record\": {\"id\": 12, \"price\": 9.99, \"active\": true, \"name\": \"Widget\"}, \"valid\": true, \"errors\": []}, {\"record\": {\"id\": \"abc\", \"price\": 5.5, \"active\": true, \"name\": \"42\"}, \"valid\": false, \"errors\": [\"invalid:id\"]}, {\"record\": {\"id\": 3, \"price\": 7.25, \"active\": \"maybe\"}, \"valid\": false, \"errors\": [\"invalid:active\", \"missing:name\"]}]","transformation_instruction":"Given a JSON object with a 'schema' (field name -> one of \"int\",\"float\",\"bool\",\"str\") and 'records' (list of objects with possibly wrong-typed string values), coerce each field's value to the declared type. Bool coercion accepts case-insensitive true/1/yes as true and false/0/no as false. If a field is missing from a record, or coercion fails, or a bool value isn't recognized, record an error string (\"missing:<field>\" or \"invalid:<field>\") instead of failing. Return a JSON list of {\"record\": coerced fields present, \"valid\": true if no errors, \"errors\": list of error strings} in input order."} {"id":"cmsv8g3y301hhg4p2fsp2kwwj","kind":"contributor_item","title":"Submission P2KWWJ","provisional":false,"output_code":"import json\n\ndef transform(text):\n intervals = json.loads(text)\n intervals = sorted(intervals, key=lambda iv: iv[\"start\"])\n merged = []\n for iv in intervals:\n if merged and iv[\"start\"] <= merged[-1][\"end\"]:\n merged[-1][\"end\"] = max(merged[-1][\"end\"], iv[\"end\"])\n merged[-1][\"merged_from\"].append(iv.get(\"label\", \"\"))\n else:\n merged.append({\"start\": iv[\"start\"], \"end\": iv[\"end\"], \"merged_from\": [iv.get(\"label\", \"\")]})\n return json.dumps(merged)\n","input_data_sample":"[{\"start\": 1, \"end\": 3, \"label\": \"a\"}, {\"start\": 2, \"end\": 6, \"label\": \"b\"}, {\"start\": 8, \"end\": 10, \"label\": \"c\"}, {\"start\": 15, \"end\": 18, \"label\": \"d\"}, {\"start\": 9, \"end\": 12, \"label\": \"e\"}]","output_data_sample":"[{\"start\": 1, \"end\": 6, \"merged_from\": [\"a\", \"b\"]}, {\"start\": 8, \"end\": 12, \"merged_from\": [\"c\", \"e\"]}, {\"start\": 15, \"end\": 18, \"merged_from\": [\"d\"]}]","transformation_instruction":"Given a JSON list of intervals {\"start\", \"end\", \"label\"}, merge all overlapping or touching intervals (sorted by start) into a minimal set of non-overlapping intervals. Each merged interval must include 'start', 'end' (the union bounds) and 'merged_from' (list of the original labels combined into it, in the order they were merged). Return the merged intervals as a JSON list sorted by start."} {"id":"cmsv8hdur01hmg4p28ver6uo2","kind":"contributor_item","title":"Submission ER6UO2","provisional":false,"output_code":"import json, csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n rows = list(reader)\n categorical_col = \"color\"\n categories = sorted({r[categorical_col] for r in rows})\n other_cols = [c for c in reader.fieldnames if c != categorical_col]\n\n out_fields = other_cols + [f\"{categorical_col}_{c}\" for c in categories]\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=out_fields)\n writer.writeheader()\n for r in rows:\n row_out = {c: r[c] for c in other_cols}\n for c in categories:\n row_out[f\"{categorical_col}_{c}\"] = 1 if r[categorical_col] == c else 0\n writer.writerow(row_out)\n return out.getvalue().strip()\n","input_data_sample":"id,color,price\n1,red,10\n2,blue,20\n3,green,15\n4,red,12\n","output_data_sample":"id,price,color_blue,color_green,color_red\r\n1,10,0,0,1\r\n2,20,1,0,0\r\n3,15,0,1,0\r\n4,12,0,0,1","transformation_instruction":"Given a CSV string with columns including a categorical 'color' column, one-hot encode the 'color' column into separate binary columns named 'color_<value>' (one per distinct category found, sorted alphabetically), placed after the other original columns in their original order (with 'color' itself removed). Return the resulting CSV string with header row."} {"id":"cmsv8icih01hqg4p22fcuac4l","kind":"contributor_item","title":"Submission CUAC4L","provisional":false,"output_code":"import json\n\ndef transform(text):\n values = json.loads(text)\n window = 3\n result = []\n for i in range(len(values)):\n lo = max(0, i - window + 1)\n window_vals = values[lo:i+1]\n avg = round(sum(window_vals) / len(window_vals), 3)\n result.append(avg)\n return json.dumps(result)\n","input_data_sample":"[10, 20, 30, 40, 50, 60]","output_data_sample":"[10.0, 15.0, 20.0, 30.0, 40.0, 50.0]","transformation_instruction":"Given a JSON list of numeric values, compute a trailing simple moving average with a window size of 3. For each position i, average the current value together with up to the previous 2 values (using a smaller partial window near the start of the list rather than padding). Return a JSON list of the moving averages (rounded to 3 decimals), same length as the input."} {"id":"cmsv8j43m01hug4p27xknwy92","kind":"contributor_item","title":"Submission KNWY92","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n records = json.loads(text)\n\n def mask_email(email):\n m = re.match(r\"^(.)([^@]*)(@.*)$\", email)\n if not m:\n return email\n first, rest, domain = m.groups()\n return f\"{first}{'*' * len(rest)}{domain}\"\n\n def mask_phone(phone):\n digits = re.sub(r\"\\D\", \"\", phone)\n if len(digits) < 4:\n return \"*\" * len(digits)\n masked = \"*\" * (len(digits) - 4) + digits[-4:]\n return masked\n\n out = []\n for r in records:\n out.append({\n \"name\": r[\"name\"],\n \"email\": mask_email(r[\"email\"]),\n \"phone\": mask_phone(r[\"phone\"])\n })\n return json.dumps(out)\n","input_data_sample":"[{\"name\": \"Alice\", \"email\": \"alice.j@example.com\", \"phone\": \"+1-415-555-2671\"}, {\"name\": \"Bob\", \"email\": \"bob@work.org\", \"phone\": \"555.123.9876\"}]","output_data_sample":"[{\"name\": \"Alice\", \"email\": \"a******@example.com\", \"phone\": \"*******2671\"}, {\"name\": \"Bob\", \"email\": \"b**@work.org\", \"phone\": \"******9876\"}]","transformation_instruction":"Given a JSON list of {\"name\", \"email\", \"phone\"} records, mask each email by keeping only the first character of the local part visible and replacing the rest of the local part with asterisks (domain unchanged), and mask each phone number by stripping non-digit characters and replacing all but the last 4 digits with asterisks. Return a JSON list of {\"name\", \"email\", \"phone\"} with the masked values."} {"id":"cmsv8jp9o01hyg4p272s96mgr","kind":"contributor_item","title":"Submission S96MGR","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n out = []\n max_depth = [0]\n\n def flatten(item, depth):\n max_depth[0] = max(max_depth[0], depth)\n if isinstance(item, list):\n for x in item:\n flatten(x, depth + 1)\n else:\n out.append({\"value\": item, \"depth\": depth})\n\n flatten(data, 0)\n return json.dumps({\"items\": out, \"max_depth\": max_depth[0]})\n","input_data_sample":"[1, [2, 3], [4, [5, 6, [7]]], 8]","output_data_sample":"{\"items\": [{\"value\": 1, \"depth\": 1}, {\"value\": 2, \"depth\": 2}, {\"value\": 3, \"depth\": 2}, {\"value\": 4, \"depth\": 2}, {\"value\": 5, \"depth\": 3}, {\"value\": 6, \"depth\": 3}, {\"value\": 7, \"depth\": 4}, {\"value\": 8, \"depth\": 1}], \"max_depth\": 4}","transformation_instruction":"Given a JSON value that is an arbitrarily nested list of numbers (lists inside lists inside lists), flatten it into a single sequence of {\"value\", \"depth\"} objects where 'depth' is the nesting level at which that number was found (top-level numbers directly in the outermost list have depth 1). Return JSON with 'items' (the flattened list in original left-to-right order) and 'max_depth' (the deepest nesting level reached, counting only the levels that contain at least one further nested list)."} {"id":"cmsv8k89y01i2g4p2jfazxnuv","kind":"contributor_item","title":"Submission AZXNUV","provisional":false,"output_code":"import json\n\ndef transform(text):\n seq = text.strip()\n if not seq:\n return json.dumps([])\n result = []\n count = 1\n prev = seq[0]\n for ch in seq[1:]:\n if ch == prev:\n count += 1\n else:\n result.append([prev, count])\n prev = ch\n count = 1\n result.append([prev, count])\n return json.dumps(result)\n","input_data_sample":"aaabbbcccaabb","output_data_sample":"[[\"a\", 3], [\"b\", 3], [\"c\", 3], [\"a\", 2], [\"b\", 2]]","transformation_instruction":"Given a raw string of characters, perform run-length encoding: return a JSON list of [character, count] pairs representing consecutive runs of identical characters in the order they appear in the string."} {"id":"cmsv8kqxl01i6g4p2xl0orxxg","kind":"contributor_item","title":"Submission 0ORXXG","provisional":false,"output_code":"import json\n\ndef transform(text):\n matrix = json.loads(text)\n rows = len(matrix)\n cols = len(matrix[0]) if rows else 0\n result = []\n for diag in range(rows + cols - 1):\n diag_elems = []\n r_start = max(0, diag - cols + 1)\n r_end = min(rows - 1, diag)\n for r in range(r_start, r_end + 1):\n c = diag - r\n diag_elems.append(matrix[r][c])\n if diag % 2 == 0:\n diag_elems.reverse()\n result.extend(diag_elems)\n return json.dumps(result)\n","input_data_sample":"[[1, 2, 3], [4, 5, 6], [7, 8, 9]]","output_data_sample":"[1, 2, 4, 7, 5, 3, 6, 8, 9]","transformation_instruction":"Given a JSON 2D matrix (list of equal-length row lists), produce its zigzag diagonal traversal order (as used for JPEG-style scans): traverse anti-diagonals in order, alternating the direction of each diagonal (even-indexed diagonals from bottom-left to top-right reversed to top-right-to-bottom-left order relative to standard, matching the classic zigzag pattern) so consecutive diagonals alternate direction. Return the traversal as a flat JSON list of the matrix values in visiting order."} {"id":"cmsv8lagw01i9g4p23c06k303","kind":"contributor_item","title":"Submission 06K303","provisional":false,"output_code":"import json\n\ndef transform(text):\n payload = json.loads(text)\n scores = payload[\"scores\"]\n bin_width = payload[\"bin_width\"]\n lo = payload.get(\"min\", min(scores))\n hi = payload.get(\"max\", max(scores))\n\n n_bins = int((hi - lo) // bin_width) + 1\n bins = [{\"range_start\": lo + i * bin_width, \"range_end\": lo + (i + 1) * bin_width, \"count\": 0} for i in range(n_bins)]\n\n for s in scores:\n idx = int((s - lo) // bin_width)\n if idx >= n_bins:\n idx = n_bins - 1\n if idx < 0:\n idx = 0\n bins[idx][\"count\"] += 1\n\n return json.dumps(bins)\n","input_data_sample":"{\"scores\": [55, 62, 71, 68, 90, 95, 100, 45, 73, 80, 61], \"bin_width\": 10, \"min\": 40, \"max\": 100}","output_data_sample":"[{\"range_start\": 40, \"range_end\": 50, \"count\": 1}, {\"range_start\": 50, \"range_end\": 60, \"count\": 1}, {\"range_start\": 60, \"range_end\": 70, \"count\": 3}, {\"range_start\": 70, \"range_end\": 80, \"count\": 2}, {\"range_start\": 80, \"range_end\": 90, \"count\": 1}, {\"range_start\": 90, \"range_end\": 100, \"count\": 2}, {\"range_start\": 100, \"range_end\": 110, \"count\": 1}]","transformation_instruction":"Given a JSON object with 'scores' (list of numbers), 'bin_width', and optional 'min'/'max' bounds (defaulting to the data's own min/max), bucket the scores into fixed-width bins starting at 'min' and covering at least up to 'max'. Values beyond the highest bin's range are clamped into the last bin. Return a JSON list of bins in ascending order, each {\"range_start\", \"range_end\", \"count\"}."} {"id":"cmsv8lvef01icg4p28x1kblzk","kind":"contributor_item","title":"Submission 1KBLZK","provisional":false,"output_code":"import json\nfrom datetime import date\n\ndef transform(text):\n data = json.loads(text)\n users = data[\"users\"]\n\n cohorts = {}\n for u in users:\n signup = u[\"signup_date\"]\n cohorts.setdefault(signup, {\"users\": [], \"count\": 0})\n cohorts[signup][\"users\"].append(u)\n cohorts[signup][\"count\"] += 1\n\n def week_offset(signup_str, activity_str):\n sy, sm, sd = map(int, signup_str.split(\"-\"))\n ay, am, ad = map(int, activity_str.split(\"-\"))\n delta = (date(ay, am, ad) - date(sy, sm, sd)).days\n return delta // 7\n\n result = []\n for signup, group in sorted(cohorts.items()):\n total = group[\"count\"]\n week_counts = {}\n for u in group[\"users\"]:\n weeks_active = {week_offset(signup, a) for a in u[\"active_dates\"]}\n for w in weeks_active:\n week_counts[w] = week_counts.get(w, 0) + 1\n max_week = max(week_counts.keys(), default=0)\n retention = []\n for w in range(max_week + 1):\n active = week_counts.get(w, 0)\n retention.append({\"week\": w, \"active_users\": active, \"retention_pct\": round(active / total * 100, 1)})\n result.append({\"cohort\": signup, \"cohort_size\": total, \"retention\": retention})\n\n return json.dumps(result)\n","input_data_sample":"{\"users\": [{\"id\": \"u1\", \"signup_date\": \"2026-01-01\", \"active_dates\": [\"2026-01-02\", \"2026-01-10\", \"2026-01-20\"]}, {\"id\": \"u2\", \"signup_date\": \"2026-01-01\", \"active_dates\": [\"2026-01-03\"]}, {\"id\": \"u3\", \"signup_date\": \"2026-01-01\", \"active_dates\": [\"2026-01-02\", \"2026-01-09\"]}]}","output_data_sample":"[{\"cohort\": \"2026-01-01\", \"cohort_size\": 3, \"retention\": [{\"week\": 0, \"active_users\": 3, \"retention_pct\": 100.0}, {\"week\": 1, \"active_users\": 2, \"retention_pct\": 66.7}, {\"week\": 2, \"active_users\": 1, \"retention_pct\": 33.3}]}]","transformation_instruction":"Given a JSON object with 'users' (each having 'signup_date' YYYY-MM-DD and 'active_dates' a list of YYYY-MM-DD activity dates), group users into cohorts by signup_date, and for each cohort compute weekly retention: for week offset w (0, 1, 2, ...), the count and percentage of that cohort's users who had at least one activity date falling in that week-since-signup bucket (integer division of days-since-signup by 7). Return a JSON list of cohorts sorted by signup_date, each {\"cohort\", \"cohort_size\", \"retention\": [{\"week\", \"active_users\", \"retention_pct\"}, ...]} covering week 0 through the maximum observed week offset."} {"id":"cmsv8mic601igg4p2qgaprmgb","kind":"contributor_item","title":"Submission APRMGB","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n current_section = None\n for raw_line in text.strip().split(\"\\n\"):\n line = raw_line.strip()\n if not line or line.startswith(\";\") or line.startswith(\"#\"):\n continue\n if line.startswith(\"[\") and line.endswith(\"]\"):\n current_section = line[1:-1].strip()\n result.setdefault(current_section, {})\n continue\n if \"=\" in line and current_section is not None:\n key, _, value = line.partition(\"=\")\n key = key.strip()\n value = value.strip()\n if value.lower() in (\"true\", \"false\"):\n parsed_value = value.lower() == \"true\"\n else:\n try:\n parsed_value = int(value)\n except ValueError:\n try:\n parsed_value = float(value)\n except ValueError:\n parsed_value = value\n result[current_section][key] = parsed_value\n return json.dumps(result)\n","input_data_sample":"; global config\n[server]\nhost = localhost\nport = 8080\ndebug = true\n\n[database]\nname = mydb\ntimeout = 30.5\nssl = false\n","output_data_sample":"{\"server\": {\"host\": \"localhost\", \"port\": 8080, \"debug\": true}, \"database\": {\"name\": \"mydb\", \"timeout\": 30.5, \"ssl\": false}}","transformation_instruction":"Given a plain-text INI-style config string with [section] headers, key = value lines, and comment lines starting with ';' or '#', parse it into a nested JSON object mapping each section name to an object of its key/value pairs. Coerce values: 'true'/'false' (case-insensitive) become booleans, values parseable as integers become ints, values parseable as floats become floats, otherwise the value stays a string."} {"id":"cmsv9q98m01kig4p2fpkjyebw","kind":"contributor_item","title":"Submission KJYEBW","provisional":false,"output_code":"def transform(text):\n tokens = []\n buf = []\n in_quotes = False\n in_comment = False\n\n def flush():\n if buf:\n tokens.append(''.join(buf))\n del buf[:]\n\n for ch in text:\n if in_comment:\n if ch == '\\n':\n in_comment = False\n continue\n if in_quotes:\n buf.append(ch)\n if ch == '\"':\n in_quotes = False\n continue\n if ch == '#':\n in_comment = True\n continue\n if ch == '\"':\n buf.append(ch)\n in_quotes = True\n continue\n if ch in '{};':\n flush()\n tokens.append(ch)\n continue\n if ch.isspace():\n flush()\n continue\n buf.append(ch)\n flush()\n\n stack = []\n pending = []\n lines = []\n for tok in tokens:\n if tok == ';':\n if pending:\n name = pending[0]\n args = pending[1:]\n path = '/'.join(stack + [name])\n arg_text = ' '.join(args) if args else '(none)'\n lines.append('%s = %s' % (path, arg_text))\n pending = []\n elif tok == '{':\n if len(pending) == 1:\n label = pending[0]\n elif pending:\n label = pending[0] + '[' + ' '.join(pending[1:]) + ']'\n else:\n label = '(anon)'\n stack.append(label)\n pending = []\n elif tok == '}':\n pending = []\n if stack:\n stack.pop()\n else:\n pending.append(tok)\n return '\\n'.join(lines)\n","input_data_sample":"worker_processes auto;\n\nevents {\n worker_connections 1024;\n}\n\nhttp {\n sendfile on; # push files fast\n gzip on;\n server {\n listen 443 ssl;\n server_name shop.example.com;\n location /api/ {\n proxy_pass http://backend;\n proxy_set_header Host $host;\n }\n location = /healthz { return 200 \"ok\"; }\n }\n server {\n listen 80;\n server_name shop.example.com;\n return 301 https://$host$request_uri;\n }\n}\n","output_data_sample":"worker_processes = auto\nevents/worker_connections = 1024\nhttp/sendfile = on\nhttp/gzip = on\nhttp/server/listen = 443 ssl\nhttp/server/server_name = shop.example.com\nhttp/server/location[/api/]/proxy_pass = http://backend\nhttp/server/location[/api/]/proxy_set_header = Host $host\nhttp/server/location[= /healthz]/return = 200 \"ok\"\nhttp/server/listen = 80\nhttp/server/server_name = shop.example.com\nhttp/server/return = 301 https://$host$request_uri","transformation_instruction":"Flatten an nginx-style configuration file into one line per simple directive.\n\nLexing rules:\n1. A '#' starts a comment that runs to end of line, EXCEPT when the '#' is inside a double-quoted string.\n Comments are removed before anything else.\n2. The three structural characters are '{', '}' and ';'. Outside double quotes they terminate the token\n being accumulated. Inside double quotes they are ordinary characters. Newlines behave as whitespace.\n3. Whitespace runs separate tokens. A directive is the token sequence accumulated up to a ';' (a simple\n directive) or up to a '{' (a block header, which pushes a context).\n4. A block header's context label is its first token when the header has exactly one token, otherwise the\n first token followed by '[' + the remaining tokens joined by a single space + ']'. So 'http' labels as\n 'http', 'location /api/' as 'location[/api/]' and 'location = /healthz' as 'location[= /healthz]'.\n A '}' pops the innermost context.\n\nOutput: one line per SIMPLE directive (block headers themselves are not emitted), in file order, formatted\n '<path> = <args>'\nwhere <path> is the '/'-joined chain of enclosing context labels followed by the directive name (a\ntop-level directive has no prefix, so its path is just its name), and <args> is the remaining tokens\njoined by a single space, or the literal '(none)' when the directive has no arguments. Multiple internal\nspaces in the source collapse to one. Quoted arguments keep their surrounding double quotes verbatim.\n\nA directive that appears more than once is emitted once per occurrence, in order; no deduplication.\nJoin lines with '\\n'; no trailing newline and no trailing whitespace on any line."} {"id":"cmsv9q98m01kjg4p23azakamx","kind":"contributor_item","title":"Submission ZAKAMX","provisional":false,"output_code":"import re\n\nHEADER = re.compile(r'^([a-z]+)(?:\\(([^()]*)\\))?(!)?: +(.*)$')\nTYPE_SECTION = {\n 'feat': 'Features',\n 'fix': 'Bug Fixes',\n 'perf': 'Performance',\n 'refactor': 'Refactoring',\n 'docs': 'Documentation',\n}\nORDER = ['BREAKING CHANGES', 'Features', 'Bug Fixes', 'Performance',\n 'Refactoring', 'Documentation', 'Other']\n\n\ndef transform(text):\n sections = {name: [] for name in ORDER}\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line:\n continue\n parts = line.split(' ', 1)\n if len(parts) != 2:\n continue\n sha, subject = parts[0], parts[1].strip()\n if subject.startswith('Merge '):\n continue\n short = sha[:7]\n match = HEADER.match(subject)\n if not match:\n sections['Other'].append(('', subject, short))\n continue\n ctype, scope, bang, desc = match.groups()\n scope = scope or ''\n desc = desc.strip()\n entry = (scope, desc, short)\n if bang:\n sections['BREAKING CHANGES'].append(entry)\n target = TYPE_SECTION.get(ctype)\n if target:\n sections[target].append(entry)\n\n blocks = []\n for name in ORDER:\n entries = sections[name]\n if not entries:\n continue\n block = ['## ' + name]\n for scope, desc, short in entries:\n if scope:\n block.append('- **%s**: %s (%s)' % (scope, desc, short))\n else:\n block.append('- %s (%s)' % (desc, short))\n blocks.append('\\n'.join(block))\n return '\\n\\n'.join(blocks)\n","input_data_sample":"9f2a1c4 feat(auth): add device-code login flow\n1b7de90 fix(api): return 422 instead of 500 on bad cursor\nc04ea11 chore: bump ruff to 0.6.2\n77bb213 feat(api)!: drop the deprecated /v1/search endpoint\naa10f5e docs(readme): clarify install steps\n3ce9b02 fix: guard against empty upload manifests\n5d8c447 refactor(core): extract retry policy helper\ne11a0b6 Merge pull request #482 from acme/release-2\n6620fd1 feat(billing): support annual invoicing\n0af3311 fix(api): stop double-counting retried jobs\nbd5c778 wip poking at the scheduler\n","output_data_sample":"## BREAKING CHANGES\n- **api**: drop the deprecated /v1/search endpoint (77bb213)\n\n## Features\n- **auth**: add device-code login flow (9f2a1c4)\n- **api**: drop the deprecated /v1/search endpoint (77bb213)\n- **billing**: support annual invoicing (6620fd1)\n\n## Bug Fixes\n- **api**: return 422 instead of 500 on bad cursor (1b7de90)\n- guard against empty upload manifests (3ce9b02)\n- **api**: stop double-counting retried jobs (0af3311)\n\n## Refactoring\n- **core**: extract retry policy helper (5d8c447)\n\n## Documentation\n- **readme**: clarify install steps (aa10f5e)\n\n## Other\n- wip poking at the scheduler (bd5c778)","transformation_instruction":"Turn `git log --oneline` output into grouped release notes.\n\nEach input line is '<sha> <subject>'. Split on the first space; the sha is the first field.\n\nClassify each subject against the Conventional Commits header grammar\n type[(scope)][!]: description\nwhere type is one or more lowercase ASCII letters, scope (optional) is the text inside parentheses, the\noptional '!' marks a breaking change, and ': ' (colon plus at least one space) separates the header from\nthe description. A subject that does not match this grammar is NOT conventional.\n\nHandling:\n- A subject starting with 'Merge ' is dropped entirely, whether or not it parses.\n- Non-conventional, non-merge subjects go into a section titled 'Other'.\n- Recognised types map to sections: feat -> 'Features', fix -> 'Bug Fixes', perf -> 'Performance',\n refactor -> 'Refactoring', docs -> 'Documentation'. Any other conventional type (chore, test, build, ...)\n is dropped entirely.\n- A commit with '!' before the colon additionally appears in a 'BREAKING CHANGES' section, and it also\n still appears in its normal type section.\n\nSection order is fixed: 'BREAKING CHANGES', 'Features', 'Bug Fixes', 'Performance', 'Refactoring',\n'Documentation', 'Other'. A section with no entries is omitted entirely.\n\nEach section renders as a header line '## <Section>' followed by one bullet per commit, in the original\nfile order, formatted '- **<scope>**: <description> (<sha7>)' when a scope is present, or\n'- <description> (<sha7>)' when it is not. <sha7> is the first 7 characters of the sha. For 'Other'\nentries the whole subject is used as the description and there is never a scope. Descriptions are stripped\nof surrounding whitespace. Sections are separated by exactly one blank line.\n\nJoin with '\\n'; no trailing newline and no trailing whitespace on any line."} {"id":"cmsv9q98m01khg4p2zqo2gjmr","kind":"contributor_item","title":"Submission O2GJMR","provisional":false,"output_code":"def transform(text):\n groups = []\n current_agents = None\n current_rules = None\n expecting_agents = False\n\n for raw in text.split('\\n'):\n line = raw.split('#', 1)[0].strip()\n if not line or ':' not in line:\n continue\n field, value = line.split(':', 1)\n field = field.strip().lower()\n value = value.strip()\n if field == 'user-agent':\n if not expecting_agents:\n current_agents = []\n current_rules = []\n groups.append((current_agents, current_rules))\n expecting_agents = True\n current_agents.append(value.lower())\n elif field in ('allow', 'disallow', 'crawl-delay'):\n if current_rules is None:\n continue\n expecting_agents = False\n current_rules.append((field, value))\n\n agent_order = []\n per_agent = {}\n for agents, rules in groups:\n for agent in agents:\n if agent not in per_agent:\n per_agent[agent] = []\n agent_order.append(agent)\n per_agent[agent].extend(rules)\n\n lines = []\n for agent in sorted(per_agent):\n allow = []\n disallow = []\n delay = None\n for field, value in per_agent[agent]:\n if field == 'crawl-delay':\n if value:\n delay = value\n elif not value:\n continue\n elif field == 'allow':\n if value not in allow:\n allow.append(value)\n else:\n if value not in disallow:\n disallow.append(value)\n allow_text = ','.join(sorted(allow)) if allow else 'none'\n disallow_text = ','.join(sorted(disallow)) if disallow else 'none'\n delay_text = '-' if delay is None else '%.1f' % float(delay)\n lines.append('%s | allow=%s | disallow=%s | delay=%s' % (\n agent, allow_text, disallow_text, delay_text))\n return '\\n'.join(lines)\n","input_data_sample":"# Acme storefront robots policy\nUser-agent: *\nDisallow: /cart\nDisallow: /checkout/\nAllow: /checkout/help\nCrawl-delay: 10\n\nUser-agent: GoogleBot\nuser-agent: bingbot\nDisallow:\nAllow: /\n\nUser-agent: BadBot\nDisallow: /\nCrawl-delay: 3.5\n\nSitemap: https://example.com/sitemap.xml\n","output_data_sample":"* | allow=/checkout/help | disallow=/cart,/checkout/ | delay=10.0\nbadbot | allow=none | disallow=/ | delay=3.5\nbingbot | allow=/ | disallow=none | delay=-\ngooglebot | allow=/ | disallow=none | delay=-","transformation_instruction":"Parse a robots.txt file into a per-user-agent report.\n\nRules:\n1. Strip everything from the first '#' on each line, then strip surrounding whitespace. Drop empty lines.\n2. Each remaining line is 'field: value' split on the first ':'. Field names are matched case-insensitively\n and lowercased. Values keep their original case but are stripped of surrounding whitespace.\n3. A group is one or more consecutive 'user-agent' lines followed by its rule lines. A 'user-agent' line\n that directly follows another 'user-agent' line joins the same group; a 'user-agent' line that follows\n a rule line starts a new group. Blank lines do not end a group.\n4. Agent tokens are compared and reported lowercased. If the same agent token appears in more than one\n group, merge the rules of those groups in file order.\n5. Relevant rule fields are 'allow', 'disallow' and 'crawl-delay'. Any other field (for example 'sitemap')\n is ignored and never starts or belongs to a group.\n6. A 'disallow' with an empty value means 'nothing is disallowed' and is discarded rather than recorded.\n An 'allow' with an empty value is discarded the same way.\n7. Within one agent, duplicate paths within the same field are removed keeping the first occurrence;\n the surviving paths are then reported sorted ascending by ordinary Python string comparison.\n8. crawl-delay is reported as the LAST value seen for that agent, printed with exactly one decimal place;\n if the agent has no crawl-delay, print '-'.\n\nOutput: one line per agent, ordered by agent token ascending (ordinary Python string comparison), formatted\n '<agent> | allow=<paths> | disallow=<paths> | delay=<value>'\nwhere <paths> is the sorted paths joined by ',' or the literal 'none' when the list is empty.\nJoin lines with '\\n'; no trailing newline, no trailing whitespace on any line."} {"id":"cmsv9q98m01kng4p2tm80ft83","kind":"contributor_item","title":"Submission 80FT83","provisional":false,"output_code":"import re\n\nTOKEN = re.compile(r'^([A-G])(#*|b*)(-?\\d+)$')\nBASE = {'C': 0, 'D': 2, 'E': 4, 'F': 5, 'G': 7, 'A': 9, 'B': 11}\n\n\ndef transform(text):\n out = []\n valid = invalid = out_of_range = 0\n for raw in text.split('\\n'):\n tokens = raw.split()\n if not tokens:\n continue\n parts = []\n for token in tokens:\n match = TOKEN.match(token)\n if not match:\n invalid += 1\n parts.append('%s=?' % token)\n continue\n letter, accidentals, octave = match.groups()\n offset = accidentals.count('#') - accidentals.count('b')\n number = (int(octave) + 1) * 12 + BASE[letter] + offset\n if number < 0 or number > 127:\n out_of_range += 1\n parts.append('%s=!' % token)\n else:\n valid += 1\n parts.append('%s=%d' % (token, number))\n out.append(' '.join(parts))\n out.append('valid=%d invalid=%d out_of_range=%d' % (valid, invalid, out_of_range))\n return '\\n'.join(out)\n","input_data_sample":"A4 C4 G#3 Bb5\nC-1 B8 Fb4 E#4\nCbb4 G##2\nH4 A 4b\nD9 A-2\n","output_data_sample":"A4=69 C4=60 G#3=56 Bb5=82\nC-1=0 B8=119 Fb4=64 E#4=65\nCbb4=58 G##2=45\nH4=? A=? 4b=?\nD9=122 A-2=!\nvalid=11 invalid=3 out_of_range=1","transformation_instruction":"Each non-empty input line holds whitespace-separated scientific-pitch note tokens. Convert each token to a\nMIDI note number.\n\nToken grammar: a letter A-G (uppercase only), then zero or more accidentals which must be all '#' or all\n'b' (mixing them is invalid), then an octave which is an optional '-' followed by one or more digits.\nAnything that does not match this exact grammar end-to-end is INVALID.\n\nValue: base semitones C=0, D=2, E=4, F=5, G=7, A=9, B=11. Each '#' adds 1, each 'b' subtracts 1.\nMIDI number = (octave + 1) * 12 + base + accidental offset. Note that this makes Fb4 = E4 and E#4 = F4,\nand double accidentals are legal.\n\nRange: a computed number outside 0..127 inclusive is OUT_OF_RANGE, even though the token parsed fine.\n\nOutput one line per input line, in order, containing the results for that line's tokens joined by ' '.\nEach result is formatted '<token>=<value>' where <value> is the MIDI number, or '<token>=?' for an\ninvalid token, or '<token>=!' for an out-of-range one. A line whose tokens are all whitespace produces no\noutput line at all.\n\nAfter the per-line block, append one summary line:\n 'valid=<v> invalid=<i> out_of_range=<o>'\ncounting tokens across the whole input. Join everything with '\\n'; no trailing newline and no trailing\nwhitespace on any line."} {"id":"cmsv9q98m01kkg4p2uxpnzdli","kind":"contributor_item","title":"Submission PNZDLI","provisional":false,"output_code":"import re\n\nTIMING = re.compile(\n r'^(\\d+):(\\d{2}):(\\d{2}),(\\d{3})\\s*-->\\s*(\\d+):(\\d{2}):(\\d{2}),(\\d{3})$')\nSHIFT_MS = 1500\n\n\ndef _fmt(ms):\n hours, rest = divmod(ms, 3600000)\n minutes, rest = divmod(rest, 60000)\n seconds, millis = divmod(rest, 1000)\n return '%02d:%02d:%02d,%03d' % (hours, minutes, seconds, millis)\n\n\ndef transform(text):\n lines = [line.rstrip() for line in text.replace('\\r\\n', '\\n').split('\\n')]\n blocks = []\n current = []\n for line in lines:\n if line == '':\n if current:\n blocks.append(current)\n current = []\n else:\n current.append(line)\n if current:\n blocks.append(current)\n\n cues = []\n for block in blocks:\n if len(block) < 2:\n continue\n match = TIMING.match(block[1].strip())\n if not match:\n continue\n index = int(block[0].strip())\n g = [int(x) for x in match.groups()]\n start = g[0] * 3600000 + g[1] * 60000 + g[2] * 1000 + g[3]\n end = g[4] * 3600000 + g[5] * 60000 + g[6] * 1000 + g[7]\n start = max(0, start - SHIFT_MS)\n end = max(0, end - SHIFT_MS)\n if start == 0 and end == 0:\n continue\n body = [t for t in (line.rstrip() for line in block[2:]) if t]\n cues.append((start, end, index, body))\n\n cues.sort(key=lambda c: (c[0], c[1], c[2]))\n\n out_blocks = []\n for number, (start, end, _index, body) in enumerate(cues, start=1):\n chunk = [str(number), '%s --> %s' % (_fmt(start), _fmt(end))]\n chunk.extend(body)\n out_blocks.append('\\n'.join(chunk))\n return '\\n\\n'.join(out_blocks)\n","input_data_sample":"1\n00:00:02,500 --> 00:00:05,000\nWelcome back to the workshop.\n\n2\n00:00:05,000 --> 00:00:07,250\nToday we are wiring the sensor board.\n\n3\n00:00:01,000 --> 00:00:03,750\n- Hold on.\n- I dropped a screw.\n\n4\n00:59:58,900 --> 01:00:02,100\nAnd that rolls us past the hour mark.\n","output_data_sample":"1\n00:00:00,000 --> 00:00:02,250\n- Hold on.\n- I dropped a screw.\n\n2\n00:00:01,000 --> 00:00:03,500\nWelcome back to the workshop.\n\n3\n00:00:03,500 --> 00:00:05,750\nToday we are wiring the sensor board.\n\n4\n00:59:57,400 --> 01:00:00,600\nAnd that rolls us past the hour mark.","transformation_instruction":"Shift every cue in an SRT subtitle file 1500 milliseconds EARLIER and re-emit valid SRT.\n\nInput blocks are separated by one or more blank lines. Each block is: an index line, a timing line\n'HH:MM:SS,mmm --> HH:MM:SS,mmm', then one or more text lines.\n\nRules:\n1. Convert both timestamps to milliseconds and subtract 1500.\n2. Clamp negatives to 0. If BOTH the shifted start and the shifted end clamp to 0 the cue is dropped\n entirely (it would have zero duration at the very start of the file).\n3. Cues are re-sorted by shifted start time ascending, then by shifted end time ascending, then by the\n cue's original index ascending.\n4. Surviving cues are renumbered from 1 in the new order.\n5. Timestamps are re-rendered zero-padded as 'HH:MM:SS,mmm' with HH at least two digits.\n6. Cue text lines are kept verbatim and in order, with trailing whitespace stripped from each line;\n text lines that become empty after stripping are removed.\n\nOutput: blocks joined by exactly one blank line, each block being the number line, the timing line, then\nthe text lines. No trailing newline and no trailing whitespace on any line."} {"id":"cmsv9q98m01klg4p2qloi2ed4","kind":"contributor_item","title":"Submission OI2ED4","provisional":false,"output_code":"import re\nfrom decimal import Decimal, ROUND_HALF_EVEN\n\nNUMBER = re.compile(r'-?\\d+(?:\\.\\d+)?')\nQUANT = Decimal('0.000001')\n\n\ndef _fmt(value):\n return str(value.quantize(QUANT, rounding=ROUND_HALF_EVEN))\n\n\ndef transform(text):\n lines = [line for line in text.split('\\n') if line.strip()]\n rows = []\n for line in lines[1:]:\n if ';' not in line:\n continue\n parcel_id, wkt = line.split(';', 1)\n parcel_id = parcel_id.strip()\n numbers = [Decimal(tok) for tok in NUMBER.findall(wkt)]\n pairs = [(numbers[i], numbers[i + 1])\n for i in range(0, len(numbers) - 1, 2)]\n if not pairs:\n rows.append('%s|EMPTY|EMPTY|EMPTY|EMPTY|%s'\n % (parcel_id, _fmt(Decimal('0'))))\n continue\n xs = [p[0] for p in pairs]\n ys = [p[1] for p in pairs]\n minx, maxx = min(xs), max(xs)\n miny, maxy = min(ys), max(ys)\n area = (maxx - minx) * (maxy - miny)\n rows.append('%s|%s|%s|%s|%s|%s' % (\n parcel_id, _fmt(minx), _fmt(miny), _fmt(maxx), _fmt(maxy), _fmt(area)))\n return '\\n'.join(rows)\n","input_data_sample":"parcel_id;geometry\nP-001;POLYGON ((-3.70379 40.41678, -3.70102 40.41681, -3.70098 40.41502, -3.70381 40.41499, -3.70379 40.41678))\nP-002;POLYGON ((12.4924 41.8902, 12.4951 41.8902, 12.4951 41.8886, 12.4924 41.8886, 12.4924 41.8902), (12.4930 41.8898, 12.4945 41.8898, 12.4945 41.8890, 12.4930 41.8890, 12.4930 41.8898))\nP-003;MULTIPOLYGON (((0 0, 0 2, 2 2, 2 0, 0 0)), ((5 5, 5 6, 6 6, 6 5, 5 5)))\nP-004;POINT (7.5 -1.25)\nP-005;POLYGON EMPTY\n","output_data_sample":"P-001|-3.703810|40.414990|-3.700980|40.416810|0.000005\nP-002|12.492400|41.888600|12.495100|41.890200|0.000004\nP-003|0.000000|0.000000|6.000000|6.000000|36.000000\nP-004|7.500000|-1.250000|7.500000|-1.250000|0.000000\nP-005|EMPTY|EMPTY|EMPTY|EMPTY|0.000000","transformation_instruction":"The input is a semicolon-delimited file with a header row 'parcel_id;geometry'. Each data row holds a WKT\ngeometry. Emit a bounding-box table.\n\nRules:\n1. Skip the header row and any blank line.\n2. Split each data row on the FIRST ';' only; the remainder is the WKT string.\n3. Extract every coordinate pair from the WKT by ignoring the geometry keyword and all parentheses and\n commas: read the numeric tokens in order and take them in pairs as (x, y). Numbers may be negative and\n may have a decimal part. Interior rings of a POLYGON and every part of a MULTIPOLYGON contribute their\n coordinates too (an interior ring is always inside the exterior ring, so this cannot change the box,\n but the parser must not choke on it).\n4. A geometry whose WKT contains no numeric token at all (for example 'POLYGON EMPTY') is EMPTY: emit the\n row with the literal 'EMPTY' in place of all four bounds and '0.000000' as the area.\n5. Otherwise the bounding box is minx, miny, maxx, maxy over all extracted coordinates. A single-point\n geometry yields a degenerate box where min equals max.\n6. Area is (maxx - minx) * (maxy - miny).\n\nFormatting: all five numbers are rendered with exactly 6 decimal places using round-half-even on the\nDecimal value (Python's default Decimal quantize rounding), computed from the exact decimal text so no\nbinary floating-point drift appears. Output one line per row, in input order:\n '<parcel_id>|<minx>|<miny>|<maxx>|<maxy>|<area>'\nJoin with '\\n'; no trailing newline, no trailing whitespace on any line."} {"id":"cmsv9q98m01kmg4p2ym9mc7bd","kind":"contributor_item","title":"Submission 9MC7BD","provisional":false,"output_code":"import re\n\nTOKEN = re.compile(r'([A-Z][a-z]{0,2})(\\d*)|([\\(\\[])|([\\)\\]])(\\d*)')\n\n\ndef _parse_segment(segment):\n coefficient = 1\n i = 0\n while i < len(segment) and segment[i].isdigit():\n i += 1\n if i:\n coefficient = int(segment[:i])\n segment = segment[i:]\n stack = [{}]\n pos = 0\n while pos < len(segment):\n match = TOKEN.match(segment, pos)\n if not match or match.end() == pos:\n pos += 1\n continue\n pos = match.end()\n symbol, mult, opening, closing, close_mult = match.groups()\n if symbol:\n count = int(mult) if mult else 1\n top = stack[-1]\n top[symbol] = top.get(symbol, 0) + count\n elif opening:\n stack.append({})\n elif closing:\n group = stack.pop()\n factor = int(close_mult) if close_mult else 1\n top = stack[-1]\n for element, count in group.items():\n top[element] = top.get(element, 0) + count * factor\n while len(stack) > 1:\n group = stack.pop()\n top = stack[-1]\n for element, count in group.items():\n top[element] = top.get(element, 0) + count\n return {el: n * coefficient for el, n in stack[0].items()}\n\n\ndef _hill_order(tally):\n keys = sorted(tally)\n if 'C' in tally:\n ordered = ['C']\n if 'H' in tally:\n ordered.append('H')\n ordered.extend(k for k in keys if k not in ('C', 'H'))\n return ordered\n return keys\n\n\ndef transform(text):\n lines = []\n for raw in text.split('\\n'):\n formula = raw.strip()\n if not formula:\n continue\n tally = {}\n for segment in formula.split('.'):\n for element, count in _parse_segment(segment).items():\n tally[element] = tally.get(element, 0) + count\n parts = ['%s%d' % (el, tally[el]) for el in _hill_order(tally)]\n total = sum(tally.values())\n lines.append('%s -> %s = %d atoms' % (formula, ', '.join(parts), total))\n return '\\n'.join(lines)\n","input_data_sample":"H2O\nCa(OH)2\nK4[Fe(CN)6]\nCuSO4.5H2O\nMg(NO3)2\nC6H5COOH\nAl2(SO4)3\n","output_data_sample":"H2O -> H2, O1 = 3 atoms\nCa(OH)2 -> Ca1, H2, O2 = 5 atoms\nK4[Fe(CN)6] -> C6, Fe1, K4, N6 = 17 atoms\nCuSO4.5H2O -> Cu1, H10, O9, S1 = 21 atoms\nMg(NO3)2 -> Mg1, N2, O6 = 9 atoms\nC6H5COOH -> C7, H6, O2 = 15 atoms\nAl2(SO4)3 -> Al2, O12, S3 = 17 atoms","transformation_instruction":"Each non-empty input line is a chemical formula. Produce the element tally for each.\n\nGrammar:\n- An element symbol is one uppercase ASCII letter optionally followed by one or two lowercase letters.\n- A symbol or a closing bracket may be followed by a multiplier: one or more digits. Absent means 1.\n- '(' ... ')' and '[' ... ']' are interchangeable grouping brackets and may nest to any depth. A group's\n multiplier multiplies every count inside it.\n- A '.' introduces a hydrate/adduct segment which may itself be preceded by a leading integer coefficient\n that multiplies EVERY element in that segment (for example 'CuSO4.5H2O' has a segment '5H2O' meaning\n 5 water molecules). A segment with no leading coefficient uses 1. The part before the first '.' is the\n first segment and never has a leading coefficient.\n\nCounts from all segments are summed into a single tally per formula.\n\nOutput: one line per input formula, in input order, formatted\n '<formula> -> <El><count>, <El><count>, ... = <total> atoms'\nElements are listed in Hill order: carbon first if present, then hydrogen if present (hydrogen only\nimmediately after carbon when carbon is present), then all remaining element symbols sorted ascending by\nordinary Python string comparison. When carbon is NOT present, every element including hydrogen is simply\nsorted ascending. The count is always printed even when it is 1. <total> is the sum of all counts.\nJoin with '\\n'; no trailing newline, no trailing whitespace on any line."} {"id":"cmsv9q98m01kog4p2gxiupov0","kind":"contributor_item","title":"Submission IUPOV0","provisional":false,"output_code":"from decimal import Decimal\n\nTYPE_RANK = {'CREDIT': 0, 'DEBIT': 1, 'FEE': 2}\n\n\nCENTS = Decimal('0.01')\n\n\ndef _money(value):\n return str(value.quantize(CENTS)).rjust(10)\n\n\ndef transform(text):\n lines = [line.strip() for line in text.split('\\n') if line.strip()]\n header = lines[0].split(',')\n balance = Decimal(header[2])\n opening = balance\n\n rows = []\n for index, line in enumerate(lines[1:]):\n parts = line.split(',')\n if len(parts) != 4:\n continue\n date, kind, desc, amount = parts\n rows.append((date, TYPE_RANK.get(kind, 99), index, desc, Decimal(amount)))\n\n rows.sort(key=lambda r: (r[0], r[1], r[2]))\n\n out = ['OPENING ' + _money(opening)]\n for date, _rank, _index, desc, amount in rows:\n balance = balance + amount\n line = '%s %s %s %s' % (date, desc[:22].ljust(22), _money(amount), _money(balance))\n if balance < 0:\n line += ' <OVERDRAWN'\n out.append(line)\n out.append('CLOSING ' + _money(balance))\n return '\\n'.join(out)\n","input_data_sample":"OPENING,2026-04-30,1420.55\n2026-05-03,DEBIT,Rent Housing Co,-950.00\n2026-05-02,CREDIT,Payroll ACME,2310.40\n2026-05-03,DEBIT,Grocery Mart,-73.19\n2026-05-03,FEE,Monthly service fee,-4.50\n2026-05-05,DEBIT,Utility Gas,-118.07\n2026-05-05,CREDIT,Refund Utility Gas,118.07\n2026-05-01,DEBIT,Coffee Kiosk,-6.25\n2026-05-06,DEBIT,Card payment,-2900.00\n2026-05-07,CREDIT,Invoice 8842 settlement,1240.00\n","output_data_sample":"OPENING 1420.55\n2026-05-01 Coffee Kiosk -6.25 1414.30\n2026-05-02 Payroll ACME 2310.40 3724.70\n2026-05-03 Rent Housing Co -950.00 2774.70\n2026-05-03 Grocery Mart -73.19 2701.51\n2026-05-03 Monthly service fee -4.50 2697.01\n2026-05-05 Refund Utility Gas 118.07 2815.08\n2026-05-05 Utility Gas -118.07 2697.01\n2026-05-06 Card payment -2900.00 -202.99 <OVERDRAWN\n2026-05-07 Invoice 8842 settlemen 1240.00 1037.01\nCLOSING 1037.01","transformation_instruction":"The first line is 'OPENING,<date>,<amount>' giving the opening balance. Every following non-empty line is\n'<date>,<type>,<description>,<amount>' with an ISO date, a type of CREDIT, DEBIT or FEE, a description\nthat never contains a comma, and a signed decimal amount with exactly two decimal places.\n\nProduce a running-balance statement:\n1. Sort transactions by date ascending; within the same date, CREDIT entries come before DEBIT entries and\n DEBIT before FEE; within the same date and type, keep the original input order (stable).\n2. Compute the running balance with decimal arithmetic (no binary floats): start at the opening balance\n and add each amount in the sorted order.\n3. Every monetary value is printed with exactly two decimal places, using '-' for negatives, and right\n aligned in a field of width 10.\n4. Descriptions are truncated to at most 22 characters (no ellipsis) and left aligned in a field of\n width 22.\n5. If the running balance is negative AFTER applying a transaction, append the marker ' <OVERDRAWN' to\n that line; otherwise append nothing (so the line must not end in spaces).\n\nLayout: a first line 'OPENING' + one space + the opening balance in the 10-wide field, then one line per\ntransaction formatted as '<date> <desc22> <amount10> <balance10>' with single spaces between fields, then\na final line 'CLOSING' + one space + the closing balance in the 10-wide field.\nJoin with '\\n'; no trailing newline and no trailing whitespace on any line except where the fixed-width\nfields require internal padding."} {"id":"cmsv9q98n01kug4p2irv21kam","kind":"contributor_item","title":"Submission V21KAM","provisional":false,"output_code":"import csv\nimport io\nfrom decimal import Decimal, ROUND_HALF_UP\n\nTENTH = Decimal('0.1')\n\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text))\n rows = [row for row in reader if row and any(cell.strip() for cell in row)]\n body = rows[1:]\n\n ranked = []\n excluded = []\n for row in body:\n name = row[0].strip()\n raw_score = row[1].strip() if len(row) > 1 else ''\n try:\n score = int(raw_score)\n except ValueError:\n excluded.append(name)\n continue\n ranked.append((name, score))\n\n total = len(ranked)\n scores = [s for _n, s in ranked]\n distinct = sorted(set(scores), reverse=True)\n rank_of = {}\n position = 1\n for value in distinct:\n rank_of[value] = position\n position += scores.count(value)\n\n lower_count = {}\n for value in distinct:\n lower_count[value] = sum(1 for s in scores if s < value)\n\n entries = []\n for name, score in ranked:\n if total:\n pct = (Decimal(lower_count[score]) / Decimal(total) * Decimal(100))\n else:\n pct = Decimal(0)\n pct = pct.quantize(TENTH, rounding=ROUND_HALF_UP)\n if pct >= Decimal(90):\n band = 'top'\n elif pct >= Decimal(75):\n band = 'high'\n elif pct >= Decimal(40):\n band = 'mid'\n else:\n band = 'low'\n entries.append((rank_of[score], name, score, pct, band))\n\n entries.sort(key=lambda e: (e[0], e[1]))\n\n lines = []\n for rank, name, score, pct, band in entries:\n lines.append('%d\\t%s\\t%d\\t%s\\t%s' % (rank, name, score, str(pct), band))\n lines.append('excluded: ' + (','.join(excluded) if excluded else 'none'))\n lines.append('ranked=%d distinct_scores=%d' % (total, len(distinct)))\n return '\\n'.join(lines)\n","input_data_sample":"student,score\nkim,88\nana,72\nraj,95\nlee,72\nmo,61\ntam,88\nbo,40\nwei,99\nivy,72\nsam,55\neve,\ngus,83\n","output_data_sample":"1\twei\t99\t90.9\ttop\n2\traj\t95\t81.8\thigh\n3\tkim\t88\t63.6\tmid\n3\ttam\t88\t63.6\tmid\n5\tgus\t83\t54.5\tmid\n6\tana\t72\t27.3\tlow\n6\tivy\t72\t27.3\tlow\n6\tlee\t72\t27.3\tlow\n9\tmo\t61\t18.2\tlow\n10\tsam\t55\t9.1\tlow\n11\tbo\t40\t0.0\tlow\nexcluded: eve\nranked=11 distinct_scores=8","transformation_instruction":"The input is CSV with header 'student,score'. Rank the students and assign percentile bands.\n\nRules:\n1. Rows whose score cell is empty or not an integer are EXCLUDED from ranking and from all statistics;\n they are reported separately at the end.\n2. Ranking uses competition ranking ('1224'): sort scores descending; equal scores share the smallest\n rank in their tie group, and the next distinct score's rank jumps past the whole group.\n3. The percentile of a student is defined as the fraction of ranked students with a score STRICTLY LOWER\n than theirs, times 100. Compute it as a Decimal and round to one decimal place with ROUND_HALF_UP.\n Tied students therefore share an identical percentile.\n4. Bands from the percentile p: p >= 90 -> 'top', 75 <= p < 90 -> 'high', 40 <= p < 75 -> 'mid',\n p < 40 -> 'low'. Comparisons use the ROUNDED percentile.\n5. Ranked output order: rank ascending, then student name ascending (ordinary Python string comparison)\n inside a tie group.\n\nOutput lines:\n - one line per ranked student: '<rank>\\t<student>\\t<score>\\t<percentile>\\t<band>' with the percentile\n printed with exactly one decimal place; fields are separated by single TAB characters.\n - then a line 'excluded: <names>' where <names> are the excluded students in input order joined by ',';\n print 'excluded: none' when there are none.\n - then a line 'ranked=<n> distinct_scores=<d>'.\nJoin with '\\n'; no trailing newline and no trailing whitespace on any line."} {"id":"cmsv9q98n01kvg4p2u0xrzdrl","kind":"contributor_item","title":"Submission XRZDRL","provisional":false,"output_code":"def transform(text):\n nodes = set()\n edges = set()\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line or line.startswith('#'):\n continue\n if '->' in line:\n left, right = line.split('->', 1)\n source, target = left.strip(), right.strip()\n nodes.add(source)\n nodes.add(target)\n edges.add((source, target))\n elif '--' in line:\n left, right = line.split('--', 1)\n source, target = left.strip(), right.strip()\n nodes.add(source)\n nodes.add(target)\n edges.add((source, target))\n edges.add((target, source))\n else:\n nodes.add(line)\n\n out_map = {node: set() for node in nodes}\n in_count = {node: 0 for node in nodes}\n for source, target in edges:\n out_map[source].add(target)\n in_count[target] += 1\n\n lines = []\n sinks = 0\n for node in sorted(nodes):\n targets = sorted(out_map[node])\n if not targets:\n sinks += 1\n target_text = ','.join(targets) if targets else '-'\n lines.append('%s out:%d in:%d -> %s'\n % (node, len(targets), in_count[node], target_text))\n selfloops = sum(1 for source, target in edges if source == target)\n lines.append('nodes=%d edges=%d selfloops=%d sinks=%d'\n % (len(nodes), len(edges), selfloops, sinks))\n return '\\n'.join(lines)\n","input_data_sample":"# service call graph\napi -> auth\napi -> billing\nauth -> cache\nbilling -> cache\napi -> auth\ncache -> cache\nreports -> billing\nauth -- session\norphan\nbilling -> Reports\n","output_data_sample":"Reports out:0 in:1 -> -\napi out:2 in:0 -> auth,billing\nauth out:2 in:2 -> cache,session\nbilling out:2 in:2 -> Reports,cache\ncache out:1 in:3 -> cache\norphan out:0 in:0 -> -\nreports out:1 in:0 -> billing\nsession out:1 in:1 -> auth\nnodes=8 edges=9 selfloops=1 sinks=2","transformation_instruction":"Build an adjacency report from a directed edge list.\n\nParsing:\n1. Lines are stripped; blank lines and lines starting with '#' are ignored.\n2. An edge line contains '->' (directed, left to right) or '--' (undirected). '->' is tested first, so a\n line containing both is treated as directed on its FIRST '->'. An undirected edge contributes BOTH\n directions.\n3. A line with neither separator declares an isolated node with that name.\n4. Node names are stripped and are case-sensitive, so 'Reports' and 'reports' are different nodes.\n5. Duplicate directed edges (same source and target) are collapsed to one. A self-loop (source equals\n target) is kept and counts once in the out-degree and once in the in-degree of that node.\n\nOutput: one line per node, for every node that appears anywhere (as a source, a target, or an isolated\ndeclaration), ordered by node name ascending using ordinary Python string comparison. Format:\n '<node> out:<n> in:<m> -> <targets>'\nwhere <n> and <m> are the out-degree and in-degree after collapsing duplicates and <targets> is the\nnode's distinct out-neighbours sorted ascending and joined by ',' or the literal '-' when there are none.\n\nAfter the node lines add a final line:\n 'nodes=<N> edges=<E> selfloops=<S> sinks=<K>'\nwhere E counts distinct directed edges, S counts distinct self-loops, and K counts nodes with out-degree\nzero. Join with '\\n'; no trailing newline and no trailing whitespace on any line."} {"id":"cmsv9q98n01ksg4p2y09ujgl1","kind":"contributor_item","title":"Submission 9UJGL1","provisional":false,"output_code":"import re\n\nUUID_RE = re.compile(r'^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$')\nNIL = '00000000-0000-0000-0000-000000000000'\nGROUP_ORDER = ['v1', 'v2', 'v3', 'v4', 'v5', 'v6', 'v7', 'v8',\n 'nil', 'non-rfc', 'unknown', 'invalid']\n\n\ndef _normalise(token):\n value = token.strip()\n if value.lower().startswith('urn:uuid:'):\n value = value[9:]\n if value.startswith('{') and value.endswith('}') and len(value) >= 2:\n value = value[1:-1]\n return value.lower()\n\n\ndef transform(text):\n groups = {name: [] for name in GROUP_ORDER}\n seen = set()\n for raw in text.split('\\n'):\n original = raw.strip()\n if not original:\n continue\n candidate = _normalise(original)\n if not UUID_RE.match(candidate):\n if original in seen:\n continue\n seen.add(original)\n groups['invalid'].append(original)\n continue\n if candidate in seen:\n continue\n seen.add(candidate)\n if candidate == NIL:\n groups['nil'].append(candidate)\n continue\n variant_digit = candidate.split('-')[3][0]\n if variant_digit not in '89ab':\n groups['non-rfc'].append(candidate)\n continue\n version_digit = candidate.split('-')[2][0]\n name = 'v' + version_digit if version_digit in '12345678' else 'unknown'\n groups[name].append(candidate)\n\n lines = []\n for name in GROUP_ORDER:\n members = groups[name]\n if not members:\n continue\n lines.append('%s: %d -> %s' % (name, len(members), ', '.join(members)))\n return '\\n'.join(lines)\n","input_data_sample":"6fa459ea-ee8a-3ca4-894e-db77e160355e\n886313e1-3b8a-5372-9b90-0c9aee199e5d\nF47AC10B-58CC-4372-A567-0E02B2C3D479\nurn:uuid:016e6cb2-0b17-7c1a-8e6b-2f4d9a1c7c33\n00000000-0000-0000-0000-000000000000\n{c232ab00-9414-11ec-b3c8-9f6bdeced846}\nnot-a-uuid-at-all\nf47ac10b-58cc-4372-a567-0e02b2c3d479\n12345678-1234-6234-c234-123456789abc\n","output_data_sample":"v1: 1 -> c232ab00-9414-11ec-b3c8-9f6bdeced846\nv3: 1 -> 6fa459ea-ee8a-3ca4-894e-db77e160355e\nv4: 1 -> f47ac10b-58cc-4372-a567-0e02b2c3d479\nv5: 1 -> 886313e1-3b8a-5372-9b90-0c9aee199e5d\nv7: 1 -> 016e6cb2-0b17-7c1a-8e6b-2f4d9a1c7c33\nnil: 1 -> 00000000-0000-0000-0000-000000000000\nnon-rfc: 1 -> 12345678-1234-6234-c234-123456789abc\ninvalid: 1 -> not-a-uuid-at-all","transformation_instruction":"Group a list of candidate UUID strings by RFC 9562 version.\n\nNormalisation before parsing: strip surrounding whitespace, remove a leading 'urn:uuid:' prefix\n(case-insensitive), and remove one pair of surrounding braces '{' '}' if present. Then lowercase.\nA token is a valid UUID only if what remains matches exactly 8-4-4-4-12 lowercase hexadecimal digits\nseparated by hyphens.\n\nClassification of a valid UUID:\n- The all-zero UUID is the Nil UUID and is classified as 'nil' regardless of its version nibble.\n- Otherwise the version is the first hex digit of the third group, and the variant is determined by the\n first hex digit of the fourth group: digits 8, 9, a or b mean the RFC 4122/9562 variant. A UUID whose\n variant digit is anything else is classified as 'non-rfc' no matter what its version nibble says.\n- An RFC-variant UUID with a version digit of 1-8 is classified as 'v<digit>'; any other version digit is\n classified as 'unknown'.\nInvalid tokens are classified as 'invalid' and reported by their ORIGINAL text, stripped of surrounding\nwhitespace only.\n\nDuplicates: two tokens that normalise to the same lowercase UUID count once; the first occurrence's\nnormalised form is kept. Invalid tokens are deduplicated on their stripped original text the same way.\n\nOutput: one line per non-empty group, groups ordered as v1, v2, v3, v4, v5, v6, v7, v8, nil, non-rfc,\nunknown, invalid. Each line is '<group>: <count> -> <members joined by ', '>' with members in first-seen\ninput order. Join with '\\n'; no trailing newline and no trailing whitespace on any line."} {"id":"cmsv9q98n01kyg4p2pogoknw0","kind":"contributor_item","title":"Submission GOKNW0","provisional":false,"output_code":"def _parse(line):\n if line.count('/') != 1:\n return None\n address, prefix_text = line.split('/')\n if not prefix_text.isdigit():\n return None\n prefix = int(prefix_text)\n if prefix > 32:\n return None\n parts = address.split('.')\n if len(parts) != 4:\n return None\n value = 0\n for part in parts:\n if not part.isdigit():\n return None\n octet = int(part)\n if octet > 255:\n return None\n value = (value << 8) | octet\n return value, prefix\n\n\ndef _dotted(value):\n return '%d.%d.%d.%d' % ((value >> 24) & 255, (value >> 16) & 255,\n (value >> 8) & 255, value & 255)\n\n\ndef transform(text):\n valid = []\n seen = set()\n invalid = []\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line:\n continue\n parsed = _parse(line)\n if parsed is None:\n invalid.append(line)\n continue\n value, prefix = parsed\n mask = 0 if prefix == 0 else ((1 << 32) - 1) ^ ((1 << (32 - prefix)) - 1)\n network = value & mask\n broadcast = network | (((1 << 32) - 1) ^ mask)\n key = (network, prefix)\n if key in seen:\n continue\n seen.add(key)\n total = 1 << (32 - prefix)\n if prefix == 32:\n usable = 1\n elif prefix == 31:\n usable = 2\n else:\n usable = total - 2\n valid.append((network, prefix, broadcast, total, usable))\n\n valid.sort(key=lambda entry: (entry[0], entry[1]))\n\n lines = []\n for network, prefix, broadcast, total, usable in valid:\n lines.append('%s/%d %s-%s total=%d usable=%d'\n % (_dotted(network), prefix, _dotted(network),\n _dotted(broadcast), total, usable))\n for line in invalid:\n lines.append('INVALID %s' % line)\n return '\\n'.join(lines)\n","input_data_sample":"10.0.0.0/24\n192.168.1.128/25\n172.16.5.7/32\n203.0.113.6/31\n10.0.0.0/8\n198.51.100.77/26\n0.0.0.0/0\n10.0.0.5/24\n256.1.1.1/24\n192.168.1.0/33\n","output_data_sample":"0.0.0.0/0 0.0.0.0-255.255.255.255 total=4294967296 usable=4294967294\n10.0.0.0/8 10.0.0.0-10.255.255.255 total=16777216 usable=16777214\n10.0.0.0/24 10.0.0.0-10.0.0.255 total=256 usable=254\n172.16.5.7/32 172.16.5.7-172.16.5.7 total=1 usable=1\n192.168.1.128/25 192.168.1.128-192.168.1.255 total=128 usable=126\n198.51.100.64/26 198.51.100.64-198.51.100.127 total=64 usable=62\n203.0.113.6/31 203.0.113.6-203.0.113.7 total=2 usable=2\nINVALID 256.1.1.1/24\nINVALID 192.168.1.0/33","transformation_instruction":"Each non-empty input line is a candidate IPv4 CIDR block 'A.B.C.D/P'. Produce a network table.\n\nValidation: the address must be four dot-separated decimal octets, each 0-255 with no leading '+'/'-' and\nno empty part; the prefix must be an integer 0-32. Anything else is INVALID.\n\nFor a valid entry:\n- network address = address AND netmask; broadcast address = network OR the inverted netmask\n- the canonical block is '<network>/<prefix>'; a host address such as 10.0.0.5/24 canonicalises to\n 10.0.0.0/24\n- total = 2 ** (32 - prefix)\n- usable host count: total - 2 for prefixes 0-30, but exactly 2 for a /31 (RFC 3021 point-to-point link)\n and exactly 1 for a /32 (single host)\n\nDeduplicate on the canonical block, keeping the FIRST occurrence's position. Do not merge or subtract\noverlapping blocks; a /8 that contains a /24 is reported independently.\n\nOrdering of valid rows: by network address as a 32-bit integer ascending, then by prefix ascending.\n\nOutput: one line per valid block\n '<network>/<prefix> <first>-<last> total=<t> usable=<u>'\nwhere <first> is the network address and <last> is the broadcast address, both dotted-quad. Then one line\nper invalid input, in input order, formatted 'INVALID <original line stripped>'. Join with '\\n'; no\ntrailing newline and no trailing whitespace on any line."} {"id":"cmsv9q98n01kzg4p2tn9hiqs7","kind":"contributor_item","title":"Submission 9HIQS7","provisional":false,"output_code":"import re\n\nMOVE_NUMBER = re.compile(r'^\\d+\\.+$')\nNAG = re.compile(r'^\\$\\d+$')\nRESULTS = ('1-0', '0-1', '1/2-1/2', '*')\nSUFFIXES = ('!!', '??', '!?', '?!', '!', '?')\n\n\ndef _strip_braces(text):\n out = []\n depth = 0\n for ch in text:\n if ch == '{':\n depth += 1\n continue\n if ch == '}':\n if depth:\n depth -= 1\n continue\n if depth == 0:\n out.append(ch)\n return ''.join(out)\n\n\ndef _strip_variations(text):\n out = []\n depth = 0\n for ch in text:\n if ch == '(':\n depth += 1\n continue\n if ch == ')':\n if depth:\n depth -= 1\n continue\n if depth == 0:\n out.append(ch)\n return ''.join(out)\n\n\ndef transform(text):\n body_lines = [line for line in text.split('\\n') if not line.strip().startswith('[')]\n body = ' '.join(body_lines)\n body = _strip_variations(_strip_braces(body))\n\n plies = []\n result = 'unknown'\n for token in body.split():\n if MOVE_NUMBER.match(token) or NAG.match(token):\n continue\n if token in RESULTS:\n result = token\n continue\n move = token\n annotation = ''\n for suffix in SUFFIXES:\n if move.endswith(suffix) and len(move) > len(suffix):\n annotation = suffix\n move = move[:-len(suffix)]\n break\n plies.append((move, annotation))\n\n lines = []\n for number, (move, annotation) in enumerate(plies, start=1):\n color = 'W' if number % 2 == 1 else 'B'\n extra = ' [%s]' % annotation if annotation else ''\n lines.append('%d. %s %s%s' % (number, color, move, extra))\n total = len(plies)\n lines.append('plies=%d moves=%d result=%s' % (total, (total + 1) // 2, result))\n return '\\n'.join(lines)\n","input_data_sample":"[Event \"Club Championship\"]\n[White \"Ortiz, M.\"]\n[Black \"Novak, P.\"]\n[Result \"1/2-1/2\"]\n\n1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 {the Morphy defence} 4. Ba4 Nf6\n5. O-O Be7 6. Re1 b5 7. Bb3 d6 8. c3 O-O 9. h3 Nb8!? 10. d4 Nbd7\n11. c4 c6 12. cxb5 axb5 13. Nc3 Bb7 $14 14. Bg5 b4 15. Nb1 h6\n16. Bh4 c5 17. dxe5 Nxe4 (17... dxe5 18. Nbd2) 18. Bxe7 Qxe7 1/2-1/2\n","output_data_sample":"1. W e4\n2. B e5\n3. W Nf3\n4. B Nc6\n5. W Bb5\n6. B a6\n7. W Ba4\n8. B Nf6\n9. W O-O\n10. B Be7\n11. W Re1\n12. B b5\n13. W Bb3\n14. B d6\n15. W c3\n16. B O-O\n17. W h3\n18. B Nb8 [!?]\n19. W d4\n20. B Nbd7\n21. W c4\n22. B c6\n23. W cxb5\n24. B axb5\n25. W Nc3\n26. B Bb7\n27. W Bg5\n28. B b4\n29. W Nb1\n30. B h6\n31. W Bh4\n32. B c5\n33. W dxe5\n34. B Nxe4\n35. W Bxe7\n36. B Qxe7\nplies=36 moves=18 result=1/2-1/2","transformation_instruction":"Convert PGN movetext into a numbered ply list.\n\nPreprocessing, in this order:\n1. Drop every tag-pair line, i.e. a stripped line starting with '['.\n2. Remove brace comments '{...}' (they do not nest in this input).\n3. Remove recursive variations delimited by '(' and ')', including everything inside; these MAY nest and\n must be removed by depth counting.\n4. Remove numeric annotation glyphs, i.e. tokens matching '$' followed by digits.\n5. Join the remaining text with spaces and tokenise on whitespace.\n\nThen drop move-number tokens (digits followed by one or more '.' characters, including black's '12...'\ncontinuation form) and the game-termination marker, which is one of '1-0', '0-1', '1/2-1/2' or '*'.\nWhat remains, in order, are the plies.\n\nSuffix annotations '!', '?', '!!', '??', '!?', '?!' attached to a move are stripped from the move but\nreported separately.\n\nOutput: one line per ply, formatted\n '<ply>. <color> <move><annotation>'\nwhere <ply> is a 1-based counter over all plies, <color> is 'W' for odd plies and 'B' for even ones, and\n<annotation> is the stripped suffix rendered as ' [' + suffix + ']' or the empty string when there was\nnone. Then append a final line\n 'plies=<n> moves=<m> result=<r>'\nwhere <m> is the number of full moves computed as ceil(n / 2) and <r> is the termination marker found, or\nthe literal 'unknown' when none was present. Join with '\\n'; no trailing newline and no trailing\nwhitespace on any line."} {"id":"cmsv9q98m01kgg4p28eod9u5v","kind":"contributor_item","title":"Submission OD9U5V","provisional":false,"output_code":"import datetime\n\n\ndef transform(text):\n raw_lines = text.split('\\n')\n unfolded = []\n for line in raw_lines:\n line = line.rstrip('\\r')\n if line[:1] in (' ', '\\t') and unfolded:\n unfolded[-1] += line[1:]\n else:\n unfolded.append(line)\n\n def unescape(value):\n out = []\n i = 0\n while i < len(value):\n ch = value[i]\n if ch == '\\\\' and i + 1 < len(value):\n nxt = value[i + 1]\n if nxt == ',':\n out.append(',')\n i += 2\n continue\n if nxt == ';':\n out.append(';')\n i += 2\n continue\n if nxt in ('n', 'N'):\n out.append(' ')\n i += 2\n continue\n out.append(ch)\n i += 1\n return ''.join(out)\n\n def parse_stamp(value):\n return datetime.datetime(\n int(value[0:4]), int(value[4:6]), int(value[6:8]),\n int(value[9:11]), int(value[11:13]), int(value[13:15]),\n )\n\n events = []\n current = None\n for line in unfolded:\n if line == 'BEGIN:VEVENT':\n current = {}\n continue\n if line == 'END:VEVENT':\n if current is not None:\n events.append(current)\n current = None\n continue\n if current is None or ':' not in line:\n continue\n name, value = line.split(':', 1)\n if name in ('DTSTART', 'DTEND', 'SUMMARY', 'LOCATION'):\n current[name] = value\n\n rows = []\n for index, ev in enumerate(events):\n start = parse_stamp(ev['DTSTART'])\n end = parse_stamp(ev['DTEND'])\n summary = unescape(ev.get('SUMMARY', ''))\n location = unescape(ev.get('LOCATION', ''))\n if not location:\n location = 'TBD'\n minutes = int((end - start).total_seconds() // 60)\n rows.append((start, summary, index, end, location, minutes))\n\n rows.sort(key=lambda r: (r[0], r[1], r[2]))\n\n lines = []\n for start, summary, _idx, end, location, minutes in rows:\n lines.append('%s %s-%s | %s | %s | %dm' % (\n start.strftime('%Y-%m-%d'),\n start.strftime('%H:%M'),\n end.strftime('%H:%M'),\n summary,\n location,\n minutes,\n ))\n return '\\n'.join(lines)\n","input_data_sample":"BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//Acme Corp//Scheduler 4.1//EN\nBEGIN:VEVENT\nUID:evt-1001@acme.example\nDTSTART:20260914T090000Z\nDTEND:20260914T100000Z\nSUMMARY:Sprint planning\nLOCATION:Room 3B\nEND:VEVENT\nBEGIN:VEVENT\nUID:evt-1002@acme.example\nDTSTART:20260914T090000Z\nDTEND:20260914T093000Z\nSUMMARY:Coffee sync with the platform team\\, part two\nEND:VEVENT\nBEGIN:VEVENT\nUID:evt-1003@acme.example\nDTSTART:20260913T233000Z\nDTEND:20260914T003000Z\nSUMMARY:Release cutover\nDESCRIPTION:Long description that is\n folded across lines\nLOCATION:War room\nEND:VEVENT\nEND:VCALENDAR\n","output_data_sample":"2026-09-13 23:30-00:30 | Release cutover | War room | 60m\n2026-09-14 09:00-09:30 | Coffee sync with the platform team, part two | TBD | 30m\n2026-09-14 09:00-10:00 | Sprint planning | Room 3B | 60m","transformation_instruction":"The input is an iCalendar (RFC 5545) stream in UTC. Produce a plain-text agenda.\n\nParsing rules:\n1. Consider only content between BEGIN:VEVENT and END:VEVENT lines. Ignore every other line.\n2. Unfold folded content lines first: any line that begins with a single space or a horizontal tab is a\n continuation of the previous line; remove that one leading space/tab character and append the rest to\n the previous line with no separator. Unfolding happens before any property is parsed.\n3. A property line is 'NAME:VALUE' split on the first ':'. Property names are case-sensitive as given.\n Only DTSTART, DTEND, SUMMARY and LOCATION are used; all other properties are ignored.\n4. In SUMMARY and LOCATION values, unescape the iCalendar backslash sequences: backslash+comma becomes a\n comma, backslash+semicolon becomes a semicolon, and backslash followed by 'n' or 'N' becomes a single\n space. Scanning is left to right and a produced character is never re-scanned. Any other backslash is\n kept as-is.\n5. DTSTART/DTEND are basic-format UTC stamps 'YYYYMMDDThhmmssZ'.\n\nOutput: one line per VEVENT, formatted exactly as\n 'YYYY-MM-DD hh:mm-hh:mm | SUMMARY | LOCATION | Nm'\nwhere the date and the first time come from DTSTART, the second time from DTEND, LOCATION is the literal\nstring 'TBD' when the property is absent or its unescaped value is empty, and N is the duration in whole\nminutes computed as DTEND minus DTSTART (an event may cross midnight, so compute on full timestamps, and\nthe duration is always non-negative in this data).\n\nOrdering: sort by DTSTART ascending; ties are broken by the SUMMARY string ascending using ordinary\nPython string comparison; any remaining tie keeps the original file order (stable sort).\n\nJoin lines with '\\n'. No trailing newline and no trailing spaces on any line. All arithmetic is on UTC\ninstants, so the result must not depend on the machine's local timezone."} {"id":"cmsv9q98m01kpg4p23a8a4nsr","kind":"contributor_item","title":"Submission 8A4NSR","provisional":false,"output_code":"import json\nimport re\n\nLINE = re.compile(r'^( *)- +(.*)$')\n\n\ndef transform(text):\n roots = []\n # stack of (indent, node); node is None for the synthetic root container\n stack = [(-1, None)]\n for raw in text.split('\\n'):\n if not raw.strip():\n continue\n match = LINE.match(raw.rstrip())\n if not match:\n continue\n indent = len(match.group(1))\n name = match.group(2).strip()\n while len(stack) > 1 and stack[-1][0] >= indent:\n stack.pop()\n node = {'name': name, 'children': []}\n parent = stack[-1][1]\n if parent is None:\n roots.append(node)\n else:\n parent['children'].append(node)\n stack.append((indent, node))\n return json.dumps(roots, indent=2, ensure_ascii=True)\n","input_data_sample":"- Platform\n - Ingest\n - Kafka bridge\n - S3 poller\n - Storage\n - Cold tier\n - Query\n- Frontend\n - Web\n - Dashboard\n - Mobile\n- Ops\n","output_data_sample":"[\n {\n \"name\": \"Platform\",\n \"children\": [\n {\n \"name\": \"Ingest\",\n \"children\": [\n {\n \"name\": \"Kafka bridge\",\n \"children\": []\n },\n {\n \"name\": \"S3 poller\",\n \"children\": []\n }\n ]\n },\n {\n \"name\": \"Storage\",\n \"children\": [\n {\n \"name\": \"Cold tier\",\n \"children\": []\n }\n ]\n },\n {\n \"name\": \"Query\",\n \"children\": []\n }\n ]\n },\n {\n \"name\": \"Frontend\",\n \"children\": [\n {\n \"name\": \"Web\",\n \"children\": [\n {\n \"name\": \"Dashboard\",\n \"children\": []\n }\n ]\n },\n {\n \"name\": \"Mobile\",\n \"children\": []\n }\n ]\n },\n {\n \"name\": \"Ops\",\n \"children\": []\n }\n]","transformation_instruction":"Convert an indented bullet outline into a JSON tree.\n\nRules:\n1. Ignore blank lines. Every other line matches optional spaces, then '- ', then the label. Tabs never\n appear. The label is stripped of surrounding whitespace.\n2. Indentation is measured in leading spaces. Depth is derived from a stack of seen indent columns rather\n than by dividing by a fixed width: a line whose indent is greater than the current top of the stack\n pushes a new level (depth = previous depth + 1), regardless of how much greater it is. A line whose\n indent equals an indent already on the stack pops back to that level. A line whose indent is smaller\n than every stack entry but does not equal any of them pops to the deepest entry that is still less than\n it, or to the root when there is none. This makes an over-indented line (for example jumping from 4 to\n 8 spaces) exactly one level deeper, not two.\n3. Each node becomes an object with keys in this exact order: 'name' (string) and 'children' (array of\n child node objects, possibly empty). Sibling order follows file order.\n\nOutput: json.dumps of the list of root nodes with indent=2 and ensure_ascii=True, separators left at the\ndefaults for indent mode. Return that string with no trailing newline; json.dumps with indent never emits\ntrailing whitespace on a line."} {"id":"cmsv9q98m01kqg4p2k7c3uemk","kind":"contributor_item","title":"Submission C3UEMK","provisional":false,"output_code":"import csv\nimport io\nimport re\n\nHEAD = re.compile(r'^\\s*INSERT\\s+INTO\\s+([A-Za-z_][A-Za-z_0-9]*)\\s*\\(([^)]*)\\)\\s*VALUES\\s*(.*)$',\n re.IGNORECASE | re.DOTALL)\n\n\ndef _split_statements(text):\n kept = []\n for line in text.split('\\n'):\n if line.strip().startswith('--'):\n continue\n kept.append(line)\n body = '\\n'.join(kept)\n statements = []\n buf = []\n in_string = False\n i = 0\n while i < len(body):\n ch = body[i]\n if in_string:\n buf.append(ch)\n if ch == \"'\":\n if i + 1 < len(body) and body[i + 1] == \"'\":\n buf.append(\"'\")\n i += 2\n continue\n in_string = False\n i += 1\n continue\n if ch == \"'\":\n in_string = True\n buf.append(ch)\n i += 1\n continue\n if ch == ';':\n statements.append(''.join(buf))\n buf = []\n i += 1\n continue\n buf.append(ch)\n i += 1\n if ''.join(buf).strip():\n statements.append(''.join(buf))\n return statements\n\n\ndef _split_tuples(blob):\n tuples = []\n depth = 0\n in_string = False\n buf = []\n i = 0\n while i < len(blob):\n ch = blob[i]\n if in_string:\n buf.append(ch)\n if ch == \"'\":\n if i + 1 < len(blob) and blob[i + 1] == \"'\":\n buf.append(\"'\")\n i += 2\n continue\n in_string = False\n i += 1\n continue\n if ch == \"'\":\n in_string = True\n buf.append(ch)\n elif ch == '(':\n depth += 1\n if depth == 1:\n buf = []\n i += 1\n continue\n buf.append(ch)\n elif ch == ')':\n depth -= 1\n if depth == 0:\n tuples.append(''.join(buf))\n buf = []\n i += 1\n continue\n buf.append(ch)\n else:\n if depth >= 1:\n buf.append(ch)\n i += 1\n return tuples\n\n\ndef _split_values(chunk):\n values = []\n buf = []\n in_string = False\n i = 0\n while i < len(chunk):\n ch = chunk[i]\n if in_string:\n if ch == \"'\":\n if i + 1 < len(chunk) and chunk[i + 1] == \"'\":\n buf.append(\"'\")\n i += 2\n continue\n in_string = False\n buf.append(ch)\n i += 1\n continue\n buf.append(ch)\n i += 1\n continue\n if ch == \"'\":\n in_string = True\n buf.append(ch)\n i += 1\n continue\n if ch == ',':\n values.append(''.join(buf))\n buf = []\n i += 1\n continue\n buf.append(ch)\n i += 1\n values.append(''.join(buf))\n return values\n\n\ndef _cell(raw):\n token = raw.strip()\n if token.startswith(\"'\") and token.endswith(\"'\") and len(token) >= 2:\n return token[1:-1]\n upper = token.upper()\n if upper == 'NULL':\n return ''\n if upper == 'TRUE':\n return 'true'\n if upper == 'FALSE':\n return 'false'\n return token\n\n\ndef transform(text):\n header = None\n rows = []\n for statement in _split_statements(text):\n match = HEAD.match(statement)\n if not match:\n continue\n table, columns, blob = match.groups()\n if table.lower() != 'staff':\n continue\n if header is None:\n header = [c.strip() for c in columns.split(',')]\n for chunk in _split_tuples(blob):\n rows.append([_cell(v) for v in _split_values(chunk)])\n\n out = io.StringIO()\n writer = csv.writer(out, lineterminator='\\n')\n if header is not None:\n writer.writerow(header)\n for row in rows:\n writer.writerow(row)\n result = out.getvalue()\n if result.endswith('\\n'):\n result = result[:-1]\n return result\n","input_data_sample":"INSERT INTO staff (id, name, title, salary, active) VALUES (1, 'Ada Lovelace', 'Analyst', 91000.00, TRUE);\nINSERT INTO staff (id, name, title, salary, active) VALUES\n (2, 'Grace O''Hara', 'Lead, Platform', 128500.5, TRUE),\n (3, 'Linus T', NULL, 74000, FALSE);\n-- a commented out row\n-- INSERT INTO staff (id, name) VALUES (99, 'ghost');\nINSERT INTO audit (id, note) VALUES (7, 'ignored table');\nINSERT INTO staff (id, name, title, salary, active) VALUES (4, 'Ren \"Rex\" Diaz', 'QA', 66000, true);\n","output_data_sample":"id,name,title,salary,active\n1,Ada Lovelace,Analyst,91000.00,true\n2,Grace O'Hara,\"Lead, Platform\",128500.5,true\n3,Linus T,,74000,false\n4,\"Ren \"\"Rex\"\" Diaz\",QA,66000,true","transformation_instruction":"Extract rows from SQL INSERT statements into RFC 4180 CSV, keeping only the table named 'staff'.\n\nRules:\n1. A line whose stripped form starts with '--' is a comment and is removed before parsing. '--' inside a\n single-quoted string literal is NOT a comment (only whole-line comments exist in this input).\n2. Statements are terminated by ';' and may span several lines. Whitespace between tokens is arbitrary.\n3. Only statements matching 'INSERT INTO <table> (<columns>) VALUES <tuples>' are used; the keywords are\n matched case-insensitively. Statements for any table other than 'staff' are skipped.\n4. A statement may carry several comma-separated value tuples; each tuple becomes one output row.\n5. Literal forms inside a tuple: a single-quoted string where '' is an escaped single quote; a number; the\n bare word NULL (any case); the bare words TRUE/FALSE (any case).\n6. Conversion to CSV cell text: strings use their unescaped content; numbers use their literal text\n verbatim (so '128500.5' stays '128500.5' and '74000' stays '74000'); NULL becomes the empty cell;\n TRUE/FALSE become the lowercase words 'true' and 'false'.\n\nOutput: a header row built from the column list of the FIRST kept statement, then all data rows in\nstatement order and, within a statement, tuple order. Serialise with Python's csv module using the comma\ndelimiter, minimal quoting with '\"' doubling, and a plain '\\n' line terminator (NOT '\\r\\n'). Return the\nCSV text with the final '\\n' removed so there is no trailing newline and no carriage returns anywhere."} {"id":"cmsv9q98m01krg4p288fwn30d","kind":"contributor_item","title":"Submission FWN30D","provisional":false,"output_code":"from urllib.parse import unquote\n\nCANON = {\n 'domain': 'Domain',\n 'path': 'Path',\n 'expires': 'Expires',\n 'max-age': 'Max-Age',\n 'samesite': 'SameSite',\n 'secure': 'Secure',\n 'httponly': 'HttpOnly',\n}\nSAMESITE = {'strict': 'Strict', 'lax': 'Lax', 'none': 'None'}\n\n\ndef transform(text):\n cookies = {}\n order = []\n for raw in text.split('\\n'):\n line = raw.strip()\n if not line or ':' not in line:\n continue\n header, value = line.split(':', 1)\n if header.strip().lower() != 'set-cookie':\n continue\n segments = [s.strip() for s in value.split(';')]\n if not segments or not segments[0]:\n continue\n first = segments[0]\n if '=' in first:\n name, cookie_value = first.split('=', 1)\n else:\n name, cookie_value = first, ''\n name = name.strip()\n attrs = {}\n for segment in segments[1:]:\n if not segment:\n continue\n if '=' in segment:\n key, val = segment.split('=', 1)\n key = key.strip().lower()\n val = val.strip()\n else:\n key, val = segment.strip().lower(), ''\n canon = CANON.get(key)\n if canon is None:\n continue\n attrs[canon] = val\n domain = attrs.get('Domain', '') or '-'\n path = attrs.get('Path', '') or '/'\n key = (name, domain, path)\n if key not in cookies:\n order.append(key)\n cookies[key] = (cookie_value.strip(), attrs, domain, path)\n\n lines = []\n for key in sorted(cookies):\n cookie_value, attrs, domain, path = cookies[key]\n decoded = unquote(cookie_value)\n if decoded == '':\n decoded = '(empty)'\n flags = [f for f in ('Secure', 'HttpOnly') if f in attrs]\n flag_text = '+'.join(flags) if flags else '-'\n samesite = attrs.get('SameSite')\n samesite_text = SAMESITE.get(samesite.strip().lower(), samesite) if samesite else '-'\n max_age = attrs.get('Max-Age')\n max_age_text = str(int(max_age)) if max_age not in (None, '') else '-'\n expires = attrs.get('Expires')\n expires_text = expires if expires else '-'\n lines.append(\n '%s | %s | domain=%s | path=%s | flags=%s | samesite=%s | max-age=%s | expires=%s'\n % (key[0], decoded, domain, path, flag_text, samesite_text,\n max_age_text, expires_text))\n return '\\n'.join(lines)\n","input_data_sample":"Set-Cookie: sid=3f9a2b; Path=/; HttpOnly; Secure; SameSite=Lax; Max-Age=3600\nSet-Cookie: theme=dark; Path=/; Expires=Wed, 09 Jun 2027 10:18:14 GMT\nSet-Cookie: sid=deadbeef; Domain=.example.com; Path=/admin; secure; samesite=strict\nSet-Cookie: tracking=; Path=/; Max-Age=0\nSet-Cookie: prefs=lang%3Den-GB\nX-Frame-Options: DENY\n","output_data_sample":"prefs | lang=en-GB | domain=- | path=/ | flags=- | samesite=- | max-age=- | expires=-\nsid | 3f9a2b | domain=- | path=/ | flags=Secure+HttpOnly | samesite=Lax | max-age=3600 | expires=-\nsid | deadbeef | domain=.example.com | path=/admin | flags=Secure | samesite=Strict | max-age=- | expires=-\ntheme | dark | domain=- | path=/ | flags=- | samesite=- | max-age=- | expires=Wed, 09 Jun 2027 10:18:14 GMT\ntracking | (empty) | domain=- | path=/ | flags=- | samesite=- | max-age=0 | expires=-","transformation_instruction":"Parse HTTP Set-Cookie response headers into an attribute table.\n\nRules:\n1. Only lines whose header name is 'set-cookie' (case-insensitive, split on the first ':') are used; every\n other header line is ignored.\n2. The value is split on ';'. The FIRST segment is 'name=value' (split on the first '='); later segments\n are attributes, each either 'key=value' or a bare flag. Segments are stripped of surrounding spaces.\n3. Attribute keys are matched case-insensitively and reported in canonical spelling: Domain, Path,\n Expires, Max-Age, SameSite, Secure, HttpOnly. Unknown attributes are ignored.\n4. Cookie identity is the pair (name, Domain, Path) where a missing Domain is the literal '-' and a\n missing Path is '/'. Two Set-Cookie lines with the same identity: the later one wins completely (it\n replaces the earlier one, it does not merge). Different identities coexist.\n5. The cookie value is reported percent-decoded (so 'lang%3Den-GB' becomes 'lang=en-GB'); '+' is NOT\n treated as a space. An empty value is reported as the literal '(empty)'.\n6. Flags: report 'Secure' and 'HttpOnly' as the literal words when present, joined by '+', in that fixed\n order; when neither is present report '-'.\n7. SameSite is normalised to capitalised form: Strict, Lax or None. Absent SameSite reports '-'.\n8. Max-Age reports the integer as given; when absent report '-'. Expires reports the raw string as given;\n when absent report '-'.\n\nOutput: one line per surviving cookie, ordered by name ascending, then Domain ascending, then Path\nascending (ordinary Python string comparison), formatted\n '<name> | <value> | domain=<d> | path=<p> | flags=<f> | samesite=<s> | max-age=<m> | expires=<e>'\nJoin with '\\n'; no trailing newline and no trailing whitespace on any line."} {"id":"cmsv9q98n01kxg4p245njq1y1","kind":"contributor_item","title":"Submission NJQ1Y1","provisional":false,"output_code":"import csv\nimport io\nfrom decimal import Decimal, ROUND_HALF_UP\n\nREGIONS = {\n 'Europe': ['DE', 'FR', 'GB', 'ES', 'IT', 'NL', 'PL', 'SE'],\n 'Americas': ['US', 'CA', 'BR', 'MX', 'AR', 'CL'],\n 'Asia': ['JP', 'IN', 'CN', 'SG', 'KR', 'ID'],\n 'Africa': ['ZA', 'KE', 'NG', 'EG', 'MA'],\n 'Oceania': ['AU', 'NZ', 'FJ'],\n}\nCODE_TO_REGION = {}\nfor _region, _codes in REGIONS.items():\n for _code in _codes:\n CODE_TO_REGION[_code] = _region\n\nCENTS = Decimal('0.01')\nTENTH = Decimal('0.1')\nHUNDRED = Decimal(100)\n\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text))\n rows = [row for row in reader if row and any(cell.strip() for cell in row)]\n stats = {}\n grand_orders = 0\n grand_total = Decimal(0)\n for row in rows[1:]:\n code = row[1].strip().upper() if len(row) > 1 else ''\n amount = Decimal(row[2].strip()) if len(row) > 2 and row[2].strip() else Decimal(0)\n region = CODE_TO_REGION.get(code, 'Unknown')\n entry = stats.setdefault(region, {'orders': 0, 'total': Decimal(0), 'codes': set()})\n entry['orders'] += 1\n entry['total'] += amount\n entry['codes'].add(code if code else '(blank)')\n grand_orders += 1\n grand_total += amount\n\n ordered = sorted(stats.items(), key=lambda kv: (-kv[1]['total'], kv[0]))\n\n lines = []\n for region, entry in ordered:\n total_major = (entry['total'] / HUNDRED).quantize(CENTS, rounding=ROUND_HALF_UP)\n if grand_total:\n share = (entry['total'] / grand_total * HUNDRED).quantize(\n TENTH, rounding=ROUND_HALF_UP)\n else:\n share = Decimal('0.0')\n codes = '/'.join(sorted(entry['codes']))\n lines.append('%s: orders=%d total=%s share=%s%% codes=%s'\n % (region, entry['orders'], str(total_major), str(share), codes))\n grand_major = (grand_total / HUNDRED).quantize(CENTS, rounding=ROUND_HALF_UP)\n lines.append('TOTAL: orders=%d total=%s' % (grand_orders, str(grand_major)))\n return '\\n'.join(lines)\n","input_data_sample":"order_id,country,amount_minor\nA-1,de,4500\nA-2,FR,12000\nA-3,us,3999\nA-4,JP,88000\nA-5,gb,15050\nA-6,BR,7200\nA-7,ZZ,1000\nA-8,IN,2500\nA-9,CA,6100\nA-10,de,500\nA-11,,900\nA-12,ke,3300\nA-13,AU,20000\n","output_data_sample":"Asia: orders=2 total=905.00 share=54.8% codes=IN/JP\nEurope: orders=4 total=320.50 share=19.4% codes=DE/FR/GB\nOceania: orders=1 total=200.00 share=12.1% codes=AU\nAmericas: orders=3 total=172.99 share=10.5% codes=BR/CA/US\nAfrica: orders=1 total=33.00 share=2.0% codes=KE\nUnknown: orders=2 total=19.00 share=1.2% codes=(blank)/ZZ\nTOTAL: orders=13 total=1650.49","transformation_instruction":"The input is CSV with header 'order_id,country,amount_minor'. Roll order amounts up to macro regions.\n\nUse exactly this ISO 3166-1 alpha-2 to region map (codes compared case-insensitively after stripping):\n Europe: DE, FR, GB, ES, IT, NL, PL, SE\n Americas: US, CA, BR, MX, AR, CL\n Asia: JP, IN, CN, SG, KR, ID\n Africa: ZA, KE, NG, EG, MA\n Oceania: AU, NZ, FJ\nAny code not in the map, and any empty code, rolls up to the region 'Unknown'.\n\namount_minor is an integer number of minor currency units. For each region compute:\n - orders: number of rows\n - total: sum of amount_minor rendered as a major-unit amount with exactly 2 decimals (divide by 100\n using Decimal, never float)\n - share: the region's total as a percentage of the grand total, as a Decimal rounded to one decimal\n place with ROUND_HALF_UP\n - codes: the distinct uppercased country codes seen in that region, sorted ascending and joined by '/';\n an empty code is represented by the literal '(blank)' and sorts as that literal string\n\nOrdering: regions sorted by total DESCENDING; ties broken by region name ascending. 'Unknown' takes part\nin the same ordering rule and is not special-cased. Regions with no rows are omitted.\n\nOutput: one line per region formatted\n '<region>: orders=<n> total=<t> share=<s>% codes=<codes>'\nthen a final line 'TOTAL: orders=<n> total=<t>'. Join with '\\n'; no trailing newline and no trailing\nwhitespace on any line."} {"id":"cmsv9q98n01ktg4p2xto16yot","kind":"contributor_item","title":"Submission O16YOT","provisional":false,"output_code":"CODES = {\n '.-': 'A', '-...': 'B', '-.-.': 'C', '-..': 'D', '.': 'E', '..-.': 'F',\n '--.': 'G', '....': 'H', '..': 'I', '.---': 'J', '-.-': 'K', '.-..': 'L',\n '--': 'M', '-.': 'N', '---': 'O', '.--.': 'P', '--.-': 'Q', '.-.': 'R',\n '...': 'S', '-': 'T', '..-': 'U', '...-': 'V', '.--': 'W', '-..-': 'X',\n '-.--': 'Y', '--..': 'Z',\n '-----': '0', '.----': '1', '..---': '2', '...--': '3', '....-': '4',\n '.....': '5', '-....': '6', '--...': '7', '---..': '8', '----.': '9',\n '.-.-.-': '.', '--..--': ',', '..--..': '?', '.----.': \"'\", '-.-.--': '!',\n '-..-.': '/', '-.--.': '(', '-.--.-': ')', '.-...': '&', '---...': ':',\n '-.-.-.': ';', '-...-': '=', '.-.-.': '+', '-....-': '-', '..--.-': '_',\n '.-..-.': '\"', '...-..-': '$', '.--.-.': '@',\n}\n\n\ndef transform(text):\n lines = []\n undecodable = 0\n counter = 0\n for raw in text.split('\\n'):\n stripped = raw.strip()\n if not stripped:\n continue\n counter += 1\n words = []\n current = []\n for token in stripped.split():\n if token == '/':\n words.append(''.join(current))\n current = []\n continue\n letter = CODES.get(token)\n if letter is None:\n undecodable += 1\n letter = '[?]'\n current.append(letter)\n words.append(''.join(current))\n lines.append('%d. %s' % (counter, ' '.join(words)))\n lines.append('undecodable=%d' % undecodable)\n return '\\n'.join(lines)\n","input_data_sample":".... . .-.. .-.. --- / .-- --- .-. .-.. -..\n... --- ... / -. --- .-- .-.-.- / .- - / ..--- .---- ....- ---..\n-- .- -.-- -.. .- -.-- ..!! / ---... / -.-.--\n\n-.-.-.-.-.- / .- -... -.-.\n","output_data_sample":"1. HELLO WORLD\n2. SOS NOW. AT 2148\n3. MAYDAY[?] : !\n4. [?] ABC\nundecodable=2","transformation_instruction":"Decode International Morse Code into text.\n\nStructure: each input line is a message. Within a line, ' / ' (slash surrounded by spaces, or a bare '/'\ntoken) separates words, and single spaces separate letters. Blank lines are skipped entirely and produce\nno output line.\n\nSupported codes: the 26 ASCII letters A-Z, the digits 0-9, and the punctuation '.' (.-.-.-), ',' (--..--),\n'?' (..--..), \"'\" (.----.), '!' (-.-.--), '/' (-..-.), '(' (-.--.), ')' (-.--.-), '&' (.-...),\n':' (---...), ';' (-.-.-.), '=' (-...-), '+' (.-.-.), '-' (-....-), '_' (..--.-), '\"' (.-..-.),\n'$' (...-..-), '@' (.--.-.). Decoded letters are uppercase.\n\nUnknown edge case: a letter token that is not in the table decodes to the literal three-character sequence\n'[?]' and is counted as an undecodable token. A token containing any character other than '.' and '-' is\nalso undecodable and decodes to '[?]'.\n\nWords within a message are joined by a single space; letters are concatenated with no separator.\n\nOutput: one line per non-blank input line, in order, formatted '<n>. <decoded>' where <n> is a 1-based\ncounter over the emitted lines only. After all message lines, append a final line\n 'undecodable=<count>'\nwith the total number of undecodable tokens across all messages. Join with '\\n'; no trailing newline and\nno trailing whitespace on any line."} {"id":"cmsv9q98n01kwg4p20kx3orpc","kind":"contributor_item","title":"Submission X3ORPC","provisional":false,"output_code":"MAJOR_CATS = {'removed', 'breaking'}\nMINOR_CATS = {'added', 'changed', 'deprecated'}\nPATCH_CATS = {'fixed', 'security', 'performance'}\n\n\ndef transform(text):\n blocks = []\n current = []\n for raw in text.split('\\n'):\n line = raw.strip()\n if line == '---':\n blocks.append(current)\n current = []\n continue\n if line:\n current.append(line)\n blocks.append(current)\n\n releases = []\n index = 0\n while index < len(blocks):\n block = blocks[index]\n if block and block[0].lower().startswith('current:'):\n version = block[0].split(':', 1)[1].strip()\n changes = blocks[index + 1] if index + 1 < len(blocks) else []\n releases.append((version, changes))\n index += 2\n continue\n index += 1\n\n lines = []\n for version, changes in releases:\n level = 0\n for change in changes:\n if ':' not in change:\n continue\n category = change.split(':', 1)[0].strip().lower()\n if category in MAJOR_CATS:\n level = max(level, 3)\n elif category in MINOR_CATS:\n level = max(level, 2)\n elif category in PATCH_CATS:\n level = max(level, 1)\n if level == 0:\n lines.append('%s -> %s (none)' % (version, version))\n continue\n core = version.split('+', 1)[0].split('-', 1)[0]\n parts = core.split('.')\n major, minor, patch = int(parts[0]), int(parts[1]), int(parts[2])\n if level == 3:\n if major == 0:\n minor += 1\n patch = 0\n label = 'minor(major-demoted)'\n else:\n major += 1\n minor = 0\n patch = 0\n label = 'major'\n elif level == 2:\n minor += 1\n patch = 0\n label = 'minor'\n else:\n patch += 1\n label = 'patch'\n nxt = '%d.%d.%d' % (major, minor, patch)\n lines.append('%s -> %s (%s)' % (version, nxt, label))\n return '\\n'.join(lines)\n","input_data_sample":"current: 2.4.9\n---\nadded: streaming export endpoint\nfixed: crash when the manifest is empty\ndeprecated: legacy /v1/search remains but warns\nsecurity: patch header smuggling in the proxy\n---\ncurrent: 0.7.3\n---\nremoved: the XML serialiser\nfixed: retry accounting off by one\n---\ncurrent: 1.0.0\n---\nchanged: default page size is now 50\nadded: cursor pagination\n---\ncurrent: 3.1.4\n---\ndocs: rewrote the quickstart\nchore: pinned CI image\n---\ncurrent: 1.9.2-rc.1+build.7\n---\nfixed: nothing important\n","output_data_sample":"2.4.9 -> 2.5.0 (minor)\n0.7.3 -> 0.8.0 (minor(major-demoted))\n1.0.0 -> 1.1.0 (minor)\n3.1.4 -> 3.1.4 (none)\n1.9.2-rc.1+build.7 -> 1.9.3 (patch)","transformation_instruction":"Decide the next SemVer 2.0.0 version for each release block.\n\nInput structure: a sequence of blocks separated by lines containing exactly '---'. A block that starts\nwith 'current: <version>' opens a release; the block that follows it holds that release's change lines.\nEach change line is '<category>: <text>'; the category is lowercased and stripped.\n\nBump rules, most severe wins:\n- 'removed' or 'breaking' -> MAJOR\n- 'added' or 'changed' or 'deprecated' -> MINOR\n- 'fixed' or 'security' or 'performance' -> PATCH\n- any other category (for example 'docs' or 'chore') contributes NOTHING\nIf no change line contributes anything, the version is unchanged and the bump is reported as 'none'.\n\nApplying the bump to MAJOR.MINOR.PATCH:\n- MAJOR: major+1, minor=0, patch=0 -- EXCEPT while major is 0, where SemVer's initial-development clause\n applies and a MAJOR bump is demoted to minor+1, patch=0 (so 0.7.3 becomes 0.8.0, not 1.0.0). The report\n still names the demoted level as 'minor(major-demoted)'.\n- MINOR: minor+1, patch=0\n- PATCH: patch+1\nAny pre-release and build-metadata suffix on the current version is DROPPED by any non-'none' bump; with\nbump 'none' the current version string is echoed unchanged including its suffixes.\n\nOutput: one line per release, in input order, formatted '<current> -> <next> (<bump>)' where <bump> is\n'major', 'minor', 'patch', 'none' or 'minor(major-demoted)'. Join with '\\n'; no trailing newline and no\ntrailing whitespace on any line."} {"id":"cmsvchtev01o0g4p2xuy6extl","kind":"contributor_item","title":"Submission Y6EXTL","provisional":false,"output_code":"def transform(text):\n rows = []\n for line in text.strip().split('\\n')[1:]:\n if not line.strip():\n continue\n name, dept, salary = [p.strip() for p in line.split(',')]\n rows.append((dept, name, int(salary)))\n groups = {}\n for dept, name, salary in rows:\n groups.setdefault(dept, []).append((name, salary))\n out = []\n for dept in sorted(groups):\n members = groups[dept]\n total = sum(s for _, s in members)\n top = sorted(members, key=lambda ns: (-ns[1], ns[0]))[0][0]\n out.append('{}: {}, {}, {}'.format(dept, len(members), total, top))\n return '\\n'.join(out)\n","input_data_sample":"name,dept,salary\nzed,eng,100\namy,eng,120\nbo,ops,90\ncy,eng,120\ndee,ops,95\n","output_data_sample":"eng: 3, 340, amy\nops: 2, 185, dee","transformation_instruction":"Given rows of 'name,dept,salary', return one line per department as 'dept: count, total, top' where top is the highest-paid member, ties broken alphabetically. Departments are ordered alphabetically."} {"id":"cmsvchtev01nyg4p23hte49vy","kind":"contributor_item","title":"Submission TE49VY","provisional":false,"output_code":"def transform(text):\n seen = {}\n for part in text.split(';'):\n if not part.strip():\n continue\n key, _, value = part.partition('=')\n seen[key.strip()] = value.strip()\n return '\\n'.join('{} -> {}'.format(k, seen[k]) for k in sorted(seen))\n","input_data_sample":"b=2;a=1;;c=3;a=9; d = 4 ;","output_data_sample":"a -> 9\nb -> 2\nc -> 3\nd -> 4","transformation_instruction":"Read semicolon-separated key=value pairs and return them as sorted 'key -> value' lines, where a key repeated later overrides the earlier value and blank segments are ignored."} {"id":"cmsvchtev01o1g4p21fy4vznb","kind":"contributor_item","title":"Submission Y4VZNB","provisional":false,"output_code":"def transform(text):\n counters = []\n out = []\n for line in text.strip().split('\\n'):\n if not line.strip():\n continue\n depth_s, _, title = line.partition('|')\n depth = int(depth_s)\n while len(counters) > depth + 1:\n counters.pop()\n if len(counters) == depth + 1:\n counters[depth] += 1\n else:\n counters.append(1)\n number = '.'.join(str(c) for c in counters) + '.'\n out.append('{} {}'.format(number, title.strip()))\n return '\\n'.join(out)\n","input_data_sample":"0|Intro\n1|Scope\n1|Audience\n0|Method\n1|Setup\n2|Hardware\n0|Results\n","output_data_sample":"1. Intro\n1.1. Scope\n1.2. Audience\n2. Method\n2.1. Setup\n2.1.1. Hardware\n3. Results","transformation_instruction":"Convert an ordered list of 'depth|text' outline rows into numbered section headings such as 1., 1.1., 1.2., 2. Depth 0 is a top-level section. Output 'number text' per line."} {"id":"cmsvchtev01nzg4p2qs6o4nrk","kind":"contributor_item","title":"Submission 6O4NRK","provisional":false,"output_code":"import re\n\ndef transform(text):\n words = re.findall(r\"[A-Za-z']+\", text.lower())\n counts = {}\n for w in words:\n counts[w] = counts.get(w, 0) + 1\n ordered = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))\n return ','.join('{}:{}'.format(w, c) for w, c in ordered)\n","input_data_sample":"The cat sat. The CAT ran! A dog's day; the dog's day.","output_data_sample":"the:3,cat:2,day:2,dog's:2,a:1,ran:1,sat:1","transformation_instruction":"Given a block of text, return each distinct word lowercased with its count, ordered by descending count then alphabetically, as 'word:count' on one line separated by commas. Words are runs of letters and apostrophes; punctuation is stripped."} {"id":"cmsvchtev01nxg4p2tt1jheag","kind":"contributor_item","title":"Submission 1JHEAG","provisional":false,"output_code":"def transform(text):\n out = []\n for line in text.rstrip('\\n').split('\\n'):\n if line.startswith(' ') and out:\n out[-1] = out[-1] + ' ' + line.strip()\n elif line.strip():\n key, _, value = line.partition(':')\n out.append('{}={}'.format(key.strip(), value.strip()))\n return '\\n'.join(out)\n","input_data_sample":"title: The Long\n and Winding Road\nartist: Someone\nnotes: first\n second\n third\n","output_data_sample":"title=The Long and Winding Road\nartist=Someone\nnotes=first second third","transformation_instruction":"Given lines of 'field: value' where a value may continue onto following lines that start with two spaces, join each continuation onto its field with a single space and return 'field=value' lines in the original order."} {"id":"cmsvg9cb901ong4p2bfgnzyyy","kind":"contributor_item","title":"Submission GNZYYY","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for line in text.strip().split(\"\\n\"):\n if \":\" not in line:\n continue\n key, value = line.split(\":\", 1)\n key = key.strip()\n value = value.strip()\n if value.lower() == \"true\":\n typed = True\n elif value.lower() == \"false\":\n typed = False\n elif value.lstrip(\"-\").isdigit():\n typed = int(value)\n else:\n try:\n typed = float(value)\n except ValueError:\n typed = value\n result[key] = typed\n return json.dumps(result)","input_data_sample":"name: Widget\nprice: 19.99\nin_stock: true\nquantity: 42\ndiscontinued: false\n","output_data_sample":"{\"name\": \"Widget\", \"price\": 19.99, \"in_stock\": true, \"quantity\": 42, \"discontinued\": false}","transformation_instruction":"Parse simple 'key: value' lines into a JSON object, inferring booleans, integers, floats, and falling back to strings."} {"id":"cmsvg9cb901omg4p2mkx8toqh","kind":"contributor_item","title":"Submission X8TOQH","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n section = None\n for line in text.strip().split(\"\\n\"):\n line = line.strip()\n if not line:\n continue\n if line.startswith(\"[\") and line.endswith(\"]\"):\n section = line[1:-1]\n result[section] = {}\n elif \"=\" in line and section:\n key, value = line.split(\"=\", 1)\n key = key.strip()\n value = value.strip()\n if value.isdigit():\n value = int(value)\n result[section][key] = value\n return json.dumps(result)","input_data_sample":"[server]\nhost=localhost\nport=8080\n[database]\nname=appdb\ntimeout=30\n","output_data_sample":"{\"server\": {\"host\": \"localhost\", \"port\": 8080}, \"database\": {\"name\": \"appdb\", \"timeout\": 30}}","transformation_instruction":"Parse an INI-style config file into a nested JSON object grouped by section, converting numeric values to integers."} {"id":"cmsvg9cb901oog4p2socjmqt6","kind":"contributor_item","title":"Submission CJMQT6","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip(\"\\n\").split(\"\\n\") if l.strip()]\n header = lines[0]\n col_starts = []\n for i, ch in enumerate(header):\n if ch != \" \" and (i == 0 or header[i-1] == \" \"):\n col_starts.append(i)\n names = header.split()\n rows = []\n for line in lines[1:]:\n values = []\n for idx, start in enumerate(col_starts):\n end = col_starts[idx + 1] if idx + 1 < len(col_starts) else len(line)\n values.append(line[start:end].strip())\n row = dict(zip(names, values))\n if \"AGE\" in row:\n row[\"AGE\"] = int(row[\"AGE\"])\n rows.append(row)\n return json.dumps(rows)","input_data_sample":"NAME AGE CITY\nAlice 30 Boston\nBob 25 Denver\nCarol 41 Reno\n","output_data_sample":"[{\"NAME\": \"Alice\", \"AGE\": 30, \"CITY\": \"Boston\"}, {\"NAME\": \"Bob\", \"AGE\": 25, \"CITY\": \"Denver\"}, {\"NAME\": \"Carol\", \"AGE\": 41, \"CITY\": \"Reno\"}]","transformation_instruction":"Convert a fixed-width column-aligned text table (header + rows) into a JSON list of objects, converting the AGE column to an integer."} {"id":"cmsvg9cb901opg4p2549fr6gj","kind":"contributor_item","title":"Submission 9FR6GJ","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n lines = [l for l in text.strip(\"\\n\").split(\"\\n\") if l.strip()]\n rows = []\n for line in lines:\n fields = [f.strip('\"') for f in line.split('\";\"')]\n fields[0] = fields[0].lstrip('\"')\n fields[-1] = fields[-1].rstrip('\"')\n rows.append(fields)\n out = io.StringIO()\n writer = csv.writer(out)\n for row in rows:\n writer.writerow(row)\n return out.getvalue().strip()","input_data_sample":"\"Smith; John\";\"42\";\"New York; NY\"\n\"Doe; Jane\";\"31\";\"Austin; TX\"\n","output_data_sample":"Smith; John,42,New York; NY\r\nDoe; Jane,31,Austin; TX","transformation_instruction":"Convert semicolon-quoted rows like '\"Field; A\";\"Field2\"' into standard comma-separated CSV rows, preserving embedded semicolons inside each quoted field."} {"id":"cmsvg9cb901oqg4p27yvnpiaa","kind":"contributor_item","title":"Submission VNPIAA","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n header = lines[0].split(\",\")\n totals = defaultdict(float)\n for line in lines[1:]:\n parts = line.split(\",\")\n row = dict(zip(header, parts))\n revenue = int(row[\"qty\"]) * float(row[\"price\"])\n totals[row[\"product\"]] += revenue\n rounded = {k: round(v, 2) for k, v in sorted(totals.items())}\n return json.dumps(rounded)","input_data_sample":"product,qty,price\nwidget,3,9.99\ngadget,1,19.99\nwidget,2,9.99\ngizmo,5,4.50\ngadget,2,19.99\n","output_data_sample":"{\"gadget\": 59.97, \"gizmo\": 22.5, \"widget\": 49.95}","transformation_instruction":"Compute total revenue (qty * price) per product from CSV lines with a header row, rounding each total to 2 decimal places."} {"id":"cmsvgmejh01qjg4p2gneikbhf","kind":"contributor_item","title":"Submission EIKBHF","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n result = []\n for line in lines:\n m = re.match(r\"- \\[( |x)\\] (.+)\", line)\n done = m.group(1) == \"x\"\n result.append({\"text\": m.group(2), \"done\": done})\n return json.dumps(result)","input_data_sample":"- [ ] Buy milk\n- [x] Walk dog\n- [ ] Write report\n- [x] Pay bills","output_data_sample":"[{\"text\": \"Buy milk\", \"done\": false}, {\"text\": \"Walk dog\", \"done\": true}, {\"text\": \"Write report\", \"done\": false}, {\"text\": \"Pay bills\", \"done\": true}]","transformation_instruction":"Parse a Markdown todo list ('- [ ]' or '- [x]') into a JSON list of {text, done} objects."} {"id":"cmsvgmejh01q8g4p25exdfhnb","kind":"contributor_item","title":"Submission XDFHNB","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n result = [round(float(l) * 9 / 5 + 32, 1) for l in lines]\n return json.dumps(result)","input_data_sample":"0\n20\n37\n100","output_data_sample":"[32.0, 68.0, 98.6, 212.0]","transformation_instruction":"Convert a list of Celsius temperature lines into a JSON list of Fahrenheit values rounded to 1 decimal."} {"id":"cmsvgmejh01q6g4p24a9tp05x","kind":"contributor_item","title":"Submission 9TP05X","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n header = lines[0].split(\",\")\n rows = []\n for line in lines[1:]:\n values = line.split(\",\")\n row = {}\n for k, v in zip(header, values):\n row[k] = int(v) if v.isdigit() else v\n rows.append(row)\n return json.dumps(rows)","input_data_sample":"name,age\nAlice,30\nBob,25\n","output_data_sample":"[{\"name\": \"Alice\", \"age\": 30}, {\"name\": \"Bob\", \"age\": 25}]","transformation_instruction":"Convert CSV with a header row into a JSON list of objects, converting numeric-looking values to integers."} {"id":"cmsvgmejh01q9g4p28sj42le1","kind":"contributor_item","title":"Submission J42LE1","provisional":false,"output_code":"import json\n\ndef flatten(d, prefix=\"\"):\n items = {}\n for k, v in d.items():\n key = f\"{prefix}.{k}\" if prefix else k\n if isinstance(v, dict):\n items.update(flatten(v, key))\n else:\n items[key] = v\n return items\n\ndef transform(text):\n data = json.loads(text)\n return json.dumps(flatten(data))","input_data_sample":"{\"user\": {\"profile\": {\"name\": \"Alice\", \"age\": 30}, \"active\": true}}","output_data_sample":"{\"user.profile.name\": \"Alice\", \"user.profile.age\": 30, \"user.active\": true}","transformation_instruction":"Flatten a nested JSON object into a single-level JSON object with dot-notation keys."} {"id":"cmsvgmejh01qcg4p2gnj5n6jv","kind":"contributor_item","title":"Submission J5N6JV","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n result = []\n for line in lines:\n name, email = line.split(\",\")\n result.append({\"name\": name.strip(), \"email\": email.strip().lower()})\n return json.dumps(result)","input_data_sample":"Alice Smith,ALICE@Example.com\nBob Jones,BOB@test.COM","output_data_sample":"[{\"name\": \"Alice Smith\", \"email\": \"alice@example.com\"}, {\"name\": \"Bob Jones\", \"email\": \"bob@test.com\"}]","transformation_instruction":"Convert 'name,email' CSV lines into a JSON list of objects with lower-cased email addresses."} {"id":"cmsvgmejh01qfg4p2f8twigje","kind":"contributor_item","title":"Submission TWIGJE","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n header = lines[0].split(\",\")\n out = io.StringIO()\n writer = csv.writer(out)\n writer.writerow(header + [\"running_total\"])\n running = 0\n for line in lines[1:]:\n parts = line.split(\",\")\n running += int(parts[1])\n writer.writerow(parts + [str(running)])\n return out.getvalue().strip()","input_data_sample":"item,amount\ncoffee,4\nbagel,3\ntea,2","output_data_sample":"item,amount,running_total\r\ncoffee,4,4\r\nbagel,3,7\r\ntea,2,9","transformation_instruction":"Add a cumulative running-total column to CSV data and return the result as a CSV string."} {"id":"cmsvgmejh01qdg4p2cd00npxn","kind":"contributor_item","title":"Submission 00NPXN","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n merged = {}\n order = []\n for row in data:\n rid = row[\"id\"]\n if rid not in merged:\n order.append(rid)\n merged[rid] = {}\n merged[rid].update(row)\n return json.dumps([merged[rid] for rid in order])","input_data_sample":"[{\"id\": 1, \"name\": \"Alice\"}, {\"id\": 2, \"name\": \"Bob\"}, {\"id\": 1, \"name\": \"Alice Updated\", \"age\": 31}]","output_data_sample":"[{\"id\": 1, \"name\": \"Alice Updated\", \"age\": 31}, {\"id\": 2, \"name\": \"Bob\"}]","transformation_instruction":"Merge a JSON list of records by id, where later records override or add fields from earlier ones with the same id."} {"id":"cmsvgmejh01qig4p2zfh5xbjk","kind":"contributor_item","title":"Submission H5XBJK","provisional":false,"output_code":"import math\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n points = [tuple(map(float, l.split(\",\"))) for l in lines]\n total = 0.0\n for i in range(len(points) - 1):\n x1, y1 = points[i]\n x2, y2 = points[i + 1]\n total += math.hypot(x2 - x1, y2 - y1)\n return str(round(total, 2))","input_data_sample":"0,0\n3,4\n3,0","output_data_sample":"9.0","transformation_instruction":"Given a list of x,y coordinate lines describing a path in order, compute the total Euclidean path distance rounded to 2 decimals."} {"id":"cmsvgmejh01qkg4p2uzc3czq9","kind":"contributor_item","title":"Submission C3CZQ9","provisional":false,"output_code":"import json\n\ndef to_camel(s):\n parts = s.split(\"_\")\n return parts[0] + \"\".join(p.capitalize() for p in parts[1:])\n\ndef transform(text):\n data = json.loads(text)\n return json.dumps({to_camel(k): v for k, v in data.items()})","input_data_sample":"{\"first_name\": \"Alice\", \"last_name\": \"Smith\", \"home_address\": \"123 Main St\"}","output_data_sample":"{\"firstName\": \"Alice\", \"lastName\": \"Smith\", \"homeAddress\": \"123 Main St\"}","transformation_instruction":"Convert snake_case keys in a flat JSON object to camelCase keys."} {"id":"cmsvgmejh01qng4p2fxpx86qd","kind":"contributor_item","title":"Submission PX86QD","provisional":false,"output_code":"import re, json\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n result = []\n for line in lines:\n h = re.search(r\"(\\d+)h\", line)\n m = re.search(r\"(\\d+)m\", line)\n total = (int(h.group(1)) * 60 if h else 0) + (int(m.group(1)) if m else 0)\n result.append(total)\n return json.dumps(result)","input_data_sample":"1h30m\n45m\n2h\n90m","output_data_sample":"[90, 45, 120, 90]","transformation_instruction":"Parse duration strings like '1h30m', '45m', or '2h' into a JSON list of total minutes."} {"id":"cmsvgmejh01qmg4p2udndng9m","kind":"contributor_item","title":"Submission NDNG9M","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = [row for row in reader]\n return json.dumps(rows)","input_data_sample":"\"Smith, John\",42,\"Boston, MA\"\n\"Doe, Jane\",31,\"Austin, TX\"","output_data_sample":"[[\"Smith, John\", \"42\", \"Boston, MA\"], [\"Doe, Jane\", \"31\", \"Austin, TX\"]]","transformation_instruction":"Parse CSV rows where fields may be quoted and contain embedded commas, converting to a JSON list of [name, age, city] arrays."} {"id":"cmsvgmejh01qog4p2herc2dtv","kind":"contributor_item","title":"Submission RC2DTV","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n totals = defaultdict(int)\n for line in lines:\n name, qty = line.split(\":\")\n totals[name] += int(qty)\n return json.dumps(dict(sorted(totals.items())))","input_data_sample":"apple:3\nbanana:5\napple:2\ncherry:1\nbanana:1","output_data_sample":"{\"apple\": 5, \"banana\": 6, \"cherry\": 1}","transformation_instruction":"Sum quantities per fruit name from 'name:qty' lines and return a JSON object sorted by name."} {"id":"cmsvgmejh01qlg4p2598bkeam","kind":"contributor_item","title":"Submission 8BKEAM","provisional":false,"output_code":"import json\n\ndef transform(text):\n stripped = text.strip()\n words = stripped.split()\n char_count = len(stripped.replace(\" \", \"\"))\n return json.dumps({\"word_count\": len(words), \"char_count\": char_count})","input_data_sample":"The quick brown fox jumps over the lazy dog. The dog barks.","output_data_sample":"{\"word_count\": 12, \"char_count\": 48}","transformation_instruction":"Compute word count and character count (excluding spaces) of a paragraph, returned as a JSON object."} {"id":"cmsvgmejh01q7g4p20jsri729","kind":"contributor_item","title":"Submission SRI729","provisional":false,"output_code":"def transform(text):\n return \" \".join(word[::-1] for word in text.strip().split())","input_data_sample":"the quick brown fox","output_data_sample":"eht kciuq nworb xof","transformation_instruction":"Reverse each word's letters individually while preserving word order."} {"id":"cmsvgmejh01qag4p2a42mwj2q","kind":"contributor_item","title":"Submission 2MWJ2Q","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip(\"\\n\").split(\"\\n\") if l.strip()]\n result = []\n for line in lines:\n level = 0\n while line[level] == \"#\":\n level += 1\n result.append({\"level\": level, \"text\": line[level:].strip()})\n return json.dumps(result)","input_data_sample":"# Title\n## Section A\n## Section B\n### Subsection B1\n","output_data_sample":"[{\"level\": 1, \"text\": \"Title\"}, {\"level\": 2, \"text\": \"Section A\"}, {\"level\": 2, \"text\": \"Section B\"}, {\"level\": 3, \"text\": \"Subsection B1\"}]","transformation_instruction":"Convert a Markdown heading outline (# levels) into a JSON list of {level, text} objects."} {"id":"cmsvgmejh01qeg4p2c5rxjp1u","kind":"contributor_item","title":"Submission RXJP1U","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n groups = defaultdict(list)\n for line in lines:\n fields = dict(p.split(\"=\") for p in line.split(\"|\"))\n groups[fields[\"dept\"]].append(fields)\n return json.dumps(dict(groups))","input_data_sample":"dept=eng|name=Alice|role=SWE\ndept=eng|name=Bob|role=Manager\ndept=sales|name=Carol|role=Rep","output_data_sample":"{\"eng\": [{\"dept\": \"eng\", \"name\": \"Alice\", \"role\": \"SWE\"}, {\"dept\": \"eng\", \"name\": \"Bob\", \"role\": \"Manager\"}], \"sales\": [{\"dept\": \"sales\", \"name\": \"Carol\", \"role\": \"Rep\"}]}","transformation_instruction":"Parse pipe-delimited key=value log lines and group the records into a JSON object keyed by 'dept'."} {"id":"cmsvgmejh01qgg4p283n790qp","kind":"contributor_item","title":"Submission N790QP","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n pairs = re.findall(r\"<(\\w+)>(.*?)</\\1>\", text.strip())\n return json.dumps(dict(pairs))","input_data_sample":"<name>Alice</name><age>30</age><city>Boston</city>","output_data_sample":"{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"Boston\"}","transformation_instruction":"Parse simple flat XML-like tags (no nesting or attributes) into a JSON object."} {"id":"cmsvgmejh01qhg4p26docwie0","kind":"contributor_item","title":"Submission OCWIE0","provisional":false,"output_code":"import re, json\n\ndef transform(text):\n nums = [int(n) for n in re.findall(r\"\\d+\", text)]\n product = 1\n for n in nums:\n product *= n\n return json.dumps({\"sum\": sum(nums), \"product\": product})","input_data_sample":"There are 12 apples, 7 oranges, and 100 bananas in stock.","output_data_sample":"{\"sum\": 119, \"product\": 8400}","transformation_instruction":"Extract all integers from free text and return their sum and product as a JSON object."} {"id":"cmsvgmejg01q5g4p25k8oy8vr","kind":"contributor_item","title":"Submission 8OY8VR","provisional":false,"output_code":"import json, csv, io\n\ndef transform(text):\n data = json.loads(text)\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=list(data[0].keys()))\n writer.writeheader()\n for row in data:\n writer.writerow(row)\n return out.getvalue().strip()","input_data_sample":"[{\"name\": \"Alice\", \"age\": 30}, {\"name\": \"Bob\", \"age\": 25}]","output_data_sample":"name,age\r\nAlice,30\r\nBob,25","transformation_instruction":"Convert a JSON array of flat objects into a CSV string with a header row."} {"id":"cmsvgmejh01qbg4p24y19jwpb","kind":"contributor_item","title":"Submission 19JWPB","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split(\"\\n\") if l.strip()]\n result = []\n ops = {\"+\": lambda a, b: a + b, \"-\": lambda a, b: a - b, \"*\": lambda a, b: a * b, \"/\": lambda a, b: a / b}\n for line in lines:\n a, op, b = line.split()\n result.append(ops[op](float(a), float(b)))\n return json.dumps(result)","input_data_sample":"3 + 4\n10 - 2\n6 * 7\n20 / 4","output_data_sample":"[7.0, 8.0, 42.0, 5.0]","transformation_instruction":"Parse simple two-operand arithmetic expressions (one per line) and return a JSON list of computed results."} {"id":"cmsvhbl3101tlg4p25tg22xp6","kind":"contributor_item","title":"Submission G22XP6","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n total = sum(item[\"price\"] for item in data)\n return str(total)","input_data_sample":"[{\"price\": 10}, {\"price\": 20}, {\"price\": 5}]","output_data_sample":"35","transformation_instruction":"Parse a JSON array of objects and return the sum of the 'price' field as a string."} {"id":"cmsvhbl3101tmg4p2o30murlp","kind":"contributor_item","title":"Submission 0MURLP","provisional":false,"output_code":"def transform(text):\n lines = [l[2:] for l in text.strip().split(\"\\n\") if l.startswith(\"- \")]\n return \"\\n\".join(f\"{i+1}. {item}\" for i, item in enumerate(lines))","input_data_sample":"- apple\n- banana\n- cherry","output_data_sample":"1. apple\n2. banana\n3. cherry","transformation_instruction":"Convert a markdown bullet list (lines starting with '- ') into a numbered plain text list ('1. apple', etc.), joined by newlines."} {"id":"cmsvhbl3101tog4p2mja058ey","kind":"contributor_item","title":"Submission A058EY","provisional":false,"output_code":"def transform(text):\n lines = text.split(\"\\n\")\n return \"\\n\".join(\"|\".join(line.split(\"\\t\")) for line in lines)","input_data_sample":"a\tb\tc\nd\te\tf","output_data_sample":"a|b|c\nd|e|f","transformation_instruction":"Convert tab-separated rows of text into pipe-separated rows ('|' between fields), preserving row order."} {"id":"cmsvhbl3101trg4p2dgp0wbkl","kind":"contributor_item","title":"Submission P0WBKL","provisional":false,"output_code":"from collections import Counter\n\ndef transform(text):\n words = text.lower().split()\n counts = Counter(words)\n ordered = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))\n return \"\\n\".join(f\"{w}:{c}\" for w, c in ordered)","input_data_sample":"the quick brown fox the lazy dog the fox","output_data_sample":"the:3\nfox:2\nbrown:1\ndog:1\nlazy:1\nquick:1","transformation_instruction":"Count word frequencies (case-insensitive) and return lines 'word:count' sorted by count descending then word ascending, joined by newlines."} {"id":"cmsvhbl3101tsg4p29mzohtkf","kind":"contributor_item","title":"Submission ZOHTKF","provisional":false,"output_code":"def transform(text):\n fs = [float(x) for x in text.split(\",\")]\n cs = [round((f - 32) * 5 / 9, 1) for f in fs]\n return \",\".join(str(c) for c in cs)","input_data_sample":"32,68,100,212","output_data_sample":"0.0,20.0,37.8,100.0","transformation_instruction":"Parse a comma-separated list of Fahrenheit temperatures and return a comma-separated list of Celsius equivalents rounded to 1 decimal place."} {"id":"cmsvhbl3101ttg4p26as50fln","kind":"contributor_item","title":"Submission S50FLN","provisional":false,"output_code":"import ast\n\ndef transform(text):\n data = ast.literal_eval(text)\n return repr({v: k for k, v in data.items()})","input_data_sample":"{'a': 1, 'b': 2, 'c': 3}","output_data_sample":"{1: 'a', 2: 'b', 3: 'c'}","transformation_instruction":"Parse a Python dict literal with unique integer values and return the value-to-key inverse mapping (as repr)."} {"id":"cmsvhbl3101tkg4p2yi4gcge0","kind":"contributor_item","title":"Submission 4GCGE0","provisional":false,"output_code":"def transform(text):\n lines = text.strip().split(\"\\n\")\n header = lines[0].split(\",\")\n result = []\n for line in lines[1:]:\n values = line.split(\",\")\n result.append(dict(zip(header, values)))\n return result","input_data_sample":"name,age\nAlice,30\nBob,25","output_data_sample":[{"age":"30","name":"Alice"},{"age":"25","name":"Bob"}],"transformation_instruction":"Parse CSV text (comma-separated, first row header) into a list of dicts mapping header to value; keep age as a string."} {"id":"cmsvhbl3101tpg4p2kjzlvwca","kind":"contributor_item","title":"Submission ZLVWCA","provisional":false,"output_code":"import re\n\ndef transform(text):\n nums = [int(n) for n in re.findall(r\"-?\\d+\", text)]\n return sum(nums)","input_data_sample":"I have 3 apples, 5 oranges and lost 2 along the way.","output_data_sample":10,"transformation_instruction":"Extract all integers appearing in the text and return their sum as an int."} {"id":"cmsvhbl3101tng4p2mfzkdjfy","kind":"contributor_item","title":"Submission ZKDJFY","provisional":false,"output_code":"import ast\n\ndef transform(text):\n data = ast.literal_eval(text)\n def to_camel(k):\n parts = k.split(\"_\")\n return parts[0] + \"\".join(p.capitalize() for p in parts[1:])\n return repr({to_camel(k): v for k, v in data.items()})","input_data_sample":"{'first_name': 'Alice', 'last_name': 'Smith'}","output_data_sample":"{'firstName': 'Alice', 'lastName': 'Smith'}","transformation_instruction":"Parse a Python dict literal with snake_case keys and return a new dict literal (as its repr) with camelCase keys, same values."} {"id":"cmsvhbl3101tqg4p29zd29kj9","kind":"contributor_item","title":"Submission D29KJ9","provisional":false,"output_code":"import ast\n\ndef flatten(lst):\n result = []\n for item in lst:\n if isinstance(item, list):\n result.extend(flatten(item))\n else:\n result.append(item)\n return result\n\ndef transform(text):\n data = ast.literal_eval(text)\n return repr(flatten(data))","input_data_sample":"[[1, 2], [3, [4, 5]], 6]","output_data_sample":"[1, 2, 3, 4, 5, 6]","transformation_instruction":"Parse a Python list literal that may contain nested lists and return a fully flattened list (as its repr)."} {"id":"cmsvhc1w301tvg4p2vlyn9w3t","kind":"contributor_item","title":"Submission YN9W3T","provisional":false,"output_code":"def transform(text):\n result = {}\n for line in text.strip().split(\"\\n\"):\n k, v = line.split(\"=\", 1)\n if v == \"true\":\n v = True\n elif v == \"false\":\n v = False\n elif v.isdigit():\n v = int(v)\n result[k] = v\n return repr(result)","input_data_sample":"host=localhost\nport=8080\ndebug=true","output_data_sample":"{'host': 'localhost', 'port': 8080, 'debug': True}","transformation_instruction":"Parse simple 'key=value' lines into a dict, converting 'true'/'false' to booleans and numeric strings to ints, and return the dict's repr."} {"id":"cmsvhc1w301u1g4p2rolne3zd","kind":"contributor_item","title":"Submission LNE3ZD","provisional":false,"output_code":"import ast\n\ndef transform(text):\n data = ast.literal_eval(text)\n result = {\"even\": [], \"odd\": []}\n for n in data:\n if n % 2 == 0:\n result[\"even\"].append(n)\n else:\n result[\"odd\"].append(n)\n return repr(result)","input_data_sample":"[1, 2, 3, 4, 5, 6, 7]","output_data_sample":"{'even': [2, 4, 6], 'odd': [1, 3, 5, 7]}","transformation_instruction":"Parse a Python list literal of integers and bucket them into a dict with keys 'even' and 'odd', each mapping to a list of the matching numbers in original order, returned as repr."} {"id":"cmsvhc1w301tyg4p221p80khb","kind":"contributor_item","title":"Submission P80KHB","provisional":false,"output_code":"import ast\n\ndef transform(text):\n data = ast.literal_eval(text)\n if not data:\n return repr([])\n result = []\n prev = data[0]\n count = 1\n for item in data[1:]:\n if item == prev:\n count += 1\n else:\n result.append((prev, count))\n prev = item\n count = 1\n result.append((prev, count))\n return repr(result)","input_data_sample":"[1, 1, 1, 2, 2, 3, 1, 1]","output_data_sample":"[(1, 3), (2, 2), (3, 1), (1, 2)]","transformation_instruction":"Parse a Python list literal and run-length-encode consecutive duplicates into a list of (value, count) tuples, returned as repr."} {"id":"cmsvhc1w301u2g4p26dvueeb9","kind":"contributor_item","title":"Submission VUEEB9","provisional":false,"output_code":"import re\n\ndef transform(text):\n return re.sub(r\"\\d+\", lambda m: \"X\" * len(m.group()), text)","input_data_sample":"Card ending in 4242, call 555-1234 today","output_data_sample":"Card ending in XXXX, call XXX-XXXX today","transformation_instruction":"Replace every maximal run of digits in the text with the same number of 'X' characters, leaving everything else unchanged."} {"id":"cmsvhc1w301tug4p25dk2lg22","kind":"contributor_item","title":"Submission K2LG22","provisional":false,"output_code":"import ast\n\ndef transform(text):\n data = ast.literal_eval(text)\n ordered = sorted(data, key=lambda t: (-t[1], t[0]))\n lines = [f\"{i+1}. {name} - {score}\" for i, (name, score) in enumerate(ordered)]\n return \"\\n\".join(lines)","input_data_sample":"[('Alice', 90), ('Bob', 75), ('Carol', 90)]","output_data_sample":"1. Alice - 90\n2. Carol - 90\n3. Bob - 75","transformation_instruction":"Parse a list of (name, score) tuples and produce leaderboard text, one line per entry as \"rank. name - score\", sorted by score descending then name ascending, numbering rows sequentially (no shared ranks for ties)."} {"id":"cmsvhc1w301twg4p2zwgsv66y","kind":"contributor_item","title":"Submission GSV66Y","provisional":false,"output_code":"def transform(text):\n parts = [p.strip() for p in text.split(\",\")]\n out = []\n for p in parts:\n count_str, noun = p.split(\" \", 1)\n count = int(count_str)\n if count != 1:\n noun = noun + \"s\"\n out.append(f\"{count} {noun}\")\n return \", \".join(out)","input_data_sample":"3 cat, 1 dog, 5 bird","output_data_sample":"3 cats, 1 dog, 5 birds","transformation_instruction":"Parse a comma-separated 'count noun' list and return a comma-separated string where nouns with count != 1 get an 's' appended (simple pluralization)."} {"id":"cmsvhc1w301tzg4p28sm3lh5x","kind":"contributor_item","title":"Submission M3LH5X","provisional":false,"output_code":"import re\n\ndef transform(text):\n m = re.match(r\"(\\d+)h(\\d+)m\", text)\n hours, minutes = int(m.group(1)), int(m.group(2))\n return hours * 60 + minutes","input_data_sample":"2h15m","output_data_sample":135,"transformation_instruction":"Parse a duration string in the form '<hours>h<minutes>m' (both parts always present) and return the total number of minutes as an int."} {"id":"cmsvhc1w301txg4p2magrf3px","kind":"contributor_item","title":"Submission GRF3PX","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n keys = list(data[0].keys())\n lines = [\",\".join(keys)]\n for item in data:\n lines.append(\",\".join(str(item[k]) for k in keys))\n return \"\\n\".join(lines)","input_data_sample":"[{\"name\": \"Alice\", \"age\": 30}, {\"name\": \"Bob\", \"age\": 25}]","output_data_sample":"name,age\nAlice,30\nBob,25","transformation_instruction":"Parse a JSON array of objects with the same keys and return CSV text: header row from keys (in first-seen order), then one row per object, comma-separated."} {"id":"cmsvhc1w301u3g4p2l4kg80ry","kind":"contributor_item","title":"Submission KG80RY","provisional":false,"output_code":"import ast\n\ndef transform(text):\n data = ast.literal_eval(text)\n ranges = sorted(data, key=lambda t: t[0])\n merged = []\n for start, end in ranges:\n if merged and start <= merged[-1][1]:\n merged[-1] = (merged[-1][0], max(merged[-1][1], end))\n else:\n merged.append((start, end))\n return repr(merged)","input_data_sample":"[(1, 3), (2, 6), (8, 10), (15, 18)]","output_data_sample":"[(1, 6), (8, 10), (15, 18)]","transformation_instruction":"Parse a list of (start, end) integer range tuples and merge any overlapping or touching ranges (touching means end of one equals start of next), returning the merged list of tuples sorted by start, as repr."} {"id":"cmsvhc1w301u0g4p2eprua6h7","kind":"contributor_item","title":"Submission RUA6H7","provisional":false,"output_code":"def transform(text):\n small = {\"of\", \"the\", \"and\", \"a\"}\n words = text.split()\n result = []\n for i, w in enumerate(words):\n if i > 0 and w in small:\n result.append(w)\n else:\n result.append(w.capitalize())\n return \" \".join(result)","input_data_sample":"the lord of the rings and a tale of two cities","output_data_sample":"The Lord of the Rings and a Tale of Two Cities","transformation_instruction":"Title-case the given sentence, but keep the small words 'of', 'the', 'and', 'a' lowercase unless they are the first word."} {"id":"cmsvmgr2k01wig4p2wlzo76hx","kind":"contributor_item","title":"Submission ZO76HX","provisional":false,"output_code":"def transform(text):\n result = {}\n section = None\n for line in text.strip().split('\\n'):\n line = line.strip()\n if not line:\n continue\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1]\n result[section] = {}\n else:\n k, v = line.split('=', 1)\n result[section][k] = v\n return repr(result)","input_data_sample":"[server]\nhost=localhost\nport=8080\n\n[client]\ntimeout=30","output_data_sample":"{'server': {'host': 'localhost', 'port': '8080'}, 'client': {'timeout': '30'}}","transformation_instruction":"Parse a simple INI-style config (sections in brackets, key=value lines) into a nested dict and return its repr."} {"id":"cmsvmgr2k01wlg4p2pdqjoqj0","kind":"contributor_item","title":"Submission QJOQJ0","provisional":false,"output_code":"import ast\n\ndef transform(text):\n list_part, n_part = text.split('|')\n data = ast.literal_eval(list_part)\n n = int(n_part) % len(data)\n return repr(data[n:] + data[:n])","input_data_sample":"[1, 2, 3, 4, 5]|2","output_data_sample":"[3, 4, 5, 1, 2]","transformation_instruction":"Parse 'LIST|N' where LIST is a Python list literal and N is an int; rotate the list left by N positions and return its repr."} {"id":"cmsvmgr2k01whg4p266tbsf97","kind":"contributor_item","title":"Submission TBSF97","provisional":false,"output_code":"import re\n\ndef transform(text):\n items = re.findall(r'<item>(.*?)</item>', text)\n return ','.join(items)","input_data_sample":"<root><item>apple</item><item>banana</item><item>cherry</item></root>","output_data_sample":"apple,banana,cherry","transformation_instruction":"Extract the text content of every <item> tag and return a comma-separated string."} {"id":"cmsvmgr2k01wng4p23zz0rpvz","kind":"contributor_item","title":"Submission Z0RPVZ","provisional":false,"output_code":"def transform(text):\n words = text.split()\n return ' '.join(w[::-1] for w in words)","input_data_sample":"hello world foo","output_data_sample":"olleh dlrow oof","transformation_instruction":"Reverse the characters within each word but keep the words in their original order, joined by spaces."} {"id":"cmsvmgr2k01wgg4p27e5s64nl","kind":"contributor_item","title":"Submission 5S64NL","provisional":false,"output_code":"def transform(text):\n parts = text.split(',')\n return ','.join(p.replace('_', '-') for p in parts)","input_data_sample":"first_name,last_name,phone_number","output_data_sample":"first-name,last-name,phone-number","transformation_instruction":"Convert a comma-separated list of snake_case identifiers into kebab-case (underscores to hyphens)."} {"id":"cmsvmgr2k01wjg4p2274lso96","kind":"contributor_item","title":"Submission 4LSO96","provisional":false,"output_code":"import re\n\ndef roman_to_int(s):\n vals = {'I': 1, 'V': 5, 'X': 10}\n total = 0\n for i in range(len(s)):\n v = vals[s[i]]\n if i + 1 < len(s) and v < vals[s[i + 1]]:\n total -= v\n else:\n total += v\n return total\n\ndef transform(text):\n tokens = re.findall(r'\\b[IVX]+\\b', text)\n return sum(roman_to_int(t) for t in tokens)","input_data_sample":"Chapter IV covers section II and III, but not I.","output_data_sample":10,"transformation_instruction":"Extract all standalone Roman numerals (I, II, III, IV, uppercase, word-bounded) from the text and return their sum as an int, converting each properly."} {"id":"cmsvmgr2k01wkg4p2wy2bthzg","kind":"contributor_item","title":"Submission 2BTHZG","provisional":false,"output_code":"def transform(text):\n fs = [float(x) for x in text.split(',')]\n ks = [round((f - 32) * 5 / 9 + 273.15, 2) for f in fs]\n return ','.join(str(k) for k in ks)","input_data_sample":"32,212,98.6","output_data_sample":"273.15,373.15,310.15","transformation_instruction":"Parse a comma-separated list of Fahrenheit temperatures and return a comma-separated list of Kelvin equivalents rounded to 2 decimals."} {"id":"cmsvmgr2k01wmg4p2694v2s5u","kind":"contributor_item","title":"Submission 4V2S5U","provisional":false,"output_code":"def transform(text):\n rows = [[int(x) for x in line.split(',')] for line in text.strip().split('\\n')]\n cols = list(zip(*rows))\n return '\\n'.join(','.join(str(x) for x in col) for col in cols)","input_data_sample":"1,2,3\n4,5,6","output_data_sample":"1,4\n2,5\n3,6","transformation_instruction":"Parse comma-separated rows of numbers (one row per line) and return the transposed matrix in the same comma/newline format."} {"id":"cmsvmgr2k01wog4p2fabjnwfa","kind":"contributor_item","title":"Submission BJNWFA","provisional":false,"output_code":"def transform(text):\n vowels = set('aeiouAEIOU')\n words = text.split()\n return repr({w: sum(1 for c in w if c in vowels) for w in words})","input_data_sample":"sky rhythm apple","output_data_sample":"{'sky': 0, 'rhythm': 0, 'apple': 2}","transformation_instruction":"Split text into words and count vowels (a, e, i, o, u, case-insensitive) in each word, returning a dict of word to vowel count as repr."} {"id":"cmsvmgr2k01wpg4p2zlfk1nsl","kind":"contributor_item","title":"Submission FK1NSL","provisional":false,"output_code":"import re\n\ndef transform(text):\n parts = text.split(',')\n def conv(s):\n return re.sub(r'(?<!^)(?=[A-Z])', '_', s).lower()\n return ','.join(conv(p) for p in parts)","input_data_sample":"firstName,lastName,phoneNumber","output_data_sample":"first_name,last_name,phone_number","transformation_instruction":"Convert a comma-separated list of camelCase identifiers into snake_case."} {"id":"cmsvmky1u01y1g4p2bdbrh3gk","kind":"contributor_item","title":"Submission BRH3GK","provisional":false,"output_code":"import json\n\ndef flatten(d, prefix=''):\n result = {}\n for k, v in d.items():\n key = f'{prefix}.{k}' if prefix else k\n if isinstance(v, dict):\n result.update(flatten(v, key))\n else:\n result[key] = v\n return result\n\ndef transform(text):\n data = json.loads(text)\n return repr(flatten(data))","input_data_sample":"{\"a\": {\"b\": 1, \"c\": {\"d\": 2}}}","output_data_sample":"{'a.b': 1, 'a.c.d': 2}","transformation_instruction":"Parse a nested JSON object and flatten it into a single-level dict with dot-notation keys, returned as its repr."} {"id":"cmsvmky1t01xxg4p28ixqsztk","kind":"contributor_item","title":"Submission XQSZTK","provisional":false,"output_code":"import ast\n\ndef transform(text):\n data = ast.literal_eval(text)\n lines = ['name,age']\n for name, age in data:\n lines.append(f'{name},{age}')\n return '\\n'.join(lines)","input_data_sample":"[('Alice', 30), ('Bob', 25)]","output_data_sample":"name,age\nAlice,30\nBob,25","transformation_instruction":"Parse a Python list of (name, age) tuples and return CSV text with header 'name,age' then one row per tuple."} {"id":"cmsvmky1t01xzg4p2dlyjeb2p","kind":"contributor_item","title":"Submission YJEB2P","provisional":false,"output_code":"def transform(text):\n nums = [int(x) for x in text.split(',')]\n return sum(nums)","input_data_sample":"001,022,333,004","output_data_sample":360,"transformation_instruction":"Parse a comma-separated list of zero-padded number strings and return their sum as an int."} {"id":"cmsvmky1t01xug4p24zso2msr","kind":"contributor_item","title":"Submission SO2MSR","provisional":false,"output_code":"import re\n\ndef transform(text):\n amounts = [float(m) for m in re.findall(r'\\$(\\d+\\.\\d{2})', text)]\n return round(sum(amounts), 2)","input_data_sample":"Item A costs $12.50, Item B costs $7.25, and shipping is $3.00.","output_data_sample":22.75,"transformation_instruction":"Extract all dollar amounts (format $X.XX) from the text and return their total as a float rounded to 2 decimals."} {"id":"cmsvmky1t01xwg4p2bze9yjq0","kind":"contributor_item","title":"Submission E9YJQ0","provisional":false,"output_code":"def transform(text):\n result = {}\n for pair in text.split(';'):\n k, v = pair.split(':', 1)\n result[k] = v\n return repr(result)","input_data_sample":"name:Alice;age:30;city:NYC","output_data_sample":"{'name': 'Alice', 'age': '30', 'city': 'NYC'}","transformation_instruction":"Parse a semicolon-separated list of key:value pairs into a dict and return its repr."} {"id":"cmsvmky1t01xvg4p2ige5h4zl","kind":"contributor_item","title":"Submission E5H4ZL","provisional":false,"output_code":"def transform(text):\n stopwords = {'the', 'a', 'and', 'over'}\n words = text.split()\n return sum(1 for w in words if w not in stopwords)","input_data_sample":"the quick brown fox jumps over the lazy dog and a cat","output_data_sample":7,"transformation_instruction":"Count words in the text excluding a small stopword list ('the', 'a', 'and', 'over'), returning the count as an int."} {"id":"cmsvmky1u01y2g4p2gyzy6z1i","kind":"contributor_item","title":"Submission ZY6Z1I","provisional":false,"output_code":"def transform(text):\n result = {'letters': 0, 'digits': 0, 'other': 0}\n for ch in text:\n if ch.isalpha():\n result['letters'] += 1\n elif ch.isdigit():\n result['digits'] += 1\n else:\n result['other'] += 1\n return repr(result)","input_data_sample":"Hello123! World456?","output_data_sample":"{'letters': 10, 'digits': 6, 'other': 3}","transformation_instruction":"Count how many characters in the text are letters, digits, or 'other' (neither), returning a dict repr with keys 'letters', 'digits', 'other'."} {"id":"cmsvmky1t01xyg4p2c6h1hfv9","kind":"contributor_item","title":"Submission H1HFV9","provisional":false,"output_code":"def transform(text):\n emails = text.split(',')\n domains = []\n seen = set()\n for e in emails:\n d = e.split('@')[1]\n if d not in seen:\n seen.add(d)\n domains.append(d)\n return ','.join(domains)","input_data_sample":"alice@example.com,bob@test.org,carol@example.com","output_data_sample":"example.com,test.org","transformation_instruction":"Parse a comma-separated list of email addresses and return a comma-separated list of unique domains in first-seen order."} {"id":"cmsvmky1t01y0g4p2h8kj78qz","kind":"contributor_item","title":"Submission KJ78QZ","provisional":false,"output_code":"def transform(text):\n words = text.split()\n lines = []\n current = ''\n for w in words:\n candidate = (current + ' ' + w).strip()\n if len(candidate) <= 15:\n current = candidate\n else:\n if current:\n lines.append(current)\n current = w\n if current:\n lines.append(current)\n return '\\n'.join(lines)","input_data_sample":"the quick brown fox jumps over the lazy dog","output_data_sample":"the quick brown\nfox jumps over\nthe lazy dog","transformation_instruction":"Wrap the text into lines of at most 15 characters, breaking only on word boundaries, joined by newlines."} {"id":"cmsvmky1u01y3g4p20uo3q8bo","kind":"contributor_item","title":"Submission O3Q8BO","provisional":false,"output_code":"def transform(text):\n lines = text.strip().split('\\n')\n result = []\n i = 0\n while i < len(lines):\n j = i\n while j < len(lines) and lines[j] == lines[i]:\n j += 1\n count = j - i\n if count == 1:\n result.append(lines[i])\n else:\n result.append(f'{lines[i]} x{count}')\n i = j\n return '\\n'.join(result)","input_data_sample":"apple\napple\napple\nbanana\nbanana\ncherry","output_data_sample":"apple x3\nbanana x2\ncherry","transformation_instruction":"Given lines of text, collapse consecutive duplicate lines into 'line xN' format (omit xN if count is 1), one per output line."} {"id":"cmsvniv0d0205g4p2gw687fgh","kind":"contributor_item","title":"Submission 687FGH","provisional":false,"output_code":"import json\n\ndef transform(text):\n return json.dumps(text.split(','))","input_data_sample":"apple,banana,cherry,42","output_data_sample":"[\"apple\", \"banana\", \"cherry\", \"42\"]","transformation_instruction":"Parse a single comma-separated line and return it as a JSON array string."} {"id":"cmsvniv0d0207g4p2x1u9as4q","kind":"contributor_item","title":"Submission U9AS4Q","provisional":false,"output_code":"def transform(text):\n counts = {}\n for ch in text:\n if not ch.isalnum() and not ch.isspace():\n counts[ch] = counts.get(ch, 0) + 1\n return repr(counts)","input_data_sample":"Hello, world! How are you? Fine; thanks.","output_data_sample":"{',': 1, '!': 1, '?': 1, ';': 1, '.': 1}","transformation_instruction":"Count each punctuation character (non-alphanumeric, non-space) occurrence, return dict repr."} {"id":"cmsvniv0d020eg4p2rcmgekc1","kind":"contributor_item","title":"Submission MGEKC1","provisional":false,"output_code":"def transform(text):\n nums = [int(x) for x in text.split(',')]\n return sum(n * n for n in nums)","input_data_sample":"1,2,3,4,5","output_data_sample":55,"transformation_instruction":"Parse a comma-separated list of integers and return the sum of their squares."} {"id":"cmsvniv0d020gg4p2ms0u2k7p","kind":"contributor_item","title":"Submission 0U2K7P","provisional":false,"output_code":"def transform(text):\n filename = text.rsplit('/', 1)[-1]\n return filename.rsplit('.', 1)[0]","input_data_sample":"/usr/local/bin/script.tar.gz","output_data_sample":"script.tar","transformation_instruction":"Given a file path, extract just the filename without its final extension."} {"id":"cmsvniv0d020lg4p2r637nls8","kind":"contributor_item","title":"Submission 37NLS8","provisional":false,"output_code":"def transform(text):\n vals = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}\n total = 0\n for i in range(len(text)):\n v = vals[text[i]]\n if i + 1 < len(text) and v < vals[text[i + 1]]:\n total -= v\n else:\n total += v\n return total","input_data_sample":"MMXIV","output_data_sample":2014,"transformation_instruction":"Convert a single standalone Roman numeral string into its integer value."} {"id":"cmsvniv0d020kg4p274qrofe9","kind":"contributor_item","title":"Submission QROFE9","provisional":false,"output_code":"def transform(text):\n nums = [int(x) for x in text.split(',')]\n running = []\n total = 0\n for n in nums:\n total += n\n running.append(total)\n return ','.join(str(x) for x in running)","input_data_sample":"3,1,4,1,5","output_data_sample":"3,4,8,9,14","transformation_instruction":"Parse a comma-separated list of integers and return the running cumulative sum, comma-separated."} {"id":"cmsvniv0d0204g4p2cl364vva","kind":"contributor_item","title":"Submission 364VVA","provisional":false,"output_code":"import re\n\ndef transform(text):\n nums = [int(x) for x in re.findall(r'\\d+', text)]\n return round(sum(nums) / len(nums), 2)","input_data_sample":"Order 12 items at 3 dollars, plus 7 more at 5 dollars","output_data_sample":6.75,"transformation_instruction":"Extract all integers from the text and return their average rounded to 2 decimals."} {"id":"cmsvniv0d0206g4p2zr32p4nn","kind":"contributor_item","title":"Submission 32P4NN","provisional":false,"output_code":"def transform(text):\n return ' '.join(w.capitalize() for w in text.split())","input_data_sample":"the great gatsby is a classic novel","output_data_sample":"The Great Gatsby Is A Classic Novel","transformation_instruction":"Convert each word in the sentence to title case (first letter uppercase)."} {"id":"cmsvniv0d0209g4p2m6xa4gdx","kind":"contributor_item","title":"Submission XA4GDX","provisional":false,"output_code":"def transform(text):\n return ' '.join(reversed(text.split()))","input_data_sample":"the quick brown fox jumps","output_data_sample":"jumps fox brown quick the","transformation_instruction":"Reverse the order of words in the sentence (characters within words stay the same)."} {"id":"cmsvniv0d0208g4p2lzsthtwl","kind":"contributor_item","title":"Submission STHTWL","provisional":false,"output_code":"def transform(text):\n lines = text.strip().split('\\n')\n header = lines[0].split('|')\n rows = []\n for line in lines[1:]:\n values = line.split('|')\n rows.append(dict(zip(header, values)))\n return repr(rows)","input_data_sample":"name|age|city\nAlice|30|NYC\nBob|25|LA","output_data_sample":"[{'name': 'Alice', 'age': '30', 'city': 'NYC'}, {'name': 'Bob', 'age': '25', 'city': 'LA'}]","transformation_instruction":"Parse a pipe-delimited table (first line is header) into a list of dicts, return its repr."} {"id":"cmsvniv0d020ag4p26dgznb69","kind":"contributor_item","title":"Submission GZNB69","provisional":false,"output_code":"def transform(text):\n cs = [float(x) for x in text.split(',')]\n fs = [round(c * 9 / 5 + 32, 1) for c in cs]\n return ','.join(str(f) for f in fs)","input_data_sample":"0,20,37,100","output_data_sample":"32.0,68.0,98.6,212.0","transformation_instruction":"Parse a comma-separated list of Celsius temperatures and return Fahrenheit equivalents, comma-separated, rounded to 1 decimal."} {"id":"cmsvniv0d020ig4p22eq3rbjf","kind":"contributor_item","title":"Submission Q3RBJF","provisional":false,"output_code":"def transform(text):\n result = {}\n for pair in text.split('&'):\n k, v = pair.split('=')\n result[k] = v\n return repr(result)","input_data_sample":"a=1&b=2&c=3","output_data_sample":"{'a': '1', 'b': '2', 'c': '3'}","transformation_instruction":"Parse a URL query string (key=value pairs joined by &) into a dict, return its repr."} {"id":"cmsvniv0d020mg4p27gvf81ou","kind":"contributor_item","title":"Submission VF81OU","provisional":false,"output_code":"def transform(text):\n return ''.join(ch for ch in text if ch.lower() not in 'aeiou')","input_data_sample":"The Quick Brown Fox Jumps","output_data_sample":"Th Qck Brwn Fx Jmps","transformation_instruction":"Remove all vowels (a, e, i, o, u, case-insensitive) from the text."} {"id":"cmsvniv0d020jg4p2ohejrmf9","kind":"contributor_item","title":"Submission EJRMF9","provisional":false,"output_code":"import re\n\ndef transform(text):\n return ','.join(re.findall(r'\\b[A-Z][a-zA-Z]*\\b', text))","input_data_sample":"Alice went to Paris with Bob and saw the Eiffel Tower","output_data_sample":"Alice,Paris,Bob,Eiffel,Tower","transformation_instruction":"Extract all capitalized words (starting with an uppercase letter) from the text, comma-separated in order."} {"id":"cmsvniv0d0203g4p2zfqv86qa","kind":"contributor_item","title":"Submission QV86QA","provisional":false,"output_code":"def transform(text):\n parts = text.split(',')\n def conv(s):\n words = s.split('-')\n return words[0] + ''.join(w.capitalize() for w in words[1:])\n return ','.join(conv(p) for p in parts)","input_data_sample":"first-name,last-name,phone-number","output_data_sample":"firstName,lastName,phoneNumber","transformation_instruction":"Convert a comma-separated list of kebab-case identifiers into camelCase."} {"id":"cmsvniv0d020bg4p2hx08c7kw","kind":"contributor_item","title":"Submission 08C7KW","provisional":false,"output_code":"import re\n\ndef transform(text):\n return ','.join(re.findall(r'#\\w+', text))","input_data_sample":"Loving the #sunset and #beach vibes today! #travel","output_data_sample":"#sunset,#beach,#travel","transformation_instruction":"Extract all hashtags from the text and return them comma-separated in order of appearance."} {"id":"cmsvniv0d020cg4p2vnygneyl","kind":"contributor_item","title":"Submission YGNEYL","provisional":false,"output_code":"def transform(text):\n result = {}\n for group in text.split(';'):\n k, v = group.split(',')\n result[k] = v\n return repr(result)","input_data_sample":"a,1;b,2;c,3","output_data_sample":"{'a': '1', 'b': '2', 'c': '3'}","transformation_instruction":"Parse a semicolon-separated list of comma-separated key,value pairs into a dict, return its repr."} {"id":"cmsvniv0d020dg4p2pgd0p43d","kind":"contributor_item","title":"Submission D0P43D","provisional":false,"output_code":"def transform(text):\n return ' '.join(w[:4] for w in text.split())","input_data_sample":"elephant giraffe hippopotamus cat","output_data_sample":"elep gira hipp cat","transformation_instruction":"Truncate each word in the text to a maximum of 4 characters, keeping words joined by spaces."} {"id":"cmsvniv0d020fg4p2vdvzfjrb","kind":"contributor_item","title":"Submission VZFJRB","provisional":false,"output_code":"def transform(text):\n nums = [str(int(b, 2)) for b in text.split(',')]\n return ','.join(nums)","input_data_sample":"101,1111,1000,11","output_data_sample":"5,15,8,3","transformation_instruction":"Parse a comma-separated list of binary number strings and return their decimal equivalents, comma-separated."} {"id":"cmsvniv0d020hg4p22uf328u8","kind":"contributor_item","title":"Submission F328U8","provisional":false,"output_code":"import re\n\ndef transform(text):\n parts = re.split(r'[.!?]', text)\n return sum(1 for p in parts if p.strip())","input_data_sample":"Hello world. How are you? I am fine! Great.","output_data_sample":4,"transformation_instruction":"Count the number of sentences in the text (split on '.', '!', '?', ignoring empty fragments)."} {"id":"cmsvnvuek0234g4p2zvoisd0i","kind":"contributor_item","title":"Submission OISD0I","provisional":false,"output_code":"def transform(text):\n lines = text.split('\\n')\n return '\\n'.join(l[::-1] for l in lines)","input_data_sample":"hello\nworld\nfoo","output_data_sample":"olleh\ndlrow\noof","transformation_instruction":"Reverse the characters of each line in the text, keeping the line order unchanged, joined by newlines."} {"id":"cmsvnvuek022yg4p2k1hru9lx","kind":"contributor_item","title":"Submission HRU9LX","provisional":false,"output_code":"import json\n\ndef transform(text):\n matrix = json.loads(text)\n return sum(matrix[i][i] for i in range(len(matrix)))","input_data_sample":"[[1, 2, 3], [4, 5, 6], [7, 8, 9]]","output_data_sample":15,"transformation_instruction":"Parse a JSON matrix (list of lists) and return the sum of its main diagonal."} {"id":"cmsvnvuek022wg4p20njx3lwk","kind":"contributor_item","title":"Submission JX3LWK","provisional":false,"output_code":"def transform(text):\n parts = text.split(',')\n def conv(s):\n return ''.join(w.capitalize() for w in s.split('_'))\n return ','.join(conv(p) for p in parts)","input_data_sample":"first_name,last_name,phone_number","output_data_sample":"FirstName,LastName,PhoneNumber","transformation_instruction":"Convert a comma-separated list of snake_case identifiers into PascalCase."} {"id":"cmsvnvuek023dg4p2oss3d99s","kind":"contributor_item","title":"Submission S3D99S","provisional":false,"output_code":"def transform(text):\n return sum(1 for w in text.split() if len(w) > 5)","input_data_sample":"the quick brown fox jumps over lazy elephant","output_data_sample":1,"transformation_instruction":"Count how many words in the text have more than 5 characters."} {"id":"cmsvnvuek0232g4p21i7e6ten","kind":"contributor_item","title":"Submission 7E6TEN","provisional":false,"output_code":"def transform(text):\n ranges = []\n for part in text.split(','):\n a, b = part.split('-')\n ranges.append([int(a), int(b)])\n ranges.sort(key=lambda r: r[0])\n merged = [ranges[0]]\n for start, end in ranges[1:]:\n if start <= merged[-1][1]:\n merged[-1][1] = max(merged[-1][1], end)\n else:\n merged.append([start, end])\n return ','.join(f'{a}-{b}' for a, b in merged)","input_data_sample":"1-3,2-5,8-10,9-12","output_data_sample":"1-5,8-12","transformation_instruction":"Parse a comma-separated list of N-M numeric ranges, merge overlapping ones, and return the merged ranges as N-M pairs comma-separated."} {"id":"cmsvnvuek0237g4p23gub7swa","kind":"contributor_item","title":"Submission UB7SWA","provisional":false,"output_code":"def transform(text):\n total = 0.0\n for part in text.split(','):\n count, price = part.split('x')\n total += int(count) * float(price)\n return total","input_data_sample":"3x10,2x5,4x2.5","output_data_sample":50,"transformation_instruction":"Parse a comma-separated list of 'COUNTxPRICE' entries and return the total cost as a float."} {"id":"cmsvnvuek0238g4p2s3smcml9","kind":"contributor_item","title":"Submission SMCML9","provisional":false,"output_code":"import re\n\ndef transform(text):\n urls = text.split(',')\n domains = [re.match(r'https?://([^/]+)', u).group(1) for u in urls]\n return ','.join(domains)","input_data_sample":"https://www.example.com/page,http://api.test.org/v1,https://sub.domain.io","output_data_sample":"www.example.com,api.test.org,sub.domain.io","transformation_instruction":"Parse a comma-separated list of URLs and return their domain names (host part, without scheme or path), comma-separated."} {"id":"cmsvnvuek022xg4p2ptnm6qcj","kind":"contributor_item","title":"Submission NM6QCJ","provisional":false,"output_code":"import re\n\ndef transform(text):\n return re.sub(r'\\d{3}-\\d{3}-\\d{4}', 'XXX-XXX-XXXX', text)","input_data_sample":"Call me at 555-123-4567 or 555-987-6543 anytime.","output_data_sample":"Call me at XXX-XXX-XXXX or XXX-XXX-XXXX anytime.","transformation_instruction":"Find all phone numbers (format XXX-XXX-XXXX) in the text and replace their digits with X, keeping hyphens."} {"id":"cmsvnvuek022zg4p2ohc0kt7n","kind":"contributor_item","title":"Submission C0KT7N","provisional":false,"output_code":"def transform(text):\n return ''.join(w[0].upper() for w in text.split())","input_data_sample":"National Aeronautics and Space Administration","output_data_sample":"NAASA","transformation_instruction":"Convert a phrase into an acronym using the first letter of each word, uppercase, no separators."} {"id":"cmsvnvuek0231g4p2pnsj3qmw","kind":"contributor_item","title":"Submission SJ3QMW","provisional":false,"output_code":"def transform(text):\n ks = [float(x) for x in text.split(',')]\n cs = [round(k - 273.15, 2) for k in ks]\n return ','.join(str(c) for c in cs)","input_data_sample":"273.15,300,373.15","output_data_sample":"0.0,26.85,100.0","transformation_instruction":"Parse a comma-separated list of Kelvin temperatures and return Celsius equivalents, comma-separated, rounded to 2 decimals."} {"id":"cmsvnvuek0233g4p2rhlw568u","kind":"contributor_item","title":"Submission LW568U","provisional":false,"output_code":"from collections import Counter\n\ndef transform(text):\n words = text.split()\n return Counter(words).most_common(1)[0][0]","input_data_sample":"the cat sat on the mat the cat ran","output_data_sample":"the","transformation_instruction":"Find the most frequently occurring word in the text and return it."} {"id":"cmsvnvuek0230g4p2tt02spn7","kind":"contributor_item","title":"Submission 02SPN7","provisional":false,"output_code":"import re\n\ndef transform(text):\n return ','.join(re.findall(r'\\(([^)]*)\\)', text))","input_data_sample":"The result (computed carefully) was correct (finally)","output_data_sample":"computed carefully,finally","transformation_instruction":"Extract all text found inside parentheses and return them comma-separated in order."} {"id":"cmsvnvuek0236g4p291tenu3l","kind":"contributor_item","title":"Submission TENU3L","provisional":false,"output_code":"def transform(text):\n scores = [int(x) for x in text.split(',')]\n def grade(s):\n if s >= 90:\n return 'A'\n if s >= 80:\n return 'B'\n if s >= 70:\n return 'C'\n if s >= 60:\n return 'D'\n return 'F'\n return ','.join(grade(s) for s in scores)","input_data_sample":"95,82,71,60,45","output_data_sample":"A,B,C,D,F","transformation_instruction":"Parse a comma-separated list of numeric scores (0-100) and convert each to a letter grade (A:90+, B:80+, C:70+, D:60+, F:below 60), comma-separated."} {"id":"cmsvnvuek0235g4p28xk4h609","kind":"contributor_item","title":"Submission K4H609","provisional":false,"output_code":"import re\n\ndef transform(text):\n pairs = re.findall(r'\"([^\"]*)\"|\\'([^\\']*)\\'', text)\n return ','.join(a if a else b for a, b in pairs)","input_data_sample":"She said \"hello\" and then 'goodbye' quickly","output_data_sample":"hello,goodbye","transformation_instruction":"Extract all substrings enclosed in single or double quotes, comma-separated in order."} {"id":"cmsvnvuek023ag4p2x1i01551","kind":"contributor_item","title":"Submission I01551","provisional":false,"output_code":"def transform(text):\n nums = [int(x) for x in text.split(',')]\n evens = [n for n in nums if n % 2 == 0]\n return ','.join(str(n) for n in evens)","input_data_sample":"1,2,3,4,5,6,7,8,9,10","output_data_sample":"2,4,6,8,10","transformation_instruction":"Parse a comma-separated list of integers and return only the even ones, comma-separated."} {"id":"cmsvnvuek0239g4p2kqkf0co2","kind":"contributor_item","title":"Submission KF0CO2","provisional":false,"output_code":"def transform(text):\n n = int(text)\n ones = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine',\n 'ten', 'eleven', 'twelve', 'thirteen', 'fourteen', 'fifteen', 'sixteen', 'seventeen', 'eighteen', 'nineteen']\n tens = ['', '', 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety']\n def below_100(n):\n if n < 20:\n return ones[n]\n return tens[n // 10] + (' ' + ones[n % 10] if n % 10 else '')\n if n < 100:\n return below_100(n)\n hundreds = n // 100\n rest = n % 100\n result = ones[hundreds] + ' hundred'\n if rest:\n result += ' ' + below_100(rest)\n return result","input_data_sample":"342","output_data_sample":"three hundred forty two","transformation_instruction":"Convert an integer (0-999) into its English words representation, space-separated, lowercase."} {"id":"cmsvnvuek023bg4p28o76f0gs","kind":"contributor_item","title":"Submission 76F0GS","provisional":false,"output_code":"def transform(text):\n names = text.split(',')\n sorted_names = sorted(names, key=lambda n: n.split()[-1])\n return ','.join(sorted_names)","input_data_sample":"John Smith,Alice Adams,Bob Zephyr,Carol Brown","output_data_sample":"Alice Adams,Carol Brown,John Smith,Bob Zephyr","transformation_instruction":"Parse a comma-separated list of 'First Last' names and sort them by last name, returning the sorted 'First Last' list comma-separated."} {"id":"cmsvnvuek023cg4p2s28m38wx","kind":"contributor_item","title":"Submission 8M38WX","provisional":false,"output_code":"def transform(text):\n colors = text.split(',')\n sums = []\n for c in colors:\n c = c.lstrip('#')\n r, g, b = int(c[0:2], 16), int(c[2:4], 16), int(c[4:6], 16)\n sums.append(str(r + g + b))\n return ','.join(sums)","input_data_sample":"#FF0000,#00FF00,#0000FF","output_data_sample":"255,255,255","transformation_instruction":"Parse a comma-separated list of 6-digit hex color codes and return the sum of R+G+B components for each, comma-separated."} {"id":"cmsvnvuek023eg4p2v11kcieq","kind":"contributor_item","title":"Submission 1KCIEQ","provisional":false,"output_code":"def transform(text):\n seen = set()\n result = []\n for w in text.split():\n if w not in seen:\n seen.add(w)\n result.append(w)\n return ' '.join(result)","input_data_sample":"the cat sat on the mat and the cat slept","output_data_sample":"the cat sat on mat and slept","transformation_instruction":"Remove duplicate words from the text, keeping only the first occurrence of each, preserving order, space-separated."} {"id":"cmsvnvuek023fg4p20aq1qeon","kind":"contributor_item","title":"Submission Q1QEON","provisional":false,"output_code":"def transform(text):\n return sum(ord(ch) for ch in text) % 256","input_data_sample":"Hello","output_data_sample":244,"transformation_instruction":"Compute a simple checksum by summing the ASCII codes of all characters in the text, modulo 256."} {"id":"cmsvoc5f8027ig4p2pyrs66go","kind":"contributor_item","title":"Submission RS66GO","provisional":false,"output_code":"def transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n result = []\n for line in lines:\n last, first = line.split(', ')\n result.append(f'{first} {last}')\n return '\\n'.join(result)\n","input_data_sample":"Smith, John\nDoe, Jane\n","output_data_sample":"John Smith\nJane Doe","transformation_instruction":"Given lines in 'Last, First' format, convert each to 'First Last' format, one name per line."} {"id":"cmsvoc5f8027fg4p2l3wbz2xf","kind":"contributor_item","title":"Submission WBZ2XF","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n values = data['values']\n result = {\n 'min': min(values),\n 'max': max(values),\n 'avg': round(sum(values) / len(values), 2)\n }\n return json.dumps(result)\n","input_data_sample":"{\"values\": [4, 8, 15, 16, 23, 42]}","output_data_sample":"{\"min\": 4, \"max\": 42, \"avg\": 18.0}","transformation_instruction":"Given a JSON object with a 'values' array of numbers, compute the min, max, and average, returning a JSON object with keys min, max, avg (avg rounded to 2 decimals)."} {"id":"cmsvoc5f8027hg4p2n01k0azg","kind":"contributor_item","title":"Submission 1K0AZG","provisional":false,"output_code":"import re\n\ndef transform(text):\n return re.sub(r'\\d+', lambda m: 'X' * len(m.group()), text)\n","input_data_sample":"Card ending in 1234, order #56789 confirmed.","output_data_sample":"Card ending in XXXX, order #XXXXX confirmed.","transformation_instruction":"Replace every run of digits in the text with the same number of 'X' characters, keeping everything else unchanged."} {"id":"cmsvoc5f8027gg4p2pxleyz56","kind":"contributor_item","title":"Submission LEYZ56","provisional":false,"output_code":"import csv, json, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()), delimiter='\\t')\n return json.dumps(list(reader))\n","input_data_sample":"name\tage\nAlice\t30\nBob\t25\n","output_data_sample":"[{\"name\": \"Alice\", \"age\": \"30\"}, {\"name\": \"Bob\", \"age\": \"25\"}]","transformation_instruction":"Parse a TSV (tab-separated) file with a header row into a JSON array of objects."} {"id":"cmsvoc5f8027jg4p2ajfvccbn","kind":"contributor_item","title":"Submission FVCCBN","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n counts = [len(l.split()) for l in lines]\n return json.dumps(counts)\n","input_data_sample":"the quick brown fox\njumped over\nthe lazy dog here\n","output_data_sample":"[4, 2, 4]","transformation_instruction":"For each line in the input, count the number of words, and return a JSON array of the counts in order."} {"id":"cmsvoc5f8027lg4p2qwflqcob","kind":"contributor_item","title":"Submission FLQCOB","provisional":false,"output_code":"import re\n\ndef transform(text):\n return re.sub(r'\\s+', ' ', text).strip()\n","input_data_sample":" This is a test. \n","output_data_sample":"This is a test.","transformation_instruction":"Collapse all runs of whitespace into a single space and strip leading/trailing whitespace."} {"id":"cmsvoc5f8027eg4p2yebjwalj","kind":"contributor_item","title":"Submission BJWALJ","provisional":false,"output_code":"import re, json\n\ndef transform(text):\n tags = re.findall(r'#(\\w+)', text)\n return json.dumps(sorted(set(tags)))\n","input_data_sample":"Loving the #sunset and #beach vibes today! #sunset again.","output_data_sample":"[\"beach\", \"sunset\"]","transformation_instruction":"Extract all unique hashtags from the text, sort them alphabetically, and return as a JSON array of strings (without the # symbol)."} {"id":"cmsvoc5f8027cg4p28bk1fe15","kind":"contributor_item","title":"Submission K1FE15","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n section = None\n for line in text.strip().split('\\n'):\n line = line.strip()\n if not line:\n continue\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1]\n result[section] = {}\n elif '=' in line and section:\n k, v = line.split('=', 1)\n result[section][k.strip()] = v.strip()\n return json.dumps(result)\n","input_data_sample":"[server]\nhost=localhost\nport=8080\n[client]\ntimeout=30\n","output_data_sample":"{\"server\": {\"host\": \"localhost\", \"port\": \"8080\"}, \"client\": {\"timeout\": \"30\"}}","transformation_instruction":"Parse a simple INI-style config (with [section] headers and key=value lines) into a JSON object mapping section names to their key-value pairs."} {"id":"cmsvoqatw02agg4p2srqh28yt","kind":"contributor_item","title":"Submission QH28YT","provisional":false,"output_code":"import re\ndef transform(input):\n parts = [p.strip() for p in input.split(',')]\n out = []\n for p in parts:\n h_match = re.search(r'(\\d+)h', p)\n m_match = re.search(r'(\\d+)m', p)\n h = int(h_match.group(1)) if h_match else 0\n m = int(m_match.group(1)) if m_match else 0\n out.append(h*60 + m)\n return out","input_data_sample":"2h 30m, 45m, 1h, 3h 15m","output_data_sample":"[150, 45, 60, 195]","transformation_instruction":"Convert a comma-separated list of duration strings (format '<H>h <M>m', either part optional) into a JSON array of total minutes."} {"id":"cmsvoqatx02b0g4p215hmsiyj","kind":"contributor_item","title":"Submission HMSIYJ","provisional":false,"output_code":"def transform(text):\n words = text.split()\n return max(words, key=len)","input_data_sample":"the quick brown fox jumps over extraordinarily","output_data_sample":"extraordinarily","transformation_instruction":"Find and return the longest word in the text (first one if there is a tie)."} {"id":"cmsvoqatx02ajg4p2hfm5r4x7","kind":"contributor_item","title":"Submission M5R4X7","provisional":false,"output_code":"def transform(text):\n words = text.split()\n def pig(w):\n return w[1:] + w[0] + 'ay'\n return ' '.join(pig(w) for w in words)","input_data_sample":"hello world pig latin","output_data_sample":"ellohay orldway igpay atinlay","transformation_instruction":"Translate each word of the text to Pig Latin: move the first consonant cluster (or just first letter here, simplified to first letter) to the end and append 'ay'."} {"id":"cmsvoqatx02avg4p2zkuukbwo","kind":"contributor_item","title":"Submission UUKBWO","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n counts = Counter(text.split())\n return json.dumps(dict(counts))","input_data_sample":"the cat sat on the mat the cat ran","output_data_sample":"{\"the\": 3, \"cat\": 2, \"sat\": 1, \"on\": 1, \"mat\": 1, \"ran\": 1}","transformation_instruction":"Return a JSON object mapping each distinct word to its frequency count in the text."} {"id":"cmsvoqatx02aig4p2mefp0s5s","kind":"contributor_item","title":"Submission FP0S5S","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = text.split(chr(10))\n headers = lines[0].split(',')\n values = lines[1].split(',')\n return json.dumps(dict(zip(headers, values)))","input_data_sample":"name,age,city\nAlice,30,Boston","output_data_sample":"{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"Boston\"}","transformation_instruction":"Parse a two-line CSV (header + one data row) and return a JSON object mapping header to value."} {"id":"cmsvoqatw02afg4p2w7zxog7h","kind":"contributor_item","title":"Submission ZXOG7H","provisional":false,"output_code":"def transform(text):\n fs = [float(x) for x in text.split(',')]\n cs = [round((f - 32) * 5 / 9, 2) for f in fs]\n return ','.join(str(c) for c in cs)","input_data_sample":"32,98.6,212,0","output_data_sample":"0.0,37.0,100.0,-17.78","transformation_instruction":"Parse a comma-separated list of Fahrenheit temperatures and return Celsius equivalents, comma-separated, rounded to 2 decimals."} {"id":"cmsvoqatx02akg4p2q4df02l0","kind":"contributor_item","title":"Submission DF02L0","provisional":false,"output_code":"def transform(text):\n return ' '.join(w.capitalize() for w in text.split())","input_data_sample":"the quick brown fox jumps","output_data_sample":"The Quick Brown Fox Jumps","transformation_instruction":"Convert text to title case, capitalizing the first letter of every word."} {"id":"cmsvoqatx02amg4p283ho2n4u","kind":"contributor_item","title":"Submission HO2N4U","provisional":false,"output_code":"import json\n\ndef transform(text):\n vowels = sum(1 for ch in text if ch.lower() in 'aeiou')\n consonants = sum(1 for ch in text if ch.isalpha() and ch.lower() not in 'aeiou')\n return json.dumps({\"vowels\": vowels, \"consonants\": consonants})","input_data_sample":"Hello World","output_data_sample":"{\"vowels\": 3, \"consonants\": 7}","transformation_instruction":"Count the number of vowels and consonants (letters only) in the text and return as a JSON object."} {"id":"cmsvoqatx02alg4p2hksif19m","kind":"contributor_item","title":"Submission SIF19M","provisional":false,"output_code":"def transform(text):\n return ''.join(ch for ch in text if ch.lower() not in 'aeiou')","input_data_sample":"Hello World Programming","output_data_sample":"Hll Wrld Prgrmmng","transformation_instruction":"Remove all vowels (a, e, i, o, u, both cases) from the text."} {"id":"cmsvoqatx02apg4p2fv3vha9p","kind":"contributor_item","title":"Submission 3VHA9P","provisional":false,"output_code":"import re\n\ndef transform(text):\n nums = [int(n) for n in re.findall(r'\\d+', text)]\n return sum(nums)","input_data_sample":"I have 3 apples, 15 oranges, and 7 bananas, total 25 fruits","output_data_sample":50,"transformation_instruction":"Extract all integers from the text and return their sum."} {"id":"cmsvoqatx02aog4p2d9uejova","kind":"contributor_item","title":"Submission UEJOVA","provisional":false,"output_code":"import json\n\ndef transform(text):\n pairs = text.split(';')\n result = {}\n for p in pairs:\n k, v = p.split('=')\n result[k] = v\n return json.dumps(result)","input_data_sample":"name=Alice;age=30;city=Boston","output_data_sample":"{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"Boston\"}","transformation_instruction":"Parse a semicolon-separated list of key=value pairs into a JSON object."} {"id":"cmsvoqatx02ang4p2f9i1dovy","kind":"contributor_item","title":"Submission I1DOVY","provisional":false,"output_code":"def transform(text):\n return ' '.join(reversed(text.split()))","input_data_sample":"the quick brown fox jumps over","output_data_sample":"over jumps fox brown quick the","transformation_instruction":"Reverse the order of words in the sentence, keeping each word's spelling unchanged, space-separated."} {"id":"cmsvoqatx02asg4p2bbxgymz8","kind":"contributor_item","title":"Submission XGYMZ8","provisional":false,"output_code":"def transform(text):\n if not text:\n return ''\n result = []\n prev = text[0]\n count = 1\n for ch in text[1:]:\n if ch == prev:\n count += 1\n else:\n result.append(f'{count}{prev}')\n prev = ch\n count = 1\n result.append(f'{count}{prev}')\n return ''.join(result)","input_data_sample":"aaabbbccccd","output_data_sample":"3a3b4c1d","transformation_instruction":"Compress a string using run-length encoding, representing each run as <count><char>."} {"id":"cmsvoqatx02aqg4p24uqix6g5","kind":"contributor_item","title":"Submission QIX6G5","provisional":false,"output_code":"def transform(text):\n bins = text.split()\n return ','.join(str(int(b, 2)) for b in bins)","input_data_sample":"1010 1111 0011 0001","output_data_sample":"10,15,3,1","transformation_instruction":"Parse a space-separated list of binary strings and return their decimal equivalents, comma-separated."} {"id":"cmsvoqatx02arg4p2txcmfpwx","kind":"contributor_item","title":"Submission CMFPWX","provisional":false,"output_code":"def transform(text):\n nums = [int(x) for x in text.split(',')]\n return ','.join(format(n, 'X') for n in nums)","input_data_sample":"255,16,4096,10","output_data_sample":"FF,10,1000,A","transformation_instruction":"Parse a comma-separated list of decimal integers and return their uppercase hexadecimal equivalents (no 0x prefix), comma-separated."} {"id":"cmsvoqatx02atg4p2zk6f3kyz","kind":"contributor_item","title":"Submission 6F3KYZ","provisional":false,"output_code":"import re\n\ndef transform(text):\n pairs = re.findall(r'(\\d+)(\\D)', text)\n return ''.join(ch * int(count) for count, ch in pairs)","input_data_sample":"3a3b4c1d","output_data_sample":"aaabbbccccd","transformation_instruction":"Decompress a run-length-encoded string of the form <count><char> repeated."} {"id":"cmsvoqatx02aug4p2vfby6pf2","kind":"contributor_item","title":"Submission BY6PF2","provisional":false,"output_code":"def transform(text):\n emails = text.split(',')\n domains = [e.split('@')[1] for e in emails]\n return ','.join(domains)","input_data_sample":"alice@example.com,bob@test.org,carol@sub.domain.io","output_data_sample":"example.com,test.org,sub.domain.io","transformation_instruction":"Parse a comma-separated list of email addresses and return their domain portions (after the @), comma-separated."} {"id":"cmsvoqatx02awg4p2jsrk3i96","kind":"contributor_item","title":"Submission RK3I96","provisional":false,"output_code":"def transform(text):\n sentences = [s.strip() for s in text.split('.') if s.strip()]\n capitalized = [s[0].upper() + s[1:] for s in sentences]\n return '. '.join(capitalized) + '.'","input_data_sample":"hello there. how are you. i am fine.","output_data_sample":"Hello there. How are you. I am fine.","transformation_instruction":"Split the text into sentences on periods and capitalize the first letter of each, rejoining with '. '."} {"id":"cmsvoqatx02ayg4p2gg60bryn","kind":"contributor_item","title":"Submission 60BRYN","provisional":false,"output_code":"def transform(text):\n cs = [float(x) for x in text.split(',')]\n fs = [round(c * 9 / 5 + 32, 2) for c in cs]\n return ','.join(str(f) for f in fs)","input_data_sample":"0,37,100,-17.78","output_data_sample":"32.0,98.6,212.0,-0.0","transformation_instruction":"Parse a comma-separated list of Celsius temperatures and return Fahrenheit equivalents, comma-separated, rounded to 2 decimals."} {"id":"cmsvoqatx02axg4p2tx8oozjg","kind":"contributor_item","title":"Submission 8OOZJG","provisional":false,"output_code":"def transform(text):\n return '*' * (len(text) - 4) + text[-4:]","input_data_sample":"4111111111111111","output_data_sample":"************1111","transformation_instruction":"Mask a credit card number, replacing all but the last 4 digits with asterisks."} {"id":"cmsvoqatx02azg4p2050f0oyb","kind":"contributor_item","title":"Submission 0F0OYB","provisional":false,"output_code":"def transform(text):\n pairs = text.split(',')\n total = sum(int(p.split(':')[1]) for p in pairs)\n return total","input_data_sample":"a:1,b:2,c:3,d:4","output_data_sample":10,"transformation_instruction":"Parse a comma-separated list of key:value numeric pairs and return the sum of all the values."} {"id":"cmsvoqatx02b3g4p2alzw9d4l","kind":"contributor_item","title":"Submission ZW9D4L","provisional":false,"output_code":"import json\n\ndef transform(text):\n pairs = text.split(',')\n people = []\n for p in pairs:\n name, age = p.split(':')\n people.append({\"name\": name, \"age\": int(age)})\n people.sort(key=lambda p: p[\"age\"])\n return json.dumps(people)","input_data_sample":"Alice:30,Bob:25,Carol:35","output_data_sample":"[{\"name\": \"Bob\", \"age\": 25}, {\"name\": \"Alice\", \"age\": 30}, {\"name\": \"Carol\", \"age\": 35}]","transformation_instruction":"Parse a comma-separated list of name:age pairs and return a JSON list of objects sorted by age ascending."} {"id":"cmsvoqatx02b2g4p21y2mt0j7","kind":"contributor_item","title":"Submission 2MT0J7","provisional":false,"output_code":"import re\n\ndef transform(text):\n return re.sub(r'<[^>]+>', '', text)","input_data_sample":"<p>Hello <b>World</b>! <i>Welcome</i></p>","output_data_sample":"Hello World! Welcome","transformation_instruction":"Remove all HTML tags from the text, keeping only the visible text content."} {"id":"cmsvoqatx02b1g4p2ndgkzbnf","kind":"contributor_item","title":"Submission GKZBNF","provisional":false,"output_code":"def transform(text):\n dates = text.split(',')\n converted = []\n for d in dates:\n day, month, year = d.split('/')\n converted.append(f'{year}-{month}-{day}')\n return ','.join(converted)","input_data_sample":"25/12/2026,01/01/2027,15/06/2026","output_data_sample":"2026-12-25,2027-01-01,2026-06-15","transformation_instruction":"Parse a comma-separated list of dates in DD/MM/YYYY format and return them in YYYY-MM-DD format, comma-separated."} {"id":"cmsvoqatx02b5g4p2lg1ame0v","kind":"contributor_item","title":"Submission 1AME0V","provisional":false,"output_code":"def transform(text):\n words = text.split()\n return sum(1 for w in words if w == w[::-1])","input_data_sample":"level noon hello world madam racecar test","output_data_sample":4,"transformation_instruction":"Count how many words in the text are palindromes (read the same forwards and backwards)."} {"id":"cmsvoqatx02b4g4p2cocgmsf6","kind":"contributor_item","title":"Submission CGMSF6","provisional":false,"output_code":"def transform(text):\n words = text.split()\n return ' '.join(w[:5] for w in words)","input_data_sample":"internationalization programming excellent","output_data_sample":"inter progr excel","transformation_instruction":"Truncate each word in the text to a maximum of 5 characters, space-separated."} {"id":"cmsvoqatx02b6g4p2vpr35hbu","kind":"contributor_item","title":"Submission R35HBU","provisional":false,"output_code":"import math\n\ndef transform(text):\n points = []\n for p in text.split(';'):\n x, y = p.split(',')\n points.append((float(x), float(y)))\n total = 0.0\n for i in range(1, len(points)):\n x1, y1 = points[i - 1]\n x2, y2 = points[i]\n total += math.hypot(x2 - x1, y2 - y1)\n return round(total, 2)","input_data_sample":"0,0;3,4;3,0;0,0","output_data_sample":12,"transformation_instruction":"Parse a semicolon-separated list of x,y coordinate pairs and return the total Euclidean distance traveled across consecutive points, rounded to 2 decimals."} {"id":"cmsvoqatx02b7g4p22w5mq1bt","kind":"contributor_item","title":"Submission 5MQ1BT","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n current_section = None\n for raw_line in text.split(\"\\n\"):\n line = raw_line.strip()\n if not line or line.startswith(\"#\") or line.startswith(\";\"):\n continue\n if line.startswith(\"[\") and line.endswith(\"]\"):\n current_section = line[1:-1].strip()\n result.setdefault(current_section, {})\n continue\n if \"=\" not in line:\n continue\n key, _, value = line.partition(\"=\")\n key = key.strip()\n value = value.strip()\n if value.startswith('\"') and value.endswith('\"'):\n value = value[1:-1]\n if current_section is None:\n result.setdefault(\"_global\", {})[key] = value\n else:\n result[current_section][key] = value\n return json.dumps(result)","input_data_sample":"; global settings\ntimeout = 30\n\n[database]\nhost = localhost\nport = 5432\nname = \"my app db\"\n\n# logging section\n[logging]\nlevel = DEBUG\npath = /var/log/app.log\n","output_data_sample":"{\"_global\": {\"timeout\": \"30\"}, \"database\": {\"host\": \"localhost\", \"port\": \"5432\", \"name\": \"my app db\"}, \"logging\": {\"level\": \"DEBUG\", \"path\": \"/var/log/app.log\"}}","transformation_instruction":"Parse an INI-style config text (with `[section]` headers, `key = value` lines, and `#`/`;` comment lines) into a nested JSON object mapping each section name to its own key/value object; keys found before any section header go under a `_global` section. Quoted values have their surrounding double quotes stripped."} {"id":"cmsvoqatw02aeg4p2y3qax2tr","kind":"contributor_item","title":"Submission QAX2TR","provisional":false,"output_code":"def transform(input):\n parts = [p.strip() for p in input.split(',')]\n celsius = sorted(round((float(p) - 32) * 5/9, 1) for p in parts)\n return celsius","input_data_sample":"98.6, 32, 212, 77, -40","output_data_sample":"[-40.0, 0.0, 25.0, 37.0, 100.0]","transformation_instruction":"Convert a comma-separated list of Fahrenheit temperatures into a JSON array of Celsius temperatures, each rounded to 1 decimal place, sorted in ascending numeric order."} {"id":"cmsvoqatw02ahg4p2vxaal15v","kind":"contributor_item","title":"Submission AAL15V","provisional":false,"output_code":"import re\ndef transform(input):\n tuples = re.findall(r'\\(([^)]+)\\)', input)\n hexes = []\n for t in tuples:\n r, g, b = [int(x.strip()) for x in t.split(',')]\n hexes.append('#{:02X}{:02X}{:02X}'.format(r, g, b))\n return ', '.join(hexes)","input_data_sample":"(255, 87, 51), (0, 128, 255), (34, 139, 34)","output_data_sample":"#FF5733, #0080FF, #228B22","transformation_instruction":"Parse a comma-separated list of RGB tuples written as '(R, G, B)' and convert each to its uppercase 6-digit hex color code, joined by ', '."} {"id":"cmsvqtlqp02sfg4p2f2uiu3y4","kind":"contributor_item","title":"Submission UIU3Y4","provisional":false,"output_code":"import json\nimport re\n\ndef transform(text):\n result = {}\n for line in text.strip().split(\"\\n\"):\n line = line.strip()\n if not line.startswith(\"export \"):\n continue\n rest = line[len(\"export \"):]\n key, _, value = rest.partition(\"=\")\n value = value.strip()\n if value.startswith('\"') and value.endswith('\"'):\n value = value[1:-1]\n elif value.startswith(\"'\") and value.endswith(\"'\"):\n value = value[1:-1]\n result[key] = value\n return json.dumps(result)","input_data_sample":"export DB_HOST=localhost\nexport DB_PORT=5432\nexport APP_NAME=\"My Service\"\nexport DEBUG=true\n","output_data_sample":"{\"DB_HOST\": \"localhost\", \"DB_PORT\": \"5432\", \"APP_NAME\": \"My Service\", \"DEBUG\": \"true\"}","transformation_instruction":"Parse a shell script of `export KEY=value` lines (values optionally single- or double-quoted) into a JSON object mapping each key to its unquoted string value."} {"id":"cmsvtf5al000xuvp2bcoxpmyl","kind":"contributor_item","title":"Submission OXPMYL","provisional":false,"output_code":"import json\n\ndef transform(text):\n text = text.lower()\n counts = {v: text.count(v) for v in 'aeiou'}\n return json.dumps(counts)\n","input_data_sample":"The rain in Spain falls mainly on the plain","output_data_sample":"{\"a\": 5, \"e\": 2, \"i\": 5, \"o\": 1, \"u\": 0}","transformation_instruction":"Count vowels (a,e,i,o,u case-insensitive) in the text and return a JSON object mapping each vowel to its count, including zero counts."} {"id":"cmsvtf5al000ruvp2nh0kintl","kind":"contributor_item","title":"Submission 0KINTL","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n balance = 0.0\n out = []\n for line in lines:\n date, amt = line.split(',')\n balance += float(amt)\n out.append({\"date\": date, \"balance\": round(balance, 2)})\n return json.dumps(out)\n","input_data_sample":"2026-01-15,150.50\n2026-01-16,200.00\n2026-01-17,-50.25\n2026-01-18,75.00","output_data_sample":"[{\"date\": \"2026-01-15\", \"balance\": 150.5}, {\"date\": \"2026-01-16\", \"balance\": 350.5}, {\"date\": \"2026-01-17\", \"balance\": 300.25}, {\"date\": \"2026-01-18\", \"balance\": 375.25}]","transformation_instruction":"Given daily transaction amounts as date,amount CSV lines, compute the running balance after each day and return as a JSON array of {date, balance}."} {"id":"cmsvtf5al000muvp21v2gjpe8","kind":"contributor_item","title":"Submission 2GJPE8","provisional":false,"output_code":"def transform(text):\n lines = text.strip().split('\\n')\n result = []\n for line in lines:\n snake = '_'.join(line.lower().split())\n result.append(snake)\n return ';'.join(result)\n","input_data_sample":"The Quick Brown Fox\nJumps Over The Lazy Dog","output_data_sample":"the_quick_brown_fox;jumps_over_the_lazy_dog","transformation_instruction":"Convert each line from Title Case to snake_case, joining lines with a semicolon."} {"id":"cmsvtf5al000tuvp2190yka6l","kind":"contributor_item","title":"Submission 0YKA6L","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n rows = list(reader)\n rows.sort(key=lambda r: r['last_name'])\n return '\\n'.join(f\"{r['first_name']} {r['last_name']}\" for r in rows)\n","input_data_sample":"first_name,last_name\nJohn,Doe\nJane,Smith","output_data_sample":"John Doe\nJane Smith","transformation_instruction":"Convert CSV rows with first_name,last_name headers into a list of full names joined by ' ', one per line, sorted alphabetically by last name."} {"id":"cmsvtf5al000quvp2bhdyy5n3","kind":"contributor_item","title":"Submission DYY5N3","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for pair in text.strip().split(';'):\n if '=' in pair:\n k, v = pair.split('=', 1)\n result[k.strip()] = v.strip()\n return json.dumps(result)\n","input_data_sample":"key1=value1;key2=value2 with spaces;key3=another value","output_data_sample":"{\"key1\": \"value1\", \"key2\": \"value2 with spaces\", \"key3\": \"another value\"}","transformation_instruction":"Parse a semicolon-separated list of key=value pairs (values may contain spaces) into a JSON object."} {"id":"cmsvtf5al000luvp27qgxnt5f","kind":"contributor_item","title":"Submission GXNT5F","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n totals = defaultdict(int)\n for pair in text.strip().split(','):\n name, count = pair.split(':')\n totals[name.strip()] += int(count)\n return json.dumps(dict(sorted(totals.items())))\n","input_data_sample":"apple:3,banana:5,apple:2,cherry:1,banana:1","output_data_sample":"{\"apple\": 5, \"banana\": 6, \"cherry\": 1}","transformation_instruction":"Parse a comma-separated list of item:count pairs and sum counts per item, returning a JSON object sorted by item name."} {"id":"cmsvtf5al000kuvp27k603zsi","kind":"contributor_item","title":"Submission 603ZSI","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n rows = []\n for row in reader:\n out = {}\n for k, v in row.items():\n try:\n out[k] = int(v)\n except ValueError:\n out[k] = v\n rows.append(out)\n return json.dumps(rows)\n","input_data_sample":"Name,Age,City\nAlice,30,NYC\nBob,25,LA\nCarol,35,SF","output_data_sample":"[{\"Name\": \"Alice\", \"Age\": 30, \"City\": \"NYC\"}, {\"Name\": \"Bob\", \"Age\": 25, \"City\": \"LA\"}, {\"Name\": \"Carol\", \"Age\": 35, \"City\": \"SF\"}]","transformation_instruction":"Convert a CSV string with a header row into a JSON array of objects, keeping numeric-looking fields as integers."} {"id":"cmsvtf5al000uuvp2l4gnn331","kind":"contributor_item","title":"Submission GNN331","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n matches = re.findall(r'<item id=\"(\\d+)\">(.*?)</item>', text)\n result = {int(k): v for k, v in matches}\n return json.dumps(result)\n","input_data_sample":"<root><item id=\"1\">Apple</item><item id=\"2\">Banana</item></root>","output_data_sample":"{\"1\": \"Apple\", \"2\": \"Banana\"}","transformation_instruction":"Parse simple XML with <item id=\"N\">text</item> children and return a JSON object mapping id to text."} {"id":"cmsvtf5al000suvp2tv9zdl9y","kind":"contributor_item","title":"Submission 9ZDL9Y","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n text = text.strip()\n letters = ''.join(re.findall(r'[a-zA-Z]', text))\n digits = ''.join(re.findall(r'\\d', text))\n return json.dumps({\"letters\": letters, \"digits\": digits})\n","input_data_sample":"a1b2c3d4e5","output_data_sample":"{\"letters\": \"abcde\", \"digits\": \"12345\"}","transformation_instruction":"Extract all letters and all digits from an alphanumeric string separately, returning them as JSON with keys 'letters' and 'digits'."} {"id":"cmsvtf5al0011uvp26a6kwkf6","kind":"contributor_item","title":"Submission 6KWKF6","provisional":false,"output_code":"import json\nimport operator\n\ndef transform(text):\n ops = {'+': operator.add, '-': operator.sub, '*': operator.mul, '/': operator.truediv}\n lines = [l for l in text.strip().split('\\n') if l]\n results = []\n for line in lines:\n parts = line.split()\n a, op, b = int(parts[0]), parts[1], int(parts[2])\n results.append(ops[op](a, b))\n return json.dumps(results)\n","input_data_sample":"3 + 4\n10 - 2\n6 * 7\n20 / 4","output_data_sample":"[7, 8, 42, 5.0]","transformation_instruction":"Evaluate each simple arithmetic expression line (operators + - * /, two integer operands) and return a JSON array of results (as numbers, division results as floats)."} {"id":"cmsvtf5al0012uvp294wg6i0r","kind":"contributor_item","title":"Submission WG6I0R","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n best = None\n for line in lines:\n item, price, qty = line.split(',')\n total = float(price) * int(qty)\n if best is None or total > best['total']:\n best = {\"item\": item, \"total\": total}\n return json.dumps(best)\n","input_data_sample":"apple,10,3\nbanana,5,7\ncherry,20,1","output_data_sample":"{\"item\": \"banana\", \"total\": 35.0}","transformation_instruction":"Given lines of item,price,quantity, compute total cost per item (price*quantity) and return the item with the highest total cost as a JSON object {item, total}."} {"id":"cmsvtf5al0013uvp2x42336sg","kind":"contributor_item","title":"Submission 2336SG","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n fails = defaultdict(int)\n for line in lines:\n tokens = dict(tok.split(':') for tok in line.split())\n if tokens.get('action') == 'login' and tokens.get('status') == 'fail':\n fails[tokens['user_id']] += 1\n return json.dumps(dict(fails))\n","input_data_sample":"user_id:1001 action:login status:success\nuser_id:1002 action:login status:fail\nuser_id:1001 action:logout status:success\nuser_id:1003 action:login status:fail","output_data_sample":"{\"1002\": 1, \"1003\": 1}","transformation_instruction":"Parse space-separated key:value tokens per line and count how many 'login' actions had status 'fail' per user_id, returning a JSON object mapping user_id to fail count (only users with at least one fail)."} {"id":"cmsvtf5al0010uvp2aq6dj21r","kind":"contributor_item","title":"Submission 6DJ21R","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n durations = []\n start_time = None\n for line in lines:\n ts, event = line.split(',')\n t = datetime.fromisoformat(ts)\n if event == 'START':\n start_time = t\n elif event == 'STOP' and start_time:\n durations.append((t - start_time).total_seconds() / 60)\n start_time = None\n return json.dumps(durations)\n","input_data_sample":"2026-08-01T10:00:00,START\n2026-08-01T10:05:00,STOP\n2026-08-01T10:10:00,START\n2026-08-01T10:25:00,STOP","output_data_sample":"[5.0, 15.0]","transformation_instruction":"Given alternating START/STOP timestamp events, compute the duration in minutes of each START-STOP pair and return a JSON array of durations."} {"id":"cmsvtf5al000nuvp2v434fbpx","kind":"contributor_item","title":"Submission 34FBPX","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n lines = []\n for user in data['users']:\n for role in user['roles']:\n lines.append(f\"{user['id']}:{role}\")\n return '\\n'.join(lines)\n","input_data_sample":"{\"users\": [{\"id\": 1, \"roles\": [\"admin\", \"editor\"]}, {\"id\": 2, \"roles\": [\"viewer\"]}]}","output_data_sample":"1:admin\n1:editor\n2:viewer","transformation_instruction":"Flatten a JSON object with a users list of {id, roles} into a list of 'id:role' strings, one per role, newline separated."} {"id":"cmsvtf5al000ouvp2ca1u460c","kind":"contributor_item","title":"Submission 1U460C","provisional":false,"output_code":"import re, json\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n result = []\n for line in lines:\n m = re.match(r'^(\\S+).*\"\\s*(\\d{3})$', line)\n if m:\n result.append([m.group(1), m.group(2)])\n return json.dumps(result)\n","input_data_sample":"192.168.1.10 - - [10/Aug/2026:13:55:36] \"GET /index.html HTTP/1.1\" 200\n10.0.0.5 - - [10/Aug/2026:13:56:01] \"POST /api/login HTTP/1.1\" 401","output_data_sample":"[[\"192.168.1.10\", \"200\"], [\"10.0.0.5\", \"401\"]]","transformation_instruction":"Extract just the IP address and HTTP status code from each Apache-style log line, returning a JSON array of [ip, status] pairs."} {"id":"cmsvtf5al000puvp2fb7tdur3","kind":"contributor_item","title":"Submission 7TDUR3","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n nums = [int(x.strip()) for x in text.strip().split(',')]\n counts = Counter(nums)\n max_count = max(counts.values())\n mode = min(n for n, c in counts.items() if c == max_count)\n result = {\n \"min\": min(nums),\n \"max\": max(nums),\n \"mean\": round(sum(nums) / len(nums), 2),\n \"mode\": mode\n }\n return json.dumps(result)\n","input_data_sample":"3,1,4,1,5,9,2,6,5,3,5","output_data_sample":"{\"min\": 1, \"max\": 9, \"mean\": 4.0, \"mode\": 5}","transformation_instruction":"Given a comma-separated list of integers, return a JSON object with min, max, mean (rounded to 2 decimals), and the mode (most frequent value; if tie, smallest)."} {"id":"cmsvtf5al000vuvp2csjauat9","kind":"contributor_item","title":"Submission JAUAT9","provisional":false,"output_code":"import json\n\ndef transform(text):\n grid = [[int(x) for x in line.split()] for line in text.strip().split('\\n')]\n row_sums = [sum(row) for row in grid]\n col_sums = [sum(col) for col in zip(*grid)]\n return json.dumps({\"row_sums\": row_sums, \"col_sums\": col_sums})\n","input_data_sample":"10 20 30\n40 50 60\n70 80 90","output_data_sample":"{\"row_sums\": [60, 150, 240], \"col_sums\": [120, 150, 180]}","transformation_instruction":"Given a whitespace-separated grid of integers (rows on separate lines), return the sum of each row and the sum of each column as JSON with keys 'row_sums' and 'col_sums'."} {"id":"cmsvtf5al000wuvp2n368y9cf","kind":"contributor_item","title":"Submission 68Y9CF","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n result = []\n for line in lines:\n uid, status = line.split(',')\n if status.strip() == 'active':\n result.append(uid.strip())\n return json.dumps(result)\n","input_data_sample":"550e8400-e29b-41d4-a716-446655440000,active\nf47ac10b-58cc-4372-a567-0e02b2c3d479,inactive","output_data_sample":"[\"550e8400-e29b-41d4-a716-446655440000\"]","transformation_instruction":"Parse lines of uuid,status and return only the active UUIDs as a JSON array, preserving order."} {"id":"cmsvtf5al000zuvp2l5ky4o9z","kind":"contributor_item","title":"Submission KY4O9Z","provisional":false,"output_code":"import re\n\ndef transform(text):\n lines = text.strip().split('\\n')\n out = []\n for line in lines:\n line = re.sub(r'^#+\\s*', '', line)\n line = re.sub(r'\\*\\*(.*?)\\*\\*', r'\\1', line)\n line = re.sub(r'\\*(.*?)\\*', r'\\1', line)\n line = re.sub(r'`(.*?)`', r'\\1', line)\n out.append(line)\n return '\\n'.join(out)\n","input_data_sample":"# Header\nSome **bold** text and *italic* text here.\nAnother line with `code`.","output_data_sample":"Header\nSome bold text and italic text here.\nAnother line with code.","transformation_instruction":"Strip common Markdown formatting (headers, bold **, italic *, inline code backticks) leaving plain text, preserving line breaks."} {"id":"cmsvtf5al000yuvp2lb78071n","kind":"contributor_item","title":"Submission 78071N","provisional":false,"output_code":"import json\nfrom urllib.parse import parse_qsl\n\ndef transform(text):\n pairs = parse_qsl(text.strip(), keep_blank_values=True)\n items = []\n current = {}\n for k, v in pairs:\n if k in current:\n items.append(current)\n current = {}\n current[k] = v\n if current:\n items.append(current)\n for item in items:\n item['qty'] = int(item['qty'])\n item['price'] = float(item['price'])\n return json.dumps(items)\n","input_data_sample":"product=Widget&qty=5&price=9.99&product=Gadget&qty=2&price=19.99","output_data_sample":"[{\"product\": \"Widget\", \"qty\": 5, \"price\": 9.99}, {\"product\": \"Gadget\", \"qty\": 2, \"price\": 19.99}]","transformation_instruction":"Parse a query string where product/qty/price fields repeat in groups of 3 in order, grouping them into a JSON array of objects."} {"id":"cmsw380wz004luvp2pvp03sza","kind":"contributor_item","title":"Submission P03SZA","provisional":false,"output_code":"from decimal import Decimal, ROUND_HALF_UP\n\n\ndef transform(text):\n groups = []\n current = {\"name\": \"(root)\", \"verts\": 0, \"faces\": 0, \"tri\": 0, \"quad\": 0, \"ngon\": 0}\n groups.append(current)\n xs, ys, zs = [], [], []\n refs = 0\n maxindex = 0\n\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line or line.startswith(\"#\"):\n continue\n parts = line.split()\n key = parts[0]\n if key == \"o\":\n current = {\"name\": \" \".join(parts[1:]), \"verts\": 0, \"faces\": 0,\n \"tri\": 0, \"quad\": 0, \"ngon\": 0}\n groups.append(current)\n elif key == \"v\":\n current[\"verts\"] += 1\n xs.append(Decimal(parts[1]))\n ys.append(Decimal(parts[2]))\n zs.append(Decimal(parts[3]))\n elif key == \"f\":\n tokens = parts[1:]\n current[\"faces\"] += 1\n n = len(tokens)\n if n == 3:\n current[\"tri\"] += 1\n elif n == 4:\n current[\"quad\"] += 1\n elif n >= 5:\n current[\"ngon\"] += 1\n for tok in tokens:\n idx = int(tok.split(\"/\")[0])\n refs += 1\n if idx > maxindex:\n maxindex = idx\n\n def fmt(value):\n return str(Decimal(value).quantize(Decimal(\"0.001\"), rounding=ROUND_HALF_UP))\n\n out = []\n for g in groups:\n if g[\"name\"] == \"(root)\" and g[\"verts\"] == 0 and g[\"faces\"] == 0:\n continue\n out.append(\"name=%s verts=%d faces=%d tri=%d quad=%d ngon=%d\" % (\n g[\"name\"], g[\"verts\"], g[\"faces\"], g[\"tri\"], g[\"quad\"], g[\"ngon\"]))\n if xs:\n out.append(\"min=%s/%s/%s\" % (fmt(min(xs)), fmt(min(ys)), fmt(min(zs))))\n out.append(\"max=%s/%s/%s\" % (fmt(max(xs)), fmt(max(ys)), fmt(max(zs))))\n else:\n out.append(\"min=none\")\n out.append(\"max=none\")\n out.append(\"refs=%d maxindex=%d\" % (refs, maxindex))\n return \"\\n\".join(out)","input_data_sample":"# exported by handmade tool\nmtllib panels.mtl\nv -1.0 0.0 0.0\no LeftPanel\nv 0.0 0.0 0.0\nv 1.0 0.0 0.0\nv 1.0 2.5 0.0\nvn 0.0 0.0 1.0\nvt 0.0 0.0\nusemtl steel\nf 2/1/1 3/1/1 4/1/1\n\no RightPanel\nv -1.5 0.0 3.25\nv -1.5 1.0 3.25\nf 5//1 6//1 2//1 3//1\nf 5 6 2 3 4\ns off\no LeftPanel\nv 4.5 -2.0 1.0\nf 7 5 6\n","output_data_sample":"name=(root) verts=1 faces=0 tri=0 quad=0 ngon=0\nname=LeftPanel verts=3 faces=1 tri=1 quad=0 ngon=0\nname=RightPanel verts=2 faces=2 tri=0 quad=1 ngon=1\nname=LeftPanel verts=1 faces=1 tri=1 quad=0 ngon=0\nmin=-1.500/-2.000/0.000\nmax=4.500/2.500/3.250\nrefs=15 maxindex=7","transformation_instruction":"Summarize a Wavefront OBJ mesh. Rules:\n1. Ignore blank lines and lines whose first non-space character is '#'.\n2. Split each remaining line on whitespace; the first token is the keyword.\n3. 'o NAME' opens a new object group. Any geometry appearing before the first 'o' belongs to a group named '(root)'; if no vertex and no face appears before the first 'o', the '(root)' group is not reported at all. If the same name is opened twice, treat each 'o' line as a separate group in file order.\n4. 'v x y z' declares a vertex; the three coordinates are decimal numbers.\n5. 'f' declares a face; each following whitespace-separated token is a vertex reference of the form 'v', 'v/vt', 'v//vn' or 'v/vt/vn'. The vertex index is the integer before the first '/'. Indices are positive and 1-based over all 'v' lines in the whole file.\n6. Every other keyword (mtllib, usemtl, vn, vt, s, g, ...) is ignored.\n7. For each group, in the order it was opened, emit one line:\n name=<NAME> verts=<V> faces=<F> tri=<T> quad=<Q> ngon=<N>\n where V counts the 'v' lines inside that group, F counts its 'f' lines, and T, Q and N count faces with exactly 3, exactly 4 and 5 or more vertex references.\n8. Then emit one line 'min=<x>/<y>/<z>' and one line 'max=<x>/<y>/<z>' giving the axis-aligned bounding box over every vertex in the file. Format each coordinate with exactly 3 decimal places, rounding half-up. If the file has no vertices, emit 'min=none' and 'max=none' instead.\n9. Then emit a final line 'refs=<R> maxindex=<M>' where R is the total number of vertex references across all faces and M is the largest vertex index referenced (0 if there are none).\n10. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw380wz004nuvp20dq5cbba","kind":"contributor_item","title":"Submission Q5CBBA","provisional":false,"output_code":"def transform(text):\n disc_title = None\n disc_performer = None\n tracks = []\n current = None\n\n def quoted(line):\n first = line.find('\"')\n last = line.rfind('\"')\n if first == -1 or last <= first:\n return line.split(None, 1)[1].strip() if \" \" in line else \"\"\n return line[first + 1:last]\n\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line:\n continue\n upper = line.upper()\n if upper.startswith(\"TRACK \"):\n parts = line.split()\n current = {\"num\": parts[1], \"type\": parts[2] if len(parts) > 2 else \"\",\n \"title\": None, \"performer\": None, \"start\": None}\n tracks.append(current)\n elif upper.startswith(\"TITLE \"):\n if current is None:\n disc_title = quoted(line)\n else:\n current[\"title\"] = quoted(line)\n elif upper.startswith(\"PERFORMER \"):\n if current is None:\n disc_performer = quoted(line)\n else:\n current[\"performer\"] = quoted(line)\n elif upper.startswith(\"INDEX \"):\n parts = line.split()\n if current is not None and parts[1] == \"01\":\n mm, ss, ff = parts[2].split(\":\")\n current[\"start\"] = (int(mm) * 60 + int(ss)) * 75 + int(ff)\n\n playable = [t for t in tracks if t[\"type\"] == \"AUDIO\" and t[\"start\"] is not None]\n ordered = [t for t in tracks if t[\"start\"] is not None]\n\n def stamp(frames):\n minutes, rest = divmod(frames, 60 * 75)\n seconds, ff = divmod(rest, 75)\n return \"%02d:%02d:%02d\" % (minutes, seconds, ff)\n\n out = []\n total = 0\n for track in playable:\n later = [t[\"start\"] for t in ordered if t[\"start\"] > track[\"start\"]]\n if later:\n duration = stamp(min(later) - track[\"start\"])\n total += min(later) - track[\"start\"]\n else:\n duration = \"--:--:--\"\n title = track[\"title\"] or disc_title or \"Unknown\"\n performer = track[\"performer\"] or disc_performer or \"Unknown\"\n out.append(\"%s|%s|%s|%s - %s\" % (\n track[\"num\"], stamp(track[\"start\"]), duration, performer, title))\n out.append(\"tracks=%d playable=%s\" % (len(playable), stamp(total)))\n return \"\\n\".join(out)","input_data_sample":"REM GENRE Ambient\nREM DATE 2019\nPERFORMER \"Marsh Collective\"\nTITLE \"Tidal Fields\"\nFILE \"album.wav\" WAVE\n TRACK 01 AUDIO\n TITLE \"Opening Silt\"\n INDEX 01 00:00:00\n TRACK 02 AUDIO\n TITLE \"Second Light\"\n PERFORMER \"Marsh Collective feat. Ilse\"\n INDEX 00 03:12:30\n INDEX 01 03:14:00\n TRACK 03 MODE1/2352\n TITLE \"Data Blob\"\n INDEX 01 06:00:00\n TRACK 04 AUDIO\n INDEX 01 07:00:74\n TRACK 05 AUDIO\n TITLE \"Closing Silt\"\n INDEX 01 11:45:37\n","output_data_sample":"01|00:00:00|03:14:00|Marsh Collective - Opening Silt\n02|03:14:00|02:46:00|Marsh Collective feat. Ilse - Second Light\n04|07:00:74|04:44:38|Marsh Collective - Tidal Fields\n05|11:45:37|--:--:--|Marsh Collective - Closing Silt\ntracks=4 playable=10:44:38","transformation_instruction":"Turn a CD cue sheet into a track listing. Rules:\n1. Consider only lines whose stripped form starts with 'TRACK ', 'TITLE ', 'PERFORMER ', 'INDEX ' or 'FILE '. Ignore every other line, including REM lines.\n2. A 'TRACK NN AUDIO' line opens a new track; NN is a two-digit number. Only tracks with type 'AUDIO' are listed; a track of any other type is skipped together with all of its own TITLE, PERFORMER and INDEX lines.\n3. Inside a track, 'TITLE \"...\"' and 'PERFORMER \"...\"' set that track's title and performer; the value is the text between the first and last double quote. A TITLE or PERFORMER appearing before the first TRACK is the disc-level value. A track with no TITLE uses the disc title; a track with no PERFORMER uses the disc performer; if neither exists use 'Unknown'.\n4. 'INDEX 01 MM:SS:FF' gives the track start. 'INDEX 00' is a pregap and is ignored. Timestamps are minutes, seconds and frames with 75 frames per second.\n5. A track's duration is the earliest start greater than its own, taken over every TRACK in the sheet including the ones that are skipped for not being AUDIO, minus its own start. A track with no later start has no known end, so its duration is '--:--:--'.\n6. Emit one line per track: '<NN>|<start>|<duration>|<performer> - <title>' where NN is the two-digit track number as written and start and duration use MM:SS:FF with two-digit minutes, two-digit seconds and two-digit frames.\n7. Finally emit 'tracks=<count> playable=<MM:SS:FF>' where playable is the sum of all known durations.\n8. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw380wz004ruvp2i92cxhbk","kind":"contributor_item","title":"Submission 2CXHBK","provisional":false,"output_code":"from decimal import Decimal, ROUND_HALF_UP, InvalidOperation\n\nUNITS = {\"K\": 1024, \"M\": 1024 ** 2, \"G\": 1024 ** 3, \"T\": 1024 ** 4}\n\n\ndef transform(text):\n skipped = []\n rows = []\n for raw in text.split(\"\\n\"):\n if not raw.strip():\n continue\n if \"\\t\" not in raw:\n skipped.append(\"SKIP \" + raw.strip())\n continue\n size_part, path = raw.split(\"\\t\", 1)\n size_part = size_part.strip()\n path = path.rstrip()\n suffix = size_part[-1:].upper()\n if suffix in UNITS:\n number, factor = size_part[:-1], UNITS[suffix]\n else:\n number, factor = size_part, 1\n try:\n value = Decimal(number)\n except InvalidOperation:\n skipped.append(\"SKIP \" + raw.strip())\n continue\n total = (value * factor).quantize(Decimal(\"1\"), rounding=ROUND_HALF_UP)\n rows.append((int(total), path))\n\n def human(nbytes):\n steps = [(\"TiB\", 1024 ** 4), (\"GiB\", 1024 ** 3), (\"MiB\", 1024 ** 2), (\"KiB\", 1024)]\n for label, factor in steps:\n if nbytes >= factor:\n scaled = (Decimal(nbytes) / Decimal(factor)).quantize(\n Decimal(\"0.01\"), rounding=ROUND_HALF_UP)\n return \"%s %s\" % (scaled, label)\n return \"%d B\" % nbytes\n\n rows.sort(key=lambda r: (-r[0], r[1]))\n out = list(skipped)\n for nbytes, path in rows:\n out.append(\"%d|%s|%s\" % (nbytes, path, human(nbytes)))\n out.append(\"entries=%d total=%d\" % (len(rows), sum(r[0] for r in rows)))\n return \"\\n\".join(out)","input_data_sample":"4.0K\t./src/utils\n12M\t./src\n1.5G\t./data/raw\n900\t./data/tmp\n2.3G\t./data\n128K\t./docs\n0\t./empty\n17X\t./weird\nnosizehere ./broken\n1.0T\t./\n","output_data_sample":"SKIP 17X\t./weird\nSKIP nosizehere ./broken\n1099511627776|./|1.00 TiB\n2469606195|./data|2.30 GiB\n1610612736|./data/raw|1.50 GiB\n12582912|./src|12.00 MiB\n131072|./docs|128.00 KiB\n4096|./src/utils|4.00 KiB\n900|./data/tmp|900 B\n0|./empty|0 B\nentries=8 total=1103604565687","transformation_instruction":"Convert 'du -h' style output into exact byte counts.\n1. Each non-blank line holds a size, then a TAB, then a path. Strip trailing whitespace from the path.\n2. A size is a decimal number optionally followed by one unit letter: K, M, G or T, case-insensitive, meaning multiplication by 1024, 1024**2, 1024**3 and 1024**4. No letter means bytes. Compute the exact byte count with decimal arithmetic and round half-up to a whole number.\n3. If a line has no TAB, or the size does not parse, emit 'SKIP <the stripped line>' and continue.\n4. Emit one line per parsed entry: '<bytes>|<path>|<human>'. The human column re-renders the byte count using the largest of B, KiB, MiB, GiB, TiB for which the value is at least 1 (bytes below 1024 use B). Show B with no decimals and every other unit with exactly two decimals, rounding half-up.\n5. Parsed entries are sorted by byte count descending, ties broken by path ascending. SKIP lines come first, in input order.\n6. Finally emit 'entries=<parsed count> total=<sum of bytes>'.\n7. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw380wz004ouvp2niczerno","kind":"contributor_item","title":"Submission CZERNO","provisional":false,"output_code":"def transform(text):\n invalid = []\n rows = []\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line or line.startswith(\"#\"):\n continue\n fields = line.split()\n if len(fields) < 4:\n invalid.append(\"INVALID \" + line)\n continue\n source, mount, fstype, optfield = fields[0], fields[1], fields[2], fields[3]\n dump = fields[4] if len(fields) > 4 else \"0\"\n passno = fields[5] if len(fields) > 5 else \"0\"\n if source.startswith(\"UUID=\"):\n kind = \"uuid\"\n elif source.startswith(\"LABEL=\"):\n kind = \"label\"\n elif source.startswith(\"/\"):\n kind = \"device\"\n else:\n kind = \"pseudo\"\n seen = []\n for opt in optfield.split(\",\"):\n if not opt or opt == \"defaults\":\n continue\n if opt not in seen:\n seen.append(opt)\n options = \",\".join(sorted(seen)) if seen else \"defaults\"\n rows.append((mount, fstype, kind, options, dump, passno))\n\n rows.sort(key=lambda r: (r[0], r[1]))\n out = list(invalid)\n for mount, fstype, kind, options, dump, passno in rows:\n out.append(\"%s|%s|%s|%s|%s%s\" % (mount, fstype, kind, options, dump, passno))\n pseudo = sum(1 for r in rows if r[2] == \"pseudo\")\n out.append(\"mounts=%d invalid=%d pseudo=%d\" % (len(rows), len(invalid), pseudo))\n return \"\\n\".join(out)","input_data_sample":"# /etc/fstab: static file system information\nUUID=7c2f-9a11 / ext4 defaults,noatime,errors=remount-ro 0 1\n/dev/sdb1 /data xfs rw,relatime,nofail 0 2\ntmpfs /tmp tmpfs defaults 0 0\nLABEL=archive /mnt/arch ext4 noauto,user,ro,ro,noatime 0 0\nproc /proc proc defaults 0 0\n/dev/sdc1 /mnt/spare auto defaults\n/dev/sdd1 swap\n\ncgroup2 /sys/fs/cgroup cgroup2 nsdelegate,memory_recursiveprot 0 0\n","output_data_sample":"INVALID /dev/sdd1 swap\n/|ext4|uuid|errors=remount-ro,noatime|01\n/data|xfs|device|nofail,relatime,rw|02\n/mnt/arch|ext4|label|noatime,noauto,ro,user|00\n/mnt/spare|auto|device|defaults|00\n/proc|proc|pseudo|defaults|00\n/sys/fs/cgroup|cgroup2|pseudo|memory_recursiveprot,nsdelegate|00\n/tmp|tmpfs|pseudo|defaults|00\nmounts=7 invalid=1 pseudo=3","transformation_instruction":"Normalize a Unix fstab file into a mount table.\n1. Strip each line; drop lines that are empty or start with '#'.\n2. Split the remaining lines on runs of whitespace. A valid entry has at least 4 fields: source, mount point, filesystem type, options. Fields 5 (dump) and 6 (pass) default to '0' when absent. An entry with fewer than 4 fields is invalid: emit 'INVALID <the stripped line>' and skip it.\n3. Classify the source: it starts with 'UUID=' -> 'uuid', starts with 'LABEL=' -> 'label', starts with '/' -> 'device', anything else -> 'pseudo'.\n4. Split the options field on ','; drop empty entries; drop the literal option 'defaults'; deduplicate keeping one copy; sort the survivors ascending. If nothing remains use the single word 'defaults'.\n5. Emit one line per valid entry: '<mount point>|<fstype>|<kind>|<options joined by ,>|<dump><pass>' where dump and pass are printed as one digit each with no separator between them.\n6. Valid entries are sorted by mount point using ordinary string comparison, ties broken by filesystem type ascending. Invalid lines are all emitted first, in input order, before the sorted table.\n7. Finally emit 'mounts=<valid count> invalid=<invalid count> pseudo=<count of kind pseudo>'.\n8. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw380wz004quvp27yhc8hh0","kind":"contributor_item","title":"Submission HC8HH0","provisional":false,"output_code":"from decimal import Decimal, ROUND_HALF_UP\n\n\ndef transform(text):\n lines = text.split(\"\\n\")\n while lines and lines[-1] == \"\":\n lines.pop()\n usable = len(lines) - (len(lines) % 4)\n\n out = []\n reads = 0\n bases = 0\n q30 = 0\n for start in range(0, usable, 4):\n header, seq, sep, qual = lines[start:start + 4]\n rid = header[1:].split(\" \")[0] if header.startswith(\"@\") else header.split(\" \")[0]\n if not header.startswith(\"@\") or not sep.startswith(\"+\") or len(seq) != len(qual):\n out.append(\"%s MALFORMED\" % rid)\n continue\n upper = seq.upper()\n length = len(upper)\n gc_count = upper.count(\"G\") + upper.count(\"C\")\n gc = (Decimal(gc_count) * 100 / Decimal(length)).quantize(\n Decimal(\"0.1\"), rounding=ROUND_HALF_UP)\n scores = [ord(ch) - 33 for ch in qual]\n mean = (Decimal(sum(scores)) / Decimal(length)).quantize(\n Decimal(\"0.01\"), rounding=ROUND_HALF_UP)\n out.append(\"%s len=%d gc=%s meanq=%s n=%d\" % (\n rid, length, gc, mean, upper.count(\"N\")))\n reads += 1\n bases += length\n q30 += sum(1 for s in scores if s >= 30)\n out.append(\"reads=%d bases=%d q30=%d\" % (reads, bases, q30))\n return \"\\n\".join(out)","input_data_sample":"@read_0001 lane=3 tile=1101\nACGTACGTNNGGCC\n+\nIIIIIIII##IIII\n@read_0002\nGGGCCCATTA\n+read_0002\n!!!!IIIIII\n@read_0003 short\nACGT\n+\nIII\n@read_0004\natgcatgcatgc\n+\n5555IIII::::\n","output_data_sample":"read_0001 len=14 gc=57.1 meanq=34.57 n=2\nread_0002 len=10 gc=60.0 meanq=24.00 n=0\nread_0003 MALFORMED\nread_0004 len=12 gc=50.0 meanq=28.33 n=0\nreads=3 bases=36 q30=22","transformation_instruction":"Compute per-read statistics for a FASTQ file.\n1. Split the input into lines and drop trailing empty lines. The remaining lines are grouped into records of exactly four lines: header, sequence, separator, quality. If the number of lines is not a multiple of four, ignore the leftover lines at the end.\n2. The read id is the header line with its leading '@' removed, truncated at the first space.\n3. A record is malformed when the header does not start with '@', the separator does not start with '+', or the sequence and quality strings differ in length. For a malformed record emit '<id> MALFORMED' and continue with the next record.\n4. Sequence letters are upper-cased before counting. GC content is (count of G + count of C) divided by the read length, as a percentage rounded half-up to one decimal place, always printed with one decimal.\n5. Quality scores use Phred+33: the score of a character is its code point minus 33. The mean score is rounded half-up to two decimal places and always printed with two decimals.\n6. Emit one line per record: '<id> len=<length> gc=<pct> meanq=<mean> n=<count of N bases>'.\n7. Then emit a final line 'reads=<good record count> bases=<total length of good records> q30=<number of quality characters across good records whose score is 30 or more>'.\n8. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw380wz004muvp2lsjo5x4h","kind":"contributor_item","title":"Submission JO5X4H","provisional":false,"output_code":"from decimal import Decimal, ROUND_HALF_UP\n\n\ndef transform(text):\n out = []\n n = 0\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line:\n continue\n n += 1\n if not line.startswith(\"$\") or line.count(\"*\") != 1:\n out.append(\"%d: BADSUM\" % n)\n continue\n body, _, tail = line[1:].partition(\"*\")\n if len(tail) < 2:\n out.append(\"%d: BADSUM\" % n)\n continue\n checksum = 0\n for ch in body:\n checksum ^= ord(ch)\n if \"%02X\" % checksum != tail[:2].upper():\n out.append(\"%d: BADSUM\" % n)\n continue\n fields = body.split(\",\")\n if not fields[0].endswith(\"GGA\"):\n out.append(\"%d: SKIP %s\" % (n, fields[0]))\n continue\n if len(fields) < 10:\n out.append(\"%d: BADSUM\" % n)\n continue\n if fields[6] == \"0\":\n out.append(\"%d: NOFIX\" % n)\n continue\n\n def to_degrees(value, hemi, deg_digits):\n deg = Decimal(value[:deg_digits])\n minutes = Decimal(value[deg_digits:])\n result = deg + minutes / Decimal(60)\n if hemi in (\"S\", \"W\"):\n result = -result\n return str(result.quantize(Decimal(\"0.000001\"), rounding=ROUND_HALF_UP))\n\n utc = fields[1].split(\".\")[0]\n stamp = \"%s:%s:%s\" % (utc[0:2], utc[2:4], utc[4:6])\n lat = to_degrees(fields[2], fields[3], 2)\n lon = to_degrees(fields[4], fields[5], 3)\n out.append(\"%d: %s %s %s sats=%d alt=%sm\" % (\n n, stamp, lat, lon, int(fields[7]), fields[9]))\n return \"\\n\".join(out)","input_data_sample":"$GPGGA,123519.00,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*69\n$GPGGA,001043.00,4404.14036,N,12118.85961,W,1,12,0.98,1113.0,M,-21.3,M,,*59\n$GPGGA,092751.00,3723.2475,S,14507.36,E,0,04,2.5,19.7,M,,M,,*59\n$GPGGA,123519.00,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*6A\n$GPRMC,081836,A,3751.65,S,14507.36,E,000.0,360.0,130998,011.3,E*62\n$GNGGA,181305.00,5133.4212,N,00007.1120,W,2,06,1.2,12.5,M,47.0,M,,*59\n","output_data_sample":"1: 12:35:19 48.117300 11.516667 sats=8 alt=545.4m\n2: 00:10:43 44.069006 -121.314327 sats=12 alt=1113.0m\n3: NOFIX\n4: BADSUM\n5: SKIP GPRMC\n6: 18:13:05 51.557020 -0.118533 sats=6 alt=12.5m","transformation_instruction":"Decode NMEA 0183 GGA fix sentences. Process every non-blank line in input order, numbering them from 1 counting only non-blank lines.\n1. A sentence must start with '$' and contain exactly one '*'. The two characters after '*' are the checksum in hexadecimal. Compute the checksum as the XOR of every character strictly between '$' and '*'. Compare case-insensitively. On any structural problem or checksum mismatch emit '<n>: BADSUM' and continue.\n2. Split the part between '$' and '*' on ','. The first field is the talker+type; if it does not end with 'GGA' emit '<n>: SKIP <field0>'.\n3. Field layout: 1=UTC hhmmss(.sss), 2=latitude ddmm.mmmm, 3=N/S, 4=longitude dddmm.mmmm, 5=E/W, 6=fix quality, 7=satellites used, 9=altitude in metres.\n4. If field 6 is '0' emit '<n>: NOFIX' and continue.\n5. Convert latitude and longitude to signed decimal degrees: degrees + minutes/60, negative for 'S' and 'W'. Round half-up to 6 decimal places and always show 6 decimals.\n6. Format UTC as 'hh:mm:ss', discarding any fractional seconds.\n7. Emit '<n>: <hh:mm:ss> <lat> <lon> sats=<int satellites> alt=<altitude>m' where the satellite count is printed without leading zeros and the altitude is printed exactly as it appears in the sentence.\n8. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw380wz004puvp24a7pzsiu","kind":"contributor_item","title":"Submission 7PZSIU","provisional":false,"output_code":"def transform(text):\n origin = \".\"\n default_ttl = \"3600\"\n last_owner = None\n records = []\n\n for raw in text.split(\"\\n\"):\n line = raw.split(\";\")[0].rstrip()\n if not line.strip():\n continue\n if line.lstrip().startswith(\"$\"):\n parts = line.split()\n if parts[0].upper() == \"$ORIGIN\":\n origin = parts[1]\n elif parts[0].upper() == \"$TTL\":\n default_ttl = parts[1]\n continue\n\n indented = line[0].isspace()\n tokens = line.split()\n if indented:\n owner_token = last_owner\n else:\n owner_token = tokens[0]\n tokens = tokens[1:]\n last_owner = owner_token\n\n ttl = default_ttl\n if tokens and tokens[0].isdigit():\n ttl = tokens[0]\n tokens = tokens[1:]\n if tokens and tokens[0].upper() == \"IN\":\n tokens = tokens[1:]\n rtype = tokens[0].upper()\n rdata = \" \".join(tokens[1:])\n\n def expand(name):\n if name == \"@\":\n return origin\n if name.endswith(\".\"):\n return name\n return name + \".\" + origin\n\n owner = expand(owner_token)\n if rtype in (\"NS\", \"CNAME\", \"PTR\"):\n rdata = expand(rdata)\n elif rtype == \"MX\":\n pref, target = rdata.split(None, 1)\n rdata = pref + \" \" + expand(target)\n records.append((owner, ttl, rtype, rdata))\n\n records.sort(key=lambda r: (r[0], r[2], r[3]))\n out = [\"%s %s %s %s\" % r for r in records]\n types = sorted({r[2] for r in records})\n out.append(\"records=%d types=%s\" % (len(records), \",\".join(types)))\n return \"\\n\".join(out)","input_data_sample":"$ORIGIN example.net.\n$TTL 3600\n@ IN NS ns1 ; primary\n IN NS ns2.example.net.\n@ IN MX 10 mail\n@ IN MX 20 backup.mx.example.org.\nns1 IN A 192.0.2.53\nns2 600 IN A 192.0.2.54\nwww IN CNAME @\nmail IN A 192.0.2.25\n; a stray comment line\nshop 300 IN CNAME www\n@ IN TXT \"v=spf1 mx -all\"\n$ORIGIN dev.example.net.\napi IN A 198.51.100.7\n@ IN NS ns1.example.net.\n","output_data_sample":"api.dev.example.net. 3600 A 198.51.100.7\ndev.example.net. 3600 NS ns1.example.net.\nexample.net. 3600 MX 10 mail.example.net.\nexample.net. 3600 MX 20 backup.mx.example.org.\nexample.net. 3600 NS ns1.example.net.\nexample.net. 3600 NS ns2.example.net.\nexample.net. 3600 TXT \"v=spf1 mx -all\"\nmail.example.net. 3600 A 192.0.2.25\nns1.example.net. 3600 A 192.0.2.53\nns2.example.net. 600 A 192.0.2.54\nshop.example.net. 300 CNAME www.example.net.\nwww.example.net. 3600 CNAME example.net.\nrecords=12 types=A,CNAME,MX,NS,TXT","transformation_instruction":"Expand a BIND-style DNS zone fragment into fully qualified records.\n1. Remove a ';' comment from each line: everything from the first ';' to the end of the line is dropped. Then drop lines that are empty after stripping trailing whitespace.\n2. '$ORIGIN name' and '$TTL seconds' are directives that set the current origin and the current default TTL. They produce no output. The origin always ends with a dot.\n3. Every other line is a resource record. If the line starts with whitespace the owner name is inherited from the previous record; otherwise the first token is the owner name. After the owner, an optional all-digit TTL may appear, then the literal class 'IN', then the record type, then the rdata (all remaining tokens joined with a single space).\n4. Owner name expansion: '@' becomes the current origin; a name ending in '.' is already absolute; any other name gets '.' plus the current origin appended.\n5. For record types A and TXT the rdata is left alone. For NS, CNAME and PTR the whole rdata is a domain name and is expanded with the same rule as owner names. For MX the rdata is a preference number and a domain name; only the name is expanded.\n6. Emit one line per record: '<owner> <ttl> <type> <rdata>' where ttl is the record's own TTL if present, otherwise the current default TTL.\n7. Sort the emitted records by owner ascending, then type ascending, then rdata ascending, all as plain string comparisons.\n8. Finally emit 'records=<count> types=<distinct types sorted ascending, joined by ,>'.\n9. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3b1lf005duvp2rboah3jz","kind":"contributor_item","title":"Submission OAH3JZ","provisional":false,"output_code":"def transform(text):\n raw_lines = text.split(\"\\n\")\n unfolded = []\n for line in raw_lines:\n if line[:1] in (\" \", \"\\t\") and unfolded:\n unfolded[-1] += line[1:]\n else:\n unfolded.append(line)\n\n def unescape(value):\n out = []\n i = 0\n while i < len(value):\n ch = value[i]\n if ch == \"\\\\\" and i + 1 < len(value):\n nxt = value[i + 1]\n if nxt in (\"n\", \"N\"):\n out.append(\" / \")\n elif nxt == \",\":\n out.append(\",\")\n elif nxt == \";\":\n out.append(\";\")\n else:\n out.append(nxt)\n i += 2\n continue\n out.append(ch)\n i += 1\n return \"\".join(out)\n\n contacts = []\n card = None\n for line in unfolded:\n stripped = line.strip()\n if not stripped:\n continue\n if stripped.upper() == \"BEGIN:VCARD\":\n card = {\"fn\": None, \"n\": None, \"org\": None, \"emails\": [], \"tels\": []}\n continue\n if stripped.upper() == \"END:VCARD\":\n if card is not None:\n contacts.append(card)\n card = None\n continue\n if card is None or \":\" not in stripped:\n continue\n head, _, value = stripped.partition(\":\")\n prop = head.split(\";\")[0].upper()\n value = unescape(value)\n if prop == \"FN\" and card[\"fn\"] is None:\n card[\"fn\"] = value\n elif prop == \"N\" and card[\"n\"] is None:\n card[\"n\"] = value\n elif prop == \"ORG\" and card[\"org\"] is None:\n card[\"org\"] = \" / \".join(part.strip() for part in value.split(\";\") if part.strip())\n elif prop == \"EMAIL\":\n card[\"emails\"].append(value)\n elif prop == \"TEL\":\n cleaned = value\n for junk in (\" \", \"-\", \".\", \"(\", \")\"):\n cleaned = cleaned.replace(junk, \"\")\n card[\"tels\"].append(cleaned)\n\n out = []\n with_email = 0\n for card in contacts:\n name = card[\"fn\"]\n if not name:\n if card[\"n\"]:\n parts = card[\"n\"].split(\";\")\n given = parts[1] if len(parts) > 1 else \"\"\n family = parts[0] if parts else \"\"\n name = (given + \" \" + family).strip()\n if not name:\n name = \"Unnamed\"\n org = card[\"org\"] or \"-\"\n emails = \",\".join(card[\"emails\"]) if card[\"emails\"] else \"-\"\n tels = \",\".join(card[\"tels\"]) if card[\"tels\"] else \"-\"\n if card[\"emails\"]:\n with_email += 1\n out.append(\"%s|%s|%s|%s\" % (name, org, emails, tels))\n out.append(\"contacts=%d withemail=%d\" % (len(contacts), with_email))\n return \"\\n\".join(out)","input_data_sample":"BEGIN:VCARD\nVERSION:3.0\nN:Okonkwo;Adaeze;Q;Dr.;\nFN:Dr. Adaeze Okonkwo\nORG:Longname Research Institute for Applied\n Cartography;Mapping Division\nTEL;TYPE=WORK,VOICE:+44 20 7946-0958\nTEL;TYPE=CELL:+44 (7700) 900.123\nEMAIL;TYPE=INTERNET;TYPE=PREF:adaeze@example.org\nNOTE:Field survey lead\\nAvailable Tuesdays\nEND:VCARD\nBEGIN:VCARD\nVERSION:3.0\nN:Zhang;Bo;;;\nORG:Solo Practice\nEMAIL:bo@example.net\nEMAIL:bo.zhang@work.example.net\nEND:VCARD\nBEGIN:VCARD\nVERSION:3.0\nFN:Kiosk Support Desk\nTEL:0800 555 0199\nEND:VCARD\n","output_data_sample":"Dr. Adaeze Okonkwo|Longname Research Institute for Applied Cartography / Mapping Division|adaeze@example.org|+442079460958,+447700900123\nBo Zhang|Solo Practice|bo@example.net,bo.zhang@work.example.net|-\nKiosk Support Desk|-|-|08005550199\ncontacts=3 withemail=2","transformation_instruction":"Flatten a stream of vCard 3.0 records into one line per contact.\n1. First unfold the input: a line beginning with a space or a horizontal tab is a continuation of the previous line; remove exactly one leading whitespace character and append the rest to the previous line. Do this before any other parsing.\n2. A contact runs from a 'BEGIN:VCARD' line to the next 'END:VCARD' line. Ignore anything outside such a block.\n3. Split every property line at the first ':'. The part before it is the name plus optional ';'-separated parameters; the part after it is the value. Property names are compared case-insensitively.\n4. In values, the escape sequences '\\\\n' and '\\\\N' mean a line break and are replaced by ' / '; '\\\\,' means a comma and '\\\\;' means a semicolon.\n5. Collect FN (first occurrence wins), ORG (its ';'-separated components joined with ' / '), every EMAIL in file order and every TEL in file order. A TEL value is normalized by deleting spaces, hyphens, dots and parentheses.\n6. A contact with no FN uses the value of N, taking its second ';' component then its first, joined with a space and stripped; if there is no N either, use 'Unnamed'.\n7. Emit one line per contact: '<FN>|<ORG or ->|<emails joined by ,, or - when none>|<tels joined by ,, or - when none>'.\n8. Finally emit 'contacts=<count> withemail=<count having at least one EMAIL>'.\n9. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3b1lf005cuvp2rgrl0pcn","kind":"contributor_item","title":"Submission RL0PCN","provisional":false,"output_code":"def transform(text):\n name = \"Untitled\"\n entries = []\n pending = None\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line:\n continue\n if line.startswith(\"#\"):\n if line.startswith(\"#PLAYLIST:\"):\n name = line[len(\"#PLAYLIST:\"):].strip()\n elif line.startswith(\"#EXTINF:\"):\n info = line[len(\"#EXTINF:\"):]\n secs, _, title = info.partition(\",\")\n pending = (int(secs.strip()), title)\n continue\n if pending is not None:\n entries.append((pending[0], pending[1], line))\n pending = None\n\n out = []\n known_total = 0\n known = 0\n for index, (secs, title, uri) in enumerate(entries, start=1):\n if \" - \" in title:\n artist, song = title.split(\" - \", 1)\n artist, song = artist.strip(), song.strip()\n else:\n artist, song = \"<unknown>\", title.strip()\n if uri.startswith(\"http://\") or uri.startswith(\"https://\"):\n medium = \"stream\"\n else:\n tail = uri.split(\"/\")[-1]\n medium = tail.rsplit(\".\", 1)[1].lower() if \".\" in tail else \"none\"\n if secs == -1:\n length = \"--:--\"\n else:\n length = \"%d:%02d\" % (secs // 60, secs % 60)\n known_total += secs\n known += 1\n out.append(\"%d. %s | %s | %s | %s\" % (index, artist, song, length, medium))\n hours, rest = divmod(known_total, 3600)\n out.append(\"playlist=%s entries=%d known=%d total=%d:%02d:%02d\" % (\n name, len(entries), known, hours, rest // 60, rest % 60))\n return \"\\n\".join(out)","input_data_sample":"#EXTM3U\n#PLAYLIST:Night Drive\n#EXTINF:213,Kessler Trio - Amber Underpass\ntracks/amber_underpass.mp3\n#EXTINF:-1,Harbour Radio Live\nhttps://stream.example.org/harbour\n# a stray comment that should be ignored\n#EXTINF:95,Interlude\ntracks/interlude.flac\n#EXTINF:3067,Kessler Trio - The Long Way Back\n/media/library/long way back\n\n#EXTINF:47,Nuria Vidal - Coda\ntracks/coda.OGG\n","output_data_sample":"1. Kessler Trio | Amber Underpass | 3:33 | mp3\n2. <unknown> | Harbour Radio Live | --:-- | stream\n3. <unknown> | Interlude | 1:35 | flac\n4. Kessler Trio | The Long Way Back | 51:07 | none\n5. Nuria Vidal | Coda | 0:47 | ogg\nplaylist=Night Drive entries=5 known=4 total=0:57:02","transformation_instruction":"Turn an extended M3U playlist into a numbered track listing.\n1. Ignore the '#EXTM3U' header and any blank line. A '#PLAYLIST:<name>' line sets the playlist name; if it never appears use 'Untitled'.\n2. A '#EXTINF:<seconds>,<title>' line describes the next entry; seconds is an integer that may be -1 for unknown. The entry's URI is the first following line that is not blank and does not start with '#'. Any other '#' line is ignored.\n3. The title is split on the first occurrence of ' - ' into artist and song title. If there is no ' - ', the artist is '<unknown>' and the whole string is the song title. Both halves are stripped.\n4. The medium column is 'stream' when the URI starts with 'http://' or 'https://'; otherwise it is the lower-cased extension after the last '.' of the URI's final path segment, or 'none' when that segment has no dot.\n5. Emit one line per entry, numbered from 1 in playlist order: '<n>. <artist> | <song title> | <length> | <medium>'. Length is 'M:SS' with the minutes unpadded, or '--:--' when the duration is -1.\n6. Finally emit 'playlist=<name> entries=<count> known=<count with a known duration> total=<H:MM:SS>' where total sums only the known durations and prints hours unpadded with two-digit minutes and seconds.\n7. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3b1lf005iuvp2ea76qrub","kind":"contributor_item","title":"Submission 76QRUB","provisional":false,"output_code":"import re\nfrom decimal import Decimal, ROUND_HALF_UP\n\nWIND = re.compile(r\"^(\\d{3}|VRB)(\\d{2,3})(?:G(\\d{2,3}))?KT$\")\nTEMP = re.compile(r\"^(M?\\d{1,2})/(M?\\d{1,2})$\")\n\n\ndef transform(text):\n out = []\n good = 0\n bad = 0\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line:\n continue\n tokens = line.split()\n if len(tokens) < 2 or len(tokens[1]) != 7 or not tokens[1].endswith(\"Z\") \\\n or not tokens[1][:6].isdigit():\n out.append(\"%s INVALID\" % tokens[0])\n bad += 1\n continue\n station = tokens[0]\n stamp = tokens[1]\n wind = vis = temp = dew = qnh = \"?\"\n for token in tokens[2:]:\n if wind == \"?\" and token.endswith(\"KT\"):\n m = WIND.match(token)\n if m:\n direction, speed, gust = m.groups()\n if direction == \"000\" and speed == \"00\":\n wind = \"calm\"\n else:\n wind = \"%s@%skt\" % (direction, speed)\n if gust:\n wind += \"g%s\" % gust\n continue\n if vis == \"?\":\n if token == \"CAVOK\":\n vis = \"CAVOK\"\n continue\n if token == \"9999\":\n vis = \"10+km\"\n continue\n if len(token) == 4 and token.isdigit():\n metres = (Decimal(token) / Decimal(1000)).quantize(\n Decimal(\"0.1\"), rounding=ROUND_HALF_UP)\n vis = \"%skm\" % metres\n continue\n if token.endswith(\"SM\"):\n body = token[:-2]\n if \"/\" in body:\n num, den = body.split(\"/\")\n miles = Decimal(num) / Decimal(den)\n else:\n miles = Decimal(body)\n km = (miles * Decimal(\"1.609344\")).quantize(\n Decimal(\"0.1\"), rounding=ROUND_HALF_UP)\n vis = \"%skm\" % km\n continue\n if temp == \"?\":\n m = TEMP.match(token)\n if m:\n def celsius(value):\n sign = \"-\" if value.startswith(\"M\") else \"\"\n return sign + str(int(value.lstrip(\"M\")))\n temp = celsius(m.group(1))\n dew = celsius(m.group(2))\n continue\n if qnh == \"?\" and len(token) == 5:\n if token[0] == \"Q\" and token[1:].isdigit():\n qnh = \"%dhPa\" % int(token[1:])\n continue\n if token[0] == \"A\" and token[1:].isdigit():\n inhg = Decimal(token[1:]) / Decimal(100)\n hpa = (inhg * Decimal(\"33.8639\")).quantize(\n Decimal(\"0.1\"), rounding=ROUND_HALF_UP)\n qnh = \"%shPa\" % hpa\n continue\n out.append(\"%s %s/%s:%sZ wind=%s vis=%s t=%sC dp=%sC qnh=%s\" % (\n station, stamp[0:2], stamp[2:4], stamp[4:6], wind, vis, temp, dew, qnh))\n good += 1\n out.append(\"reports=%d invalid=%d\" % (good, bad))\n return \"\\n\".join(out)","input_data_sample":"EGLL 121350Z 24015G27KT 9999 -RA SCT012 BKN020 12/09 Q1008\nKJFK 121351Z 00000KT 1/2SM FG VV002 M02/M03 A2992\nLFPG 121400Z VRB03KT CAVOK 25/12 Q1015\nYSSY 121430Z 09018KT 8000 SHRA FEW015 SCT030 19/14 Q1012\nNZAA 121500Z 36004KT 3000 BR OVC004 07/07 Q0998\nBROKEN 12Z\nCYYZ 121530Z 31012KT 2SM -SN BKN008 M08/M11 A2975\n","output_data_sample":"EGLL 12/13:50Z wind=240@15ktg27 vis=10+km t=12C dp=9C qnh=1008hPa\nKJFK 12/13:51Z wind=calm vis=0.8km t=-2C dp=-3C qnh=1013.2hPa\nLFPG 12/14:00Z wind=VRB@03kt vis=CAVOK t=25C dp=12C qnh=1015hPa\nYSSY 12/14:30Z wind=090@18kt vis=8.0km t=19C dp=14C qnh=1012hPa\nNZAA 12/15:00Z wind=360@04kt vis=3.0km t=7C dp=7C qnh=998hPa\nBROKEN INVALID\nCYYZ 12/15:30Z wind=310@12kt vis=3.2km t=-8C dp=-11C qnh=1007.5hPa\nreports=6 invalid=1","transformation_instruction":"Decode METAR aviation weather reports. Process every non-blank line, stripped, in order.\n1. Split on whitespace. The first token is the station identifier; the second must be a 7-character day-time group 'DDHHMMZ'. If it is missing or malformed, emit '<station> INVALID' and continue.\n2. Scan the remaining tokens:\n - Wind: a token ending in 'KT'. '00000KT' is 'calm'. 'VRBffKT' is 'VRB@<ff>kt'. Otherwise 'dddff(Gxx)KT' is '<ddd>@<ff>kt' with 'g<xx>' appended when a gust group is present. Leading zeros are kept exactly as written.\n - Visibility: the token 'CAVOK' gives 'CAVOK'; '9999' gives '10+km'; any other 4-digit token gives metres divided by 1000 with one decimal and 'km'; a token ending in 'SM' gives statute miles converted with 1 mile = 1.609344 km, rounded half-up to one decimal, plus 'km'. A mile value may be a fraction like '1/2'.\n - Temperature: a token matching '<t>/<d>' where each half is one or two digits optionally prefixed by 'M' for minus. 'M' becomes a leading '-'; leading zeros are dropped.\n - Pressure: 'Qnnnn' gives '<nnnn>hPa' with leading zeros dropped; 'Annnn' is inches of mercury in hundredths, converted with 1 inHg = 33.8639 hPa and rounded half-up to one decimal, then 'hPa'.\n3. Any field that never appears is reported as '?'.\n4. Emit one line per report: '<station> <DD>/<HH>:<MM>Z wind=<wind> vis=<visibility> t=<temp>C dp=<dewpoint>C qnh=<pressure>'.\n5. Finally emit 'reports=<count of decoded reports> invalid=<count of invalid lines>'.\n6. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3b1lf005fuvp26d6ggmal","kind":"contributor_item","title":"Submission 6GGMAL","provisional":false,"output_code":"import hashlib\n\n\ndef transform(text):\n gaps = []\n data = bytearray()\n marker = None\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line:\n continue\n head = line.split(\"|\", 1)[0].strip()\n tokens = head.split()\n if len(tokens) == 1 and all(c in \"0123456789abcdefABCDEF\" for c in tokens[0]):\n marker = int(tokens[0], 16)\n continue\n offset_token = tokens[0]\n offset = int(offset_token, 16)\n if offset != len(data):\n gaps.append(\"GAP at \" + offset_token)\n for token in tokens[1:]:\n data.append(int(token, 16))\n\n if marker is None:\n marker_state = \"absent\"\n elif marker == len(data):\n marker_state = \"ok\"\n else:\n marker_state = \"mismatch\"\n\n printable = sum(1 for b in data if 0x20 <= b <= 0x7E)\n rendered = \"\".join(chr(b) if 0x20 <= b <= 0x7E else \".\" for b in data)\n out = list(gaps)\n out.append(\"length=%d\" % len(data))\n out.append(\"marker=%s\" % marker_state)\n out.append(\"sha256=%s\" % hashlib.sha256(bytes(data)).hexdigest())\n out.append(\"printable=%d\" % printable)\n out.append(\"text=%s\" % rendered)\n return \"\\n\".join(out)","input_data_sample":"00000000 50 4b 03 04 14 00 00 00 08 00 21 00 4d 61 6b 65 |PK........!.Make|\n00000010 66 69 6c 65 55 54 09 00 03 9c 2f 0a 65 9c 2f 0a |fileUT..../.e../|\n00000020 65 75 78 0b 00 01 04 e8 03 00 00 04 e8 03 00 00 |eux.............|\n00000040 0a 63 6c 65 61 6e 3a 0a |.clean:.|\n00000038\n","output_data_sample":"GAP at 00000040\nlength=56\nmarker=ok\nsha256=8b1b7aa022519daaada9494262ad2a8e3a8204b9649b37a98818a0231da379e9\nprintable=25\ntext=PK........!.MakefileUT..../.e./.eux..............clean:.","transformation_instruction":"Reconstruct the bytes described by a 'hexdump -C' listing.\n1. Ignore blank lines. A line consisting only of hexadecimal digits is the trailing length marker; remember the last one seen.\n2. Every other line starts with an 8-digit hexadecimal offset, then whitespace, then up to 16 two-digit hexadecimal byte values, then an optional '|...|' ASCII gutter. Take everything before the first '|' (or the whole line when there is no '|'), drop the first whitespace-separated token as the offset, and treat the remaining tokens as byte values.\n3. Concatenate the bytes of every data line in the order the lines appear. Ignore the offsets when concatenating, but verify them: if a data line's offset differs from the number of bytes gathered so far, emit 'GAP at <the 8-digit offset as written>' as its own output line and keep going.\n4. After all lines, emit these lines in order:\n 'length=<number of bytes>'\n 'marker=<ok|mismatch|absent>' comparing the trailing length marker to the reconstructed length,\n 'sha256=<hex digest of the reconstructed bytes>',\n 'printable=<count of bytes in the inclusive range 0x20..0x7e>',\n 'text=<the reconstructed bytes decoded as latin-1 with every byte outside 0x20..0x7e replaced by a dot>'.\n5. GAP lines come first, in input order, before the five summary lines.\n6. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3b1lf005euvp2vy6vwbyk","kind":"contributor_item","title":"Submission 6VWBYK","provisional":false,"output_code":"import json\n\n\ndef transform(text):\n physical = text.split(\"\\n\")\n logical = []\n buffer = \"\"\n continuing = False\n for line in physical:\n current = line.lstrip() if continuing else line\n trailing = len(current) - len(current.rstrip(\"\\\\\"))\n if trailing % 2 == 1:\n buffer += current[:-1]\n continuing = True\n continue\n buffer += current\n logical.append(buffer)\n buffer = \"\"\n continuing = False\n if continuing or buffer:\n logical.append(buffer)\n\n def unescape(chunk):\n out = []\n i = 0\n while i < len(chunk):\n ch = chunk[i]\n if ch != \"\\\\\":\n out.append(ch)\n i += 1\n continue\n if i + 1 >= len(chunk):\n i += 1\n continue\n nxt = chunk[i + 1]\n if nxt == \"t\":\n out.append(\"\\t\")\n elif nxt == \"n\":\n out.append(\"\\n\")\n elif nxt == \"r\":\n out.append(\"\\r\")\n elif nxt == \"f\":\n out.append(\"\\f\")\n elif nxt == \"u\":\n out.append(chr(int(chunk[i + 2:i + 6], 16)))\n i += 6\n continue\n else:\n out.append(nxt)\n i += 2\n return \"\".join(out)\n\n result = {}\n for line in logical:\n line = line.lstrip()\n if not line or line[0] in (\"#\", \"!\"):\n continue\n i = 0\n key_chars = []\n sep_index = None\n while i < len(line):\n ch = line[i]\n if ch == \"\\\\\" and i + 1 < len(line):\n key_chars.append(ch)\n key_chars.append(line[i + 1])\n i += 2\n continue\n if ch in (\"=\", \":\") or ch.isspace():\n sep_index = i\n break\n key_chars.append(ch)\n i += 1\n raw_key = \"\".join(key_chars)\n if sep_index is None:\n result[unescape(raw_key)] = \"\"\n continue\n rest = line[sep_index:]\n stripped = rest.lstrip()\n if rest[0].isspace() and stripped[:1] in (\"=\", \":\"):\n rest = stripped[1:]\n elif rest[0] in (\"=\", \":\"):\n rest = rest[1:]\n else:\n rest = stripped\n value = rest.lstrip()\n result[unescape(raw_key)] = unescape(value)\n\n return json.dumps(result, indent=2, sort_keys=True, ensure_ascii=False)","input_data_sample":"# database settings\n! legacy comment style\ndb.host = localhost\ndb.port:5432\ndb.name postgres\ndb.host = 127.0.0.1\nlong.description = first fragment \\\n second fragment \\\n third fragment\npath.windows = C\\:\\\\logs\\\\app\nempty.value =\nkey\\ with\\ space = present\ngreeting = café – ready\ntabbed.value = left\\tright\n","output_data_sample":"{\n \"db.host\": \"127.0.0.1\",\n \"db.name\": \"postgres\",\n \"db.port\": \"5432\",\n \"empty.value\": \"\",\n \"greeting\": \"café – ready\",\n \"key with space\": \"present\",\n \"long.description\": \"first fragment second fragment third fragment\",\n \"path.windows\": \"C:\\\\logs\\\\app\",\n \"tabbed.value\": \"left\\tright\"\n}","transformation_instruction":"Parse a Java .properties file into JSON.\n1. A logical line ends where a physical line does NOT end with an odd number of backslashes. When a line ends with a single backslash, that backslash and the newline are removed and the leading whitespace of the next physical line is stripped before joining.\n2. Leading whitespace of a logical line is removed. A logical line that is empty, or whose first character is '#' or '!', is a comment and is skipped.\n3. The key ends at the first unescaped '=', ':' or run of whitespace. Whitespace around that separator is discarded; if the separator was whitespace only, the next '=' or ':' immediately following is also consumed. The rest of the logical line is the value; it keeps internal spacing but has no leading whitespace.\n4. In both key and value, backslash escapes are resolved: '\\\\t' tab, '\\\\n' newline, '\\\\r' carriage return, '\\\\f' form feed, '\\\\uXXXX' the code point given by four hexadecimal digits, and a backslash before any other character yields that character.\n5. A key that appears twice keeps the value of its last occurrence.\n6. Return the resulting mapping as JSON produced with json.dumps using indent=2, sort_keys=True and ensure_ascii=False."} {"id":"cmsw3b1lf005huvp2bvhnee8v","kind":"contributor_item","title":"Submission HNEE8V","provisional":false,"output_code":"def transform(text):\n physical = text.split(\"\\n\")\n logical = []\n buffer = None\n for line in physical:\n piece = line\n if buffer is not None:\n piece = piece.lstrip()\n piece = buffer + \" \" + piece\n buffer = None\n if piece.endswith(\"\\\\\"):\n buffer = piece[:-1].rstrip()\n continue\n logical.append(piece)\n if buffer is not None:\n logical.append(buffer)\n\n targets = {}\n order = []\n phony = set()\n current = []\n for line in logical:\n if line.startswith(\"\\t\"):\n for name in current:\n targets[name][\"recipes\"] += 1\n continue\n stripped = line.strip()\n if not stripped or stripped.startswith(\"#\"):\n continue\n colon = stripped.find(\":\")\n equals = stripped.find(\"=\")\n if equals != -1 and (colon == -1 or equals < colon):\n current = []\n continue\n if colon == -1:\n current = []\n continue\n head = stripped[:colon]\n rest = stripped[colon + 1:]\n recipe_inline = 0\n if \";\" in rest:\n rest, _, _tail = rest.partition(\";\")\n recipe_inline = 1\n prereqs = rest.split()\n names = head.split()\n if names == [\".PHONY\"]:\n phony.update(prereqs)\n current = []\n continue\n current = []\n for name in names:\n if name not in targets:\n targets[name] = {\"prereqs\": [], \"recipes\": 0}\n order.append(name)\n for p in prereqs:\n if p not in targets[name][\"prereqs\"]:\n targets[name][\"prereqs\"].append(p)\n targets[name][\"recipes\"] += recipe_inline\n current.append(name)\n\n out = []\n for name in sorted(targets):\n info = targets[name]\n prereqs = \",\".join(info[\"prereqs\"]) if info[\"prereqs\"] else \"-\"\n out.append(\"%s: %s recipes=%d phony=%s\" % (\n name, prereqs, info[\"recipes\"], \"yes\" if name in phony else \"no\"))\n missing = sorted({p for info in targets.values() for p in info[\"prereqs\"]\n if p not in targets})\n out.append(\"missing=%s\" % (\",\".join(missing) if missing else \"-\"))\n return \"\\n\".join(out)","input_data_sample":"CC = gcc\nCFLAGS = -O2 -Wall\nOBJ = main.o util.o\n\n# default goal\nall: build test\n\nbuild: $(OBJ) banner.h\n\t$(CC) $(CFLAGS) -o app $(OBJ)\n\t@echo built\n\nmain.o: main.c util.h \\\n banner.h\n\t$(CC) -c main.c\n\nutil.o: util.c util.h\n\t$(CC) -c util.c\n\ntest: build ; ./app --selftest\n\n.PHONY: all test clean\nclean:\n\trm -f *.o app\nbuild: extra.h\n\t@echo second rule\n","output_data_sample":"all: build,test recipes=0 phony=yes\nbuild: $(OBJ),banner.h,extra.h recipes=3 phony=no\nclean: - recipes=1 phony=yes\nmain.o: main.c,util.h,banner.h recipes=1 phony=no\ntest: build recipes=1 phony=yes\nutil.o: util.c,util.h recipes=1 phony=no\nmissing=$(OBJ),banner.h,extra.h,main.c,util.c,util.h","transformation_instruction":"Build a target report from a Makefile.\n1. A physical line ending with a backslash continues onto the next line: remove the backslash and the newline and join with a single space, stripping the leading whitespace of the continuation.\n2. A logical line starting with a TAB character is a recipe line belonging to the most recently seen rule; count it and otherwise ignore it.\n3. After removing recipe lines, drop lines that are blank or whose first non-space character is '#'.\n4. A line whose stripped form contains '=' before any ':' is a variable assignment and is ignored.\n5. Every other line containing ':' is a rule. The targets are the whitespace-separated words before the first ':'. Everything after that ':' up to an optional ';' is the prerequisite list, split on whitespace; text after ';' is a recipe and is counted as one recipe line.\n6. A target listed in a '.PHONY' rule's prerequisites is phony. The '.PHONY' rule itself is not reported as a target.\n7. Report one line per target, sorted by target name ascending: '<target>: <prerequisites joined by ,, or - when none> recipes=<count> phony=<yes|no>'. When the same target appears in more than one rule, merge them: concatenate prerequisites in order of appearance without repeating one already present, and add up the recipe counts.\n8. Then emit 'missing=<sorted, comma-separated list of prerequisites that are never defined as a target, or - when none>'. Compare prerequisites literally, including any '$(...)' text.\n9. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3b1lf005guvp2yezr4zr3","kind":"contributor_item","title":"Submission ZR4ZR3","provisional":false,"output_code":"import re\n\nPATTERN = re.compile(r\"^P(?:(\\d+)W|(?:(\\d+)D)?(?:T(?:(\\d+)H)?(?:(\\d+)M)?(?:(\\d+)S)?)?)$\")\n\n\ndef transform(text):\n out = []\n ok = 0\n total_sum = 0\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line:\n continue\n negative = line.startswith(\"-\")\n body = line[1:] if negative else line\n if not body.startswith(\"P\"):\n out.append(\"%s -> INVALID\" % line)\n continue\n rest = body[1:]\n date_part, sep, time_part = rest.partition(\"T\")\n if \"Y\" in date_part or \"M\" in date_part or \".\" in body or \",\" in body:\n out.append(\"%s -> UNSUPPORTED\" % line)\n continue\n if rest == \"\" or (sep and time_part == \"\"):\n out.append(\"%s -> INVALID\" % line)\n continue\n match = PATTERN.match(body)\n if not match:\n out.append(\"%s -> INVALID\" % line)\n continue\n weeks, days, hours, minutes, seconds = match.groups()\n total = 0\n if weeks is not None:\n total = int(weeks) * 7 * 86400\n else:\n total += int(days or 0) * 86400\n total += int(hours or 0) * 3600\n total += int(minutes or 0) * 60\n total += int(seconds or 0)\n if negative:\n total = -total\n\n magnitude = abs(total)\n d, rem = divmod(magnitude, 86400)\n h, rem = divmod(rem, 3600)\n m, s = divmod(rem, 60)\n if magnitude == 0:\n canonical = \"PT0S\"\n else:\n canonical = \"P\"\n if d:\n canonical += \"%dD\" % d\n if h or m or s:\n canonical += \"T\"\n if h:\n canonical += \"%dH\" % h\n if m:\n canonical += \"%dM\" % m\n if s:\n canonical += \"%dS\" % s\n if total < 0:\n canonical = \"-\" + canonical\n out.append(\"%s -> %d -> %s\" % (line, total, canonical))\n ok += 1\n total_sum += total\n out.append(\"ok=%d sum=%d\" % (ok, total_sum))\n return \"\\n\".join(out)","input_data_sample":"PT1H30M\nP3DT4H15M30S\nPT0S\nP1W\nPT90M\n-PT45S\nP2DT\nPT1.5H\nP1Y2M\nP10D\nP2WT3H\nPT36H\nbanana\n","output_data_sample":"PT1H30M -> 5400 -> PT1H30M\nP3DT4H15M30S -> 274530 -> P3DT4H15M30S\nPT0S -> 0 -> PT0S\nP1W -> 604800 -> P7D\nPT90M -> 5400 -> PT1H30M\n-PT45S -> -45 -> -PT45S\nP2DT -> INVALID\nPT1.5H -> UNSUPPORTED\nP1Y2M -> UNSUPPORTED\nP10D -> 864000 -> P10D\nP2WT3H -> INVALID\nPT36H -> 129600 -> P1DT12H\nbanana -> INVALID\nok=8 sum=1883685","transformation_instruction":"Normalize a list of ISO 8601 durations. Process every non-blank line in order after stripping it.\n1. A duration may start with '-' meaning a negative value. After that it must start with 'P'.\n2. Supported forms are 'PnW' (weeks, 7 days each) and 'P[nD][T[nH][nM][nS]]'. All component values are non-negative integers.\n3. Any duration containing a year ('Y') or month designator ('M' before the 'T'), or a fractional value, is unsupported: emit '<input> -> UNSUPPORTED'.\n4. A duration that is not 'P' followed by at least one component, that has a 'T' with no component after it, that mixes 'W' with any other component, or that has any leftover characters, is invalid: emit '<input> -> INVALID'.\n5. Otherwise compute the total in seconds: days*86400 + hours*3600 + minutes*60 + seconds, negated when the input started with '-'.\n6. Canonical form: sign, then 'P', then the day count with 'D' if non-zero, then 'T' with the non-zero hour, minute and second components in that order, each followed by its designator. Recompute the components from the absolute total: days, then hours, then minutes, then seconds. A total of zero is written 'PT0S'.\n7. Emit '<input> -> <total seconds> -> <canonical>'.\n8. Finally emit 'ok=<count of converted lines> sum=<sum of their totals in seconds>'.\n9. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3dojj0066uvp2sac5iwwh","kind":"contributor_item","title":"Submission C5IWWH","provisional":false,"output_code":"import re\n\n\ndef transform(text):\n entries = []\n i = 0\n while True:\n at = text.find(\"@\", i)\n if at == -1:\n break\n brace = text.find(\"{\", at)\n if brace == -1:\n break\n etype = text[at + 1:brace].strip().lower()\n depth = 0\n end = brace\n for pos in range(brace, len(text)):\n if text[pos] == \"{\":\n depth += 1\n elif text[pos] == \"}\":\n depth -= 1\n if depth == 0:\n end = pos\n break\n inner = text[brace + 1:end]\n i = end + 1\n key, _, rest = inner.partition(\",\")\n fields = {}\n depth = 0\n chunk = []\n chunks = []\n for ch in rest:\n if ch == \"{\":\n depth += 1\n elif ch == \"}\":\n depth -= 1\n if ch == \",\" and depth == 0:\n chunks.append(\"\".join(chunk))\n chunk = []\n continue\n chunk.append(ch)\n chunks.append(\"\".join(chunk))\n for piece in chunks:\n if \"=\" not in piece:\n continue\n name, _, value = piece.partition(\"=\")\n name = name.strip().lower()\n value = value.strip()\n if value.startswith(\"{\") and value.endswith(\"}\"):\n value = value[1:-1]\n value = re.sub(r\"\\s+\", \" \", value).strip().replace(\"{\", \"\").replace(\"}\", \"\")\n fields[name] = value\n entries.append((key.strip(), etype, fields))\n\n def authors_of(fields):\n raw = fields.get(\"author\")\n if not raw:\n return \"Anonymous\"\n formatted = []\n for person in raw.split(\" and \"):\n words = person.split()\n if not words:\n continue\n surname = words[-1]\n initials = \" \".join(w[0] + \".\" for w in words[:-1])\n formatted.append(\"%s, %s\" % (surname, initials) if initials else surname)\n return \" & \".join(formatted) if formatted else \"Anonymous\"\n\n out = []\n for key, etype, fields in sorted(entries, key=lambda e: e[0]):\n year = fields.get(\"year\", \"n.d.\")\n title = fields.get(\"title\", \"Untitled\")\n who = authors_of(fields)\n pages = fields.get(\"pages\", \"\").replace(\"--\", \"-\")\n if etype == \"article\":\n tail = fields.get(\"journal\", \"\")\n volume = fields.get(\"volume\", \"\")\n number = fields.get(\"number\", \"\")\n piece = tail\n if volume:\n piece += \", \" + volume\n if number:\n piece += \"(%s)\" % number\n if pages:\n piece += \", \" + pages\n citation = \"%s (%s). %s. %s.\" % (who, year, title, piece)\n elif etype == \"book\":\n citation = \"%s (%s). %s. %s.\" % (who, year, title, fields.get(\"publisher\", \"\"))\n else:\n citation = \"%s (%s). %s.\" % (who, year, title)\n out.append(\"%s: %s\" % (key, citation))\n types = sorted({e[1] for e in entries})\n out.append(\"entries=%d types=%s\" % (len(entries), \",\".join(types)))\n return \"\\n\".join(out)","input_data_sample":"@article{knuth1984lp,\n author = {Donald E. Knuth},\n title = {Literate Programming},\n journal = {The Computer Journal},\n year = 1984,\n volume = {27},\n number = {2},\n pages = {97--111}\n}\n\n@book{lamport1994latex, author={Leslie Lamport}, title={{LaTeX}: A Document\n Preparation System}, publisher={Addison-Wesley}, year={1994}, edition={2nd}}\n\n@misc{anon2020notes,\n title = {Field Notes on Peat Bog Drainage},\n year = {2020}\n}\n\n@article{ostrom1990cpr,\n author = {Elinor Ostrom and Roy Gardner and James M. Walker},\n title = {Governing the Commons},\n journal = {Cambridge Studies},\n year = {1990},\n volume = {8}\n}\n","output_data_sample":"anon2020notes: Anonymous (2020). Field Notes on Peat Bog Drainage.\nknuth1984lp: Knuth, D. E. (1984). Literate Programming. The Computer Journal, 27(2), 97-111.\nlamport1994latex: Lamport, L. (1994). LaTeX: A Document Preparation System. Addison-Wesley.\nostrom1990cpr: Ostrom, E. & Gardner, R. & Walker, J. M. (1990). Governing the Commons. Cambridge Studies, 8.\nentries=4 types=article,book,misc","transformation_instruction":"Format BibTeX entries as plain-text citations.\n1. An entry starts at '@<type>{<key>,' and ends at the matching closing brace, counting brace nesting. The type is lower-cased; the key is the text up to the first comma.\n2. Inside an entry, fields are 'name = value' separated by commas that are not inside braces. The name is lower-cased and stripped. A value wrapped in braces has exactly one outer brace layer removed; otherwise it is used as written. Then collapse every run of whitespace into a single space, strip it, and delete all remaining brace characters.\n3. Authors are the 'author' field split on ' and '. Format each author as '<Surname>, <initials>' where the surname is the last whitespace-separated word and each earlier word contributes its first character followed by a period, joined by single spaces. Join multiple authors with ' & '. A missing author field gives 'Anonymous'.\n4. In the 'pages' field replace '--' with '-'.\n5. Build the citation by entry type:\n - article: '<authors> (<year>). <title>. <journal>, <volume>(<number>), <pages>.'\n - book: '<authors> (<year>). <title>. <publisher>.'\n - anything else: '<authors> (<year>). <title>.'\n For an article, omit '(<number>)' when there is no number field, omit ', <pages>' when there are no pages, and omit '<volume>' when there is no volume. A missing year is written 'n.d.'; a missing title is written 'Untitled'.\n6. Emit one line per entry: '<key>: <citation>', sorted by key ascending.\n7. Then emit 'entries=<count> types=<distinct entry types sorted ascending and comma-joined>'.\n8. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3dojj0067uvp236vxv422","kind":"contributor_item","title":"Submission VXV422","provisional":false,"output_code":"def transform(text):\n def unescape(value):\n replacements = [(\"\\\\F\\\\\", \"|\"), (\"\\\\S\\\\\", \"^\"), (\"\\\\T\\\\\", \"&\"),\n (\"\\\\R\\\\\", \"~\"), (\"\\\\E\\\\\", \"\\\\\")]\n for token, replacement in replacements:\n value = value.replace(token, replacement)\n return value\n\n segments = []\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if line:\n segments.append(line.split(\"|\"))\n\n def field(segment, index):\n if segment[0] == \"MSH\":\n index = index - 1\n if index < len(segment):\n return \"^\".join(unescape(part) for part in segment[index].split(\"^\"))\n return \"\"\n\n def component(segment, index, position):\n if segment[0] == \"MSH\":\n raw_index = index - 1\n else:\n raw_index = index\n if raw_index >= len(segment):\n return \"\"\n parts = segment[raw_index].split(\"^\")\n if position <= len(parts):\n return unescape(parts[position - 1])\n return \"\"\n\n flags = {\"L\": \"LOW\", \"H\": \"HIGH\", \"LL\": \"CRITICAL-LOW\",\n \"HH\": \"CRITICAL-HIGH\", \"A\": \"ABNORMAL\"}\n\n out = []\n obx = [s for s in segments if s[0] == \"OBX\"]\n notes = [s for s in segments if s[0] == \"NTE\"]\n for segment in segments:\n if segment[0] != \"PID\":\n continue\n identifier = component(segment, 3, 1)\n family = component(segment, 5, 1)\n given = component(segment, 5, 2)\n middle = component(segment, 5, 3)\n dob = field(segment, 7)\n sex = field(segment, 8)\n name = \"%s, %s\" % (family, given)\n if middle:\n name += \" \" + middle\n dob_text = \"%s-%s-%s\" % (dob[0:4], dob[4:6], dob[6:8]) if len(dob) == 8 else dob\n out.append(\"patient=%s (%s) dob=%s sex=%s\" % (name, identifier, dob_text, sex))\n break\n\n abnormal = 0\n for segment in obx:\n name = component(segment, 3, 2) or component(segment, 3, 1)\n value = field(segment, 5)\n units = field(segment, 6)\n flag = field(segment, 8)\n line = \"%s: %s\" % (name, value)\n if units:\n line += \" \" + units\n if flag in flags:\n line += \" [%s]\" % flags[flag]\n abnormal += 1\n out.append(line)\n out.append(\"results=%d abnormal=%d notes=%d\" % (len(obx), abnormal, len(notes)))\n return \"\\n\".join(out)","input_data_sample":"MSH|^~\\&|LIS|RiverLab|EHR|Clinic|20240117093000||ORU^R01|MSG00023|P|2.5\nPID|1||A12345^^^MRN||Ramirez^Elena^Quiteria||19870204|F\nOBR|1||LAB998|CBC^Complete Blood Count\nOBX|1|NM|WBC^White Blood Cells||6.2|10*3/uL|4.0-11.0|N|||F\nOBX|2|NM|HGB^Hemoglobin||10.1|g/dL|12.0-16.0|L|||F\nOBX|3|NM|PLT^Platelets||702|10*3/uL|150-400|HH|||F\nOBX|4|ST|COMMENT^Technologist note||Sample hemolyzed \\T\\ slightly clotted|||||F\nNTE|1||Repeat draw if clinically indicated\nNTE|2||Analyzer calibrated 20240117\n","output_data_sample":"patient=Ramirez, Elena Quiteria (A12345) dob=1987-02-04 sex=F\nWhite Blood Cells: 6.2 10*3/uL\nHemoglobin: 10.1 g/dL [LOW]\nPlatelets: 702 10*3/uL [CRITICAL-HIGH]\nTechnologist note: Sample hemolyzed & slightly clotted\nresults=4 abnormal=2 notes=2","transformation_instruction":"Extract a lab report from an HL7 v2 message.\n1. Segments are the non-blank lines, stripped. Fields within a segment are separated by '|', components within a field by '^'.\n2. Split into fields and components first, and only then decode these escape sequences inside each component: '\\\\F\\\\' -> '|', '\\\\S\\\\' -> '^', '\\\\T\\\\' -> '&', '\\\\R\\\\' -> '~', '\\\\E\\\\' -> a single backslash.\n3. Field numbering: for the MSH segment the separator itself is field 1, so MSH-3 is the third '|'-separated token counting the segment name as index 0 plus one. For all other segments field n is the n-th '|'-separated token after the segment name.\n4. From PID take field 3 component 1 as the patient identifier, field 5 component 1 as the family name, component 2 as the given name, component 3 as the middle name, field 7 as the birth date 'YYYYMMDD' and field 8 as the sex.\n5. From each OBX take field 2 as the value type, field 3 component 2 as the test name (falling back to component 1 when there is no component 2), field 5 as the value, field 6 as the units and field 8 as the abnormal flag.\n6. Emit, in order:\n - 'patient=<family>, <given> <middle> (<identifier>) dob=<YYYY-MM-DD> sex=<sex>' with the middle name and its preceding space omitted when empty.\n - one line per OBX in message order: '<test name>: <value>' followed by ' <units>' when units are present, and ' [<flag word>]' when the abnormal flag is one of L, H, LL, HH or A, mapped to LOW, HIGH, CRITICAL-LOW, CRITICAL-HIGH and ABNORMAL. A flag of 'N' or an empty flag adds nothing.\n - 'results=<number of OBX segments> abnormal=<number with a mapped flag> notes=<number of NTE segments>'.\n7. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3dojj0064uvp23wudbmk5","kind":"contributor_item","title":"Submission UDBMK5","provisional":false,"output_code":"import re\n\nENCODED_WORD = re.compile(r\"^=\\?utf-8\\?Q\\?(.*)\\?=$\", re.IGNORECASE)\n\n\ndef transform(text):\n lines = text.split(\"\\n\")\n if lines and lines[-1] == \"\":\n lines.pop()\n\n stats = {\"escapes\": 0}\n\n def decode(payload, underscore_is_space=False):\n data = bytearray()\n i = 0\n while i < len(payload):\n ch = payload[i]\n if ch == \"=\" and i + 2 < len(payload) + 1 and \\\n all(c in \"0123456789abcdefABCDEF\" for c in payload[i + 1:i + 3]) and \\\n len(payload[i + 1:i + 3]) == 2:\n data.append(int(payload[i + 1:i + 3], 16))\n stats[\"escapes\"] += 1\n i += 3\n continue\n if underscore_is_space and ch == \"_\":\n data.append(0x20)\n i += 1\n continue\n data.extend(ch.encode(\"latin-1\"))\n i += 1\n return data.decode(\"utf-8\")\n\n out = []\n soft = 0\n buffer = None\n for line in lines:\n word = ENCODED_WORD.match(line.strip())\n if word and buffer is None:\n out.append(decode(word.group(1), True).rstrip())\n continue\n current = line if buffer is None else buffer + line\n if current.endswith(\"=\"):\n buffer = current[:-1]\n soft += 1\n continue\n buffer = None\n out.append(decode(current).rstrip())\n if buffer is not None:\n out.append(decode(buffer).rstrip())\n\n nonascii = sum(1 for line in out for ch in line if ord(ch) > 127)\n out.append(\"lines=%d soft=%d escapes=%d nonascii=%d\" % (\n len(out), soft, stats[\"escapes\"], nonascii))\n return \"\\n\".join(out)","input_data_sample":"=?utf-8?Q?Caf=C3=A9_planning_meeting?=\nHello team,\nThis paragraph was wrapped by the mail=\ner and must be rejoined without a space.\nBudget: 1=2C500=E2=82=AC plus 5=25 handling.\nTabs=09and=20spaces survive the round trip.\nNa=C3=AFve r=C3=A9sum=C3=A9 attached.\n-- =\nSignature block\n","output_data_sample":"Café planning meeting\nHello team,\nThis paragraph was wrapped by the mailer and must be rejoined without a space.\nBudget: 1,500€ plus 5% handling.\nTabs\tand spaces survive the round trip.\nNaïve résumé attached.\n-- Signature block\nlines=7 soft=2 escapes=15 nonascii=5","transformation_instruction":"Decode a quoted-printable message body.\n1. Work line by line over the input, dropping a single trailing empty line if the text ends with a newline.\n2. A line ending with '=' has a soft line break: remove that '=' and join the line with the next one before decoding. Count how many soft breaks were removed.\n3. In the joined text, '=XX' where XX are two hexadecimal digits stands for the byte with that value; every other character contributes its own Latin-1 byte. Decode the resulting byte string as UTF-8.\n4. A line whose stripped form matches '=?utf-8?Q?<payload>?=' (the charset and the 'Q' compared case-insensitively) is an RFC 2047 encoded word: decode the payload the same way but additionally treat '_' as a space. Such a line is decoded on its own and is not joined to its neighbours by soft-break handling.\n5. Emit every decoded line, with trailing whitespace stripped from each one.\n6. Then emit 'lines=<number of emitted lines> soft=<number of soft breaks removed> escapes=<number of =XX sequences decoded, including those inside encoded words> nonascii=<number of decoded characters with a code point above 127>'.\n7. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3dojj0063uvp2md41v1ug","kind":"contributor_item","title":"Submission 41V1UG","provisional":false,"output_code":"import re\nfrom fractions import Fraction\n\nMIXED = re.compile(r\"^(\\d+)\\s+(\\d+)/(\\d+)\\s+(.*)$\")\nFRACTION = re.compile(r\"^(\\d+)/(\\d+)\\s+(.*)$\")\nDECIMAL = re.compile(r\"^(\\d+\\.\\d+|\\d+)\\s+(.*)$\")\n\n\ndef transform(text):\n lines = [ln for ln in text.split(\"\\n\") if ln.strip()]\n factor = Fraction(1)\n body = []\n for index, line in enumerate(lines):\n stripped = line.strip()\n if index == 0 and stripped.lower().startswith(\"scale:\"):\n raw = stripped.split(\":\", 1)[1].strip()\n factor = Fraction(raw) if \"/\" in raw else Fraction(raw)\n continue\n body.append(stripped)\n\n def render(value):\n if value.denominator == 1:\n return str(value.numerator)\n whole = value.numerator // value.denominator\n remainder = value - whole\n if whole == 0:\n return \"%d/%d\" % (remainder.numerator, remainder.denominator)\n return \"%d %d/%d\" % (whole, remainder.numerator, remainder.denominator)\n\n out = []\n scaled = 0\n passthrough = 0\n for line in body:\n m = MIXED.match(line)\n if m:\n qty = Fraction(int(m.group(1))) + Fraction(int(m.group(2)), int(m.group(3)))\n rest = m.group(4)\n else:\n m = FRACTION.match(line)\n if m:\n qty = Fraction(int(m.group(1)), int(m.group(2)))\n rest = m.group(3)\n else:\n m = DECIMAL.match(line)\n if m:\n qty = Fraction(m.group(1))\n rest = m.group(2)\n else:\n qty = None\n if qty is None:\n out.append(line)\n passthrough += 1\n continue\n out.append(\"%s %s\" % (render(qty * factor), rest))\n scaled += 1\n out.append(\"scaled=%d passthrough=%d\" % (scaled, passthrough))\n return \"\\n\".join(out)","input_data_sample":"scale: 3/2\n2 1/4 cups flour\n1/2 tsp fine salt\n3 large eggs\n0.75 cup whole milk\n1 pinch grated nutmeg\n2/3 cup caster sugar\na splash of vanilla\n12 blanched almonds\n1 1/3 tbsp cold butter\n","output_data_sample":"3 3/8 cups flour\n3/4 tsp fine salt\n4 1/2 large eggs\n1 1/8 cup whole milk\n1 1/2 pinch grated nutmeg\n1 cup caster sugar\na splash of vanilla\n18 blanched almonds\n2 tbsp cold butter\nscaled=8 passthrough=1","transformation_instruction":"Scale a recipe's ingredient quantities.\n1. The first non-blank line must be 'scale: <factor>' where the factor is an integer, a decimal number or a fraction like '3/2'. Parse it as an exact rational number.\n2. Every following non-blank line is an ingredient line. Strip it, then try to read a leading quantity, which is one of: a mixed number '<int> <int>/<int>', a fraction '<int>/<int>', a decimal number, or a plain integer. The quantity must be followed by whitespace and at least one more character.\n3. If a line has no leading quantity, emit it unchanged.\n4. Otherwise multiply the quantity by the factor using exact rational arithmetic and re-render it: if the result is a whole number print just that integer; if it is smaller than 1 print the fraction in lowest terms; otherwise print '<whole> <numerator>/<denominator>' in lowest terms. Emit the rendered quantity, a single space, and the rest of the line exactly as it was after the quantity's trailing whitespace.\n5. After all ingredient lines, emit 'scaled=<count of lines whose quantity was scaled> passthrough=<count of unchanged lines>'.\n6. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3dojj0068uvp2hn23pot7","kind":"contributor_item","title":"Submission 23POT7","provisional":false,"output_code":"from decimal import Decimal, ROUND_HALF_UP\n\nDIGITS = {\"black\": 0, \"brown\": 1, \"red\": 2, \"orange\": 3, \"yellow\": 4,\n \"green\": 5, \"blue\": 6, \"violet\": 7, \"gray\": 8, \"white\": 9}\nMULTIPLIERS = dict((name, Decimal(10) ** value) for name, value in DIGITS.items())\nMULTIPLIERS[\"gold\"] = Decimal(\"0.1\")\nMULTIPLIERS[\"silver\"] = Decimal(\"0.01\")\nTOLERANCES = {\"brown\": Decimal(\"1\"), \"red\": Decimal(\"2\"), \"green\": Decimal(\"0.5\"),\n \"blue\": Decimal(\"0.25\"), \"violet\": Decimal(\"0.1\"),\n \"gold\": Decimal(\"5\"), \"silver\": Decimal(\"10\")}\nUNITS = [(\"Gohm\", Decimal(10) ** 9), (\"Mohm\", Decimal(10) ** 6),\n (\"kohm\", Decimal(10) ** 3), (\"ohm\", Decimal(1))]\n\n\ndef transform(text):\n def trim(value):\n quantized = value.quantize(Decimal(\"0.01\"), rounding=ROUND_HALF_UP)\n rendered = format(quantized, \"f\")\n if \".\" in rendered:\n rendered = rendered.rstrip(\"0\").rstrip(\".\")\n return rendered or \"0\"\n\n out = []\n good = 0\n bad = 0\n for raw in text.split(\"\\n\"):\n line = raw.strip()\n if not line:\n continue\n bands = [b.lower().replace(\"grey\", \"gray\") for b in line.split()]\n if len(bands) == 3:\n digit_bands, multiplier_band, tolerance_band = bands[:2], bands[2], None\n elif len(bands) == 4:\n digit_bands, multiplier_band, tolerance_band = bands[:2], bands[2], bands[3]\n elif len(bands) == 5:\n digit_bands, multiplier_band, tolerance_band = bands[:3], bands[3], bands[4]\n else:\n out.append(\"%s -> INVALID\" % line)\n bad += 1\n continue\n if any(b not in DIGITS for b in digit_bands) or multiplier_band not in MULTIPLIERS \\\n or (tolerance_band is not None and tolerance_band not in TOLERANCES):\n out.append(\"%s -> INVALID\" % line)\n bad += 1\n continue\n number = 0\n for band in digit_bands:\n number = number * 10 + DIGITS[band]\n value = Decimal(number) * MULTIPLIERS[multiplier_band]\n tolerance = TOLERANCES[tolerance_band] if tolerance_band else Decimal(\"20\")\n unit_name, unit_size = UNITS[-1]\n for name, size in UNITS:\n if value >= size:\n unit_name, unit_size = name, size\n break\n out.append(\"%s -> %s %s +/-%s%%\" % (\n line, trim(value / unit_size), unit_name, trim(tolerance)))\n good += 1\n out.append(\"resistors=%d invalid=%d\" % (good, bad))\n return \"\\n\".join(out)","input_data_sample":"brown black red gold\nyellow violet orange\ngreen blue black brown\nred red red red\norange white brown silver\nblue gray gold gold\nblack brown red\nbrown grey red gold\nbrown black black red brown\npurple haze orange\nred red\n","output_data_sample":"brown black red gold -> 1 kohm +/-5%\nyellow violet orange -> 47 kohm +/-20%\ngreen blue black brown -> 56 ohm +/-1%\nred red red red -> 2.2 kohm +/-2%\norange white brown silver -> 390 ohm +/-10%\nblue gray gold gold -> 6.8 ohm +/-5%\nblack brown red -> 100 ohm +/-20%\nbrown grey red gold -> 1.8 kohm +/-5%\nbrown black black red brown -> 10 kohm +/-1%\npurple haze orange -> INVALID\nred red -> INVALID\nresistors=9 invalid=2","transformation_instruction":"Decode resistor colour bands into resistance values.\n1. Each non-blank line is one resistor: whitespace-separated colour names, lower-cased before lookup. Accept 'grey' as a spelling of 'gray'.\n2. Digit colours are black 0, brown 1, red 2, orange 3, yellow 4, green 5, blue 6, violet 7, gray 8, white 9.\n3. Multiplier colours are the same ten colours meaning 10 raised to that digit, plus gold meaning 0.1 and silver meaning 0.01.\n4. Tolerance colours are brown 1, red 2, green 0.5, blue 0.25, violet 0.1, gold 5, silver 10.\n5. A line of three bands is digit, digit, multiplier with an implied tolerance of 20. A line of four bands adds a tolerance band. A line of five bands is digit, digit, digit, multiplier, tolerance. Any other count, or an unknown colour in any position, makes the line invalid: emit '<the stripped line> -> INVALID'.\n6. Compute the resistance exactly with decimal arithmetic: the digits form an integer which is multiplied by the multiplier.\n7. Render the value with the largest of 'ohm' (below 1000), 'kohm' (at least 1000), 'Mohm' (at least 1000000) and 'Gohm' (at least 1000000000) that applies. Divide by the unit, then print the number with up to two decimal places, rounding half-up, with trailing zeros and a trailing decimal point removed.\n8. Emit '<the stripped line> -> <value> <unit> +/-<tolerance>%' where the tolerance is printed the same way, without trailing zeros.\n9. Finally emit 'resistors=<count of decoded lines> invalid=<count of invalid lines>'.\n10. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmsw3dojj0065uvp2qukf4cq8","kind":"contributor_item","title":"Submission KF4CQ8","provisional":false,"output_code":"import re\n\nPLAN = re.compile(r\"^1\\.\\.(\\d+)$\")\nTEST = re.compile(r\"^(not ok|ok)\\b\\s*(\\d+)?\\s*(.*)$\")\n\n\ndef transform(text):\n plan = None\n tests = []\n for raw in text.split(\"\\n\"):\n if not raw.strip():\n continue\n if raw[0].isspace():\n continue\n line = raw.strip()\n if line.lower().startswith(\"tap version\"):\n continue\n if line.startswith(\"#\"):\n continue\n m = PLAN.match(line)\n if m:\n plan = int(m.group(1))\n continue\n m = TEST.match(line)\n if not m:\n continue\n status, _number, rest = m.groups()\n directive = None\n reason = \"\"\n if \"#\" in rest:\n body, _, tail = rest.partition(\"#\")\n tail = tail.strip()\n keyword, _, remainder = tail.partition(\" \")\n if keyword.upper() in (\"SKIP\", \"TODO\"):\n directive = keyword.upper()\n reason = remainder.strip()\n rest = body\n description = rest.strip()\n if description.startswith(\"- \"):\n description = description[2:].strip()\n if directive == \"SKIP\":\n kind = \"skip\"\n elif directive == \"TODO\":\n kind = \"todo\"\n elif status == \"ok\":\n kind = \"pass\"\n else:\n kind = \"fail\"\n tests.append((kind, description, reason))\n\n out = []\n for position, (kind, description, _reason) in enumerate(tests, start=1):\n if kind == \"fail\":\n out.append(\"FAIL %d %s\" % (position, description))\n for position, (kind, description, reason) in enumerate(tests, start=1):\n if kind == \"skip\":\n out.append(\"SKIP %d %s (%s)\" % (position, description, reason or \"no reason\"))\n\n counts = {\"pass\": 0, \"fail\": 0, \"skip\": 0, \"todo\": 0}\n for kind, _d, _r in tests:\n counts[kind] += 1\n out.append(\"plan=%s ran=%d pass=%d fail=%d skip=%d todo=%d\" % (\n plan if plan is not None else \"?\", len(tests),\n counts[\"pass\"], counts[\"fail\"], counts[\"skip\"], counts[\"todo\"]))\n good = counts[\"fail\"] == 0 and (plan is None or plan == len(tests))\n out.append(\"result=%s\" % (\"PASS\" if good else \"FAIL\"))\n return \"\\n\".join(out)","input_data_sample":"TAP version 13\n1..8\nok 1 - loads configuration\nnot ok 2 - parses response header\n ---\n message: expected 200 but got 500\n ...\nok 3 - retries transient errors # SKIP network disabled in CI\nok 4 - writes cache entry\nnot ok 5 - flushes the queue # TODO known flake, see #421\n# a bare comment line\nok 6 - closes the socket\nnot ok 7 - reports metrics\nok 8 - shuts down cleanly # skip requires root\n","output_data_sample":"FAIL 2 parses response header\nFAIL 7 reports metrics\nSKIP 3 retries transient errors (network disabled in CI)\nSKIP 8 shuts down cleanly (requires root)\nplan=8 ran=8 pass=3 fail=2 skip=2 todo=1\nresult=FAIL","transformation_instruction":"Summarize a TAP version 13 test stream.\n1. Ignore a leading 'TAP version <n>' line. A line matching '1..<n>' is the plan; remember n. Ignore indented lines (they are YAML diagnostics) and lines starting with '#'.\n2. Every other non-blank line must start with 'ok' or 'not ok', optionally followed by a test number and then a description that may begin with '- '. Anything else is ignored.\n3. A description may carry a trailing directive introduced by an unescaped '#': '# SKIP <reason>' or '# TODO <reason>', with the keyword compared case-insensitively. The description is the text before the '#', stripped.\n4. Classify each test: a directive of SKIP makes it 'skip'; a directive of TODO makes it 'todo' regardless of ok or not ok; otherwise 'ok' means 'pass' and 'not ok' means 'fail'.\n5. Tests are numbered by their position in the stream starting at 1, ignoring any number written in the line.\n6. Emit one line per failing test, in stream order: 'FAIL <position> <description>'. Then one line per skipped test: 'SKIP <position> <description> (<reason or no reason>)'.\n7. Then emit 'plan=<n or ?> ran=<count> pass=<count> fail=<count> skip=<count> todo=<count>'.\n8. Then emit a final line 'result=PASS' when there are no failures and the plan is either absent or equal to the number of tests run; otherwise 'result=FAIL'.\n9. Join the lines with '\\n' and return them with no trailing newline."} {"id":"cmswrwxvz0087uvp26rye53qo","kind":"contributor_item","title":"Submission YE53QO","provisional":false,"output_code":"import json\n\ndef transform(text):\n counts = {}\n for line in text.strip().split('\\n'):\n record = json.loads(line)\n if record.get('action') == 'login':\n user = record['user']\n counts[user] = counts.get(user, 0) + 1\n return json.dumps(counts)","input_data_sample":"{\"user\":\"alice\",\"action\":\"login\"}\n{\"user\":\"bob\",\"action\":\"login\"}\n{\"user\":\"alice\",\"action\":\"logout\"}\n{\"user\":\"carol\",\"action\":\"login\"}","output_data_sample":"{\"alice\": 1, \"bob\": 1, \"carol\": 1}","transformation_instruction":"Parse newline-delimited JSON (NDJSON) records and count how many records have action 'login', grouped by user, returning a JSON object."} {"id":"cmswrwxvz0089uvp2o2k6l6zc","kind":"contributor_item","title":"Submission K6L6ZC","provisional":false,"output_code":"import json\nfrom urllib.parse import quote\n\ndef transform(text):\n params = json.loads(text)\n parts = []\n for key in sorted(params.keys()):\n parts.append(f\"{quote(str(key))}={quote(str(params[key]))}\")\n return '&'.join(parts)","input_data_sample":"{\"q\": \"python tutorial\", \"page\": \"2\", \"sort\": \"relevance\"}","output_data_sample":"page=2&q=python%20tutorial&sort=relevance","transformation_instruction":"Convert a JSON object of query parameters into a URL query string, with keys sorted alphabetically and values percent-escaped for spaces."} {"id":"cmswrwxvz008buvp2q2wzdf7l","kind":"contributor_item","title":"Submission WZDF7L","provisional":false,"output_code":"import re\nimport json\n\ndef transform(text):\n pattern = r'\\(?(\\d{3})\\)?[.\\-\\s]?(\\d{3})[.\\-](\\d{4})'\n matches = re.findall(pattern, text)\n normalized = [f\"{a}-{b}-{c}\" for a, b, c in matches]\n return json.dumps(normalized)","input_data_sample":"Call me at 555.123.4567 or my office line (555) 987-6543. Backup: 555-111-2222","output_data_sample":"[\"555-123-4567\", \"555-987-6543\", \"555-111-2222\"]","transformation_instruction":"Extract all US-style phone numbers from text (formats with dots, dashes, or parentheses) and normalize each to XXX-XXX-XXXX, returning a JSON array in order found."} {"id":"cmswrwxvz008auvp216w6gc1o","kind":"contributor_item","title":"Submission W6GC1O","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n for line in text.strip().split('\\n'):\n key_part, _, value = line.partition('=')\n keys = [k.strip() for k in key_part.strip().split('.')]\n value = value.strip()\n node = result\n for k in keys[:-1]:\n node = node.setdefault(k, {})\n node[keys[-1]] = value\n return json.dumps(result)","input_data_sample":"app.debug = true\napp.port = 8080\ndb.host = localhost\ndb.port = 5432","output_data_sample":"{\"app\": {\"debug\": \"true\", \"port\": \"8080\"}, \"db\": {\"host\": \"localhost\", \"port\": \"5432\"}}","transformation_instruction":"Parse dotted-key = value config lines into a nested JSON object, splitting each key on '.' to build nested levels."} {"id":"cmsws8ydl008euvp2f2shkpqe","kind":"contributor_item","title":"Submission SHKPQE","provisional":false,"output_code":"def transform(text):\n vowels = \"aeiou\"\n words = text.strip().split()\n result = []\n for word in words:\n if word[0] in vowels:\n result.append(word + \"way\")\n else:\n i = 0\n while i < len(word) and word[i] not in vowels:\n i += 1\n result.append(word[i:] + word[:i] + \"ay\")\n return ' '.join(result)","input_data_sample":"hello world this is fun","output_data_sample":"ellohay orldway isthay isway unfay","transformation_instruction":"Translate each space-separated word into Pig Latin: move the leading consonant cluster to the end and append 'ay'; words starting with a vowel just get 'way' appended. Return the words space-joined."} {"id":"cmsws9cdz008kuvp2u4rs9t2e","kind":"contributor_item","title":"Submission RS9T2E","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n words = text.strip().split()\n counts = Counter(words)\n ranked = sorted(counts.items(), key=lambda kv: (-kv[1], kv[0]))\n return json.dumps(ranked[:2])","input_data_sample":"the cat sat on the mat the cat ran","output_data_sample":"[[\"the\", 3], [\"cat\", 2]]","transformation_instruction":"Find the 2 most frequent words. Break ties by choosing the alphabetically earlier word first. Return a JSON array of [word, count] pairs."} {"id":"cmsws9nle008puvp2v32gmixh","kind":"contributor_item","title":"Submission 2GMIXH","provisional":false,"output_code":"import json\n\ndef is_balanced(line):\n depth = 0\n for ch in line:\n if ch == '(':\n depth += 1\n elif ch == ')':\n depth -= 1\n if depth < 0:\n return False\n return depth == 0\n\ndef transform(text):\n lines = text.split('\\n')\n return json.dumps([is_balanced(line) for line in lines])","input_data_sample":"(a(b)c)\n(a(b)\n()()\n)( ","output_data_sample":"[true, false, true, false]","transformation_instruction":"For each line, determine whether its parentheses are balanced (every '(' has a matching later ')' and never goes negative). Return a JSON array of booleans, one per line."} {"id":"cmswsarct008uuvp2e9xfgpk3","kind":"contributor_item","title":"Submission XFGPK3","provisional":false,"output_code":"import json\nimport statistics\n\ndef transform(text):\n nums = [int(line) for line in text.strip().split('\\n')]\n stats = {\n \"min\": min(nums),\n \"max\": max(nums),\n \"mean\": round(statistics.mean(nums), 2),\n \"stdev\": round(statistics.pstdev(nums), 2)\n }\n return json.dumps(stats)","input_data_sample":"4\n8\n15\n16\n23\n42","output_data_sample":"{\"min\": 4, \"max\": 42, \"mean\": 18, \"stdev\": 12.32}","transformation_instruction":"Compute basic statistics (min, max, mean, and population standard deviation, each rounded to 2 decimals) over the list of integers (one per line), returning a JSON object with keys min, max, mean, stdev."} {"id":"cmswsarcs008ruvp27oaxx5o6","kind":"contributor_item","title":"Submission AXX5O6","provisional":false,"output_code":"def transform(text):\n if not text:\n return \"\"\n result = []\n prev = text[0]\n count = 1\n for ch in text[1:]:\n if ch == prev:\n count += 1\n else:\n result.append(f\"{prev}{count}\")\n prev = ch\n count = 1\n result.append(f\"{prev}{count}\")\n return ''.join(result)","input_data_sample":"aaabbbcccd","output_data_sample":"a3b3c3d1","transformation_instruction":"Apply run-length encoding to the text: each maximal run of a repeated character becomes '<char><count>'; a run of length 1 still gets a count of 1."} {"id":"cmswsarct008suvp23pws2752","kind":"contributor_item","title":"Submission WS2752","provisional":false,"output_code":"import ipaddress\nimport json\n\ndef transform(text):\n network = ipaddress.ip_network('192.168.1.0/24')\n result = []\n for line in text.strip().split('\\n'):\n ip = ipaddress.ip_address(line.strip())\n if ip in network:\n result.append(line.strip())\n return json.dumps(result)","input_data_sample":"192.168.1.5\n192.168.2.10\n192.168.1.200\n10.0.0.1","output_data_sample":"[\"192.168.1.5\", \"192.168.1.200\"]","transformation_instruction":"Given a fixed CIDR block of 192.168.1.0/24, determine which of the listed IPv4 addresses (one per line) fall inside it, returning a JSON array of the matching addresses in order."} {"id":"cmsx3d5d5002jx3p2oi4ce8jq","kind":"contributor_item","title":"Submission 4CE8JQ","provisional":false,"output_code":"\nimport re\nimport json\n\ndef transform(text):\n pattern = re.compile(r'^([A-Za-z_][\\w.]*(?:Error|Exception|Warning)): (.+)$', re.MULTILINE)\n counts = {}\n examples = {}\n for m in pattern.finditer(text):\n exc_type, msg = m.group(1), m.group(2).strip()\n counts[exc_type] = counts.get(exc_type, 0) + 1\n if exc_type not in examples:\n examples[exc_type] = msg\n result = [\n {'type': t, 'count': c, 'example_message': examples[t]}\n for t, c in counts.items()\n ]\n result.sort(key=lambda x: (-x['count'], x['type']))\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"2026-08-10 10:22:01 ERROR Processing failed\nTraceback (most recent call last):\n File \"app.py\", line 10, in <module>\n main()\n File \"app.py\", line 5, in main\n raise ValueError(\"bad input\")\nValueError: bad input\n2026-08-10 10:22:05 ERROR Processing failed\nTraceback (most recent call last):\n File \"app.py\", line 22, in worker\n process(item)\nKeyError: 'missing_field'\n2026-08-10 10:23:00 ERROR Processing failed\nTraceback (most recent call last):\n File \"app.py\", line 10, in <module>\n main()\n File \"app.py\", line 5, in main\n raise ValueError(\"bad input\")\nValueError: bad input","output_data_sample":"[\n {\n \"type\": \"ValueError\",\n \"count\": 2,\n \"example_message\": \"bad input\"\n },\n {\n \"type\": \"KeyError\",\n \"count\": 1,\n \"example_message\": \"'missing_field'\"\n }\n]","transformation_instruction":"This is an application log containing multiple Python tracebacks. Find every unindented line matching the pattern '<ExceptionType>: <message>' (where ExceptionType ends in Error, Exception, or Warning), and count how many times each exception type occurs, keeping the first message seen for each type as its example_message. Return a JSON array of objects {type, count, example_message} sorted by count descending, then by type name ascending for ties. Serialize with indent=2."} {"id":"cmsx3d5d5002sx3p2ksmlh1e4","kind":"contributor_item","title":"Submission MLH1E4","provisional":false,"output_code":"\nimport json\nimport re\n\ndef transform(text):\n blocks = [b for b in text.strip('\\n').split('\\n\\n') if b.strip()]\n records = []\n for block in blocks:\n lines = [l.strip() for l in block.strip('\\n').split('\\n')]\n recipient = lines[0]\n street = lines[1]\n city_line = lines[2]\n m = re.match(r'^(.+),\\s*([A-Z]{2})\\s+(\\d+)$', city_line)\n city, state, zip_code = m.group(1), m.group(2), m.group(3)\n zip_valid = len(zip_code) == 5\n records.append({\n 'recipient': recipient,\n 'street': street,\n 'city': city,\n 'state': state,\n 'zip': zip_code,\n 'zip_valid': zip_valid\n })\n return json.dumps(records, indent=2, ensure_ascii=False)\n","input_data_sample":"John Carter\n482 Elm Street\nSpringfield, IL 62704\n\nMaria Gomez\n19 Rue de Paris\nParis, TX 75460\n\nWei Zhang\n1200 5th Ave Apt 3B\nNew York, NY 1001\n\nTom Baker\n77 Ocean Drive\nMiami, FL 33139","output_data_sample":"[\n {\n \"recipient\": \"John Carter\",\n \"street\": \"482 Elm Street\",\n \"city\": \"Springfield\",\n \"state\": \"IL\",\n \"zip\": \"62704\",\n \"zip_valid\": true\n },\n {\n \"recipient\": \"Maria Gomez\",\n \"street\": \"19 Rue de Paris\",\n \"city\": \"Paris\",\n \"state\": \"TX\",\n \"zip\": \"75460\",\n \"zip_valid\": true\n },\n {\n \"recipient\": \"Wei Zhang\",\n \"street\": \"1200 5th Ave Apt 3B\",\n \"city\": \"New York\",\n \"state\": \"NY\",\n \"zip\": \"1001\",\n \"zip_valid\": false\n },\n {\n \"recipient\": \"Tom Baker\",\n \"street\": \"77 Ocean Drive\",\n \"city\": \"Miami\",\n \"state\": \"FL\",\n \"zip\": \"33139\",\n \"zip_valid\": true\n }\n]","transformation_instruction":"This text contains shipping address blocks separated by blank lines. Each block has exactly 3 lines: recipient name, street address, and 'City, ST ZIP'. Parse each block into a record with keys recipient, street, city, state, zip, and zip_valid (true only if the zip is exactly 5 digits). Return a JSON array of these records serialized with indent=2, in original order."} {"id":"cmsx3d5d5002tx3p22po3070b","kind":"contributor_item","title":"Submission O3070B","provisional":false,"output_code":"\ndef roman_to_int(s):\n vals = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}\n total = 0\n prev = 0\n for ch in reversed(s):\n v = vals[ch]\n if v < prev:\n total -= v\n else:\n total += v\n prev = v\n return total\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n header = lines[0]\n out = [header + ',quantity']\n for line in lines[1:]:\n item, roman = line.split(',')\n qty = roman_to_int(roman.strip())\n out.append(f'{item},{roman},{qty}')\n return '\\n'.join(out)\n","input_data_sample":"item,quantity_roman\nWidget,XIV\nGadget,IX\nGizmo,XL\nSprocket,IV\nDoohickey,MCMXCIX","output_data_sample":"item,quantity_roman,quantity\nWidget,XIV,14\nGadget,IX,9\nGizmo,XL,40\nSprocket,IV,4\nDoohickey,MCMXCIX,1999","transformation_instruction":"This CSV has an 'item' column and a 'quantity_roman' column containing Roman numerals. Convert each Roman numeral to its integer value and append it as a new 'quantity' column. Return the result as CSV text (comma-separated, newline-joined, no trailing newline), keeping the original columns and appending the new one."} {"id":"cmsx3d5d50034x3p24xuj7sdu","kind":"contributor_item","title":"Submission UJ7SDU","provisional":false,"output_code":"\nimport json\n\ndef transform(text):\n data = json.loads(text)\n lines = []\n\n def walk(node, depth):\n lines.append(' ' * depth + f\"[{node['score']}] {node['author']}: {node['text']}\")\n children = sorted(node.get('replies', []), key=lambda c: -c['score'])\n for child in children:\n walk(child, depth + 1)\n\n walk(data, 0)\n return '\\n'.join(lines)\n","input_data_sample":"{\n \"id\": \"c1\",\n \"author\": \"alice\",\n \"score\": 15,\n \"text\": \"Great post!\",\n \"replies\": [\n {\n \"id\": \"c2\",\n \"author\": \"bob\",\n \"score\": 42,\n \"text\": \"I agree completely.\",\n \"replies\": [\n {\n \"id\": \"c4\",\n \"author\": \"carol\",\n \"score\": 3,\n \"text\": \"Same here.\",\n \"replies\": []\n }\n ]\n },\n {\n \"id\": \"c3\",\n \"author\": \"dave\",\n \"score\": 7,\n \"text\": \"Not sure about this.\",\n \"replies\": []\n }\n ]\n}","output_data_sample":"[15] alice: Great post!\n [42] bob: I agree completely.\n [3] carol: Same here.\n [7] dave: Not sure about this.","transformation_instruction":"This is a JSON comment tree where each node has id, author, score, text, and a 'replies' list of child nodes. Flatten the tree into indented text lines: at every level, sort sibling nodes by score descending, and render each node as '<indent>[score] author: text' where indent is two spaces per depth level (root is depth 0). Depth-first traverse in that sorted order. Return all lines newline-joined."} {"id":"cmsx3d5d50038x3p2zqni7i5l","kind":"contributor_item","title":"Submission NI7I5L","provisional":false,"output_code":"\nimport json\n\ndef parse_value(v):\n v = v.strip()\n if v.lower() == 'true':\n return True\n if v.lower() == 'false':\n return False\n try:\n return int(v)\n except ValueError:\n pass\n try:\n return float(v)\n except ValueError:\n pass\n return v\n\ndef transform(text):\n sections = {}\n order = []\n current = None\n for line in text.strip('\\n').split('\\n'):\n line = line.strip()\n if not line:\n continue\n if line.startswith('[') and line.endswith(']'):\n current = line[1:-1]\n sections[current] = {}\n order.append(current)\n elif '=' in line and current:\n key, val = line.split('=', 1)\n sections[current][key.strip()] = parse_value(val)\n\n resolved = {}\n\n def resolve(name):\n if name in resolved:\n return resolved[name]\n raw = dict(sections[name])\n parent_name = raw.pop('extends', None)\n if parent_name:\n merged = dict(resolve(parent_name))\n merged.update(raw)\n else:\n merged = raw\n resolved[name] = merged\n return merged\n\n output = {name: resolve(name) for name in order}\n return json.dumps(output, indent=2, ensure_ascii=False)\n","input_data_sample":"[base]\ntimeout = 30\nretries = 3\nenv = production\n\n[service_a]\nextends = base\ntimeout = 10\n\n[service_b]\nextends = service_a\nretries = 5\ndebug = true","output_data_sample":"{\n \"base\": {\n \"timeout\": 30,\n \"retries\": 3,\n \"env\": \"production\"\n },\n \"service_a\": {\n \"timeout\": 10,\n \"retries\": 3,\n \"env\": \"production\"\n },\n \"service_b\": {\n \"timeout\": 10,\n \"retries\": 5,\n \"env\": \"production\",\n \"debug\": true\n }\n}","transformation_instruction":"This is an INI-like config with sections that may declare 'extends = <parent_section>' to inherit key/value pairs from another section, with the child's own keys overriding the parent's (recursively resolved, since a parent may itself extend another section). The 'extends' key must not appear in the final output. Convert values: 'true'/'false' (case-insensitive) to booleans, integer-looking strings to ints, float-looking strings to floats, otherwise leave as strings. Return a JSON object mapping each section name to its fully resolved key/value dict, in original section order, serialized with indent=2."} {"id":"cmsx3d5d5003bx3p2kgzimabd","kind":"contributor_item","title":"Submission ZIMABD","provisional":false,"output_code":"\nimport re\nimport json\n\ndef parse_logfmt(line):\n pairs = re.findall(r'(\\w+)=(\"[^\"]*\"|\\S+)', line)\n result = {}\n for k, v in pairs:\n if v.startswith('\"') and v.endswith('\"'):\n v = v[1:-1]\n result[k] = v\n return result\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n groups = {}\n for line in lines:\n fields = parse_logfmt(line)\n level = fields.get('level', 'unknown')\n duration = float(fields.get('duration', 0))\n groups.setdefault(level, []).append(duration)\n result = {}\n for level, durations in groups.items():\n result[level] = {\n 'count': len(durations),\n 'avg_duration': round(sum(durations) / len(durations), 2)\n }\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"time=2026-08-10T10:00:00 level=info msg=\"request handled\" duration=120\ntime=2026-08-10T10:00:05 level=error msg=\"db timeout\" duration=5000\ntime=2026-08-10T10:00:07 level=info msg=\"request handled\" duration=95\ntime=2026-08-10T10:00:09 level=warn msg=\"slow response\" duration=800\ntime=2026-08-10T10:00:12 level=error msg=\"db timeout\" duration=4900\ntime=2026-08-10T10:00:15 level=info msg=\"request handled\" duration=110","output_data_sample":"{\n \"info\": {\n \"count\": 3,\n \"avg_duration\": 108.33\n },\n \"error\": {\n \"count\": 2,\n \"avg_duration\": 4950.0\n },\n \"warn\": {\n \"count\": 1,\n \"avg_duration\": 800.0\n }\n}","transformation_instruction":"Each line is logfmt-style text with space-separated key=value pairs, where values may be double-quoted strings containing spaces. Parse the 'level' and 'duration' fields from each line, group lines by level, and compute count and average duration (rounded to 2 decimals) per level. Return a JSON object mapping level to {count, avg_duration}, serialized with indent=2, in order of first appearance."} {"id":"cmsx3d5d5002kx3p2txsvsmt0","kind":"contributor_item","title":"Submission SVSMT0","provisional":false,"output_code":"\nimport json\n\ndef transform(text):\n lines = text.strip('\\n').split('\\n')\n request_line = lines[0].strip()\n parts = request_line.split(' ')\n method, path = parts[0], parts[1]\n protocol = parts[2] if len(parts) > 2 else ''\n headers = {}\n for line in lines[1:]:\n line = line.rstrip('\\r')\n if not line.strip() or ':' not in line:\n continue\n key, val = line.split(':', 1)\n key = key.strip().lower()\n values = [v.strip() for v in val.split(',') if v.strip()]\n if key in headers:\n for v in values:\n if v not in headers[key]:\n headers[key].append(v)\n else:\n headers[key] = values\n for k in list(headers.keys()):\n if len(headers[k]) == 1:\n headers[k] = headers[k][0]\n result = {\n 'method': method,\n 'path': path,\n 'protocol': protocol,\n 'headers': headers\n }\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"GET /api/users?active=true HTTP/1.1\nHost: api.example.com\nAccept: application/json, text/html\nX-Forwarded-For: 10.0.0.1, 10.0.0.2, 10.0.0.3\nUser-Agent: curl/7.68.0\nCache-Control: no-cache\nAccept: */*","output_data_sample":"{\n \"method\": \"GET\",\n \"path\": \"/api/users?active=true\",\n \"protocol\": \"HTTP/1.1\",\n \"headers\": {\n \"host\": \"api.example.com\",\n \"accept\": [\n \"application/json\",\n \"text/html\",\n \"*/*\"\n ],\n \"x-forwarded-for\": [\n \"10.0.0.1\",\n \"10.0.0.2\",\n \"10.0.0.3\"\n ],\n \"user-agent\": \"curl/7.68.0\",\n \"cache-control\": \"no-cache\"\n }\n}","transformation_instruction":"Parse this raw HTTP request text. The first line is the request line 'METHOD PATH PROTOCOL'. The remaining lines are 'Header-Name: value' pairs. Lower-case every header name. Split each header's value on commas into a list of trimmed values; if a header name repeats, merge and deduplicate its value lists in order of first appearance. After merging, any header whose final list has exactly one value should be stored as a plain string rather than a single-element list; headers with multiple values remain lists. Return JSON {method, path, protocol, headers} serialized with indent=2."} {"id":"cmsx3d5d5002lx3p2866nlc1c","kind":"contributor_item","title":"Submission 6NLC1C","provisional":false,"output_code":"\nimport json\nimport math\n\ndef transform(text):\n parts = text.split('---')\n frontmatter_raw = parts[1].strip('\\n')\n body = '---'.join(parts[2:]).strip('\\n')\n metadata = {}\n for line in frontmatter_raw.splitlines():\n if ':' not in line:\n continue\n key, val = line.split(':', 1)\n key = key.strip()\n val = val.strip()\n if key == 'tags':\n metadata[key] = [t.strip() for t in val.split(',') if t.strip()]\n elif val.lower() in ('true', 'false'):\n metadata[key] = val.lower() == 'true'\n else:\n metadata[key] = val\n words = body.split()\n word_count = len(words)\n reading_time = max(1, math.ceil(word_count / 200))\n result = {\n 'metadata': metadata,\n 'word_count': word_count,\n 'reading_time_minutes': reading_time\n }\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"---\ntitle: Getting Started\nauthor: Jane Doe\ntags: python, tutorial, beginner\npublished: true\n---\n# Getting Started\n\nThis is a short guide to get you started with the tool.\nIt covers installation and basic usage in a few short paragraphs.\n\n## Installation\n\nRun pip install tool to install.","output_data_sample":"{\n \"metadata\": {\n \"title\": \"Getting Started\",\n \"author\": \"Jane Doe\",\n \"tags\": [\n \"python\",\n \"tutorial\",\n \"beginner\"\n ],\n \"published\": true\n },\n \"word_count\": 34,\n \"reading_time_minutes\": 1\n}","transformation_instruction":"This is a markdown document with a YAML-like frontmatter block delimited by '---' lines, followed by a body. Parse the frontmatter into a metadata dict: split the 'tags' value on commas into a list of trimmed strings; convert 'true'/'false' values (case-insensitive) to booleans; leave other values as strings. Count the number of whitespace-separated tokens in the body (everything after the closing '---') as word_count. Compute reading_time_minutes as ceil(word_count / 200), minimum 1. Return JSON {metadata, word_count, reading_time_minutes} serialized with indent=2."} {"id":"cmsx3d5d5002ix3p2lcovbdkq","kind":"contributor_item","title":"Submission OVBDKQ","provisional":false,"output_code":"\nimport re\nimport json\n\ndef transform(text):\n blocks = text.strip().split('BEGIN:VCARD')\n contacts = []\n for block in blocks:\n block = block.strip()\n if not block:\n continue\n block = block.replace('END:VCARD', '').strip()\n fields = {}\n for line in block.splitlines():\n line = line.strip()\n if not line or ':' not in line:\n continue\n key, val = line.split(':', 1)\n fields[key.strip().upper()] = val.strip()\n name = fields.get('FN', '')\n tel_raw = fields.get('TEL', '')\n digits = re.sub(r'\\D', '', tel_raw)\n if tel_raw.strip().startswith('+'):\n phone = '+' + digits\n elif len(digits) == 10:\n phone = '+1' + digits\n elif len(digits) == 11 and digits.startswith('1'):\n phone = '+' + digits\n else:\n phone = digits\n email = fields.get('EMAIL', '').lower()\n org = fields.get('ORG')\n contacts.append({\n 'name': name,\n 'phone': phone,\n 'email': email,\n 'org': org\n })\n return json.dumps(contacts, indent=2, ensure_ascii=False)\n","input_data_sample":"BEGIN:VCARD\nFN:John Smith\nTEL:(555) 123-4567\nEMAIL:John.Smith@EXAMPLE.com\nORG:Acme Corp\nEND:VCARD\nBEGIN:VCARD\nFN:Maria Garcia\nTEL:+34 91 123 4567\nEMAIL:maria@example.org\nEND:VCARD\nBEGIN:VCARD\nFN:Bob Lee\nTEL:1-800-555-0199\nEMAIL:BOB@TEST.COM\nORG:Widgets Inc\nEND:VCARD","output_data_sample":"[\n {\n \"name\": \"John Smith\",\n \"phone\": \"+15551234567\",\n \"email\": \"john.smith@example.com\",\n \"org\": \"Acme Corp\"\n },\n {\n \"name\": \"Maria Garcia\",\n \"phone\": \"+34911234567\",\n \"email\": \"maria@example.org\",\n \"org\": null\n },\n {\n \"name\": \"Bob Lee\",\n \"phone\": \"+18005550199\",\n \"email\": \"bob@test.com\",\n \"org\": \"Widgets Inc\"\n }\n]","transformation_instruction":"Parse this text containing multiple BEGIN:VCARD/END:VCARD blocks into a JSON array of contact objects with keys name, phone, email, org. Normalize each phone number to E.164 format: strip all non-digit characters; if the original number already starts with '+', keep it as '+' followed by the digits; if the digits are exactly 10 long, prefix with '+1'; if 11 digits and starting with '1', prefix with '+'; otherwise keep the raw digits. Lowercase the email. If ORG is missing for a contact, its value should be null. Return the JSON serialized with indent=2."} {"id":"cmsx3d5d5002px3p2bu6fkqrt","kind":"contributor_item","title":"Submission 6FKQRT","provisional":false,"output_code":"\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n out = ['os\\tbrowser\\tversion']\n for ua in lines:\n if 'Windows' in ua:\n os_name = 'Windows'\n elif 'iPhone' in ua:\n os_name = 'iOS'\n elif 'Macintosh' in ua or 'Mac OS X' in ua:\n os_name = 'macOS'\n elif 'Linux' in ua:\n os_name = 'Linux'\n else:\n os_name = 'Unknown'\n\n if 'Chrome/' in ua:\n browser = 'Chrome'\n version = ua.split('Chrome/')[1].split(' ')[0]\n elif 'Version/' in ua and 'Safari' in ua:\n browser = 'Safari'\n version = ua.split('Version/')[1].split(' ')[0]\n elif ua.startswith('curl/'):\n browser = 'curl'\n version = ua.split('curl/')[1].split(' ')[0]\n else:\n browser = 'Unknown'\n version = ''\n out.append(f'{os_name}\\t{browser}\\t{version}')\n return '\\n'.join(out)\n","input_data_sample":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36\nMozilla/5.0 (Macintosh; Intel Mac OS X 13_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.5 Safari/605.1.15\nMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0 Safari/537.36\nMozilla/5.0 (iPhone; CPU iPhone OS 16_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.5 Mobile/15E148 Safari/604.1\ncurl/7.68.0","output_data_sample":"os\tbrowser\tversion\nWindows\tChrome\t115.0.0.0\nmacOS\tSafari\t16.5\nLinux\tChrome\t114.0\niOS\tSafari\t16.5\nUnknown\tcurl\t7.68.0","transformation_instruction":"Parse each User-Agent line into an operating system and browser with version, using these rules in order: OS is 'Windows' if the string contains 'Windows'; else 'iOS' if it contains 'iPhone'; else 'macOS' if it contains 'Macintosh' or 'Mac OS X'; else 'Linux' if it contains 'Linux'; else 'Unknown'. Browser: 'Chrome' with the version following 'Chrome/' if present; else 'Safari' with the version following 'Version/' if the string also contains 'Safari'; else 'curl' with version following 'curl/' if the line starts with 'curl/'; else 'Unknown' with empty version. Output tab-separated text with header 'os\\tbrowser\\tversion', one row per input line, newline-joined."} {"id":"cmsx3d5d5002ox3p2jwxp7s2o","kind":"contributor_item","title":"Submission XP7S2O","provisional":false,"output_code":"\nimport json\n\ndef transform(text):\n lines = text.strip('\\n').split('\\n')\n rows = []\n warnings = 0\n for line in lines[1:]:\n cols = line.split('\\t')\n sku, location, stock = cols[0], cols[1], int(cols[2])\n if stock < 0:\n stock = 0\n warnings += 1\n rows.append({'sku': sku, 'location': location, 'stock': stock})\n result = {'corrected_rows': rows, 'warnings': warnings}\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"sku\tlocation\tstock\nA1\tWH1\t50\nA2\tWH1\t-5\nA3\tWH2\t12\nA2\tWH2\t-20\nA4\tWH1\t0","output_data_sample":"{\n \"corrected_rows\": [\n {\n \"sku\": \"A1\",\n \"location\": \"WH1\",\n \"stock\": 50\n },\n {\n \"sku\": \"A2\",\n \"location\": \"WH1\",\n \"stock\": 0\n },\n {\n \"sku\": \"A3\",\n \"location\": \"WH2\",\n \"stock\": 12\n },\n {\n \"sku\": \"A2\",\n \"location\": \"WH2\",\n \"stock\": 0\n },\n {\n \"sku\": \"A4\",\n \"location\": \"WH1\",\n \"stock\": 0\n }\n ],\n \"warnings\": 2\n}","transformation_instruction":"This is tab-separated inventory data with header 'sku\\tlocation\\tstock'. Some stock values are negative due to a data error; clamp any negative stock to 0 and count how many rows were clamped as 'warnings'. Return JSON {corrected_rows: [{sku, location, stock}, ...], warnings: <int>} serialized with indent=2, preserving row order."} {"id":"cmsx3d5d5002nx3p2so0d5liw","kind":"contributor_item","title":"Submission 0D5LIW","provisional":false,"output_code":"\nimport json\n\ndef transform(text):\n out = ['order_id,customer,sku,qty,price,line_total']\n for line in text.strip('\\n').split('\\n'):\n if not line.strip():\n continue\n order = json.loads(line)\n items = order.get('items', [])\n if not items:\n out.append(f\"{order['order_id']},{order['customer']},,0,0.00,0.00\")\n else:\n for item in items:\n qty = item['qty']\n price = item['price']\n line_total = qty * price\n out.append(f\"{order['order_id']},{order['customer']},{item['sku']},{qty},{price:.2f},{line_total:.2f}\")\n return '\\n'.join(out)\n","input_data_sample":"{\"order_id\": \"A100\", \"customer\": \"Lee\", \"items\": [{\"sku\": \"X1\", \"qty\": 2, \"price\": 9.5}, {\"sku\": \"X2\", \"qty\": 1, \"price\": 20.0}]}\n{\"order_id\": \"A101\", \"customer\": \"Kim\", \"items\": [{\"sku\": \"X3\", \"qty\": 5, \"price\": 3.25}]}\n{\"order_id\": \"A102\", \"customer\": \"Park\", \"items\": []}","output_data_sample":"order_id,customer,sku,qty,price,line_total\nA100,Lee,X1,2,9.50,19.00\nA100,Lee,X2,1,20.00,20.00\nA101,Kim,X3,5,3.25,16.25\nA102,Park,,0,0.00,0.00","transformation_instruction":"Each line is a JSON order object with an 'items' array of {sku, qty, price}. Flatten this into a CSV with header 'order_id,customer,sku,qty,price,line_total' with one row per item, where line_total = qty * price formatted to 2 decimal places (price also formatted to 2 decimals). If an order's items list is empty, emit a single row for that order with sku empty and qty=0, price=0.00, line_total=0.00. Return the CSV text (newline-joined, no trailing newline)."} {"id":"cmsx3d5d5002mx3p2isnht6af","kind":"contributor_item","title":"Submission NHT6AF","provisional":false,"output_code":"\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n header = [h.strip() for h in lines[0].split(',')]\n seen = {}\n order = []\n for line in lines[1:]:\n cols = [c.strip() for c in line.split(',')]\n name, email, city = cols[0], cols[1], cols[2]\n key = (name.lower(), email.lower())\n if key not in seen:\n seen[key] = [name, email.lower(), city]\n order.append(key)\n out_lines = [','.join(header)]\n for key in order:\n out_lines.append(','.join(seen[key]))\n return '\\n'.join(out_lines)\n","input_data_sample":"Name , Email ,City\n Alice Wong ,alice@example.com , Seattle\nBob Chen,BOB@EXAMPLE.COM,Portland\nalice wong , ALICE@EXAMPLE.COM ,seattle\nCarol Diaz,carol@example.com,Denver\nBOB CHEN, bob@example.com ,Portland","output_data_sample":"Name,Email,City\nAlice Wong,alice@example.com,Seattle\nBob Chen,bob@example.com,Portland\nCarol Diaz,carol@example.com,Denver","transformation_instruction":"This CSV has inconsistent whitespace and duplicate rows that only differ by case. Trim whitespace from every field. Treat two rows as duplicates if their name and email match case-insensitively after trimming; keep only the first occurrence of each unique (name, email) pair, in original order. In the kept rows, lower-case the email but keep the original casing of name and city as first seen. Return the result as CSV text (comma-separated, newline-joined, no trailing newline, same header trimmed)."} {"id":"cmsx3d5d5002rx3p22d5eykl6","kind":"contributor_item","title":"Submission 5EYKL6","provisional":false,"output_code":"\nimport json\nimport re\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n totals = {}\n for line in lines[1:]:\n desc, amount = line.split(',', 1)\n m = re.match(r'^([^\\d.]+)([\\d.]+)$', amount.strip())\n symbol, value = m.group(1), float(m.group(2))\n totals[symbol] = round(totals.get(symbol, 0) + value, 2)\n return json.dumps(totals, indent=2, ensure_ascii=False)\n","input_data_sample":"description,amount\nCoffee,$4.50\nBook,€12.99\nLunch,$8.25\nMuseum,€7.00\nTaxi,£15.00\nSnack,$2.10\nGift,£3.50","output_data_sample":"{\n \"$\": 14.85,\n \"€\": 19.99,\n \"£\": 18.5\n}","transformation_instruction":"This CSV has a description column and an amount column where amounts are prefixed with a currency symbol ($, €, or £) and no thousands separators. Sum the numeric amounts grouped by currency symbol, rounding each running total to 2 decimals. Return a JSON object mapping each currency symbol to its total, serialized with indent=2."} {"id":"cmsx3d5d5002qx3p2qdq99cci","kind":"contributor_item","title":"Submission Q99CCI","provisional":false,"output_code":"\nimport json\n\ndef parse_semver(v):\n core = v\n build = None\n if '+' in core:\n core, build = core.split('+', 1)\n prerelease = None\n if '-' in core:\n core, prerelease = core.split('-', 1)\n major, minor, patch = (int(x) for x in core.split('.'))\n return major, minor, patch, prerelease, build\n\ndef sort_key(v):\n major, minor, patch, prerelease, build = parse_semver(v)\n pre_flag = 1 if prerelease is None else 0\n pre_parts = []\n if prerelease:\n for part in prerelease.split('.'):\n if part.isdigit():\n pre_parts.append((0, int(part)))\n else:\n pre_parts.append((1, part))\n return (major, minor, patch, pre_flag, pre_parts, v)\n\ndef transform(text):\n versions = [l.strip() for l in text.strip('\\n').split('\\n') if l.strip()]\n unique = list(dict.fromkeys(versions))\n unique.sort(key=sort_key)\n return json.dumps(unique, indent=2, ensure_ascii=False)\n","input_data_sample":"1.2.3\n1.10.0\n1.2.3-alpha\n1.2.3\n2.0.0-beta.1\n1.2.10\n1.2.3-alpha+build.5\n2.0.0\n1.2.9","output_data_sample":"[\n \"1.2.3-alpha\",\n \"1.2.3-alpha+build.5\",\n \"1.2.3\",\n \"1.2.9\",\n \"1.2.10\",\n \"1.10.0\",\n \"2.0.0-beta.1\",\n \"2.0.0\"\n]","transformation_instruction":"This is a list of semantic version strings (major.minor.patch[-prerelease][+build]), one per line, with exact duplicates and mixed pre-release/build metadata. Remove exact duplicate lines (keeping first occurrence order irrelevant since we re-sort), then sort all unique versions by semver precedence rules: compare major, minor, patch numerically; a version with a pre-release has lower precedence than the same version without one; pre-release identifiers are compared dot-segment by dot-segment, numeric segments compared numerically and sorting before any non-numeric segment types when compared cross-type is not needed here; build metadata is ignored for precedence but if two versions have identical precedence, break the tie by comparing the full original string lexicographically ascending. Return the sorted unique list as a JSON array serialized with indent=2."} {"id":"cmsx3d5d5002vx3p25o9f5yq5","kind":"contributor_item","title":"Submission 9F5YQ5","provisional":false,"output_code":"\nimport json\n\nFLAGS = [(1, 'READ'), (2, 'WRITE'), (4, 'DELETE'), (8, 'ADMIN')]\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n result = []\n for line in lines[1:]:\n user, mask = line.split(',')\n mask = int(mask)\n flags = [name for bit, name in FLAGS if mask & bit]\n result.append({'user': user, 'mask': mask, 'flags': flags})\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"user,permissions_mask\nalice,7\nbob,1\ncarol,15\ndave,0\nerin,10","output_data_sample":"[\n {\n \"user\": \"alice\",\n \"mask\": 7,\n \"flags\": [\n \"READ\",\n \"WRITE\",\n \"DELETE\"\n ]\n },\n {\n \"user\": \"bob\",\n \"mask\": 1,\n \"flags\": [\n \"READ\"\n ]\n },\n {\n \"user\": \"carol\",\n \"mask\": 15,\n \"flags\": [\n \"READ\",\n \"WRITE\",\n \"DELETE\",\n \"ADMIN\"\n ]\n },\n {\n \"user\": \"dave\",\n \"mask\": 0,\n \"flags\": []\n },\n {\n \"user\": \"erin\",\n \"mask\": 10,\n \"flags\": [\n \"WRITE\",\n \"ADMIN\"\n ]\n }\n]","transformation_instruction":"This CSV has a user and a permissions_mask (integer bitmask) column. Bit 1 = READ, bit 2 = WRITE, bit 4 = DELETE, bit 8 = ADMIN. Decode each mask into the list of flag names whose bits are set (empty list if mask is 0). Return a JSON array of objects {user, mask, flags} in original order, serialized with indent=2."} {"id":"cmsx3d5d5002xx3p290vgw1gx","kind":"contributor_item","title":"Submission VGW1GX","provisional":false,"output_code":"\nMORSE = {\n '.-': 'A', '-...': 'B', '-.-.': 'C', '-..': 'D', '.': 'E', '..-.': 'F', '--.': 'G',\n '....': 'H', '..': 'I', '.---': 'J', '-.-': 'K', '.-..': 'L', '--': 'M', '-.': 'N',\n '---': 'O', '.--.': 'P', '--.-': 'Q', '.-.': 'R', '...': 'S', '-': 'T', '..-': 'U',\n '...-': 'V', '.--': 'W', '-..-': 'X', '-.--': 'Y', '--..': 'Z',\n '-----': '0', '.----': '1', '..---': '2', '...--': '3', '....-': '4',\n '.....': '5', '-....': '6', '--...': '7', '---..': '8', '----.': '9'\n}\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n decoded_lines = []\n for line in lines:\n words = line.strip().split(' / ')\n decoded_words = []\n for word in words:\n letters = word.strip().split(' ')\n decoded_words.append(''.join(MORSE.get(l, '?') for l in letters if l))\n decoded_lines.append(' '.join(decoded_words))\n return '\\n'.join(decoded_lines)\n","input_data_sample":".... . .-.. .-.. --- / .-- --- .-. .-.. -..\n--. --- --- -.. / -- --- .-. -. .. -. --.\n.--. -.-- - .... --- -.","output_data_sample":"HELLO WORLD\nGOOD MORNING\nPYTHON","transformation_instruction":"Each line is Morse code where letters within a word are separated by single spaces and words are separated by ' / '. Decode each line to uppercase plain text (words separated by a single space) and return all decoded lines newline-joined, in original order."} {"id":"cmsx3d5d5002ux3p23wyxlyl9","kind":"contributor_item","title":"Submission YXLYL9","provisional":false,"output_code":"\nimport unicodedata\nimport re\nimport json\n\ndef slugify(s):\n s = unicodedata.normalize('NFKD', s).encode('ascii', 'ignore').decode('ascii')\n s = s.lower()\n s = re.sub(r'[^a-z0-9\\s-]', '', s)\n s = re.sub(r'[\\s-]+', '-', s).strip('-')\n return s\n\ndef transform(text):\n titles = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n result = [{'title': t, 'slug': slugify(t)} for t in titles]\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"Café Del Mar: A Sunset Story!\n10 Tips & Tricks for Beginners\nRésumé Writing 101\nC++ Programming — The Basics\nHello, World?? (2024 Edition)","output_data_sample":"[\n {\n \"title\": \"Café Del Mar: A Sunset Story!\",\n \"slug\": \"cafe-del-mar-a-sunset-story\"\n },\n {\n \"title\": \"10 Tips & Tricks for Beginners\",\n \"slug\": \"10-tips-tricks-for-beginners\"\n },\n {\n \"title\": \"Résumé Writing 101\",\n \"slug\": \"resume-writing-101\"\n },\n {\n \"title\": \"C++ Programming — The Basics\",\n \"slug\": \"c-programming-the-basics\"\n },\n {\n \"title\": \"Hello, World?? (2024 Edition)\",\n \"slug\": \"hello-world-2024-edition\"\n }\n]","transformation_instruction":"For each title line, generate a URL slug: transliterate accented/unicode characters to their closest ASCII equivalent (using NFKD normalization and dropping non-encodable characters), lower-case the result, remove any character that isn't a lowercase letter, digit, whitespace, or hyphen, then collapse any run of whitespace/hyphens into a single hyphen and strip leading/trailing hyphens. Return a JSON array of objects {title, slug} in original order, serialized with indent=2."} {"id":"cmsx3d5d5002wx3p27re7vmrv","kind":"contributor_item","title":"Submission E7VMRV","provisional":false,"output_code":"\nimport json\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n result = {}\n for line in lines:\n group, pairs_str = line.split(':', 1)\n pairs = pairs_str.split(',')\n total_weighted = 0.0\n total_weight = 0.0\n for pair in pairs:\n score_str, weight_str = pair.split(';')\n score, weight = float(score_str), float(weight_str)\n total_weighted += score * weight\n total_weight += weight\n avg = round(total_weighted / total_weight, 2) if total_weight else 0\n result[group] = avg\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"MathTest:88;0.3,92;0.5,79;0.2\nScienceTest:95;0.4,85;0.6\nHistoryTest:70;1.0","output_data_sample":"{\n \"MathTest\": 88.2,\n \"ScienceTest\": 89.0,\n \"HistoryTest\": 70.0\n}","transformation_instruction":"Each line has a group name, a colon, then comma-separated 'score;weight' pairs. Compute the weighted average score per group as sum(score*weight)/sum(weight), rounded to 2 decimals. Return a JSON object mapping group name to its weighted average, serialized with indent=2, preserving input order."} {"id":"cmsx3d5d50031x3p2ppr2yvlj","kind":"contributor_item","title":"Submission R2YVLJ","provisional":false,"output_code":"\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n header = lines[0]\n out = [header]\n last_region = None\n for line in lines[1:]:\n cols = line.split(',')\n region = cols[0]\n if region.strip() == '\"':\n region = last_region\n else:\n last_region = region\n cols[0] = region\n out.append(','.join(cols))\n return '\\n'.join(out)\n","input_data_sample":"Region,Product,Sales\nWest,Widget,100\n\",Gadget,150\n\",Gizmo,90\nEast,Widget,80\n\",Gadget,60\nNorth,Widget,40","output_data_sample":"Region,Product,Sales\nWest,Widget,100\nWest,Gadget,150\nWest,Gizmo,90\nEast,Widget,80\nEast,Gadget,60\nNorth,Widget,40","transformation_instruction":"This CSV uses a ditto mark (a lone double-quote character) in the Region column to mean 'same as the row above'. Fill down the Region column: whenever a row's first field is exactly a single double-quote character, replace it with the most recent actual region value seen above it. Leave other columns untouched. Return the corrected CSV text (comma-separated, newline-joined, no trailing newline), including the header."} {"id":"cmsx3d5d50030x3p2xw95k6yp","kind":"contributor_item","title":"Submission 95K6YP","provisional":false,"output_code":"\nimport json\n\ndef hex_to_rgb(hex_code):\n hex_code = hex_code.lstrip('#')\n return [int(hex_code[i:i + 2], 16) for i in (0, 2, 4)]\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n groups = {}\n for line in lines:\n name, hex_code = line.split(':')\n name = name.strip()\n hex_code = hex_code.strip()\n prefix = name.split('-')[0]\n rgb = hex_to_rgb(hex_code)\n groups.setdefault(prefix, []).append({'name': name, 'rgb': rgb})\n return json.dumps(groups, indent=2, ensure_ascii=False)\n","input_data_sample":"brand-primary: #1A73E8\nbrand-secondary: #34A853\nbrand-accent: #FBBC05\nalert-error: #EA4335\nalert-warning: #FF6D01\nneutral-100: #F5F5F5\nneutral-900: #212121","output_data_sample":"{\n \"brand\": [\n {\n \"name\": \"brand-primary\",\n \"rgb\": [\n 26,\n 115,\n 232\n ]\n },\n {\n \"name\": \"brand-secondary\",\n \"rgb\": [\n 52,\n 168,\n 83\n ]\n },\n {\n \"name\": \"brand-accent\",\n \"rgb\": [\n 251,\n 188,\n 5\n ]\n }\n ],\n \"alert\": [\n {\n \"name\": \"alert-error\",\n \"rgb\": [\n 234,\n 67,\n 53\n ]\n },\n {\n \"name\": \"alert-warning\",\n \"rgb\": [\n 255,\n 109,\n 1\n ]\n }\n ],\n \"neutral\": [\n {\n \"name\": \"neutral-100\",\n \"rgb\": [\n 245,\n 245,\n 245\n ]\n },\n {\n \"name\": \"neutral-900\",\n \"rgb\": [\n 33,\n 33,\n 33\n ]\n }\n ]\n}","transformation_instruction":"Each line is 'name: #HEXCODE'. Group entries by the prefix before the first hyphen in the name. Convert each hex code to an [R, G, B] integer list. Return a JSON object mapping each prefix to a list of {name, rgb} objects in original order, serialized with indent=2."} {"id":"cmsx3d5d5002zx3p2mhzq6n21","kind":"contributor_item","title":"Submission ZQ6N21","provisional":false,"output_code":"\nimport re\nimport json\n\ndef dms_to_decimal(dms_str):\n m = re.match(r\"(\\d+)°(\\d+)'([\\d.]+)\\\"([NSEW])\", dms_str)\n deg, minutes, seconds, direction = m.groups()\n value = float(deg) + float(minutes) / 60 + float(seconds) / 3600\n if direction in ('S', 'W'):\n value = -value\n return round(value, 6)\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n result = []\n for line in lines:\n lat_str, lon_str = line.split(' ')\n result.append({\n 'lat': dms_to_decimal(lat_str),\n 'lon': dms_to_decimal(lon_str)\n })\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"41°24'12.2\"N 2°10'26.5\"E\n40°26'46.0\"N 79°58'56.0\"W\n33°51'54.0\"S 151°12'36.0\"E\n90°0'0.0\"N 0°0'0.0\"E","output_data_sample":"[\n {\n \"lat\": 41.403389,\n \"lon\": 2.174028\n },\n {\n \"lat\": 40.446111,\n \"lon\": -79.982222\n },\n {\n \"lat\": -33.865,\n \"lon\": 151.21\n },\n {\n \"lat\": 90.0,\n \"lon\": 0.0\n }\n]","transformation_instruction":"Each line has a latitude and longitude in degrees-minutes-seconds format like 41°24'12.2\"N, separated by a space. Convert each to decimal degrees using degrees + minutes/60 + seconds/3600, negating the value if the direction is S or W, rounded to 6 decimal places. Return a JSON array of {lat, lon} objects in order, serialized with indent=2."} {"id":"cmsx3d5d5002yx3p2e4ur2k78","kind":"contributor_item","title":"Submission UR2K78","provisional":false,"output_code":"\nimport re\nimport json\n\ndef transform(text):\n messages = re.split(r'\\n(?=From )', text.strip('\\n'))\n result = []\n for msg in messages:\n lines = msg.split('\\n')\n headers = {}\n for line in lines[1:]:\n if not line.strip():\n break\n if ':' in line:\n key, val = line.split(':', 1)\n headers[key.strip()] = val.strip()\n to_list = [t.strip() for t in headers.get('To', '').split(',') if t.strip()]\n result.append({\n 'from': headers.get('From', ''),\n 'to': to_list,\n 'subject': headers.get('Subject', ''),\n 'date': headers.get('Date', '')\n })\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"From alice@example.com Mon Aug 10 10:00:00 2026\nFrom: Alice <alice@example.com>\nTo: bob@example.com\nSubject: Meeting Tomorrow\nDate: Mon, 10 Aug 2026 10:00:00 +0000\n\nLet's meet at 10am.\n\nFrom bob@example.com Mon Aug 10 11:00:00 2026\nFrom: Bob <bob@example.com>\nTo: alice@example.com, carol@example.com\nSubject: Re: Meeting Tomorrow\nDate: Mon, 10 Aug 2026 11:00:00 +0000\n\nSounds good, see you then.","output_data_sample":"[\n {\n \"from\": \"Alice <alice@example.com>\",\n \"to\": [\n \"bob@example.com\"\n ],\n \"subject\": \"Meeting Tomorrow\",\n \"date\": \"Mon, 10 Aug 2026 10:00:00 +0000\"\n },\n {\n \"from\": \"Bob <bob@example.com>\",\n \"to\": [\n \"alice@example.com\",\n \"carol@example.com\"\n ],\n \"subject\": \"Re: Meeting Tomorrow\",\n \"date\": \"Mon, 10 Aug 2026 11:00:00 +0000\"\n }\n]","transformation_instruction":"This is mbox-style text: each message begins with an envelope line starting with 'From ' followed by header lines (From, To, Subject, Date) then a blank line then the body. Split on message boundaries (lines starting with 'From ' that are not preceded by other content on the same message), parse the From, To, Subject, Date headers for each message, splitting the To header on commas into a list of trimmed addresses. Return a JSON array of {from, to, subject, date} objects in order, serialized with indent=2."} {"id":"cmsx3d5d50035x3p2p52z5c9z","kind":"contributor_item","title":"Submission 2Z5C9Z","provisional":false,"output_code":"\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n header = lines[0]\n out = [header]\n for line in lines[1:]:\n id_, value, checksum = line.split(',')\n expected = sum(ord(c) for c in id_ + value) % 97\n if expected == int(checksum):\n out.append(line)\n return '\\n'.join(out)\n","input_data_sample":"id,value,checksum\nA1,apple,62\nA2,banana,45\nA3,cherry,91\nA4,date,46","output_data_sample":"id,value,checksum\nA1,apple,62\nA2,banana,45\nA4,date,46","transformation_instruction":"This CSV has columns id,value,checksum. The correct checksum for a row is defined as sum(ord(c) for c in id + value) % 97. Recompute the checksum for every row and keep only the rows where the stored checksum matches the recomputed value; discard rows whose stored checksum is wrong. Return the filtered CSV text (comma-separated, newline-joined, no trailing newline), keeping the header and original row order."} {"id":"cmsx3d5d50033x3p2iwgobmi5","kind":"contributor_item","title":"Submission GOBMI5","provisional":false,"output_code":"\nimport re\nimport json\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n result = []\n for line in lines:\n main = re.split(r'ext', line, flags=re.IGNORECASE)[0]\n digits = re.sub(r'\\D', '', main)\n if len(digits) == 10:\n normalized = '+1' + digits\n elif len(digits) == 11 and digits.startswith('1'):\n normalized = '+' + digits\n else:\n normalized = None\n result.append({'original': line, 'e164': normalized})\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"(415) 555-2671\n415.555.9823\n+1-415-555-3344\n415 555 7788 ext 12\n1(415)5551234","output_data_sample":"[\n {\n \"original\": \"(415) 555-2671\",\n \"e164\": \"+14155552671\"\n },\n {\n \"original\": \"415.555.9823\",\n \"e164\": \"+14155559823\"\n },\n {\n \"original\": \"+1-415-555-3344\",\n \"e164\": \"+14155553344\"\n },\n {\n \"original\": \"415 555 7788 ext 12\",\n \"e164\": \"+14155557788\"\n },\n {\n \"original\": \"1(415)5551234\",\n \"e164\": \"+14155551234\"\n }\n]","transformation_instruction":"Each line is a US phone number in a different format, possibly with a trailing extension like 'ext 12'. Strip any extension first (everything from 'ext', case insensitive, onward), then extract the digits. If there are exactly 10 digits, normalize to '+1' followed by the digits. If there are 11 digits starting with '1', normalize to '+' followed by the digits. Otherwise, the normalized value is null. Return a JSON array of {original, e164} objects in order, serialized with indent=2."} {"id":"cmsx3d5d50032x3p2gxv8rf03","kind":"contributor_item","title":"Submission V8RF03","provisional":false,"output_code":"\nimport re\nimport json\n\ndef parse_duration(s):\n pattern = re.findall(r'(\\d+)([hms])', s)\n total = 0\n for value, unit in pattern:\n value = int(value)\n if unit == 'h':\n total += value * 3600\n elif unit == 'm':\n total += value * 60\n elif unit == 's':\n total += value\n return total\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n totals = {}\n for line in lines:\n task, dur = line.split(':', 1)\n totals[task] = totals.get(task, 0) + parse_duration(dur)\n return json.dumps(totals, indent=2, ensure_ascii=False)\n","input_data_sample":"build:1h30m\nbuild:45m\ntest:90s\ntest:2m30s\ndeploy:5m\nbuild:20m","output_data_sample":"{\n \"build\": 9300,\n \"test\": 240,\n \"deploy\": 300\n}","transformation_instruction":"Each line is 'task:duration' where duration is composed of optional h/m/s components like '1h30m', '45m', '90s', '2m30s'. Parse each duration to total seconds and sum by task. Return a JSON object mapping task name to total seconds (integer), serialized with indent=2, preserving first-appearance order of tasks."} {"id":"cmsx3d5d50039x3p2e6vnyc4u","kind":"contributor_item","title":"Submission VNYC4U","provisional":false,"output_code":"\nimport json\n\nSCALE = {\n 'Strongly Disagree': 1,\n 'Disagree': 2,\n 'Neutral': 3,\n 'Agree': 4,\n 'Strongly Agree': 5\n}\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n header = lines[0].split(',')\n questions = header[1:]\n sums = {q: 0 for q in questions}\n count = 0\n responses = []\n for line in lines[1:]:\n cols = line.split(',')\n respondent = cols[0]\n answers = cols[1:]\n numeric = {questions[i]: SCALE[answers[i]] for i in range(len(questions))}\n responses.append({'respondent': respondent, 'scores': numeric})\n for q in questions:\n sums[q] += numeric[q]\n count += 1\n averages = {q: round(sums[q] / count, 2) for q in questions}\n result = {'responses': responses, 'averages': averages}\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"respondent,q1,q2,q3\nR1,Strongly Agree,Agree,Neutral\nR2,Disagree,Strongly Agree,Agree\nR3,Neutral,Disagree,Strongly Disagree\nR4,Strongly Disagree,Neutral,Strongly Agree","output_data_sample":"{\n \"responses\": [\n {\n \"respondent\": \"R1\",\n \"scores\": {\n \"q1\": 5,\n \"q2\": 4,\n \"q3\": 3\n }\n },\n {\n \"respondent\": \"R2\",\n \"scores\": {\n \"q1\": 2,\n \"q2\": 5,\n \"q3\": 4\n }\n },\n {\n \"respondent\": \"R3\",\n \"scores\": {\n \"q1\": 3,\n \"q2\": 2,\n \"q3\": 1\n }\n },\n {\n \"respondent\": \"R4\",\n \"scores\": {\n \"q1\": 1,\n \"q2\": 3,\n \"q3\": 5\n }\n }\n ],\n \"averages\": {\n \"q1\": 2.75,\n \"q2\": 3.5,\n \"q3\": 3.25\n }\n}","transformation_instruction":"This CSV has a respondent column followed by question columns with Likert-scale text answers. Map answers to numbers: 'Strongly Disagree'=1, 'Disagree'=2, 'Neutral'=3, 'Agree'=4, 'Strongly Agree'=5. Build a JSON object with 'responses': a list of {respondent, scores: {question: number, ...}} in row order, and 'averages': a mapping of each question column to the mean of its numeric scores across all respondents, rounded to 2 decimals. Serialize with indent=2."} {"id":"cmsx3d5d50036x3p2bih4l1tg","kind":"contributor_item","title":"Submission H4L1TG","provisional":false,"output_code":"\nimport re\nimport json\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n header = lines[0]\n m = re.match(r'rows=(\\d+)\\s+cols=(\\d+)', header)\n rows, cols = int(m.group(1)), int(m.group(2))\n grid = [[0] * cols for _ in range(rows)]\n for line in lines[1:]:\n r, c, v = line.split(',')\n grid[int(r)][int(c)] = int(v)\n return json.dumps(grid, indent=2, ensure_ascii=False)\n","input_data_sample":"rows=3 cols=4\n0,0,5\n0,3,2\n1,1,7\n2,0,1\n2,3,9","output_data_sample":"[\n [\n 5,\n 0,\n 0,\n 2\n ],\n [\n 0,\n 7,\n 0,\n 0\n ],\n [\n 1,\n 0,\n 0,\n 9\n ]\n]","transformation_instruction":"The first line declares grid dimensions as 'rows=R cols=C'. Each following line is 'row,col,value' for a non-zero cell in sparse coordinate format. Build the dense R x C grid (all other cells 0) and return it as a JSON 2D array (list of row lists) serialized with indent=2."} {"id":"cmsx3d5d50037x3p2lfi6hudf","kind":"contributor_item","title":"Submission I6HUDF","provisional":false,"output_code":"\nimport re\nimport json\nfrom collections import Counter\n\nSTOPWORDS = {'the', 'a', 'an', 'at', 'but', 'over', 'is', 'in', 'on', 'and', 'to', 'of'}\n\ndef transform(text):\n words = re.findall(r\"[a-zA-Z']+\", text.lower())\n words = [w for w in words if w not in STOPWORDS]\n counts = Counter(words)\n result = sorted(counts.items(), key=lambda x: (-x[1], x[0]))\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":"The quick brown fox jumps over the lazy dog. The dog barks at the fox, but the fox runs away quickly. A quick fox is a smart fox.","output_data_sample":"[\n [\n \"fox\",\n 5\n ],\n [\n \"dog\",\n 2\n ],\n [\n \"quick\",\n 2\n ],\n [\n \"away\",\n 1\n ],\n [\n \"barks\",\n 1\n ],\n [\n \"brown\",\n 1\n ],\n [\n \"jumps\",\n 1\n ],\n [\n \"lazy\",\n 1\n ],\n [\n \"quickly\",\n 1\n ],\n [\n \"runs\",\n 1\n ],\n [\n \"smart\",\n 1\n ]\n]","transformation_instruction":"Lower-case the text and extract alphabetic word tokens (letters and apostrophes only). Remove any token in this stopword set: {the, a, an, at, but, over, is, in, on, and, to, of}. Count the frequency of remaining words and return a JSON array of [word, count] pairs sorted by count descending, then alphabetically ascending for ties, serialized with indent=2."} {"id":"cmsx3d5d5003ax3p21bb56osj","kind":"contributor_item","title":"Submission B56OSJ","provisional":false,"output_code":"\nimport json\n\ndef transform(text):\n lines = [l for l in text.strip('\\n').split('\\n') if l.strip()]\n result = {}\n current_id = None\n seq = ''\n\n def flush():\n if current_id:\n gc = seq.count('G') + seq.count('C')\n pct = round(gc / len(seq) * 100, 2) if seq else 0\n result[current_id] = pct\n\n for line in lines:\n if line.startswith('>'):\n flush()\n current_id = line[1:].strip()\n seq = ''\n else:\n seq += line.strip()\n flush()\n return json.dumps(result, indent=2, ensure_ascii=False)\n","input_data_sample":">seq1\nATGCGCTAGCTAGCTAGCGCGATCG\n>seq2\nATATATATATCGCGCG\n>seq3\nGGGGCCCCAATT","output_data_sample":"{\n \"seq1\": 60.0,\n \"seq2\": 37.5,\n \"seq3\": 66.67\n}","transformation_instruction":"This is FASTA-format text: lines starting with '>' introduce a sequence id, followed by one or more lines of nucleotide letters belonging to that sequence (concatenate them). For each sequence compute the GC content percentage: (count of 'G' + count of 'C') / total length * 100, rounded to 2 decimals. Return a JSON object mapping each sequence id to its GC percentage, serialized with indent=2, in order of first appearance."} {"id":"cmsx5vet500fpx3p2xtpvm84j","kind":"contributor_item","title":"Submission PVM84J","provisional":false,"output_code":"from datetime import datetime\ndef transform(input):\n d={}\n for l in input.splitlines():\n t,v=l.split(',');h=datetime.fromisoformat(t.replace('Z','+00:00')).strftime('%Y-%m-%dT%H');d[h]=d.get(h,0)+int(v)\n return '\\n'.join(f'{k},{d[k]}' for k in sorted(d))","input_data_sample":"2026-01-01T00:00:00Z,5\n2026-01-01T00:30:00Z,7\n2026-01-01T01:00:00Z,4","output_data_sample":"2026-01-01T00,12\n2026-01-01T01,4","transformation_instruction":"Parse timestamp,value rows and aggregate values by UTC hour, returning sorted hour,total lines."} {"id":"cmsx5vet600fsx3p25hivhepm","kind":"contributor_item","title":"Submission IVHEPM","provisional":false,"output_code":"def transform(input):\n lines=[l.split() for l in input.splitlines() if l.strip()];v=sorted({x for l in lines for x in l});m={x:i for i,x in enumerate(v)};return 'vocab='+','.join(v)+'\\n'+'\\n'.join(' '.join(str(m[x]) for x in l) for l in lines)","input_data_sample":"red red blue\ngreen blue blue","output_data_sample":"vocab=blue,green,red\n2 2 0\n1 0 0","transformation_instruction":"Create an alphabetical vocabulary and encode each input line as space-separated vocabulary indices, returning vocabulary then encoded lines."} {"id":"cmsx5vet600ftx3p2cnmzwwk4","kind":"contributor_item","title":"Submission MZWWK4","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input);p=None\n for x in a:\n x['previous_v']=p;x['delta']=None if p is None else x['v']-p;p=x['v']\n return json.dumps(a,separators=(',',':'))","input_data_sample":"[{\"id\":1,\"v\":10},{\"id\":2,\"v\":20},{\"id\":3,\"v\":15}]","output_data_sample":"[{\"id\":1,\"v\":10,\"previous_v\":null,\"delta\":null},{\"id\":2,\"v\":20,\"previous_v\":10,\"delta\":10},{\"id\":3,\"v\":15,\"previous_v\":20,\"delta\":-5}]","transformation_instruction":"Parse JSON records, add previous_v and delta fields relative to the preceding record; first record uses nulls; return compact JSON."} {"id":"cmsx5vet600fwx3p2pvnsh9b1","kind":"contributor_item","title":"Submission NSH9B1","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for l in input.splitlines():\n x=json.loads(l)\n for k,v in x.items():d[k]=d.get(k,0)+v\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"{\"a\":1,\"b\":2,\"c\":3}\n{\"a\":4,\"b\":5}\n{\"a\":6,\"c\":7}","output_data_sample":"{\"a\":11,\"b\":7,\"c\":10}","transformation_instruction":"Parse JSON Lines and return compact JSON mapping each key to the sum of numeric values across all records."} {"id":"cmsx5vet600fyx3p2d4wkfoq8","kind":"contributor_item","title":"Submission WKFOQ8","provisional":false,"output_code":"import json\ndef transform(input):\n s=[sum(map(int,l.split())) for l in input.splitlines() if l.strip()];return json.dumps({'row_sums':s,'total':sum(s)},separators=(',',':'))","input_data_sample":"1 2 3\n4 5\n6","output_data_sample":"{\"row_sums\":[6,9,6],\"total\":21}","transformation_instruction":"Parse whitespace-delimited integer rows of varying length and return compact JSON with each row sum plus a grand total."} {"id":"cmsx5vet600fvx3p22ch5wnsf","kind":"contributor_item","title":"Submission H5WNSF","provisional":false,"output_code":"import csv,io\ndef transform(input):\n d={}\n for r in csv.DictReader(io.StringIO(input)):d.setdefault(r['dept'],[]).append(int(r['salary']))\n a=[(k,sum(v)/len(v)) for k,v in d.items()];a.sort(key=lambda x:(-x[1],x[0]));return '\\n'.join(f'{k}={v:.1f}' for k,v in a)","input_data_sample":"id,dept,salary\n1,x,10\n2,y,20\n3,x,30\n4,y,10","output_data_sample":"x=20.0\ny=15.0","transformation_instruction":"Parse CSV, compute average salary by department, and return departments ordered by descending average then name as dept=avg."} {"id":"cmsx5vet500fox3p28v955446","kind":"contributor_item","title":"Submission 955446","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n r=csv.DictReader(io.StringIO(input));d={k:0 for k in r.fieldnames}\n for x in r:\n for k,v in x.items():d[k]+=bool(v)\n return json.dumps(d,separators=(',',':'))","input_data_sample":"a,b,c\n1,2,3\n4,,6\n7,8,","output_data_sample":"{\"a\":3,\"b\":2,\"c\":2}","transformation_instruction":"Parse CSV and return compact JSON with per-column count of non-empty data cells, excluding the header."} {"id":"cmsx5vet500ewx3p2onls2xwc","kind":"contributor_item","title":"Submission LS2XWC","provisional":false,"output_code":"import json\ndef transform(input):\n x=json.loads(input);bad=set(x['disabled']);u=[v for v in x['users'] if v['id'] not in bad];u.sort(key=lambda z:z['id']);return json.dumps(u,separators=(',',':'))","input_data_sample":"{\"users\":[{\"id\":2,\"name\":\"Bob\"},{\"id\":1,\"name\":\"Ada\"}],\"disabled\":[2]}","output_data_sample":"[{\"id\":1,\"name\":\"Ada\"}]","transformation_instruction":"Parse JSON, remove users whose id appears in disabled, sort remaining users by id, and return compact JSON array."} {"id":"cmsx5vet500evx3p2m5i3x99b","kind":"contributor_item","title":"Submission I3X99B","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n r=csv.DictReader(io.StringIO(input));d={}\n for x in r:\n if x['active']!='yes': continue\n a=d.setdefault(x['team'],{'count':0,'total':0});a['count']+=1;a['total']+=int(x['score'])\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"id,team,score,active\n1,red,8,yes\n2,blue,5,no\n3,red,12,yes\n4,blue,9,yes","output_data_sample":"{\"blue\":{\"count\":1,\"total\":9},\"red\":{\"count\":2,\"total\":20}}","transformation_instruction":"Parse CSV, keep active rows, group by team, and return compact JSON with count and total score per team sorted by team."} {"id":"cmsx5vet500eyx3p22i5fpev7","kind":"contributor_item","title":"Submission 5FPEV7","provisional":false,"output_code":"import urllib.parse,json\ndef transform(input):\n q=urllib.parse.parse_qs(input,keep_blank_values=True);r={k:(v[0] if len(v)==1 else v) for k,v in q.items()};return json.dumps(dict(sorted(r.items())),separators=(',',':'))","input_data_sample":"name=Alice&tag=python&tag=data&empty=&city=New+York","output_data_sample":"{\"city\":\"New York\",\"empty\":\"\",\"name\":\"Alice\",\"tag\":[\"python\",\"data\"]}","transformation_instruction":"Parse a query string preserving repeated values and blank values; flatten single values only; return compact JSON with keys sorted."} {"id":"cmsx5vet500ezx3p278gkxm70","kind":"contributor_item","title":"Submission GKXM70","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n d={}\n for r in csv.DictReader(io.StringIO(input),delimiter='|'):\n a=d.setdefault(r['sku'],[0,0.0]);q=int(r['qty']);a[0]+=q;a[1]+=q*float(r['price'])\n o={k:{'qty':v[0],'revenue':round(v[1],2)} for k,v in sorted(d.items())};return json.dumps(o,separators=(',',':'))","input_data_sample":"sku|qty|price\nA|2|3.50\nB|1|10.00\nA|3|3.50","output_data_sample":"{\"A\":{\"qty\":5,\"revenue\":17.5},\"B\":{\"qty\":1,\"revenue\":10.0}}","transformation_instruction":"Parse pipe-delimited rows, aggregate quantity and extended revenue by SKU, and return sorted compact JSON rounding revenue to 2 decimals."} {"id":"cmsx5vet500f4x3p2ct2u522a","kind":"contributor_item","title":"Submission 2U522A","provisional":false,"output_code":"def transform(input):\n vals=[]\n for l in input.splitlines():\n d,v=l.split(',',1)\n try:vals.append((d,float(v)))\n except:pass\n out=['date,delta']\n for i in range(1,len(vals)):out.append(f'{vals[i][0]},{vals[i][1]-vals[i-1][1]:g}')\n return '\\n'.join(out)","input_data_sample":"2026-01-01,10\n2026-01-02,bad\n2026-01-03,15\n2026-01-04,20","output_data_sample":"date,delta\n2026-01-03,5\n2026-01-04,5","transformation_instruction":"Parse date,value lines, skip non-numeric values, compute deltas between consecutive valid readings, and return CSV."} {"id":"cmsx5vet500f3x3p29yllgfr6","kind":"contributor_item","title":"Submission LLGFR6","provisional":false,"output_code":"import json,csv,io\ndef transform(input):\n rows=[]\n for x in json.loads(input):\n for t in x['tags']:rows.append((x['id'],t))\n rows.sort();o=io.StringIO();w=csv.writer(o,lineterminator='\\n');w.writerow(['id','tag']);w.writerows(rows);return o.getvalue().strip()","input_data_sample":"[{\"id\":1,\"tags\":[\"a\",\"b\"]},{\"id\":2,\"tags\":[]},{\"id\":3,\"tags\":[\"b\"]}]","output_data_sample":"id,tag\n1,a\n1,b\n3,b","transformation_instruction":"Expand each JSON object into one row per tag, skip objects with no tags, and return CSV sorted by id then tag."} {"id":"cmsx5vet500f7x3p2l20h61g5","kind":"contributor_item","title":"Submission 0H61G5","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for l in input.splitlines():\n level,svc,_=l.split('|');d.setdefault(svc,{})[level]=d.setdefault(svc,{}).get(level,0)+1\n return json.dumps({k:dict(sorted(v.items())) for k,v in sorted(d.items())},separators=(',',':'))","input_data_sample":"INFO|api|10\nWARN|web|20\nERROR|api|30\nERROR|web|40\nWARN|api|50","output_data_sample":"{\"api\":{\"ERROR\":1,\"INFO\":1,\"WARN\":1},\"web\":{\"ERROR\":1,\"WARN\":1}}","transformation_instruction":"Parse pipe records and return compact JSON per service with counts by level, omitting zero-count levels."} {"id":"cmsx5vet500fkx3p2j7oqzs3b","kind":"contributor_item","title":"Submission OQZS3B","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input)['items'];g=0\n for x in a:x['line_total']=x['price']*x['qty'];g+=x['line_total']\n a.append({'grand_total':g});return json.dumps(a,separators=(',',':'))","input_data_sample":"{\"items\":[{\"name\":\"a\",\"price\":10,\"qty\":2},{\"name\":\"b\",\"price\":5,\"qty\":3}]}","output_data_sample":"[{\"name\":\"a\",\"price\":10,\"qty\":2,\"line_total\":20},{\"name\":\"b\",\"price\":5,\"qty\":3,\"line_total\":15},{\"grand_total\":35}]","transformation_instruction":"Parse JSON items, add line_total=price*qty to each item and append a final summary object with grand_total, returning compact JSON."} {"id":"cmsx5vet500fjx3p2xw2f47zt","kind":"contributor_item","title":"Submission 2F47ZT","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n a=sorted((int(r['start']),int(r['end'])) for r in csv.DictReader(io.StringIO(input)));m=[]\n for s,e in a:\n if not m or s>m[-1][1]:m.append([s,e])\n else:m[-1][1]=max(m[-1][1],e)\n return json.dumps(m,separators=(',',':'))","input_data_sample":"id,start,end\n1,1,4\n2,3,6\n3,8,10","output_data_sample":"[[1,6],[8,10]]","transformation_instruction":"Parse intervals from CSV, merge overlapping intervals, and return compact JSON array of merged [start,end] pairs."} {"id":"cmsx5vet500fqx3p2khfvtwnz","kind":"contributor_item","title":"Submission FVTWNZ","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input)['matrix'];t=[list(x) for x in zip(*a)] if a else [];return json.dumps({'matrix':t},separators=(',',':'))","input_data_sample":"{\"matrix\":[[1,2,3],[4,5,6]]}","output_data_sample":"{\"matrix\":[[1,4],[2,5],[3,6]]}","transformation_instruction":"Transpose the rectangular matrix in JSON and return compact JSON under key matrix."} {"id":"cmsx5vet600frx3p2uec0bdra","kind":"contributor_item","title":"Submission C0BDRA","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n d={}\n for r in csv.DictReader(io.StringIO(input)):\n a=d.setdefault(r['host'],{'total':0,'errors':0});a['total']+=1;a['errors']+=int(r['status'])>=500\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"host,status\napi,200\nweb,500\napi,503\nweb,200\napi,200","output_data_sample":"{\"api\":{\"total\":3,\"errors\":1},\"web\":{\"total\":2,\"errors\":1}}","transformation_instruction":"Parse CSV and return compact JSON per host with total requests and error count where status >= 500."} {"id":"cmsx5vet600fux3p2nodnfir9","kind":"contributor_item","title":"Submission DNFIR9","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for p in input.split(';'):\n if '=' in p:\n k,v=p.split('=',1);d[k]=v\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"A=1;B=2;C=hello=world;D=","output_data_sample":"{\"A\":\"1\",\"B\":\"2\",\"C\":\"hello=world\",\"D\":\"\"}","transformation_instruction":"Parse semicolon-delimited key=value pairs splitting only on the first '=', preserve empty values, and return sorted compact JSON."} {"id":"cmsx5vet600fxx3p2u67530vz","kind":"contributor_item","title":"Submission 7530VZ","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n a=[{'path':r['path'],'size':int(r['size'])} for r in csv.DictReader(io.StringIO(input))];a.sort(key=lambda x:(-x['size'],x['path']));return json.dumps(a[:2],separators=(',',':'))","input_data_sample":"path,size\n/a,10\n/b,25\n/c,5\n/d,25","output_data_sample":"[{\"path\":\"/b\",\"size\":25},{\"path\":\"/d\",\"size\":25}]","transformation_instruction":"Parse CSV and return the two largest files as compact JSON sorted by size descending then path ascending."} {"id":"cmsx5vet500ffx3p2s9cjit0s","kind":"contributor_item","title":"Submission CJIT0S","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n a=list(csv.DictReader(io.StringIO(input)));ids={r['id'] for r in a};d={}\n for r in a:\n p=r['parent']\n if p and p in ids:d.setdefault(p,[]).append(int(r['id']))\n return json.dumps({k:sorted(v) for k,v in sorted(d.items(),key=lambda x:int(x[0]))},separators=(',',':'))","input_data_sample":"id,parent\n1,\n2,1\n3,1\n4,2\n5,9","output_data_sample":"{\"1\":[2,3],\"2\":[4]}","transformation_instruction":"Parse CSV parent relations; return compact JSON mapping each existing parent id to sorted child ids, ignoring references to missing parents."} {"id":"cmsx5vet500fix3p2w471gfpt","kind":"contributor_item","title":"Submission 71GFPT","provisional":false,"output_code":"import json\ndef transform(input):\n r={}\n for l in input.splitlines():\n k,v=[x.strip() for x in l.split(':',1)]\n if v=='true':z=True\n elif v=='false':z=False\n elif v=='null':z=None\n else:\n try:z=int(v)\n except:z=v\n r[k]=z\n return json.dumps(r,separators=(',',':'))","input_data_sample":"alpha: 1\nbeta: true\ngamma: null\ndelta: text","output_data_sample":"{\"alpha\":1,\"beta\":true,\"gamma\":null,\"delta\":\"text\"}","transformation_instruction":"Parse simple key: value lines and coerce integers, true/false, and null to native JSON types while leaving other values as strings."} {"id":"cmsx5vet500fhx3p2cnnf4o8p","kind":"contributor_item","title":"Submission NF4O8P","provisional":false,"output_code":"import json\ndef transform(input):\n x=json.loads(input);r={str(v):k for k,vs in x.items() for v in vs};return json.dumps(dict(sorted(r.items(),key=lambda z:int(z[0]))),separators=(',',':'))","input_data_sample":"{\"a\":[1,2],\"b\":[3],\"c\":[]}","output_data_sample":"{\"1\":\"a\",\"2\":\"a\",\"3\":\"b\"}","transformation_instruction":"Invert a JSON mapping of group -> values into value-string -> group, skipping empty lists, and return compact JSON sorted numerically by value."} {"id":"cmsx5vet500fgx3p2kba0l4ky","kind":"contributor_item","title":"Submission A0L4KY","provisional":false,"output_code":"def transform(input):\n d={}\n for l in input.splitlines():\n k,v,s=l.split(',')\n if s=='ok':d.setdefault(k,[]).append(float(v))\n return '\\n'.join(f'{k}={sum(v)/len(v):.1f}' for k,v in sorted(d.items()))","input_data_sample":"A,10,ok\nB,20,fail\nA,30,ok\nB,40,ok","output_data_sample":"A=20.0\nB=40.0","transformation_instruction":"Parse comma rows without header, keep status ok, compute average numeric value per key, and return sorted key=average lines with one decimal."} {"id":"cmsx5vet500fmx3p2v3m1xgse","kind":"contributor_item","title":"Submission M1XGSE","provisional":false,"output_code":"import csv,io\ndef transform(input):\n d={r['id']:r['value'] for r in csv.DictReader(io.StringIO(input))};return 'id,value\\n'+'\\n'.join(f'{k},{d[k]}' for k in sorted(d,key=int))","input_data_sample":"id,value\n3,c\n1,a\n2,b\n2,B","output_data_sample":"id,value\n1,a\n2,B\n3,c","transformation_instruction":"Parse CSV, keep the last row for each id, then emit CSV sorted numerically by id."} {"id":"cmsx5vet500flx3p2kohzqzs9","kind":"contributor_item","title":"Submission HZQZS9","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for l in input.splitlines():\n g,vs=l.split('|',1)\n for v in filter(None,vs.split(',')):d.setdefault(v,[]).append(g)\n return json.dumps({k:sorted(v) for k,v in sorted(d.items())},separators=(',',':'))","input_data_sample":"A|x,y,z\nB|y\nC|x,z","output_data_sample":"{\"x\":[\"A\",\"C\"],\"y\":[\"A\",\"B\"],\"z\":[\"A\",\"C\"]}","transformation_instruction":"Parse group|comma-values rows and return compact JSON mapping each value to sorted groups containing it."} {"id":"cmsx5vet500fnx3p2zp1kdued","kind":"contributor_item","title":"Submission 1KDUED","provisional":false,"output_code":"import json,statistics\ndef transform(input):\n a=json.loads(input);a.remove(min(a));a.remove(max(a));a.sort();return json.dumps({'values':a,'median':statistics.median(a)},separators=(',',':'))","input_data_sample":"[5,1,9,3,7,2]","output_data_sample":"{\"values\":[2,3,5,7],\"median\":4.0}","transformation_instruction":"Parse numeric JSON array, remove min and max values once each, then return compact JSON with remaining sorted values and their median."} {"id":"cmsx5vet500exx3p2drcjt8yo","kind":"contributor_item","title":"Submission CJT8YO","provisional":false,"output_code":"from collections import Counter\ndef transform(input):\n c=Counter()\n for l in input.splitlines():\n p=l.split()\n if len(p)>=4 and p[1]=='ERROR': c[p[2]]+=1\n return '\\n'.join(f'{k}={v}' for k,v in sorted(c.items(),key=lambda x:(-x[1],x[0])))","input_data_sample":"2026-01-01T08:00:00Z INFO api start\n2026-01-01T08:01:00Z ERROR api fail\n2026-01-01T08:02:00Z ERROR web bad\n2026-01-01T08:03:00Z ERROR api retry","output_data_sample":"api=2\nweb=1","transformation_instruction":"Parse space-separated logs, count ERROR events per service, sort by descending count then service, and return lines 'service=count'."} {"id":"cmsx5vet500f0x3p2p59mbfba","kind":"contributor_item","title":"Submission 9MBFBA","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input);seen=set();u=[]\n for x in a:\n if x not in seen:seen.add(x);u.append(x)\n s=0;c=[]\n for x in u:s+=x;c.append(s)\n return json.dumps({'values':u,'cumulative':c},separators=(',',':'))","input_data_sample":"[1,2,2,3,4,4,4,5]","output_data_sample":"{\"values\":[1,2,3,4,5],\"cumulative\":[1,3,6,10,15]}","transformation_instruction":"Parse a JSON integer array, remove duplicates while preserving first occurrence, then return compact JSON containing values and their cumulative sums."} {"id":"cmsx5vet500f2x3p20nb6c06v","kind":"contributor_item","title":"Submission B6C06V","provisional":false,"output_code":"def transform(input):\n d={}\n for l in input.splitlines():\n l=l.strip()\n if not l or l.startswith('#') or ':' not in l:continue\n k,v=l.split(':',1);d[k]=int(v)\n return '\\n'.join(f'{k}={d[k]}' for k in sorted(d))","input_data_sample":"a:1\nb:2\na:3\n#ignore\nc:4","output_data_sample":"a=3\nb=2\nc=4","transformation_instruction":"Parse key:value lines ignoring comments; for duplicate keys keep the last integer value and return sorted key=value lines."} {"id":"cmsx5vet500f1x3p21yn62b6z","kind":"contributor_item","title":"Submission N62B6Z","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n d={}\n for r in csv.DictReader(io.StringIO(input)):d.setdefault(r['user'],[]).append(r['event'])\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"user,event\nu1,login\nu2,login\nu1,click\nu1,logout\nu2,click","output_data_sample":"{\"u1\":[\"login\",\"click\",\"logout\"],\"u2\":[\"login\",\"click\"]}","transformation_instruction":"Parse CSV and build per-user ordered event histories, returning compact JSON sorted by user id."} {"id":"cmsx5vet500f6x3p2w0b0lfit","kind":"contributor_item","title":"Submission B0LFIT","provisional":false,"output_code":"import csv,io\ndef transform(input):\n a=list(csv.DictReader(io.StringIO(input)));scores=sorted({int(x['score']) for x in a},reverse=True);rank={s:1+sum(1 for x in a if int(x['score'])>s) for s in scores};a.sort(key=lambda x:(rank[int(x['score'])],x['name']));return 'name,score,rank\\n'+'\\n'.join(f\"{x['name']},{x['score']},{rank[int(x['score'])]}\" for x in a)","input_data_sample":"name,score\nAlice,90\nBob,75\nCara,90\nDan,60","output_data_sample":"name,score,rank\nAlice,90,1\nCara,90,1\nBob,75,3\nDan,60,4","transformation_instruction":"Parse CSV, assign rank by descending score with equal scores sharing a rank and gaps after ties, then return CSV sorted by rank then name."} {"id":"cmsx5vet500f5x3p287qhszvi","kind":"contributor_item","title":"Submission QHSZVI","provisional":false,"output_code":"import json\ndef transform(input):\n x=json.loads(input);r={}\n for k,v in x.items():\n if isinstance(v,dict):\n for q,z in v.items():r[f'{k}.{q}']=z\n else:r[k]=v\n return json.dumps(dict(sorted(r.items())),separators=(',',':'))","input_data_sample":"{\"a\":{\"x\":1,\"y\":2},\"b\":{\"x\":3},\"c\":4}","output_data_sample":"{\"a.x\":1,\"a.y\":2,\"b.x\":3,\"c\":4}","transformation_instruction":"Flatten a nested JSON object one level using dot-separated keys, preserving scalar top-level values, and return compact JSON with sorted keys."} {"id":"cmsx5vet500fax3p24vnuksmw","kind":"contributor_item","title":"Submission NUKSMW","provisional":false,"output_code":"import csv,io\ndef transform(input):\n d={}\n for r in csv.DictReader(io.StringIO(input)):d[r['category']]=d.get(r['category'],0)+float(r['amount'])\n return '\\n'.join(f'{k}={v:.2f}' for k,v in sorted(d.items(),key=lambda x:(-x[1],x[0])))","input_data_sample":"category,amount\nfood,10.5\ntravel,20\nfood,-2.5\ntravel,5","output_data_sample":"travel=25.00\nfood=8.00","transformation_instruction":"Parse CSV, sum amounts by category including negatives, sort categories by descending total then name, and return lines category=total with 2 decimals."} {"id":"cmsx5vet500f8x3p23qtdh8gq","kind":"contributor_item","title":"Submission TDH8GQ","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for x in json.loads(input):d.setdefault(x['k'],[]).append(x['v'])\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"[{\"k\":\"a\",\"v\":1},{\"k\":\"b\",\"v\":2},{\"k\":\"a\",\"v\":4}]","output_data_sample":"{\"a\":[1,4],\"b\":[2]}","transformation_instruction":"Parse records and pivot them into key -> list of values preserving input order, returning compact sorted-key JSON."} {"id":"cmsx5vet500fex3p2ba86mrbt","kind":"contributor_item","title":"Submission 86MRBT","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input);a.sort(key=lambda x:(x['ts'],x['id']));return json.dumps(a,separators=(',',':'))","input_data_sample":"[{\"ts\":3,\"id\":\"a\"},{\"ts\":1,\"id\":\"b\"},{\"ts\":3,\"id\":\"c\"},{\"ts\":2,\"id\":\"d\"}]","output_data_sample":"[{\"ts\":1,\"id\":\"b\"},{\"ts\":2,\"id\":\"d\"},{\"ts\":3,\"id\":\"a\"},{\"ts\":3,\"id\":\"c\"}]","transformation_instruction":"Sort JSON records by timestamp ascending and then id ascending, returning compact JSON."} {"id":"cmsx5vet500fdx3p2z07nb5sa","kind":"contributor_item","title":"Submission 7NB5SA","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for l in input.splitlines():\n if '=' not in l:continue\n k,v=l.split('=',1)\n try:d[k]=d.get(k,0)+int(v)\n except:pass\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"x=1\ny=2\nx=4\nbadline\nz=3","output_data_sample":"{\"x\":5,\"y\":2,\"z\":3}","transformation_instruction":"Parse key=value integer records, ignore malformed lines, sum repeated keys rather than overwrite, and return sorted compact JSON."} {"id":"cmsx5vet500fcx3p24q1irq7r","kind":"contributor_item","title":"Submission 1IRQ7R","provisional":false,"output_code":"import json\nfrom collections import Counter\ndef transform(input):\n c=Counter(input.split());a=sorted(c.items(),key=lambda x:(-x[1],x[0]))[:2];return json.dumps([{'word':k,'count':v} for k,v in a],separators=(',',':'))","input_data_sample":"apple apple banana\nbanana carrot apple\ncarrot carrot","output_data_sample":"[{\"word\":\"apple\",\"count\":3},{\"word\":\"carrot\",\"count\":3}]","transformation_instruction":"Tokenize whitespace-separated words, count frequencies, and return the top 2 as compact JSON objects sorted by count desc then word asc."} {"id":"cmsx5vet500fbx3p2lij7wacp","kind":"contributor_item","title":"Submission J7WACP","provisional":false,"output_code":"import json\ndef transform(input):\n x=json.loads(input)['rows'];r=[a for a in x if 'v' in a and a['v'] is not None];r.sort(key=lambda z:z['id']);return json.dumps(r,separators=(',',':'))","input_data_sample":"{\"rows\":[{\"id\":1,\"v\":null},{\"id\":2,\"v\":3},{\"id\":3},{\"id\":4,\"v\":0}]}","output_data_sample":"[{\"id\":2,\"v\":3},{\"id\":4,\"v\":0}]","transformation_instruction":"Parse JSON, keep rows where v exists and is not null, retain zero, and return compact JSON sorted by id."} {"id":"cmsx7xmlq0031kup2q2gfm86b","kind":"contributor_item","title":"Submission GFM86B","provisional":false,"output_code":"from collections import Counter\ndef transform(input):\n c=Counter()\n for l in input.splitlines():\n level,svc,_=l.split('|',2)\n if level=='ERROR': c[svc]+=1\n return '\\n'.join(f'{k}={v}' for k,v in sorted(c.items(),key=lambda x:(-x[1],x[0])))","input_data_sample":"INFO|api|start\nERROR|api|fail\nWARN|web|slow\nERROR|web|bad\nERROR|api|retry","output_data_sample":"api=2\nweb=1","transformation_instruction":"Parse pipe-delimited logs, count ERROR events by service, and return lines service=count sorted by descending count then service."} {"id":"cmsx7xmlq003kkup2ijppb38g","kind":"contributor_item","title":"Submission PPB38G","provisional":false,"output_code":"def transform(input):\n lines=[l.split() for l in input.splitlines() if l.strip()]; vocab=sorted({x for line in lines for x in line}); idx={x:i for i,x in enumerate(vocab)}\n return 'vocab='+','.join(vocab)+'\\n'+'\\n'.join(' '.join(str(idx[x]) for x in line) for line in lines)","input_data_sample":"red red blue\ngreen blue blue","output_data_sample":"vocab=blue,green,red\n2 2 0\n1 0 0","transformation_instruction":"Build an alphabetical vocabulary from all tokens and encode each input line as space-separated vocabulary indices, returning vocabulary then encoded lines."} {"id":"cmsx7xmlq002xkup23yyjgejo","kind":"contributor_item","title":"Submission YJGEJO","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n rows=list(csv.DictReader(io.StringIO(input))); ids={r['id'] for r in rows}; d={}\n for r in rows:\n p=r['parent']\n if p and p in ids: d.setdefault(p,[]).append(int(r['id']))\n return json.dumps({k:sorted(v) for k,v in sorted(d.items(),key=lambda x:int(x[0]))},separators=(',',':'))","input_data_sample":"id,parent\n1,\n2,1\n3,1\n4,2\n5,9","output_data_sample":"{\"1\":[2,3],\"2\":[4]}","transformation_instruction":"Parse parent-child CSV, ignore children whose parent id does not exist, and return compact JSON mapping each existing parent to sorted child ids."} {"id":"cmsx7xmlq002zkup2s71jqtsh","kind":"contributor_item","title":"Submission 1JQTSH","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n d={}\n for r in csv.DictReader(io.StringIO(input)):\n q=int(r['qty']); p=float(r['price']); a=d.setdefault(r['sku'],{'qty':0,'revenue':0.0}); a['qty']+=q; a['revenue']+=q*p\n for a in d.values(): a['revenue']=round(a['revenue'],2)\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"sku,qty,price\nA,2,3.5\nB,1,10\nA,3,3.5","output_data_sample":"{\"A\":{\"qty\":5,\"revenue\":17.5},\"B\":{\"qty\":1,\"revenue\":10.0}}","transformation_instruction":"Parse CSV, aggregate quantity and revenue by SKU, round revenue to 2 decimals, and return compact JSON sorted by SKU."} {"id":"cmsx7xmlq0030kup2twqqrxgt","kind":"contributor_item","title":"Submission QQRXGT","provisional":false,"output_code":"import json\ndef transform(input):\n x=json.loads(input); bad=set(x['blocked']); d={}\n for u in x['users']:\n if u['id'] in bad: continue\n d.setdefault(u['role'],[]).append(u['id'])\n return json.dumps({k:sorted(v) for k,v in sorted(d.items())},separators=(',',':'))","input_data_sample":"{\"users\":[{\"id\":1,\"role\":\"admin\"},{\"id\":2,\"role\":\"user\"},{\"id\":3,\"role\":\"admin\"}],\"blocked\":[3]}","output_data_sample":"{\"admin\":[1],\"user\":[2]}","transformation_instruction":"Parse JSON, exclude blocked user ids, group remaining ids by role, sort ids within each role, and return compact JSON sorted by role."} {"id":"cmsx7xmlq0035kup2d8xo0vo0","kind":"contributor_item","title":"Submission XO0VO0","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input); a.sort(key=lambda x:(-x['size'],x['path'])); return json.dumps(a[:2],separators=(',',':'))","input_data_sample":"[{\"path\":\"/a\",\"size\":10},{\"path\":\"/b\",\"size\":25},{\"path\":\"/c\",\"size\":25},{\"path\":\"/d\",\"size\":5}]","output_data_sample":"[{\"path\":\"/b\",\"size\":25},{\"path\":\"/c\",\"size\":25}]","transformation_instruction":"Parse JSON file records, keep the two largest files sorted by size descending then path ascending, and return compact JSON."} {"id":"cmsx7xmlq0037kup2hmj79ksu","kind":"contributor_item","title":"Submission J79KSU","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input)['rows']; r=[x for x in a if 'v' in x and x['v'] is not None]; r.sort(key=lambda x:x['id']); return json.dumps(r,separators=(',',':'))","input_data_sample":"{\"rows\":[{\"id\":1,\"v\":null},{\"id\":2,\"v\":3},{\"id\":3},{\"id\":4,\"v\":0}]}","output_data_sample":"[{\"id\":2,\"v\":3},{\"id\":4,\"v\":0}]","transformation_instruction":"Parse JSON rows, keep those where v exists and is not null while preserving zero, sort by id, and return compact JSON."} {"id":"cmsx7xmlq0034kup2f17zw82i","kind":"contributor_item","title":"Submission 7ZW82I","provisional":false,"output_code":"import csv,io\ndef transform(input):\n a=list(csv.DictReader(io.StringIO(input))); scores=sorted({int(r['score']) for r in a},reverse=True); rank={s:1+sum(1 for r in a if int(r['score'])>s) for s in scores}; a.sort(key=lambda r:(rank[int(r['score'])],r['name']))\n return 'name,score,rank\\n'+'\\n'.join(f\"{r['name']},{r['score']},{rank[int(r['score'])]}\" for r in a)","input_data_sample":"name,score\nAda,90\nBob,75\nCara,90\nDan,60","output_data_sample":"name,score,rank\nAda,90,1\nCara,90,1\nBob,75,3\nDan,60,4","transformation_instruction":"Parse CSV, assign competition ranks by score descending with gaps after ties, then return CSV sorted by rank then name."} {"id":"cmsx7xmlq0038kup23d8gvfau","kind":"contributor_item","title":"Submission 8GVFAU","provisional":false,"output_code":"import csv,io\ndef transform(input):\n vals=[]\n for r in csv.DictReader(io.StringIO(input)):\n try: vals.append((r['date'],float(r['value'])))\n except: pass\n out=['date,delta']\n for i in range(1,len(vals)): out.append(f'{vals[i][0]},{vals[i][1]-vals[i-1][1]:g}')\n return '\\n'.join(out)","input_data_sample":"date,value\n2026-01-01,10\n2026-01-02,bad\n2026-01-03,15\n2026-01-04,20","output_data_sample":"date,delta\n2026-01-03,5\n2026-01-04,5","transformation_instruction":"Parse CSV, skip rows whose value is not numeric, compute deltas between consecutive valid readings, and return CSV with date,delta."} {"id":"cmsx7xmlq003dkup21e4bdi5w","kind":"contributor_item","title":"Submission 4BDI5W","provisional":false,"output_code":"import json,statistics\ndef transform(input):\n a=json.loads(input)['values']; a.remove(min(a)); a.remove(max(a)); a.sort(); return json.dumps({'values':a,'median':statistics.median(a)},separators=(',',':'))","input_data_sample":"{\"values\":[5,1,9,3,7,2]}","output_data_sample":"{\"values\":[2,3,5,7],\"median\":4.0}","transformation_instruction":"Parse numeric JSON array, remove one occurrence each of the minimum and maximum, sort remaining values, and return compact JSON with values plus median."} {"id":"cmsx7xmlq003ckup2c2l3jckf","kind":"contributor_item","title":"Submission L3JCKF","provisional":false,"output_code":"import csv,io\ndef transform(input):\n d={r['id']:r['value'] for r in csv.DictReader(io.StringIO(input))}\n return 'id,value\\n'+'\\n'.join(f'{k},{d[k]}' for k in sorted(d,key=int))","input_data_sample":"id,value\n3,c\n1,a\n2,b\n2,B","output_data_sample":"id,value\n1,a\n2,B\n3,c","transformation_instruction":"Parse CSV, keep the last row for each id, then emit CSV sorted numerically by id."} {"id":"cmsx7xmlq003ikup2rwc7im5c","kind":"contributor_item","title":"Submission C7IM5C","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for e in json.loads(input)['events']:\n a=d.setdefault(e['type'],{'count':0,'total':0}); a['count']+=1; a['total']+=e['value']\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"{\"events\":[{\"type\":\"x\",\"value\":3},{\"type\":\"y\",\"value\":2},{\"type\":\"x\",\"value\":5}]}","output_data_sample":"{\"x\":{\"count\":2,\"total\":8},\"y\":{\"count\":1,\"total\":2}}","transformation_instruction":"Group JSON events by type and return compact JSON with count and total value per type, sorted by type."} {"id":"cmsx7xmlq003jkup2cy3ch8ch","kind":"contributor_item","title":"Submission 3CH8CH","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n d={}\n for r in csv.DictReader(io.StringIO(input)):\n a=d.setdefault(r['host'],{'total':0,'errors':0}); a['total']+=1; a['errors']+=int(r['status'])>=500\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"host,status\napi,200\nweb,500\napi,503\nweb,200\napi,200","output_data_sample":"{\"api\":{\"total\":3,\"errors\":1},\"web\":{\"total\":2,\"errors\":1}}","transformation_instruction":"Parse CSV and return compact JSON per host with total request count and error count where status >= 500, sorted by host."} {"id":"cmsx7xmlq003lkup29pmfsxy4","kind":"contributor_item","title":"Submission MFSXY4","provisional":false,"output_code":"import json\ndef transform(input):\n a=[x for x in json.loads(input)['records'] if x['score']>=7]; a.sort(key=lambda x:(-x['score'],x['id'])); return json.dumps([x['id'] for x in a],separators=(',',':'))","input_data_sample":"{\"records\":[{\"id\":1,\"score\":9},{\"id\":2,\"score\":4},{\"id\":3,\"score\":9},{\"id\":4,\"score\":7}]}","output_data_sample":"[1,3,4]","transformation_instruction":"Parse JSON records, keep those with score at least 7, sort by score descending then id ascending, and return compact JSON array of ids."} {"id":"cmsx7xmlp002skup2eelgf62w","kind":"contributor_item","title":"Submission LGF62W","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n d={}\n for r in csv.DictReader(io.StringIO(input)):\n if r['status']!='ok': continue\n d[r['region']]=d.get(r['region'],0)+int(r['amount'])\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"user,region,amount,status\nu1,us,10,ok\nu2,eu,20,fail\nu3,us,15,ok\nu4,eu,5,ok","output_data_sample":"{\"eu\":5,\"us\":25}","transformation_instruction":"Parse CSV, keep only status=ok rows, aggregate amount by region, and return compact JSON sorted by region."} {"id":"cmsx7xmlp002vkup2ggwi1n0g","kind":"contributor_item","title":"Submission WI1N0G","provisional":false,"output_code":"import json,csv,io\ndef transform(input):\n rows=[]\n for o in json.loads(input):\n for t in o['tags']: rows.append((t,o['name']))\n rows.sort()\n s=io.StringIO(); w=csv.writer(s,lineterminator='\\n'); w.writerow(['tag','name']); w.writerows(rows)\n return s.getvalue().strip()","input_data_sample":"[{\"name\":\"A\",\"tags\":[\"x\",\"y\"]},{\"name\":\"B\",\"tags\":[\"y\"]},{\"name\":\"C\",\"tags\":[]}]","output_data_sample":"tag,name\nx,A\ny,A\ny,B","transformation_instruction":"Expand each object into one row per tag, omit empty tag lists, and return CSV sorted by tag then name."} {"id":"cmsx7xmlq003akup2olap7acy","kind":"contributor_item","title":"Submission AP7ACY","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input)['items']; total=0\n for x in a: x['line_total']=x['price']*x['qty']; total+=x['line_total']\n a.append({'grand_total':total}); return json.dumps(a,separators=(',',':'))","input_data_sample":"{\"items\":[{\"name\":\"a\",\"price\":10,\"qty\":2},{\"name\":\"b\",\"price\":5,\"qty\":3}]}","output_data_sample":"[{\"name\":\"a\",\"price\":10,\"qty\":2,\"line_total\":20},{\"name\":\"b\",\"price\":5,\"qty\":3,\"line_total\":15},{\"grand_total\":35}]","transformation_instruction":"Parse JSON items, add line_total=price*qty to each item, append a final grand_total object, and return compact JSON."} {"id":"cmsx7xmlq002ykup21bwtdpcg","kind":"contributor_item","title":"Submission WTDPCG","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input)['matrix']; r=[list(x) for x in zip(*a[::-1])] if a else []\n return json.dumps({'matrix':r},separators=(',',':'))","input_data_sample":"{\"matrix\":[[1,2,3],[4,5,6],[7,8,9]]}","output_data_sample":"{\"matrix\":[[7,4,1],[8,5,2],[9,6,3]]}","transformation_instruction":"Parse JSON matrix, rotate it 90 degrees clockwise, and return compact JSON under key matrix."} {"id":"cmsx7xmlp002tkup23pqxgsac","kind":"contributor_item","title":"Submission QXGSAC","provisional":false,"output_code":"import json\ndef transform(input):\n x=json.loads(input)['orders']\n a=[o for o in x if o['paid']]\n a.sort(key=lambda o:(-o['total'],o['id']))\n return json.dumps([o['id'] for o in a],separators=(',',':'))","input_data_sample":"{\"orders\":[{\"id\":1,\"total\":25,\"paid\":true},{\"id\":2,\"total\":40,\"paid\":false},{\"id\":3,\"total\":15,\"paid\":true}]}","output_data_sample":"[1,3]","transformation_instruction":"Parse JSON orders, keep paid orders, sort by total descending then id ascending, and return compact JSON array of ids only."} {"id":"cmsx7xmlp002ukup28yvpjv6e","kind":"contributor_item","title":"Submission VPJV6E","provisional":false,"output_code":"def transform(input):\n d={}\n for l in input.splitlines():\n l=l.strip()\n if not l or l.startswith('#') or '=' not in l: continue\n k,v=l.split('=',1); d[k]=d.get(k,0)+int(v)\n return '\\n'.join(f'{k}={d[k]}' for k in sorted(d))","input_data_sample":"alpha=1\nbeta=2\nalpha=4\n# ignored\ngamma=3","output_data_sample":"alpha=5\nbeta=2\ngamma=3","transformation_instruction":"Parse key=value lines ignoring comments and blanks, sum repeated integer keys, and return sorted key=value lines."} {"id":"cmsx7xmlq002wkup2rvgwm2oi","kind":"contributor_item","title":"Submission GWM2OI","provisional":false,"output_code":"import json\nfrom datetime import datetime\ndef transform(input):\n d={}\n for l in input.splitlines():\n t,s,v=l.split(','); h=datetime.fromisoformat(t.replace('Z','+00:00')).strftime('%Y-%m-%dT%H'); k=h+'|'+s; d[k]=d.get(k,0)+int(v)\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"2026-01-01T10:15:00Z,api,5\n2026-01-01T10:45:00Z,api,7\n2026-01-01T11:10:00Z,web,3","output_data_sample":"{\"2026-01-01T10|api\":12,\"2026-01-01T11|web\":3}","transformation_instruction":"Parse timestamp,service,value rows, aggregate values by UTC hour and service, and return compact JSON with keys hour|service sorted lexicographically."} {"id":"cmsx7xmlq0033kup2tms4zwjm","kind":"contributor_item","title":"Submission S4ZWJM","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for l in input.splitlines():\n g,vals=l.split('|',1)\n for v in filter(None,vals.split(',')): d.setdefault(v,[]).append(g)\n return json.dumps({k:sorted(v) for k,v in sorted(d.items())},separators=(',',':'))","input_data_sample":"a|x,y,z\nb|y\nc|x,z","output_data_sample":"{\"x\":[\"a\",\"c\"],\"y\":[\"a\",\"b\"],\"z\":[\"a\",\"c\"]}","transformation_instruction":"Parse group|comma-values rows and invert them into value -> sorted groups, returning compact JSON sorted by value."} {"id":"cmsx7xmlq0032kup22pgegcw1","kind":"contributor_item","title":"Submission GEGCW1","provisional":false,"output_code":"import json\ndef transform(input):\n a=json.loads(input); prev=None\n for x in a:\n x['previous_v']=prev; x['delta']=None if prev is None else x['v']-prev; prev=x['v']\n return json.dumps(a,separators=(',',':'))","input_data_sample":"[{\"id\":1,\"v\":10},{\"id\":2,\"v\":15},{\"id\":3,\"v\":12}]","output_data_sample":"[{\"id\":1,\"v\":10,\"previous_v\":null,\"delta\":null},{\"id\":2,\"v\":15,\"previous_v\":10,\"delta\":5},{\"id\":3,\"v\":12,\"previous_v\":15,\"delta\":-3}]","transformation_instruction":"Parse JSON records and add previous_v plus delta relative to the preceding record; first record uses nulls. Return compact JSON."} {"id":"cmsx7xmlq0036kup26xe0bqpu","kind":"contributor_item","title":"Submission E0BQPU","provisional":false,"output_code":"def transform(input):\n d={}\n for l in input.splitlines():\n k,v,s=l.split(',')\n if s=='ok': d.setdefault(k,[]).append(float(v))\n return '\\n'.join(f'{k}={sum(v)/len(v):.1f}' for k,v in sorted(d.items()))","input_data_sample":"a,1,ok\nb,2,fail\na,3,ok\nb,5,ok","output_data_sample":"a=2.0\nb=5.0","transformation_instruction":"Parse key,value,status rows without header, keep status ok, compute average value per key, and return sorted key=average lines with one decimal."} {"id":"cmsx7xmlq003bkup2xqj9497y","kind":"contributor_item","title":"Submission J9497Y","provisional":false,"output_code":"import json\ndef transform(input):\n x=json.loads(input)['groups']; r={str(v):k for k,vals in x.items() for v in vals}; return json.dumps(dict(sorted(r.items(),key=lambda p:int(p[0]))),separators=(',',':'))","input_data_sample":"{\"groups\":{\"a\":[1,2],\"b\":[3],\"c\":[]}}","output_data_sample":"{\"1\":\"a\",\"2\":\"a\",\"3\":\"b\"}","transformation_instruction":"Invert JSON mapping group -> integer list into integer-string -> group, skip empty lists, and return compact JSON sorted numerically by key."} {"id":"cmsx7xmlq003fkup2t7m6k1l9","kind":"contributor_item","title":"Submission M6K1L9","provisional":false,"output_code":"import json\ndef transform(input):\n d={}\n for x in json.loads(input)['rows']: d.setdefault(x['k'],[]).append(x['v'])\n return json.dumps(dict(sorted(d.items())),separators=(',',':'))","input_data_sample":"{\"rows\":[{\"k\":\"a\",\"v\":1},{\"k\":\"b\",\"v\":2},{\"k\":\"a\",\"v\":4}]}","output_data_sample":"{\"a\":[1,4],\"b\":[2]}","transformation_instruction":"Pivot JSON records into key -> list of values preserving original order, and return compact JSON sorted by key."} {"id":"cmsx7xmlq003ekup2tjz7m4ck","kind":"contributor_item","title":"Submission Z7M4CK","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n r=csv.DictReader(io.StringIO(input)); d={k:0 for k in r.fieldnames}\n for row in r:\n for k,v in row.items(): d[k]+=bool(v)\n return json.dumps(d,separators=(',',':'))","input_data_sample":"a,b,c\n1,2,3\n4,,6\n7,8,","output_data_sample":"{\"a\":3,\"b\":2,\"c\":2}","transformation_instruction":"Parse CSV and return compact JSON containing the count of non-empty data cells per column."} {"id":"cmsx7xmlq003hkup2o857f2ne","kind":"contributor_item","title":"Submission 57F2NE","provisional":false,"output_code":"import csv,io,json\ndef transform(input):\n a=sorted((int(r['start']),int(r['end'])) for r in csv.DictReader(io.StringIO(input))); m=[]\n for s,e in a:\n if not m or s>m[-1][1]: m.append([s,e])\n else: m[-1][1]=max(m[-1][1],e)\n return json.dumps(m,separators=(',',':'))","input_data_sample":"id,start,end\n1,1,4\n2,3,6\n3,8,10","output_data_sample":"[[1,6],[8,10]]","transformation_instruction":"Parse intervals from CSV, merge overlaps, and return compact JSON array of merged [start,end] pairs."} {"id":"cmsx7xmlq003gkup20j2cuwcz","kind":"contributor_item","title":"Submission 2CUWCZ","provisional":false,"output_code":"import json\ndef transform(input):\n r={}\n for l in input.splitlines():\n k,v=[x.strip() for x in l.split(':',1)]\n if v=='true': z=True\n elif v=='false': z=False\n elif v=='null': z=None\n else:\n try: z=int(v)\n except: z=v\n r[k]=z\n return json.dumps(r,separators=(',',':'))","input_data_sample":"alpha: 1\nbeta: true\ngamma: null\ndelta: text","output_data_sample":"{\"alpha\":1,\"beta\":true,\"gamma\":null,\"delta\":\"text\"}","transformation_instruction":"Parse simple key: value lines and coerce integers, true/false, and null to native JSON types; leave other values as strings."} {"id":"cmsx7xmlq0039kup2rn0o76ob","kind":"contributor_item","title":"Submission 0O76OB","provisional":false,"output_code":"import json\ndef transform(input):\n x=json.loads(input); r={}\n for k,v in x.items():\n if isinstance(v,dict):\n for q,z in v.items(): r[f'{k}.{q}']=z\n else: r[k]=v\n return json.dumps(dict(sorted(r.items())),separators=(',',':'))","input_data_sample":"{\"a\":{\"x\":1,\"y\":2},\"b\":{\"z\":3},\"c\":4}","output_data_sample":"{\"a.x\":1,\"a.y\":2,\"b.z\":3,\"c\":4}","transformation_instruction":"Flatten a JSON object one level using dot-separated keys, preserve scalar top-level values, and return compact JSON with sorted keys."} {"id":"cmsx8ire80047kup25nneoaqq","kind":"contributor_item","title":"Submission NEOAQQ","provisional":false,"output_code":"import json\n\ndef transform(text):\n result = {}\n section = None\n for line in text.strip().split('\\n'):\n line = line.strip()\n if not line or line.startswith('#'):\n continue\n if line.startswith('[') and line.endswith(']'):\n section = line[1:-1]\n result[section] = {}\n elif '=' in line and section:\n k, v = line.split('=', 1)\n result[section][k.strip()] = v.strip()\n return json.dumps(result)\n","input_data_sample":"[server]\nhost=localhost\nport=8080\n\n[db]\nname=voicemart\nuser=admin","output_data_sample":"{\"server\": {\"host\": \"localhost\", \"port\": \"8080\"}, \"db\": {\"name\": \"voicemart\", \"user\": \"admin\"}}","transformation_instruction":"Convert an INI-style config text (sections in [brackets], key=value lines) into a nested JSON object."} {"id":"cmsx8ire80049kup254u2x8av","kind":"contributor_item","title":"Submission U2X8AV","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n result = {row['key']: row['value'] for row in reader}\n return json.dumps(result)\n","input_data_sample":"key,value\nhostname,voicemart-01\nregion,us-east\ntier,production","output_data_sample":"{\"hostname\": \"voicemart-01\", \"region\": \"us-east\", \"tier\": \"production\"}","transformation_instruction":"Merge two equal-length CSV columns (keys, values) given as a single CSV with headers 'key,value' into a single-line JSON object."} {"id":"cmsx8ire8004ckup2fyo5m06s","kind":"contributor_item","title":"Submission O5M06S","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n credits = debits = 0.0\n for row in reader:\n amt = float(row['amount'])\n if amt >= 0:\n credits += amt\n else:\n debits += amt\n return json.dumps({\n \"total_credits\": round(credits, 2),\n \"total_debits\": round(debits, 2),\n \"net_balance\": round(credits + debits, 2)\n })\n","input_data_sample":"date,amount\n2026-01-01,150.00\n2026-01-02,-42.50\n2026-01-03,-10.00\n2026-01-04,300.25","output_data_sample":"{\"total_credits\": 450.25, \"total_debits\": -52.5, \"net_balance\": 397.75}","transformation_instruction":"Given a CSV of transactions (date,amount) where amount can be negative, output a JSON object with total_credits, total_debits, and net_balance (all rounded to 2 decimals)."} {"id":"cmsx8ire8004akup23b5qerye","kind":"contributor_item","title":"Submission 5QERYE","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n for d in data:\n d['tags'] = [t.strip() for t in d['tags'].split(',') if t.strip()]\n return json.dumps(data)\n","input_data_sample":"[{\"id\": 1, \"tags\": \"urgent, backend, bug\"}, {\"id\": 2, \"tags\": \"frontend\"}]","output_data_sample":"[{\"id\": 1, \"tags\": [\"urgent\", \"backend\", \"bug\"]}, {\"id\": 2, \"tags\": [\"frontend\"]}]","transformation_instruction":"Given a JSON array of objects with a 'tags' field (comma-separated string), split tags into a list and return the transformed JSON array."} {"id":"cmsx8ire8004hkup2kopoufhq","kind":"contributor_item","title":"Submission POUFHQ","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n result = defaultdict(list)\n for l in lines:\n k, v = l.split('=', 1)\n result[k.strip()].append(v.strip())\n return json.dumps(dict(result))\n","input_data_sample":"tag=urgent\ntag=backend\nowner=alice\ntag=bug\nowner=bob","output_data_sample":"{\"tag\": [\"urgent\", \"backend\", \"bug\"], \"owner\": [\"alice\", \"bob\"]}","transformation_instruction":"Given lines of 'key=value' pairs where some keys repeat, collect all values for each key into a JSON object mapping key to a list of values."} {"id":"cmsx8ire8004ikup255gworub","kind":"contributor_item","title":"Submission GWORUB","provisional":false,"output_code":"import csv, io, json\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n result = []\n for row in reader:\n scores = [float(row['math']), float(row['science']), float(row['english'])]\n avg = round(sum(scores) / len(scores), 1)\n result.append({\"name\": row['name'], \"average\": avg})\n return json.dumps(result)\n","input_data_sample":"name,math,science,english\nAlice,88,92,79\nBen,65,70,80","output_data_sample":"[{\"name\": \"Alice\", \"average\": 86.3}, {\"name\": \"Ben\", \"average\": 71.7}]","transformation_instruction":"Given a CSV of student scores across subjects (name,math,science,english), compute each student's average score rounded to 1 decimal and output as JSON array of {name, average}."} {"id":"cmsx8ire8004kkup2f9xsd0kf","kind":"contributor_item","title":"Submission XSD0KF","provisional":false,"output_code":"import csv, io, json\n\ndef infer_type(values):\n def is_int(v):\n try:\n int(v)\n return True\n except ValueError:\n return False\n def is_float(v):\n try:\n float(v)\n return True\n except ValueError:\n return False\n if all(is_int(v) for v in values):\n return \"int\"\n if all(is_float(v) for v in values):\n return \"float\"\n return \"str\"\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = list(reader)\n header = rows[0]\n cols = list(zip(*rows[1:]))\n types = {header[i]: infer_type(cols[i]) for i in range(len(header))}\n return json.dumps(types)\n","input_data_sample":"id,price,label\n1,9.99,shoe\n2,14.50,hat\n3,3.00,sock","output_data_sample":"{\"id\": \"int\", \"price\": \"float\", \"label\": \"str\"}","transformation_instruction":"Given a plain CSV, output a JSON object reporting each column's name and its inferred type ('int', 'float', or 'str') based on scanning all rows."} {"id":"cmsx8ire9004nkup287dy24d5","kind":"contributor_item","title":"Submission DY24D5","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n pattern = r'[\\w.+-]+@[\\w-]+\\.[\\w.-]+'\n found = re.findall(pattern, text)\n seen = []\n for f in found:\n if f not in seen:\n seen.append(f)\n return json.dumps(seen)\n","input_data_sample":"Contact alice@example.com or bob@example.org for details. Cc: alice@example.com always.","output_data_sample":"[\"alice@example.com\", \"bob@example.org\"]","transformation_instruction":"Given a block of text containing email addresses scattered among other words, extract all valid email addresses into a JSON array, preserving order and removing duplicates."} {"id":"cmsx8ire9004okup2atgwmt0c","kind":"contributor_item","title":"Submission GWMT0C","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n subtotal = sum(item['price'] * item['qty'] for item in data['items'])\n tax = round(subtotal * 0.08, 2)\n subtotal = round(subtotal, 2)\n total = round(subtotal + tax, 2)\n return json.dumps({\"subtotal\": subtotal, \"tax\": tax, \"total\": total})\n","input_data_sample":"{\"items\": [{\"name\": \"Book\", \"price\": 12.99, \"qty\": 2}, {\"name\": \"Pen\", \"price\": 1.50, \"qty\": 3}]}","output_data_sample":"{\"subtotal\": 30.48, \"tax\": 2.44, \"total\": 32.92}","transformation_instruction":"Given a JSON object representing a shopping cart ({items: [{name, price, qty}]}), compute the subtotal, a flat 8% tax, and the total, each rounded to 2 decimals, and return as JSON."} {"id":"cmsx8ire9004mkup2k37b7use","kind":"contributor_item","title":"Submission 7B7USE","provisional":false,"output_code":"import json\nfrom collections import defaultdict\n\ndef transform(text):\n data = json.loads(text)\n totals = defaultdict(int)\n for d in data:\n totals[d['sku']] += d['quantity']\n return json.dumps(dict(totals))\n","input_data_sample":"[{\"sku\": \"A1\", \"warehouse\": \"east\", \"quantity\": 10}, {\"sku\": \"A1\", \"warehouse\": \"west\", \"quantity\": 5}, {\"sku\": \"B2\", \"warehouse\": \"east\", \"quantity\": 7}]","output_data_sample":"{\"A1\": 15, \"B2\": 7}","transformation_instruction":"Given a JSON array of {sku, warehouse, quantity} records, produce a JSON object mapping sku to total quantity summed across all warehouses."} {"id":"cmsx8ire8004ekup2zwiyc1dk","kind":"contributor_item","title":"Submission IYC1DK","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n pairs = sorted(data.items(), key=lambda kv: kv[1])\n return json.dumps([list(p) for p in pairs])\n","input_data_sample":"{\"Widget\": 19.99, \"Gadget\": 9.99, \"Gizmo\": 29.50}","output_data_sample":"[[\"Gadget\", 9.99], [\"Widget\", 19.99], [\"Gizmo\", 29.5]]","transformation_instruction":"Given a JSON object mapping product names to prices, return a JSON array of [name, price] pairs sorted by price ascending."} {"id":"cmsx8ire8003nkup2c8k1gz1e","kind":"contributor_item","title":"Submission K1GZ1E","provisional":false,"output_code":"import json\n\ndef flatten(d, prefix=''):\n out = {}\n for k, v in d.items():\n key = f\"{prefix}.{k}\" if prefix else k\n if isinstance(v, dict):\n out.update(flatten(v, key))\n else:\n out[key] = v\n return out\n\ndef transform(text):\n data = json.loads(text)\n return json.dumps(flatten(data))\n","input_data_sample":"{\"user\": {\"name\": \"Dan\", \"address\": {\"city\": \"Austin\", \"zip\": \"78701\"}}, \"active\": true}","output_data_sample":"{\"user.name\": \"Dan\", \"user.address.city\": \"Austin\", \"user.address.zip\": \"78701\", \"active\": true}","transformation_instruction":"Flatten a nested JSON object into a single-level dict with dot-separated keys."} {"id":"cmsx8ire8003rkup248o1zk5t","kind":"contributor_item","title":"Submission O1ZK5T","provisional":false,"output_code":"import csv, io, json\nfrom collections import defaultdict\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = list(reader)[1:]\n sums = defaultdict(float)\n for cat, amt in rows:\n sums[cat] += float(amt)\n return json.dumps({k: round(v, 2) for k, v in sums.items()})\n","input_data_sample":"category,amount\nfood,12.50\ntravel,45.00\nfood,7.25\nutilities,60.00\ntravel,15.75","output_data_sample":"{\"food\": 19.75, \"travel\": 60.75, \"utilities\": 60.0}","transformation_instruction":"Group a CSV of (category,amount) rows by category and output JSON mapping category to the sum of amounts."} {"id":"cmsx8ire8003vkup2m8q4yqmo","kind":"contributor_item","title":"Submission Q4YQMO","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = list(reader)\n header = rows[0]\n age_idx = header.index('age')\n filtered = [r for r in rows[1:] if int(r[age_idx]) >= 18]\n out = io.StringIO()\n writer = csv.writer(out, lineterminator='\\n')\n writer.writerow(header)\n writer.writerows(filtered)\n return out.getvalue().strip()\n","input_data_sample":"name,age\nTom,15\nJerry,22\nSpike,17\nTyke,19","output_data_sample":"name,age\nJerry,22\nTyke,19","transformation_instruction":"Filter rows of a CSV to only those where the 'age' column is 18 or older, keeping the header, and output as CSV."} {"id":"cmsx8ire8003ukup2inh4mljl","kind":"contributor_item","title":"Submission H4MLJL","provisional":false,"output_code":"import json, csv, io\nfrom collections import defaultdict\n\ndef transform(text):\n data = json.loads(text)\n regions = sorted(set(d['region'] for d in data))\n products = sorted(set(d['product'] for d in data))\n table = defaultdict(lambda: defaultdict(int))\n for d in data:\n table[d['region']][d['product']] += d['sales']\n out = io.StringIO()\n writer = csv.writer(out, lineterminator='\\n')\n writer.writerow(['region'] + products)\n for r in regions:\n writer.writerow([r] + [table[r][p] for p in products])\n return out.getvalue().strip()\n","input_data_sample":"[{\"region\": \"East\", \"product\": \"Widget\", \"sales\": 100}, {\"region\": \"East\", \"product\": \"Gadget\", \"sales\": 50}, {\"region\": \"West\", \"product\": \"Widget\", \"sales\": 75}]","output_data_sample":"region,Gadget,Widget\nEast,50,100\nWest,0,75","transformation_instruction":"Convert a JSON array of objects into a pivoted CSV: rows are unique 'region' values, columns are unique 'product' values, cells are 'sales' totals."} {"id":"cmsx8ire80041kup2odbl1uzu","kind":"contributor_item","title":"Submission BL1UZU","provisional":false,"output_code":"import json\nfrom urllib.parse import urlparse, parse_qs\n\ndef transform(text):\n p = urlparse(text.strip())\n query = {k: v[0] if len(v) == 1 else v for k, v in parse_qs(p.query).items()}\n return json.dumps({\n \"scheme\": p.scheme,\n \"netloc\": p.netloc,\n \"path\": p.path,\n \"query\": query\n })\n","input_data_sample":"https://shop.example.com/products/42?color=red&size=M","output_data_sample":"{\"scheme\": \"https\", \"netloc\": \"shop.example.com\", \"path\": \"/products/42\", \"query\": {\"color\": \"red\", \"size\": \"M\"}}","transformation_instruction":"Parse a full URL into its components (scheme, netloc, path, query params as a JSON object) and return as JSON."} {"id":"cmsx8ire80045kup28o59hlu0","kind":"contributor_item","title":"Submission 59HLU0","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n rows = []\n for l in lines:\n fields = {}\n for pair in l.split(';'):\n k, v = pair.split(':', 1)\n fields[k.strip()] = v.strip()\n rows.append(fields)\n return json.dumps(rows)\n","input_data_sample":"name:Alice;age:30;city:Reno\nname:Bob;age:41;city:Provo","output_data_sample":"[{\"name\": \"Alice\", \"age\": \"30\", \"city\": \"Reno\"}, {\"name\": \"Bob\", \"age\": \"41\", \"city\": \"Provo\"}]","transformation_instruction":"Convert semicolon-separated key:value pairs on each line into a JSON array of objects."} {"id":"cmsx8ire80048kup2dvselwaj","kind":"contributor_item","title":"Submission SELWAJ","provisional":false,"output_code":"import json\n\ndef transform(text):\n nums = json.loads(text)\n return json.dumps({\n \"min\": min(nums),\n \"max\": max(nums),\n \"mean\": round(sum(nums) / len(nums), 2),\n \"count\": len(nums)\n })\n","input_data_sample":"[4, 8, 15, 16, 23, 42]","output_data_sample":"{\"min\": 4, \"max\": 42, \"mean\": 18.0, \"count\": 6}","transformation_instruction":"Given a JSON array of numbers, return a JSON object with min, max, mean (rounded to 2 decimals), and count."} {"id":"cmsx8ire8003pkup2dd530e6r","kind":"contributor_item","title":"Submission 530E6R","provisional":false,"output_code":"import json, re\nfrom collections import Counter\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n levels = []\n for l in lines:\n m = re.match(r'\\[(\\w+)\\]', l)\n if m:\n levels.append(m.group(1))\n return json.dumps(dict(Counter(levels)))\n","input_data_sample":"[INFO] server started\n[ERROR] connection failed\n[INFO] retrying\n[WARN] slow response\n[ERROR] timeout","output_data_sample":"{\"INFO\": 2, \"ERROR\": 2, \"WARN\": 1}","transformation_instruction":"Parse a block of log lines like '[LEVEL] message' and return a JSON object counting occurrences of each level."} {"id":"cmsx8ire8003skup287b1cifu","kind":"contributor_item","title":"Submission B1CIFU","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n words = json.loads(text)\n counts = Counter(w.lower() for w in words)\n return json.dumps(dict(counts))\n","input_data_sample":"[\"Apple\", \"banana\", \"apple\", \"Cherry\", \"banana\", \"apple\"]","output_data_sample":"{\"apple\": 3, \"banana\": 2, \"cherry\": 1}","transformation_instruction":"Convert a JSON array of word strings into a JSON object mapping each unique word (lowercased) to its frequency count."} {"id":"cmsx8ire8003qkup2y46w1tql","kind":"contributor_item","title":"Submission 6W1TQL","provisional":false,"output_code":"import json\n\ndef transform(text):\n lines = [l for l in text.split('\\n') if l.strip()]\n rows = []\n for l in lines:\n name = l[0:10].strip()\n age = l[10:15].strip()\n city = l[15:25].strip()\n rows.append({\"name\": name, \"age\": int(age), \"city\": city})\n return json.dumps(rows)\n","input_data_sample":"Alice 30 Chicago \nBob 45 Denver \nCara 27 Miami ","output_data_sample":"[{\"name\": \"Alice\", \"age\": 30, \"city\": \"Chicago\"}, {\"name\": \"Bob\", \"age\": 45, \"city\": \"Denver\"}, {\"name\": \"Cara\", \"age\": 27, \"city\": \"Miami\"}]","transformation_instruction":"Convert a fixed-width text table (columns: name 10 chars, age 5 chars, city 10 chars) into JSON array of objects."} {"id":"cmsx8ire8003xkup2nuorsv6f","kind":"contributor_item","title":"Submission ORSV6F","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = list(reader)\n header, body = rows[0], rows[1:]\n seen = set()\n unique = []\n for r in body:\n key = tuple(r)\n if key not in seen:\n seen.add(key)\n unique.append(r)\n out = io.StringIO()\n writer = csv.writer(out, lineterminator='\\n')\n writer.writerow(header)\n writer.writerows(unique)\n return out.getvalue().strip()\n","input_data_sample":"sku,qty\nA1,5\nA2,3\nA1,5\nA3,7\nA2,3","output_data_sample":"sku,qty\nA1,5\nA2,3\nA3,7","transformation_instruction":"Remove duplicate rows from a CSV (matching on all columns), keeping only the first occurrence, output as CSV."} {"id":"cmsx8ire8003ykup24iww1cge","kind":"contributor_item","title":"Submission WW1CGE","provisional":false,"output_code":"import json, re\n\ndef to_snake(name):\n return re.sub(r'(?<!^)(?=[A-Z])', '_', name).lower()\n\ndef transform(text):\n data = json.loads(text)\n return json.dumps({to_snake(k): v for k, v in data.items()})\n","input_data_sample":"{\"firstName\": \"Ann\", \"lastLoginTime\": \"2026-01-01T00:00:00Z\", \"isActive\": true}","output_data_sample":"{\"first_name\": \"Ann\", \"last_login_time\": \"2026-01-01T00:00:00Z\", \"is_active\": true}","transformation_instruction":"Convert JSON object keys from camelCase to snake_case, preserving values, for a flat JSON object."} {"id":"cmsx8ire80046kup212siekac","kind":"contributor_item","title":"Submission SIEKAC","provisional":false,"output_code":"import json, re\n\ndef transform(text):\n lines = [l.strip() for l in text.strip().split('\\n') if l.strip()]\n name, street, last = lines[0], lines[1], lines[2]\n m = re.match(r'(.+),\\s*(\\w{2})\\s+(\\d{5})', last)\n city, state, zip_code = m.group(1), m.group(2), m.group(3)\n return json.dumps({\n \"name\": name, \"street\": street,\n \"city\": city, \"state\": state, \"zip\": zip_code\n })\n","input_data_sample":"Jane Doe\n123 Maple St\nSpringfield, IL 62704","output_data_sample":"{\"name\": \"Jane Doe\", \"street\": \"123 Maple St\", \"city\": \"Springfield\", \"state\": \"IL\", \"zip\": \"62704\"}","transformation_instruction":"Parse a multi-line US-style address block (name, street, 'city, state zip') into a structured JSON object."} {"id":"cmsx8ire80043kup2ix0cl37b","kind":"contributor_item","title":"Submission 0CL37B","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n result = []\n for l in lines:\n dt = datetime.fromisoformat(l.replace('Z', '+00:00'))\n if 9 <= dt.hour < 17:\n result.append(l)\n return json.dumps(result)\n","input_data_sample":"2026-04-01T08:00:00Z\n2026-04-01T10:15:00Z\n2026-04-01T16:59:00Z\n2026-04-01T18:00:00Z","output_data_sample":"[\"2026-04-01T10:15:00Z\", \"2026-04-01T16:59:00Z\"]","transformation_instruction":"Given a block of ISO 8601 timestamps (one per line), filter to only those between 09:00 and 17:00 UTC and return as a JSON array of the original strings."} {"id":"cmsx8ire8004fkup2ol72svnh","kind":"contributor_item","title":"Submission 72SVNH","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.DictReader(io.StringIO(text.strip()))\n rows = []\n for row in reader:\n first, last = row['full_name'].split(' ', 1)\n rows.append({'first_name': first, 'last_name': last, 'email': row['email']})\n out = io.StringIO()\n writer = csv.DictWriter(out, fieldnames=['first_name', 'last_name', 'email'], lineterminator='\\n')\n writer.writeheader()\n writer.writerows(rows)\n return out.getvalue().strip()\n","input_data_sample":"full_name,email\nJohn Smith,john@example.com\nMary Ann Lee,mary@example.com","output_data_sample":"first_name,last_name,email\nJohn,Smith,john@example.com\nMary,Ann Lee,mary@example.com","transformation_instruction":"Given a CSV with a 'full_name' column, split it into 'first_name' and 'last_name' columns and output the modified CSV (dropping full_name)."} {"id":"cmsx8ire8004gkup2rxx3t7jm","kind":"contributor_item","title":"Submission X3T7JM","provisional":false,"output_code":"import json\n\ndef transform(text):\n data = json.loads(text)\n leaves = []\n def walk(node):\n children = node.get('children') or []\n if not children:\n leaves.append(node['name'])\n else:\n for c in children:\n walk(c)\n for root in data:\n walk(root)\n return json.dumps(leaves)\n","input_data_sample":"[{\"name\": \"Electronics\", \"children\": [{\"name\": \"Phones\", \"children\": []}, {\"name\": \"Laptops\", \"children\": [{\"name\": \"Gaming\", \"children\": []}]}]}]","output_data_sample":"[\"Phones\", \"Gaming\"]","transformation_instruction":"Given a JSON array of nested category trees ({name, children:[...]}), return a JSON array of all leaf node names (nodes with no children)."} {"id":"cmsx8ire8004jkup2qlmbnnoj","kind":"contributor_item","title":"Submission MBNNOJ","provisional":false,"output_code":"import json\nfrom datetime import datetime\n\ndef transform(text):\n data = json.loads(text)\n data.sort(key=lambda d: datetime.fromisoformat(d['timestamp'].replace('Z', '+00:00')))\n return json.dumps(data)\n","input_data_sample":"[{\"timestamp\": \"2026-02-01T12:00:00Z\", \"event\": \"logout\"}, {\"timestamp\": \"2026-02-01T08:00:00Z\", \"event\": \"login\"}, {\"timestamp\": \"2026-02-01T09:30:00Z\", \"event\": \"click\"}]","output_data_sample":"[{\"timestamp\": \"2026-02-01T08:00:00Z\", \"event\": \"login\"}, {\"timestamp\": \"2026-02-01T09:30:00Z\", \"event\": \"click\"}, {\"timestamp\": \"2026-02-01T12:00:00Z\", \"event\": \"logout\"}]","transformation_instruction":"Given a JSON array of log event objects with 'timestamp' (ISO 8601) and 'event', sort them chronologically and return the sorted JSON array."} {"id":"cmsx8ire9004pkup233nj9h88","kind":"contributor_item","title":"Submission NJ9H88","provisional":false,"output_code":"import json\nfrom collections import Counter\n\ndef transform(text):\n lines = [l for l in text.strip().split('\\n') if l]\n statuses = []\n for l in lines:\n parts = l.split()\n statuses.append(parts[-1])\n return json.dumps(dict(Counter(statuses)))\n","input_data_sample":"10.0.0.1 - GET /home 200\n10.0.0.2 - POST /login 401\n10.0.0.1 - GET /about 200\n10.0.0.3 - GET /missing 404","output_data_sample":"{\"200\": 2, \"401\": 1, \"404\": 1}","transformation_instruction":"Given lines of 'IP - method path status' access-log entries, return a JSON object mapping each HTTP status code (as string) to the number of occurrences."} {"id":"cmsx8ire8003tkup2z6xdaheb","kind":"contributor_item","title":"Submission XDAHEB","provisional":false,"output_code":"import csv, io\n\ndef transform(text):\n reader = csv.reader(io.StringIO(text.strip()))\n rows = list(reader)\n header = rows[0]\n lines = ['| ' + ' | '.join(header) + ' |']\n lines.append('| ' + ' | '.join(['---'] * len(header)) + ' |')\n for row in rows[1:]:\n lines.append('| ' + ' | '.join(row) + ' |')\n return '\\n'.join(lines)\n","input_data_sample":"name,score\nAlice,88\nBob,74","output_data_sample":"| name | score |\n| --- | --- |\n| Alice | 88 |\n| Bob | 74 |","transformation_instruction":"Convert a CSV table into a Markdown table string with a header separator row."} {"id":"cmsxm07z400mvkup2b1p6hw5r","kind":"contributor_item","title":"Submission P6HW5R","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import re\n stats = {}\n for line in lines:\n m = re.search(r'service=(\\w+) path=(\\S+) status=(\\d+) latency_ms=(\\d+)', line)\n if not m or m.group(2) == '/health':\n continue\n service, status, latency = m.group(1), int(m.group(3)), int(m.group(4))\n bucket = stats.setdefault(service, {'requests': 0, 'errors': 0, 'latencies': []})\n bucket['requests'] += 1\n bucket['errors'] += status >= 500\n bucket['latencies'].append(latency)\n result = {k: {'error_rate_pct': round(v['errors'] * 100 / v['requests'], 1), 'avg_latency_ms': round(sum(v['latencies']) / len(v['latencies']), 1)} for k, v in sorted(stats.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"2026-08-18T10:00:01Z service=auth path=/login status=200 latency_ms=84\n2026-08-18T10:00:02Z service=auth path=/login status=503 latency_ms=420\n2026-08-18T10:00:03Z service=payments path=/charge status=201 latency_ms=190\n2026-08-18T10:00:04Z service=payments path=/charge status=500 latency_ms=610\n2026-08-18T10:00:05Z service=auth path=/health status=500 latency_ms=2\n2026-08-18T10:00:06Z service=payments path=/charge status=200 latency_ms=155","output_data_sample":"{\"auth\": {\"error_rate_pct\": 50.0, \"avg_latency_ms\": 252.0}, \"payments\": {\"error_rate_pct\": 33.3, \"avg_latency_ms\": 318.3}}","transformation_instruction":"Parse the supplied raw log text and compute error rate and latency by service, excluding health checks. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n3kup2o8xf0rfy","kind":"contributor_item","title":"Submission XF0RFY","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: [0, 0])\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n key = (f['service'], f['phase']); d[key][0] += 1; d[key][1] += int(f['status']) >= 500\n services = sorted({k[0] for k in d})\n result = {}\n for service in services:\n before = d[(service, 'before')]; after = d[(service, 'after')]\n b = before[1] / before[0]; a = after[1] / after[0]\n result[service] = {'before_error_pct': round(b * 100, 1), 'after_error_pct': round(a * 100, 1), 'delta_points': round((a - b) * 100, 1)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"phase=before status=200 service=api\nphase=before status=200 service=api\nphase=before status=500 service=api\nphase=after status=200 service=api\nphase=after status=500 service=api\nphase=after status=503 service=api\nphase=before status=200 service=worker\nphase=after status=200 service=worker","output_data_sample":"{\"api\": {\"before_error_pct\": 33.3, \"after_error_pct\": 66.7, \"delta_points\": 33.3}, \"worker\": {\"before_error_pct\": 0.0, \"after_error_pct\": 0.0, \"delta_points\": 0.0}}","transformation_instruction":"Parse the supplied raw log text and compute deployment error regression compared with pre-deploy traffic. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n5kup2b25pfpdj","kind":"contributor_item","title":"Submission 5PFPDJ","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from datetime import datetime\n open_at = {}; totals = {}; episodes = {}\n for line in lines:\n stamp, cfield, sfield = line.split(); c = cfield.split('=')[1]; state = sfield.split('=')[1]\n t = datetime.fromisoformat(stamp.replace('Z', '+00:00'))\n if state == 'OPEN' and c not in open_at: open_at[c] = t\n elif state == 'CLOSED' and c in open_at:\n totals[c] = totals.get(c, 0) + int((t - open_at.pop(c)).total_seconds()); episodes[c] = episodes.get(c, 0) + 1\n result = {c: {'open_episodes': episodes[c], 'total_open_seconds': totals[c]} for c in sorted(totals)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"2026-08-18T13:00:00Z circuit=payments state=CLOSED\n2026-08-18T13:01:10Z circuit=payments state=OPEN\n2026-08-18T13:02:00Z circuit=payments state=HALF_OPEN\n2026-08-18T13:02:20Z circuit=payments state=CLOSED\n2026-08-18T13:05:00Z circuit=search state=OPEN\n2026-08-18T13:07:30Z circuit=search state=CLOSED","output_data_sample":"{\"payments\": {\"open_episodes\": 1, \"total_open_seconds\": 70}, \"search\": {\"open_episodes\": 1, \"total_open_seconds\": 150}}","transformation_instruction":"Parse the supplied raw log text and compute circuit breaker open intervals and total outage seconds. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nkkup2l3u3zovm","kind":"contributor_item","title":"Submission U3ZOVM","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import os\n from collections import defaultdict\n groups = {'.jpg':'image','.png':'image','.js':'script','.html':'document'}\n d = defaultdict(lambda: {'served': 0, 'client_error': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); kind = groups.get(os.path.splitext(f['path'])[1], 'other'); status = int(f['status']); size = int(f['bytes'])\n if 200 <= status < 300: d[kind]['served'] += size\n elif 400 <= status < 500: d[kind]['client_error'] += size\n result = dict(sorted(d.items()))\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"path=/img/a.jpg status=200 bytes=4000\npath=/img/b.png status=404 bytes=220\npath=/app/main.js status=200 bytes=9000\npath=/app/old.js status=404 bytes=310\npath=/docs/readme.html status=200 bytes=1500\npath=/img/c.jpg status=206 bytes=1800","output_data_sample":"{\"document\": {\"served\": 1500, \"client_error\": 0}, \"image\": {\"served\": 5800, \"client_error\": 220}, \"script\": {\"served\": 9000, \"client_error\": 310}}","transformation_instruction":"Parse the supplied raw log text and compute cDN bandwidth by content type and 4xx waste. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n4kup2w7aer95n","kind":"contributor_item","title":"Submission AER95N","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n seen = defaultdict(lambda: {'active': set(), 'buyers': set(), 'purchases': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); row = seen[f['campaign']]\n row['active'].add(f['user'])\n if f['event'] == 'buy': row['buyers'].add(f['user']); row['purchases'] += 1\n result = {c: {'unique_users': len(v['active']), 'buyer_conversion_pct': round(100 * len(v['buyers']) / len(v['active']), 1), 'purchases': v['purchases']} for c, v in sorted(seen.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"campaign=spring user=u1 event=view\ncampaign=spring user=u1 event=buy\ncampaign=spring user=u2 event=view\ncampaign=spring user=u3 event=buy\ncampaign=summer user=u4 event=view\ncampaign=summer user=u5 event=view\ncampaign=summer user=u5 event=buy\ncampaign=summer user=u5 event=buy","output_data_sample":"{\"spring\": {\"unique_users\": 3, \"buyer_conversion_pct\": 66.7, \"purchases\": 2}, \"summer\": {\"unique_users\": 2, \"buyer_conversion_pct\": 50.0, \"purchases\": 2}}","transformation_instruction":"Parse the supplied raw log text and compute unique active users and conversion rate by campaign. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400mykup28ied32fd","kind":"contributor_item","title":"Submission ED32FD","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import math\n from collections import defaultdict\n lat = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n if int(f['status']) < 500:\n lat[f['endpoint']].append(int(f['latency_ms']))\n result = {}\n for endpoint, values in sorted(lat.items()):\n values.sort(); idx = max(0, math.ceil(0.95 * len(values)) - 1)\n result[endpoint] = {'p95_ms': values[idx], 'over_500ms': sum(x > 500 for x in values)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"endpoint=/search latency_ms=90 status=200\nendpoint=/search latency_ms=120 status=200\nendpoint=/search latency_ms=410 status=200\nendpoint=/search latency_ms=230 status=504\nendpoint=/export latency_ms=800 status=200\nendpoint=/export latency_ms=1200 status=200\nendpoint=/export latency_ms=950 status=500\nendpoint=/export latency_ms=700 status=200","output_data_sample":"{\"/export\": {\"p95_ms\": 1200, \"over_500ms\": 3}, \"/search\": {\"p95_ms\": 410, \"over_500ms\": 0}}","transformation_instruction":"Parse the supplied raw log text and compute per-endpoint p95 and slow-request count. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400mzkup2kcctcgkf","kind":"contributor_item","title":"Submission CTCGKF","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from datetime import datetime\n sessions = {}\n for line in lines:\n stamp, sfield, efield = line.split()\n sid = sfield.split('=', 1)[1]; event = efield.split('=', 1)[1]\n row = sessions.setdefault(sid, {'events': 0})\n row['events'] += 1\n if event in ('start', 'end'): row[event] = datetime.fromisoformat(stamp.replace('Z', '+00:00'))\n result = {sid: {'duration_seconds': int((v['end'] - v['start']).total_seconds()), 'events': v['events']} for sid, v in sorted(sessions.items()) if 'start' in v and 'end' in v}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"2026-08-18T09:00:00Z session=s1 event=start\n2026-08-18T09:00:12Z session=s1 event=click\n2026-08-18T09:01:05Z session=s1 event=end\n2026-08-18T09:02:00Z session=s2 event=start\n2026-08-18T09:04:30Z session=s2 event=end\n2026-08-18T09:05:00Z session=s3 event=start\n2026-08-18T09:05:20Z session=s3 event=click","output_data_sample":"{\"s1\": {\"duration_seconds\": 65, \"events\": 3}, \"s2\": {\"duration_seconds\": 150, \"events\": 2}}","transformation_instruction":"Parse the supplied raw log text and compute session duration and event count, excluding incomplete sessions. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500ndkup25y1hquzm","kind":"contributor_item","title":"Submission 1HQUZM","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: [0, 0])\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n if f['maintenance'] == 'true': continue\n d[f['zone']][0] += 1; d[f['zone']][1] += f['result'] == 'ok'\n result = {z: {'eligible_checks': v[0], 'availability_pct': round(v[1] * 100 / v[0], 2)} for z, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"zone=a result=ok maintenance=false\nzone=a result=fail maintenance=false\nzone=a result=fail maintenance=true\nzone=a result=ok maintenance=false\nzone=b result=ok maintenance=false\nzone=b result=ok maintenance=false\nzone=b result=fail maintenance=false","output_data_sample":"{\"a\": {\"eligible_checks\": 3, \"availability_pct\": 66.67}, \"b\": {\"eligible_checks\": 3, \"availability_pct\": 66.67}}","transformation_instruction":"Parse the supplied raw log text and compute availability by zone with maintenance excluded. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o5kup2evavef7b","kind":"contributor_item","title":"Submission AVEF7B","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(dict)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['token']][f['event']] = int(f['ts'])\n lifetimes = []; revoked = []\n for events in d.values():\n end = events.get('revoked', events.get('expired'))\n if end is not None: lifetimes.append(end - events['issued'])\n if 'revoked' in events: revoked.append(events['revoked'] - events['issued'])\n result = {'tokens_completed': len(lifetimes), 'median_lifetime_s': __import__('statistics').median(lifetimes), 'max_revocation_lag_s': max(revoked)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"token=a event=issued ts=100\ntoken=a event=revoked ts=460\ntoken=b event=issued ts=200\ntoken=b event=expired ts=800\ntoken=c event=issued ts=300\ntoken=c event=revoked ts=320","output_data_sample":"{\"tokens_completed\": 3, \"median_lifetime_s\": 360, \"max_revocation_lag_s\": 360}","transformation_instruction":"Parse the supplied raw log text and compute token issuance lifetime and revocation lag. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n2kup2of5d25u9","kind":"contributor_item","title":"Submission 5D25U9","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import re\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n m = re.match(r'duration=(\\d+)ms rows=(\\d+) sql=\"(.+)\"', line)\n duration, sql = int(m.group(1)), m.group(3)\n fingerprint = re.sub(r'=\\d+', '=?', sql)\n d[fingerprint].append(duration)\n result = {q: {'calls': len(v), 'slow_calls': sum(x >= 300 for x in v), 'max_ms': max(v)} for q, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"duration=42ms rows=1 sql=\"SELECT * FROM users WHERE id=17\"\nduration=380ms rows=1 sql=\"SELECT * FROM users WHERE id=22\"\nduration=510ms rows=80 sql=\"SELECT * FROM orders WHERE account_id=9\"\nduration=620ms rows=65 sql=\"SELECT * FROM orders WHERE account_id=14\"\nduration=75ms rows=1 sql=\"SELECT * FROM users WHERE id=31\"","output_data_sample":"{\"SELECT * FROM orders WHERE account_id=?\": {\"calls\": 2, \"slow_calls\": 2, \"max_ms\": 620}, \"SELECT * FROM users WHERE id=?\": {\"calls\": 3, \"slow_calls\": 1, \"max_ms\": 380}}","transformation_instruction":"Parse the supplied raw log text and compute database slow-query summary by normalized statement fingerprint. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n8kup27r5fle0t","kind":"contributor_item","title":"Submission 5FLE0T","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['request_id']].append((int(f['status']), f['host']))\n dupes = {rid: rows for rid, rows in d.items() if len(rows) > 1}\n result = {'duplicate_ids': sorted(dupes), 'conflicting_ids': sorted(rid for rid, rows in dupes.items() if len({x[0] for x in rows}) > 1), 'duplicate_log_lines': sum(len(v) - 1 for v in dupes.values())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"request_id=r1 status=200 host=a\nrequest_id=r2 status=500 host=a\nrequest_id=r1 status=200 host=b\nrequest_id=r3 status=201 host=b\nrequest_id=r2 status=200 host=c\nrequest_id=r4 status=404 host=a\nrequest_id=r4 status=404 host=b","output_data_sample":"{\"duplicate_ids\": [\"r1\", \"r2\", \"r4\"], \"conflicting_ids\": [\"r2\"], \"duplicate_log_lines\": 3}","transformation_instruction":"Parse the supplied raw log text and compute detect duplicate request IDs and conflicting outcomes. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nckup2kd7t2n81","kind":"contributor_item","title":"Submission 7T2N81","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[int(f['partition'])].append(int(f['lag']))\n result = {str(p): {'peak_lag': max(v), 'net_change': v[-1] - v[0], 'recovered_pct': round(max(0, v[0] - v[-1]) * 100 / v[0], 1) if v[0] else 0.0} for p, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"time=1 partition=0 lag=120\ntime=2 partition=0 lag=90\ntime=3 partition=0 lag=40\ntime=1 partition=1 lag=20\ntime=2 partition=1 lag=85\ntime=3 partition=1 lag=60\ntime=1 partition=2 lag=0\ntime=2 partition=2 lag=0","output_data_sample":"{\"0\": {\"peak_lag\": 120, \"net_change\": -80, \"recovered_pct\": 66.7}, \"1\": {\"peak_lag\": 85, \"net_change\": 40, \"recovered_pct\": 0.0}, \"2\": {\"peak_lag\": 0, \"net_change\": 0, \"recovered_pct\": 0.0}}","transformation_instruction":"Parse the supplied raw log text and compute consumer lag recovery and peak by partition. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500ngkup2o6kdvoo1","kind":"contributor_item","title":"Submission KDVOO1","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import Counter\n first = {}\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n if f['payment'] not in first or int(f['attempt']) < int(first[f['payment']]['attempt']): first[f['payment']] = f\n reasons = Counter(v['reason'] for v in first.values() if v['outcome'] == 'decline')\n declines = sum(reasons.values())\n result = {'first_attempt_declines': declines, 'reason_share_pct': {k: round(v * 100 / declines, 1) for k, v in sorted(reasons.items())}}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"payment=p1 attempt=1 outcome=decline reason=insufficient_funds\npayment=p1 attempt=2 outcome=approved reason=none\npayment=p2 attempt=1 outcome=decline reason=expired_card\npayment=p3 attempt=1 outcome=approved reason=none\npayment=p4 attempt=1 outcome=decline reason=insufficient_funds\npayment=p4 attempt=2 outcome=decline reason=insufficient_funds","output_data_sample":"{\"first_attempt_declines\": 3, \"reason_share_pct\": {\"expired_card\": 33.3, \"insufficient_funds\": 66.7}}","transformation_instruction":"Parse the supplied raw log text and compute payment authorization decline reason share, excluding retries. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nhkup2ge0yz0r5","kind":"contributor_item","title":"Submission 0YZ0R5","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'total': 0, 'malformed': 0, 'valid_bytes': 0})\n for line in lines:\n parts = [x.split('=', 1) for x in line.split() if '=' in x]; f = dict(parts); row = d.get(f.get('source'))\n if row is None: continue\n row['total'] += 1\n try: row['valid_bytes'] += int(f['bytes'])\n except (KeyError, ValueError): row['malformed'] += 1\n result = {s: {'malformed_pct': round(v['malformed'] * 100 / v['total'], 1), 'valid_bytes': v['valid_bytes']} for s, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"source=app bytes=120 level=INFO\nsource=app bytes=oops level=ERROR\nsource=worker bytes=80 level=INFO\nsource=worker level=WARN\nsource=app bytes=220 level=ERROR\nsource=worker bytes=140 level=INFO","output_data_sample":"{}","transformation_instruction":"Parse the supplied raw log text and compute log ingestion malformed-rate and valid byte totals by source. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nlkup2laghshh3","kind":"contributor_item","title":"Submission GHSHH3","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import statistics\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['priority']].append(int(f['delivered']) - int(f['promised']))\n result = {p: {'median_delay': statistics.median(v), 'late_pct': round(sum(x > 0 for x in v) * 100 / len(v), 1), 'worst_delay': max(v)} for p, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"priority=high promised=100 delivered=95\npriority=high promised=110 delivered=125\npriority=high promised=120 delivered=145\npriority=low promised=200 delivered=230\npriority=low promised=220 delivered=210\npriority=low promised=240 delivered=260","output_data_sample":"{\"high\": {\"median_delay\": 15, \"late_pct\": 66.7, \"worst_delay\": 25}, \"low\": {\"median_delay\": 20, \"late_pct\": 66.7, \"worst_delay\": 30}}","transformation_instruction":"Parse the supplied raw log text and compute median delivery delay and late share by priority. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500njkup2cdemxpwp","kind":"contributor_item","title":"Submission EMXPWP","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from datetime import datetime\n breach = {}; delays = {}\n for line in lines:\n stamp, s, cpu, action = line.split(); service = s.split('=')[1]; value = int(cpu.split('=')[1]); act = action.split('=')[1]\n t = datetime.fromisoformat(stamp.replace('Z', '+00:00'))\n if value >= 80 and service not in breach: breach[service] = t\n if act == 'scale_out' and service in breach: delays[service] = int((t - breach[service]).total_seconds())\n result = {'delay_seconds': dict(sorted(delays.items())), 'slowest_service': max(delays, key=lambda k: delays[k])}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"2026-08-18T14:00:00Z service=api cpu=72 action=none\n2026-08-18T14:00:30Z service=api cpu=86 action=none\n2026-08-18T14:01:10Z service=api cpu=91 action=scale_out\n2026-08-18T14:02:00Z service=worker cpu=83 action=none\n2026-08-18T14:03:45Z service=worker cpu=88 action=scale_out","output_data_sample":"{\"delay_seconds\": {\"api\": 40, \"worker\": 105}, \"slowest_service\": \"worker\"}","transformation_instruction":"Parse the supplied raw log text and compute autoscaling response delay from threshold breach to scale action. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z600ntkup2atga7all","kind":"contributor_item","title":"Submission GA7ALL","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['queue']].append((f['id'], int(f['now']) - int(f['enqueued'])))\n result = {}\n for q, rows in sorted(d.items()):\n buckets = {'under_60s': 0, '60_to_299s': 0, '300s_plus': 0}\n for _, age in rows: buckets['under_60s' if age < 60 else '60_to_299s' if age < 300 else '300s_plus'] += 1\n oldest = max(rows, key=lambda x: x[1])\n result[q] = {'age_buckets': buckets, 'oldest_id': oldest[0], 'oldest_age_s': oldest[1]}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"now=1000 queue=orders id=a enqueued=990\nnow=1000 queue=orders id=b enqueued=920\nnow=1000 queue=orders id=c enqueued=600\nnow=1000 queue=users id=d enqueued=970\nnow=1000 queue=users id=e enqueued=850","output_data_sample":"{\"orders\": {\"age_buckets\": {\"under_60s\": 1, \"60_to_299s\": 1, \"300s_plus\": 1}, \"oldest_id\": \"c\", \"oldest_age_s\": 400}, \"users\": {\"age_buckets\": {\"under_60s\": 1, \"60_to_299s\": 1, \"300s_plus\": 0}, \"oldest_id\": \"e\", \"oldest_age_s\": 150}}","transformation_instruction":"Parse the supplied raw log text and compute dead-letter queue age buckets and oldest message. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z600nukup2lok9dvi6","kind":"contributor_item","title":"Submission K9DVI6","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: [0, 0, 0])\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n if int(f['status']) != 200: continue\n row = d[f['encoding']]; row[0] += int(f['raw']); row[1] += int(f['sent']); row[2] += 1\n result = {e: {'responses': v[2], 'bytes_saved': v[0] - v[1], 'reduction_pct': round((v[0] - v[1]) * 100 / v[0], 1)} for e, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"encoding=gzip raw=10000 sent=3200 status=200\nencoding=gzip raw=8000 sent=2800 status=200\nencoding=br raw=12000 sent=3000 status=200\nencoding=br raw=5000 sent=0 status=304\nencoding=identity raw=2000 sent=2000 status=200","output_data_sample":"{\"br\": {\"responses\": 1, \"bytes_saved\": 9000, \"reduction_pct\": 75.0}, \"gzip\": {\"responses\": 2, \"bytes_saved\": 12000, \"reduction_pct\": 66.7}, \"identity\": {\"responses\": 1, \"bytes_saved\": 0, \"reduction_pct\": 0.0}}","transformation_instruction":"Parse the supplied raw log text and compute compression savings by encoding. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z600nxkup2hkpi61xu","kind":"contributor_item","title":"Submission PI61XU","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['pool']].append((int(f['used']), int(f['max'])))\n result = {}\n for pool, rows in sorted(d.items()):\n saturated = [used >= maximum for used, maximum in rows]\n episodes = sum(flag and (i == 0 or not saturated[i-1]) for i, flag in enumerate(saturated))\n result[pool] = {'peak_utilization_pct': round(max(u/m for u,m in rows) * 100, 1), 'saturation_samples': sum(saturated), 'episodes': episodes}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"pool=main used=7 max=10\npool=main used=9 max=10\npool=main used=10 max=10\npool=main used=8 max=10\npool=analytics used=4 max=5\npool=analytics used=5 max=5\npool=analytics used=5 max=5","output_data_sample":"{\"analytics\": {\"peak_utilization_pct\": 100.0, \"saturation_samples\": 2, \"episodes\": 1}, \"main\": {\"peak_utilization_pct\": 100.0, \"saturation_samples\": 1, \"episodes\": 1}}","transformation_instruction":"Parse the supplied raw log text and compute connection pool saturation episodes. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z600nykup2vq5n2qcx","kind":"contributor_item","title":"Submission 5N2QCX","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n weights = {'express': 2, 'standard': 1}; d = defaultdict(lambda: {'shipments': 0, 'breaches': 0, 'weighted_delay': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); delay = max(0, int(f['actual']) - int(f['promised'])); r = d[f['carrier']]\n r['shipments'] += 1; r['breaches'] += delay > 0; r['weighted_delay'] += delay * weights[f['tier']]\n result = {c: {'breach_pct': round(v['breaches'] * 100 / v['shipments'], 1), 'weighted_delay_days': v['weighted_delay']} for c, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"carrier=x tier=express promised=2 actual=3\ncarrier=x tier=standard promised=5 actual=5\ncarrier=x tier=express promised=2 actual=6\ncarrier=y tier=express promised=2 actual=2\ncarrier=y tier=standard promised=5 actual=7","output_data_sample":"{\"x\": {\"breach_pct\": 66.7, \"weighted_delay_days\": 10}, \"y\": {\"breach_pct\": 50.0, \"weighted_delay_days\": 2}}","transformation_instruction":"Parse the supplied raw log text and compute shipping SLA breach by carrier and weighted delay. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z600nwkup2z0k3jyuh","kind":"contributor_item","title":"Submission K3JYUH","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'lags': [], 'missing': 0, 'total': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); r = d[f['region']]; r['total'] += 1\n if f['replica'] == '-': r['missing'] += 1\n else: r['lags'].append(int(f['replica']) - int(f['primary']))\n result = {region: {'max_lag': max(v['lags'], default=None), 'avg_lag': round(sum(v['lags']) / len(v['lags']), 1) if v['lags'] else None, 'missing_ack_pct': round(v['missing'] * 100 / v['total'], 1)} for region, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"tx=t1 primary=100 replica=108 region=east\ntx=t2 primary=120 replica=155 region=east\ntx=t3 primary=140 replica=- region=east\ntx=t4 primary=200 replica=212 region=west\ntx=t5 primary=220 replica=225 region=west","output_data_sample":"{\"east\": {\"max_lag\": 35, \"avg_lag\": 21.5, \"missing_ack_pct\": 33.3}, \"west\": {\"max_lag\": 12, \"avg_lag\": 8.5, \"missing_ack_pct\": 0.0}}","transformation_instruction":"Parse the supplied raw log text and compute replication latency with missing acknowledgements. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o8kup2j3ywf7v4","kind":"contributor_item","title":"Submission YWF7V4","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n minutes = defaultdict(dict)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); minutes[int(f['minute'])][f['region']] = (int(f['requests']), int(f['errors']))\n result = {}\n for minute, regions in sorted(minutes.items()):\n total = sum(x[0] for x in regions.values()); secondary = regions['secondary']\n result[str(minute)] = {'secondary_traffic_pct': round(secondary[0] * 100 / total, 1), 'secondary_error_pct': round(secondary[1] * 100 / secondary[0], 1)}\n result['shift_points'] = result['3']['secondary_traffic_pct'] - result['1']['secondary_traffic_pct']\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"minute=1 region=primary requests=900 errors=9\nminute=1 region=secondary requests=100 errors=1\nminute=2 region=primary requests=500 errors=20\nminute=2 region=secondary requests=500 errors=5\nminute=3 region=primary requests=100 errors=8\nminute=3 region=secondary requests=900 errors=9","output_data_sample":"{\"1\": {\"secondary_traffic_pct\": 10.0, \"secondary_error_pct\": 1.0}, \"2\": {\"secondary_traffic_pct\": 50.0, \"secondary_error_pct\": 1.0}, \"3\": {\"secondary_traffic_pct\": 90.0, \"secondary_error_pct\": 1.0}, \"shift_points\": 80.0}","transformation_instruction":"Parse the supplied raw log text and compute regional failover traffic shift. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o4kup2vyallc2z","kind":"contributor_item","title":"Submission ALLC2Z","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'tp': 0, 'fp': 0, 'fn': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); r = d[f['rule']]\n r['tp'] += f['decision'] == 'block' and f['review'] == 'fraud'; r['fp'] += f['decision'] == 'block' and f['review'] == 'legit'; r['fn'] += f['decision'] == 'allow' and f['review'] == 'fraud'\n result = {rule: {'precision_pct': round(v['tp'] * 100 / (v['tp'] + v['fp']), 1), 'recall_pct': round(v['tp'] * 100 / (v['tp'] + v['fn']), 1)} for rule, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"rule=velocity decision=block review=fraud\nrule=velocity decision=block review=legit\nrule=velocity decision=allow review=fraud\nrule=geo decision=block review=fraud\nrule=geo decision=block review=fraud\nrule=geo decision=allow review=legit","output_data_sample":"{\"geo\": {\"precision_pct\": 100.0, \"recall_pct\": 100.0}, \"velocity\": {\"precision_pct\": 50.0, \"recall_pct\": 50.0}}","transformation_instruction":"Parse the supplied raw log text and compute fraud rule precision on reviewed decisions. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nnkup2f5l9m7gz","kind":"contributor_item","title":"Submission L9M7GZ","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); event = (int(f['term']), f['leader'])\n if not d[f['cluster']] or d[f['cluster']][-1] != event: d[f['cluster']].append(event)\n result = {c: {'elections': len(v) - 1, 'unique_leaders': len({x[1] for x in v}), 'latest_term': v[-1][0]} for c, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"cluster=c1 term=7 leader=n1\ncluster=c1 term=8 leader=n2\ncluster=c1 term=9 leader=n1\ncluster=c2 term=3 leader=n4\ncluster=c2 term=3 leader=n4\ncluster=c2 term=4 leader=n5","output_data_sample":"{\"c1\": {\"elections\": 2, \"unique_leaders\": 2, \"latest_term\": 9}, \"c2\": {\"elections\": 1, \"unique_leaders\": 2, \"latest_term\": 4}}","transformation_instruction":"Parse the supplied raw log text and compute leader election instability by cluster. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z600nvkup22tsge1s1","kind":"contributor_item","title":"Submission SGE1S1","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['user']].append(f['event'])\n locked = [u for u, e in d.items() if 'lock' in e]\n post_lock_attempts = sum(len(e[e.index('lock')+1:]) for e in d.values() if 'lock' in e)\n post_lock_successes = sum('success' in e[e.index('lock')+1:] for e in d.values() if 'lock' in e)\n result = {'locked_users': sorted(locked), 'post_lock_attempts': post_lock_attempts, 'post_lock_successes': post_lock_successes}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"user=a event=fail ip=1.1.1.1\nuser=a event=fail ip=1.1.1.1\nuser=a event=lock ip=1.1.1.1\nuser=a event=fail ip=1.1.1.1\nuser=b event=fail ip=2.2.2.2\nuser=b event=success ip=2.2.2.2\nuser=c event=lock ip=3.3.3.3\nuser=c event=success ip=3.3.3.3","output_data_sample":"{\"locked_users\": [\"a\", \"c\"], \"post_lock_attempts\": 2, \"post_lock_successes\": 1}","transformation_instruction":"Parse the supplied raw log text and compute authentication lockout effectiveness. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o1kup2sip5vv6y","kind":"contributor_item","title":"Submission P5VV6Y","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import re\n from collections import defaultdict\n d = defaultdict(lambda: {'total': 0, 'zero': 0, 'lat': []})\n for line in lines:\n m = re.match(r'query=\"([^\"]+)\" results=(\\d+) latency=(\\d+)', line); words = len(m.group(1).split()); bucket = 'short' if words <= 2 else 'long'; r = d[bucket]\n r['total'] += 1; r['zero'] += int(m.group(2)) == 0; r['lat'].append(int(m.group(3)))\n result = {b: {'zero_result_pct': round(v['zero'] * 100 / v['total'], 1), 'avg_latency_ms': round(sum(v['lat']) / len(v['lat']), 1)} for b, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"query=\"red shoes\" results=12 latency=50\nquery=\"red hat\" results=0 latency=40\nquery=\"wireless noise cancelling headphones\" results=4 latency=120\nquery=\"very specific antique brass fixture\" results=0 latency=150\nquery=\"pen\" results=0 latency=15","output_data_sample":"{\"long\": {\"zero_result_pct\": 50.0, \"avg_latency_ms\": 135.0}, \"short\": {\"zero_result_pct\": 66.7, \"avg_latency_ms\": 35.0}}","transformation_instruction":"Parse the supplied raw log text and compute search zero-result rate by normalized query length bucket. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o6kup2rj42yb73","kind":"contributor_item","title":"Submission 42YB73","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'play': 0, 'stall': 0, 'sessions': 0, 'bad': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); r = d[f['device']]; play = int(f['play_ms']); stall = int(f['stall_ms'])\n r['play'] += play; r['stall'] += stall; r['sessions'] += 1; r['bad'] += stall / play >= 0.08\n result = {device: {'stall_ratio_pct': round(v['stall'] * 100 / v['play'], 2), 'bad_sessions': v['bad'], 'sessions': v['sessions']} for device, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"device=mobile session=s1 play_ms=60000 stall_ms=3000\ndevice=mobile session=s2 play_ms=30000 stall_ms=0\ndevice=tv session=s3 play_ms=120000 stall_ms=12000\ndevice=tv session=s4 play_ms=90000 stall_ms=4500","output_data_sample":"{\"mobile\": {\"stall_ratio_pct\": 3.33, \"bad_sessions\": 0, \"sessions\": 2}, \"tv\": {\"stall_ratio_pct\": 7.86, \"bad_sessions\": 1, \"sessions\": 2}}","transformation_instruction":"Parse the supplied raw log text and compute video playback stall ratio by device. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o2kup26vklncgg","kind":"contributor_item","title":"Submission KLNCGG","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n order = {'compile': 0, 'test': 1, 'deploy': 2}; d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['build']].append(f)\n result = {}\n for build, rows in sorted(d.items()):\n rows.sort(key=lambda x: order[x['stage']]); failed = next((r['stage'] for r in rows if r['outcome'] == 'fail'), None)\n result[build] = {'completed_duration': sum(int(r['duration']) for r in rows if r['outcome'] != 'skipped'), 'first_failed_stage': failed, 'success': failed is None}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"build=b1 stage=compile duration=40 outcome=ok\nbuild=b1 stage=test duration=80 outcome=fail\nbuild=b1 stage=deploy duration=0 outcome=skipped\nbuild=b2 stage=compile duration=35 outcome=ok\nbuild=b2 stage=test duration=70 outcome=ok\nbuild=b2 stage=deploy duration=25 outcome=ok","output_data_sample":"{\"b1\": {\"completed_duration\": 120, \"first_failed_stage\": \"test\", \"success\": false}, \"b2\": {\"completed_duration\": 130, \"first_failed_stage\": null, \"success\": true}}","transformation_instruction":"Parse the supplied raw log text and compute build pipeline critical failure stage. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400mwkup2sdgtiern","kind":"contributor_item","title":"Submission GTIERN","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'hits': 0, 'total': 0, 'saved': 0})\n for line in lines:\n fields = dict(token.split('=', 1) for token in line.split())\n r = fields['region']; hit = fields['cache'] == 'HIT'\n d[r]['total'] += 1; d[r]['hits'] += hit\n if hit: d[r]['saved'] += int(fields['origin_bytes'])\n result = {r: {'hit_ratio': round(v['hits'] / v['total'], 3), 'origin_bytes_saved': v['saved']} for r, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"ts=10:01 region=us-east cache=HIT bytes=8400 origin_bytes=8400\nts=10:02 region=us-east cache=MISS bytes=1200 origin_bytes=1200\nts=10:03 region=eu-west cache=HIT bytes=5100 origin_bytes=5100\nts=10:04 region=eu-west cache=HIT bytes=3200 origin_bytes=3200\nts=10:05 region=eu-west cache=MISS bytes=700 origin_bytes=700\nts=10:06 region=us-east cache=HIT bytes=2500 origin_bytes=2500","output_data_sample":"{\"eu-west\": {\"hit_ratio\": 0.667, \"origin_bytes_saved\": 8300}, \"us-east\": {\"hit_ratio\": 0.667, \"origin_bytes_saved\": 10900}}","transformation_instruction":"Parse the supplied raw log text and compute cache hit ratio and bytes saved per region. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400mxkup24dozcxmu","kind":"contributor_item","title":"Submission OZCXMU","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n requests = {}\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n row = requests.setdefault(f['rid'], {'op': f['op'], 'attempts': 0, 'done': False})\n row['attempts'] += 1\n row['done'] = row['done'] or f['outcome'] == 'ok'\n ops = {}\n for row in requests.values():\n if not row['done']: continue\n v = ops.setdefault(row['op'], {'completed': 0, 'attempts': 0})\n v['completed'] += 1; v['attempts'] += row['attempts']\n result = {op: {'completed': v['completed'], 'retry_amplification': round(v['attempts'] / v['completed'], 2)} for op, v in sorted(ops.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"rid=a1 op=read attempt=1 outcome=retry\nrid=a1 op=read attempt=2 outcome=ok\nrid=b2 op=write attempt=1 outcome=retry\nrid=b2 op=write attempt=2 outcome=retry\nrid=b2 op=write attempt=3 outcome=ok\nrid=c3 op=read attempt=1 outcome=ok\nrid=d4 op=write attempt=1 outcome=retry","output_data_sample":"{\"read\": {\"completed\": 2, \"retry_amplification\": 1.5}, \"write\": {\"completed\": 1, \"retry_amplification\": 3.0}}","transformation_instruction":"Parse the supplied raw log text and compute retry amplification by operation, counting only completed request ids. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n0kup2e6rziee5","kind":"contributor_item","title":"Submission RZIEE5","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import Counter\n counts = Counter(line[:16] for line in lines)\n peak = max(counts.values())\n result = {'busiest_minute': min(k for k, v in counts.items() if v == peak), 'requests': peak, 'minutes_observed': len(counts)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"2026-08-18T11:00:01Z GET /a 200\n2026-08-18T11:00:30Z GET /b 200\n2026-08-18T11:01:02Z POST /c 201\n2026-08-18T11:01:17Z GET /a 500\n2026-08-18T11:01:45Z GET /a 200\n2026-08-18T11:02:03Z GET /b 200\n2026-08-18T11:02:44Z GET /b 200","output_data_sample":"{\"busiest_minute\": \"2026-08-18T11:01\", \"requests\": 3, \"minutes_observed\": 3}","transformation_instruction":"Parse the supplied raw log text and compute peak requests/minute and busiest minute with tie broken chronologically. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n1kup2zv161s98","kind":"contributor_item","title":"Submission 161S98","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n series = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n series[f['queue']].append((int(f['depth']), int(f['limit'])))\n result = {}\n for q, values in sorted(series.items()):\n longest = current = 0\n for depth, limit in values:\n current = current + 1 if depth > limit else 0; longest = max(longest, current)\n result[q] = {'net_growth': values[-1][0] - values[0][0], 'longest_breach_streak': longest}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"time=12:00 queue=email depth=40 limit=100\ntime=12:01 queue=email depth=115 limit=100\ntime=12:02 queue=email depth=130 limit=100\ntime=12:03 queue=email depth=90 limit=100\ntime=12:00 queue=video depth=210 limit=200\ntime=12:01 queue=video depth=260 limit=200\ntime=12:02 queue=video depth=310 limit=200","output_data_sample":"{\"email\": {\"net_growth\": 50, \"longest_breach_streak\": 2}, \"video\": {\"net_growth\": 100, \"longest_breach_streak\": 3}}","transformation_instruction":"Parse the supplied raw log text and compute queue backlog growth and breach streak. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n6kup2rpn5fvnn","kind":"contributor_item","title":"Submission N5FVNN","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list); max_uptime = 0\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); max_uptime = max(max_uptime, int(f['uptime_ms']))\n d[f['collector']].append(int(f['pause_ms']))\n result = {k: {'events': len(v), 'max_pause_ms': max(v), 'uptime_share_pct': round(sum(v) * 100 / max_uptime, 3)} for k, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"uptime_ms=10000 collector=young pause_ms=12\nuptime_ms=20000 collector=young pause_ms=18\nuptime_ms=30000 collector=full pause_ms=240\nuptime_ms=40000 collector=young pause_ms=15\nuptime_ms=50000 collector=full pause_ms=310","output_data_sample":"{\"full\": {\"events\": 2, \"max_pause_ms\": 310, \"uptime_share_pct\": 1.1}, \"young\": {\"events\": 3, \"max_pause_ms\": 18, \"uptime_share_pct\": 0.09}}","transformation_instruction":"Parse the supplied raw log text and compute gC pause share and maximum pause by collector. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z400n7kup250g5ggyf","kind":"contributor_item","title":"Submission G5GGYF","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'total': 0, 'classes': defaultdict(int), 'success_bytes': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); row = d[f['method']]; status = int(f['status'])\n row['total'] += 1; row['classes'][f'{status // 100}xx'] += 1\n if 200 <= status < 300: row['success_bytes'] += int(f['bytes'])\n result = {m: {'class_counts': dict(sorted(v['classes'].items())), 'success_bytes': v['success_bytes']} for m, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"method=GET status=200 bytes=400\nmethod=GET status=304 bytes=0\nmethod=GET status=404 bytes=120\nmethod=POST status=201 bytes=80\nmethod=POST status=400 bytes=90\nmethod=POST status=503 bytes=40","output_data_sample":"{\"GET\": {\"class_counts\": {\"2xx\": 1, \"3xx\": 1, \"4xx\": 1}, \"success_bytes\": 400}, \"POST\": {\"class_counts\": {\"2xx\": 1, \"4xx\": 1, \"5xx\": 1}, \"success_bytes\": 80}}","transformation_instruction":"Parse the supplied raw log text and compute status-class distribution and success-weighted bytes. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nakup2k9nypzgt","kind":"contributor_item","title":"Submission NYPZGT","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import re\n from collections import defaultdict\n d = defaultdict(lambda: {'count': 0, 'hosts': set()})\n for line in lines:\n if 'level=ERROR' not in line: continue\n host = re.search(r'host=(\\w+)', line).group(1); message = re.search(r'error=\"([^\"]+)\"', line).group(1)\n fingerprint = re.sub(r'\\d+', '#', message)\n d[fingerprint]['count'] += 1; d[fingerprint]['hosts'].add(host)\n result = {k: {'count': v['count'], 'hosts': sorted(v['hosts'])} for k, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"host=web1 level=ERROR error=\"Timeout after 120ms\" trace=t1\nhost=web2 level=ERROR error=\"Timeout after 450ms\" trace=t2\nhost=web1 level=INFO msg=\"ready\"\nhost=web3 level=ERROR error=\"KeyError user_184\" trace=t3\nhost=web2 level=ERROR error=\"KeyError user_992\" trace=t4","output_data_sample":"{\"KeyError user_#\": {\"count\": 2, \"hosts\": [\"web2\", \"web3\"]}, \"Timeout after #ms\": {\"count\": 2, \"hosts\": [\"web1\", \"web2\"]}}","transformation_instruction":"Parse the supplied raw log text and compute exception fingerprints with affected hosts. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500n9kup25tzog9n3","kind":"contributor_item","title":"Submission ZOG9N3","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['pid']].append(int(f['rss_mb']))\n result = {}\n for pid, values in sorted(d.items()):\n deltas = [b - a for a, b in zip(values, values[1:])]\n result[pid] = {'high_water_mb': max(values), 'largest_increase_mb': max(deltas, default=0), 'net_change_mb': values[-1] - values[0]}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"t=1 pid=api rss_mb=220\nt=2 pid=worker rss_mb=310\nt=3 pid=api rss_mb=245\nt=4 pid=worker rss_mb=295\nt=5 pid=api rss_mb=330\nt=6 pid=worker rss_mb=410","output_data_sample":"{\"api\": {\"high_water_mb\": 330, \"largest_increase_mb\": 85, \"net_change_mb\": 110}, \"worker\": {\"high_water_mb\": 410, \"largest_increase_mb\": 115, \"net_change_mb\": 100}}","transformation_instruction":"Parse the supplied raw log text and compute memory high-water mark and largest positive delta by process. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nbkup2xwvx605p","kind":"contributor_item","title":"Submission VX605P","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['tenant']].append((int(f['minute']), int(f['used']), int(f['limit'])))\n result = {}\n for tenant, rows in sorted(d.items()):\n rows.sort(); elapsed = rows[-1][0] - rows[0][0]; rate = (rows[-1][1] - rows[0][1]) / elapsed\n remaining_minutes = (rows[-1][2] - rows[-1][1]) / rate\n result[tenant] = {'current_pct': round(rows[-1][1] * 100 / rows[-1][2], 1), 'projected_exhaustion_minute': round(rows[-1][0] + remaining_minutes, 1)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"minute=0 tenant=alpha used=100 limit=1000\nminute=10 tenant=alpha used=240 limit=1000\nminute=20 tenant=alpha used=410 limit=1000\nminute=0 tenant=beta used=50 limit=500\nminute=10 tenant=beta used=90 limit=500\nminute=20 tenant=beta used=150 limit=500","output_data_sample":"{\"alpha\": {\"current_pct\": 41.0, \"projected_exhaustion_minute\": 58.1}, \"beta\": {\"current_pct\": 30.0, \"projected_exhaustion_minute\": 90.0}}","transformation_instruction":"Parse the supplied raw log text and compute aPI quota consumption and projected exhaustion. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nekup2cfcn8bm5","kind":"contributor_item","title":"Submission CN8BM5","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['stream']].append((int(f['seq']), int(f['ts'])))\n result = {}\n for stream, rows in sorted(d.items()):\n values = [ts for _, ts in sorted(rows)]\n regressions = [a - b for a, b in zip(values, values[1:]) if b < a]\n result[stream] = {'out_of_order_events': len(regressions), 'largest_regression': max(regressions, default=0)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"stream=orders ts=100 seq=1\nstream=orders ts=108 seq=2\nstream=orders ts=105 seq=3\nstream=orders ts=120 seq=4\nstream=users ts=50 seq=1\nstream=users ts=45 seq=2\nstream=users ts=41 seq=3","output_data_sample":"{\"orders\": {\"out_of_order_events\": 1, \"largest_regression\": 3}, \"users\": {\"out_of_order_events\": 2, \"largest_regression\": 5}}","transformation_instruction":"Parse the supplied raw log text and compute out-of-order event count and largest timestamp regression per stream. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nfkup23lz2ae0a","kind":"contributor_item","title":"Submission Z2AE0A","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'exposed': set(), 'converted': set()})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); key = 'exposed' if f['event'] == 'expose' else 'converted'; d[f['variant']][key].add(f['user'])\n rates = {k: len(v['converted']) / len(v['exposed']) for k, v in d.items()}\n result = {'exposures': {k: len(d[k]['exposed']) for k in sorted(d)}, 'conversion_pct': {k: round(rates[k] * 100, 1) for k in sorted(d)}, 'test_lift_points': round((rates['test'] - rates['control']) * 100, 1)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"variant=control user=u1 event=expose\nvariant=control user=u1 event=convert\nvariant=control user=u2 event=expose\nvariant=test user=u3 event=expose\nvariant=test user=u4 event=expose\nvariant=test user=u4 event=convert\nvariant=test user=u5 event=expose\nvariant=test user=u5 event=convert","output_data_sample":"{\"exposures\": {\"control\": 2, \"test\": 3}, \"conversion_pct\": {\"control\": 50.0, \"test\": 66.7}, \"test_lift_points\": 16.7}","transformation_instruction":"Parse the supplied raw log text and compute feature flag exposure imbalance and conversion lift. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nikup2ossrxx91","kind":"contributor_item","title":"Submission SRXX91","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'elapsed': 0, 'processed': 0, 'failed': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); row = d[f['job']]\n for key in ('elapsed_s', 'processed', 'failed'): row[{'elapsed_s':'elapsed','processed':'processed','failed':'failed'}[key]] += int(f[key])\n result = {j: {'throughput_per_s': round(v['processed'] / v['elapsed'], 2), 'failed_pct': round(v['failed'] * 100 / v['processed'], 2)} for j, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"job=import batch=1 elapsed_s=10 processed=500 failed=5\njob=import batch=2 elapsed_s=15 processed=750 failed=15\njob=export batch=1 elapsed_s=20 processed=600 failed=0\njob=export batch=2 elapsed_s=25 processed=900 failed=9","output_data_sample":"{\"export\": {\"throughput_per_s\": 33.33, \"failed_pct\": 0.6}, \"import\": {\"throughput_per_s\": 50.0, \"failed_pct\": 1.6}}","transformation_instruction":"Parse the supplied raw log text and compute batch job throughput and failed-record rate. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nmkup2f1qovtq7","kind":"contributor_item","title":"Submission QOVTQ7","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['sensor']].append(float(f['value']))\n result = {}\n for sensor, values in sorted(d.items()):\n anomalies = []\n for i in range(3, len(values)):\n baseline = sum(values[i-3:i]) / 3\n if abs(values[i] - baseline) >= 5: anomalies.append(i + 1)\n result[sensor] = {'anomaly_samples': anomalies, 'range': round(max(values) - min(values), 1)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"sensor=a value=20.0\nsensor=a value=21.0\nsensor=a value=20.5\nsensor=a value=29.0\nsensor=a value=21.5\nsensor=b value=10.0\nsensor=b value=10.5\nsensor=b value=11.0\nsensor=b value=12.0","output_data_sample":"{\"a\": {\"anomaly_samples\": [4], \"range\": 9.0}, \"b\": {\"anomaly_samples\": [], \"range\": 2.0}}","transformation_instruction":"Parse the supplied raw log text and compute rolling three-sample temperature anomaly count. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nqkup2v87icgge","kind":"contributor_item","title":"Submission 7ICGGE","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: defaultdict(set))\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['provider']][f['event']].add(f['id'])\n result = {}\n for provider, e in sorted(d.items()):\n queued = len(e['queued']); delivered = len(e['delivered'])\n result[provider] = {'delivery_pct': round(delivered * 100 / queued, 1), 'unique_open_pct_of_delivered': round(len(e['open']) * 100 / delivered, 1) if delivered else 0.0, 'bounces': len(e['bounced'])}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"id=m1 event=queued provider=a\nid=m1 event=delivered provider=a\nid=m1 event=open provider=a\nid=m2 event=queued provider=a\nid=m2 event=bounced provider=a\nid=m3 event=queued provider=b\nid=m3 event=delivered provider=b\nid=m3 event=open provider=b\nid=m3 event=open provider=b","output_data_sample":"{\"a\": {\"delivery_pct\": 50.0, \"unique_open_pct_of_delivered\": 100.0, \"bounces\": 1}, \"b\": {\"delivery_pct\": 100.0, \"unique_open_pct_of_delivered\": 100.0, \"bounces\": 0}}","transformation_instruction":"Parse the supplied raw log text and compute email delivery funnel with unique message ids. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500npkup2ygx5o2hs","kind":"contributor_item","title":"Submission X5O2HS","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['trace']].append(f)\n result = {}\n for trace, spans in sorted(d.items()):\n roots = [s for s in spans if s['parent'] == '-']\n ids = {s['span'] for s in spans}; missing = sorted({s['parent'] for s in spans if s['parent'] != '-' and s['parent'] not in ids})\n duration = max(int(s['end']) for s in spans) - min(int(s['start']) for s in spans)\n result[trace] = {'complete_root': len(roots) == 1, 'missing_parents': missing, 'observed_duration_ms': duration}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"trace=t1 span=root parent=- start=0 end=120\ntrace=t1 span=db parent=root start=10 end=80\ntrace=t1 span=cache parent=root start=85 end=100\ntrace=t2 span=db parent=root start=5 end=55\ntrace=t2 span=render parent=root start=60 end=90","output_data_sample":"{\"t1\": {\"complete_root\": true, \"missing_parents\": [], \"observed_duration_ms\": 120}, \"t2\": {\"complete_root\": false, \"missing_parents\": [\"root\"], \"observed_duration_ms\": 85}}","transformation_instruction":"Parse the supplied raw log text and compute trace completeness and critical path duration. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nokup2dhgopmw1","kind":"contributor_item","title":"Submission GOPMW1","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n windows = {}\n target = None\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n if 'window' in f: windows[f['window']] = (int(f['good']), int(f['total']))\n else: target = float(f['target'])\n budget = 1 - target / 100\n burn = {w: round(((total - good) / total) / budget, 2) for w, (good, total) in windows.items()}\n result = {'burn_rate': dict(sorted(burn.items())), 'page': burn['5m'] >= 14 and burn['1h'] >= 6}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"window=5m good=940 total=1000\nwindow=1h good=11900 total=12000\nservice=checkout target=99.9","output_data_sample":"{\"burn_rate\": {\"1h\": 8.33, \"5m\": 60.0}, \"page\": true}","transformation_instruction":"Parse the supplied raw log text and compute sLO burn rate across short and long windows. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nrkup2pg95f25i","kind":"contributor_item","title":"Submission 95F25I","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'reserve': 0, 'release': 0, 'commit': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['sku']][f['action']] += int(f['qty'])\n result = {sku: {'reserved': v['reserve'], 'accounted': v['release'] + v['commit'], 'leaked': v['reserve'] - v['release'] - v['commit']} for sku, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"sku=A order=o1 action=reserve qty=3\nsku=A order=o1 action=release qty=1\nsku=A order=o1 action=commit qty=2\nsku=A order=o2 action=reserve qty=5\nsku=B order=o3 action=reserve qty=4\nsku=B order=o3 action=commit qty=3\nsku=B order=o3 action=release qty=1","output_data_sample":"{\"A\": {\"reserved\": 8, \"accounted\": 3, \"leaked\": 5}, \"B\": {\"reserved\": 4, \"accounted\": 4, \"leaked\": 0}}","transformation_instruction":"Parse the supplied raw log text and compute inventory reservation leakage. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z500nskup20attr1jk","kind":"contributor_item","title":"Submission TTR1JK","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'total': 0, 'failed': 0, 'versions': defaultdict(int), 'ok_ms': []})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); r = d[f['host']]; r['total'] += 1; r['versions'][f['tls']] += 1\n if f['outcome'] == 'fail': r['failed'] += 1\n else: r['ok_ms'].append(int(f['ms']))\n result = {h: {'failure_pct': round(v['failed'] * 100 / v['total'], 1), 'version_mix': dict(sorted(v['versions'].items())), 'avg_success_ms': round(sum(v['ok_ms']) / len(v['ok_ms']), 1)} for h, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"host=api tls=1.3 outcome=ok ms=35\nhost=api tls=1.2 outcome=ok ms=55\nhost=api tls=1.2 outcome=fail ms=80\nhost=cdn tls=1.3 outcome=ok ms=20\nhost=cdn tls=1.3 outcome=ok ms=22\nhost=cdn tls=1.2 outcome=fail ms=100","output_data_sample":"{\"api\": {\"failure_pct\": 33.3, \"version_mix\": {\"1.2\": 2, \"1.3\": 1}, \"avg_success_ms\": 45.0}, \"cdn\": {\"failure_pct\": 33.3, \"version_mix\": {\"1.2\": 1, \"1.3\": 2}, \"avg_success_ms\": 21.0}}","transformation_instruction":"Parse the supplied raw log text and compute tLS handshake version mix and failure rate. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700nzkup2ingw1lze","kind":"contributor_item","title":"Submission GW1LZE","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from datetime import datetime\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n stamp, w = line.split(); d[w.split('=')[1]].append(datetime.fromisoformat(stamp.replace('Z', '+00:00')))\n result = {}\n for worker, times in sorted(d.items()):\n gaps = [int((b-a).total_seconds()) for a,b in zip(sorted(times), sorted(times)[1:])]\n result[worker] = {'max_gap_seconds': max(gaps), 'gaps_over_60s': sum(g > 60 for g in gaps)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"2026-08-18T15:00:00Z worker=w1\n2026-08-18T15:00:30Z worker=w1\n2026-08-18T15:02:10Z worker=w1\n2026-08-18T15:00:05Z worker=w2\n2026-08-18T15:00:50Z worker=w2\n2026-08-18T15:01:35Z worker=w2","output_data_sample":"{\"w1\": {\"max_gap_seconds\": 100, \"gaps_over_60s\": 1}, \"w2\": {\"max_gap_seconds\": 45, \"gaps_over_60s\": 0}}","transformation_instruction":"Parse the supplied raw log text and compute worker heartbeat gaps. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o0kup2rk246m5p","kind":"contributor_item","title":"Submission 246M5P","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from decimal import Decimal\n from collections import defaultdict\n d = defaultdict(lambda: {'gross': Decimal('0'), 'fees': Decimal('0'), 'count': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split())\n if f['outcome'] != 'settled': continue\n r = d[f['currency']]; r['gross'] += Decimal(f['refund']); r['fees'] += Decimal(f['fee']); r['count'] += 1\n result = {c: {'settled': v['count'], 'net': format(v['gross'] - v['fees'], '.2f'), 'fee_pct': float(round(v['fees'] * 100 / v['gross'], 2))} for c, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"currency=USD refund=100.00 fee=2.50 outcome=settled\ncurrency=USD refund=40.00 fee=1.00 outcome=failed\ncurrency=USD refund=25.00 fee=0.75 outcome=settled\ncurrency=EUR refund=80.00 fee=2.00 outcome=settled\ncurrency=EUR refund=20.00 fee=0.50 outcome=settled","output_data_sample":"{\"EUR\": {\"settled\": 2, \"net\": \"97.50\", \"fee_pct\": 2.5}, \"USD\": {\"settled\": 2, \"net\": \"121.75\", \"fee_pct\": 2.6}}","transformation_instruction":"Parse the supplied raw log text and compute refund net amount by currency after fees. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o3kup2nlgfiifl","kind":"contributor_item","title":"Submission GFIIFL","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'hits': 0, 'total': 0, 'lat': []})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); r = d[f['type']]; r['total'] += 1; r['hits'] += f['cache'] == 'hit'; r['lat'].append(int(f['latency_ms']))\n result = {t: {'hit_pct': round(v['hits'] * 100 / v['total'], 1), 'mean_latency_ms': round(sum(v['lat']) / len(v['lat']), 1)} for t, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"type=A cache=hit latency_ms=2\ntype=A cache=miss latency_ms=40\ntype=A cache=hit latency_ms=3\ntype=AAAA cache=miss latency_ms=55\ntype=AAAA cache=miss latency_ms=60\ntype=AAAA cache=hit latency_ms=4","output_data_sample":"{\"A\": {\"hit_pct\": 66.7, \"mean_latency_ms\": 15.0}, \"AAAA\": {\"hit_pct\": 33.3, \"mean_latency_ms\": 39.7}}","transformation_instruction":"Parse the supplied raw log text and compute dNS resolver cache effectiveness by record type. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm07z700o7kup2jpubjj8b","kind":"contributor_item","title":"Submission UBJJ8B","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['phase']].append(int(f['wait_ms']))\n result = {phase: {'avg_wait_ms': round(sum(v) / len(v), 1), 'blocked_over_100ms': sum(x > 100 for x in v)} for phase, v in sorted(d.items())}\n result['migration_added_avg_ms'] = round(result['during']['avg_wait_ms'] - result['before']['avg_wait_ms'], 1)\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"phase=before query=q1 wait_ms=5\nphase=before query=q2 wait_ms=8\nphase=during query=q3 wait_ms=450\nphase=during query=q4 wait_ms=700\nphase=during query=q5 wait_ms=20\nphase=after query=q6 wait_ms=12\nphase=after query=q7 wait_ms=9","output_data_sample":"{\"after\": {\"avg_wait_ms\": 10.5, \"blocked_over_100ms\": 0}, \"before\": {\"avg_wait_ms\": 6.5, \"blocked_over_100ms\": 0}, \"during\": {\"avg_wait_ms\": 390.0, \"blocked_over_100ms\": 2}, \"migration_added_avg_ms\": 383.5}","transformation_instruction":"Parse the supplied raw log text and compute schema migration lock impact. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00ogkup2v7y510ku","kind":"contributor_item","title":"Submission Y510KU","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n weights = {'low':1,'medium':2,'high':3}; d = defaultdict(lambda: {'drifted': [], 'score': 0, 'total': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); r = d[f['env']]; r['total'] += 1\n if f['expected'] != f['actual']: r['drifted'].append(f['key']); r['score'] += weights[f['severity']]\n result = {e: {'drift_pct': round(len(v['drifted']) * 100 / v['total'], 1), 'weighted_score': v['score'], 'keys': sorted(v['drifted'])} for e,v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"env=prod key=timeout expected=30 actual=60 severity=high\nenv=prod key=retries expected=3 actual=3 severity=medium\nenv=stage key=timeout expected=30 actual=25 severity=high\nenv=stage key=region expected=us actual=us severity=low\nenv=stage key=debug expected=false actual=true severity=medium","output_data_sample":"{\"prod\": {\"drift_pct\": 50.0, \"weighted_score\": 3, \"keys\": [\"timeout\"]}, \"stage\": {\"drift_pct\": 66.7, \"weighted_score\": 5, \"keys\": [\"debug\", \"timeout\"]}}","transformation_instruction":"Parse the supplied raw log text and compute configuration drift by environment and key severity. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00oskup237ei9pun","kind":"contributor_item","title":"Submission EI9PUN","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import sqlite3\n db=sqlite3.connect(':memory:'); db.execute('create table logs(region text, amount integer, outcome text)')\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); db.execute('insert into logs values(?,?,?)',(f['region'],int(f['amount']),f['outcome']))\n rows=db.execute(\"select region,count(*),sum(outcome='commit'),sum(case when outcome='commit' then amount else 0 end) from logs group by region order by region\").fetchall()\n result={r:{'transactions':n,'committed':c,'committed_amount':a} for r,n,c,a in rows}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"region=us amount=120 outcome=commit\nregion=us amount=50 outcome=rollback\nregion=us amount=80 outcome=commit\nregion=eu amount=200 outcome=commit\nregion=eu amount=100 outcome=rollback","output_data_sample":"{\"eu\": {\"transactions\": 2, \"committed\": 1, \"committed_amount\": 200}, \"us\": {\"transactions\": 3, \"committed\": 2, \"committed_amount\": 200}}","transformation_instruction":"Parse the supplied raw log text and compute sQL conditional aggregate for transaction outcomes. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00o9kup2qj1v52um","kind":"contributor_item","title":"Submission 1V52UM","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'attempted': 0, 'protected': 0, 'ok_time': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); r = d[f['target']]; size = int(f['bytes']); r['attempted'] += size\n if f['outcome'] == 'ok': r['protected'] += size; r['ok_time'] += int(f['duration_s'])\n result = {t: {'byte_success_pct': round(v['protected'] * 100 / v['attempted'], 1), 'successful_throughput': round(v['protected'] / v['ok_time'], 2)} for t, v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"target=db outcome=ok bytes=500 duration_s=50\ntarget=db outcome=fail bytes=200 duration_s=40\ntarget=files outcome=ok bytes=900 duration_s=120\ntarget=files outcome=ok bytes=600 duration_s=90\ntarget=files outcome=fail bytes=300 duration_s=60","output_data_sample":"{\"db\": {\"byte_success_pct\": 71.4, \"successful_throughput\": 10.0}, \"files\": {\"byte_success_pct\": 83.3, \"successful_throughput\": 7.14}}","transformation_instruction":"Parse the supplied raw log text and compute backup reliability weighted by protected bytes. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00owkup2n4laskp0","kind":"contributor_item","title":"Submission LASKP0","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import sqlite3\n db=sqlite3.connect(':memory:');db.execute('create table logs(source text,severity text)')\n for line in lines:\n f=dict(x.split('=',1) for x in line.split());db.execute('insert into logs values(?,?)',(f['source'],f['severity']))\n rows=db.execute(\"select source,count(*) total,sum(severity='critical') critical from logs group by source having sum(severity='critical')>0 order by critical desc,source\").fetchall()\n result=[{'source':s,'total':n,'critical':c,'critical_pct':round(c*100/n,1)} for s,n,c in rows]\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"source=cpu severity=warn\nsource=cpu severity=critical\nsource=cpu severity=critical\nsource=disk severity=warn\nsource=disk severity=info\nsource=network severity=critical","output_data_sample":"[{\"source\": \"cpu\", \"total\": 3, \"critical\": 2, \"critical_pct\": 66.7}, {\"source\": \"network\", \"total\": 1, \"critical\": 1, \"critical_pct\": 100.0}]","transformation_instruction":"Parse the supplied raw log text and compute sQL group/HAVING for noisy alert sources. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00obkup2o6qpra12","kind":"contributor_item","title":"Submission QPRA12","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['device']].append((int(f['minute']), int(f['battery'])))\n result = {}\n for device, rows in sorted(d.items()):\n rows.sort(); elapsed = rows[-1][0] - rows[0][0]; drain = rows[0][1] - rows[-1][1]\n crossing = next((m for m,b in rows if b < 20), None)\n result[device] = {'drain_pct_per_hour': round(drain * 60 / elapsed, 1), 'first_below_20_minute': crossing}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"device=d1 minute=0 battery=90\ndevice=d1 minute=30 battery=75\ndevice=d1 minute=60 battery=48\ndevice=d2 minute=0 battery=50\ndevice=d2 minute=20 battery=19\ndevice=d2 minute=40 battery=15","output_data_sample":"{\"d1\": {\"drain_pct_per_hour\": 42.0, \"first_below_20_minute\": null}, \"d2\": {\"drain_pct_per_hour\": 52.5, \"first_below_20_minute\": 20}}","transformation_instruction":"Parse the supplied raw log text and compute battery drain and low-battery crossings by device. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00ohkup2cxvefzy1","kind":"contributor_item","title":"Submission VEFZY1","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'clients': set(), 'reconnects': 0})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); r = d[f['version']]; r['clients'].add(f['client']); r['reconnects'] += f['event'] == 'reconnect'\n result = {v: {'clients': len(x['clients']), 'reconnects_per_client': round(x['reconnects']/len(x['clients']), 2)} for v,x in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"version=1.0 client=a event=connect\nversion=1.0 client=a event=reconnect\nversion=1.0 client=b event=connect\nversion=1.0 client=b event=reconnect\nversion=2.0 client=c event=connect\nversion=2.0 client=d event=connect\nversion=2.0 client=d event=reconnect\nversion=2.0 client=d event=reconnect","output_data_sample":"{\"1.0\": {\"clients\": 2, \"reconnects_per_client\": 1.0}, \"2.0\": {\"clients\": 2, \"reconnects_per_client\": 1.0}}","transformation_instruction":"Parse the supplied raw log text and compute webSocket reconnect burden by client version. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00ofkup252igcsu3","kind":"contributor_item","title":"Submission IGCSU3","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n result = {}\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); read = int(f['read_mb']); written = int(f['written_mb'])\n result[f['shard']] = {'reclaimed_mb': int(f['before_mb']) - int(f['after_mb']), 'write_amplification': round(written / read, 2) if read else None}\n result = dict(sorted(result.items()))\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"shard=s1 read_mb=500 written_mb=650 before_mb=900 after_mb=600\nshard=s2 read_mb=400 written_mb=300 before_mb=700 after_mb=550\nshard=s3 read_mb=0 written_mb=0 before_mb=200 after_mb=200","output_data_sample":"{\"s1\": {\"reclaimed_mb\": 300, \"write_amplification\": 1.3}, \"s2\": {\"reclaimed_mb\": 150, \"write_amplification\": 0.75}, \"s3\": {\"reclaimed_mb\": 0, \"write_amplification\": null}}","transformation_instruction":"Parse the supplied raw log text and compute storage compaction amplification and reclaimed space. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00omkup2ilr2thfg","kind":"contributor_item","title":"Submission R2THFG","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n result={}\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); space=int(f['used_gb'])/int(f['total_gb']); inode=int(f['used_inodes'])/int(f['total_inodes']); limiting='space' if space>=inode else 'inodes'\n result[f['mount']]={'space_pct':round(space*100,1),'inode_pct':round(inode*100,1),'limiting_resource':limiting,'alert':max(space,inode)>=0.9}\n result=dict(sorted(result.items()))\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"mount=/data used_gb=850 total_gb=1000 used_inodes=40 total_inodes=100\nmount=/tmp used_gb=20 total_gb=100 used_inodes=95 total_inodes=100\nmount=/logs used_gb=450 total_gb=500 used_inodes=88 total_inodes=100","output_data_sample":"{\"/data\": {\"space_pct\": 85.0, \"inode_pct\": 40.0, \"limiting_resource\": \"space\", \"alert\": false}, \"/logs\": {\"space_pct\": 90.0, \"inode_pct\": 88.0, \"limiting_resource\": \"space\", \"alert\": true}, \"/tmp\": {\"space_pct\": 20.0, \"inode_pct\": 95.0, \"limiting_resource\": \"inodes\", \"alert\": true}}","transformation_instruction":"Parse the supplied raw log text and compute filesystem capacity risk using both bytes and inodes. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00oqkup21u82s5g3","kind":"contributor_item","title":"Submission 82S5G3","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d=defaultdict(lambda:defaultdict(int))\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); d[f['version']][f['session']]+=f['event']=='crash'\n result={v:{'sessions':len(s),'crash_free_pct':round(sum(x==0 for x in s.values())*100/len(s),1),'crash_events':sum(s.values())} for v,s in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"version=3.1 session=a event=start\nversion=3.1 session=a event=crash\nversion=3.1 session=b event=start\nversion=3.2 session=c event=start\nversion=3.2 session=d event=start\nversion=3.2 session=d event=crash\nversion=3.2 session=d event=crash","output_data_sample":"{\"3.1\": {\"sessions\": 2, \"crash_free_pct\": 50.0, \"crash_events\": 1}, \"3.2\": {\"sessions\": 2, \"crash_free_pct\": 50.0, \"crash_events\": 2}}","transformation_instruction":"Parse the supplied raw log text and compute crash-free sessions by application version. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00oukup2suc75nnz","kind":"contributor_item","title":"Submission C75NNZ","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d=defaultdict(lambda:{'total':0,'fallback':0,'keys':[]})\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); r=d[f['locale']]; r['total']+=1\n if f['source']!=f['locale']:r['fallback']+=1;r['keys'].append(f['key'])\n result={l:{'fallback_pct':round(v['fallback']*100/v['total'],1),'fallback_keys':sorted(v['keys'])} for l,v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"locale=fr key=home.title source=fr\nlocale=fr key=home.cta source=en\nlocale=de key=home.title source=de\nlocale=de key=home.cta source=en\nlocale=de key=help source=en\nlocale=es key=home.title source=es","output_data_sample":"{\"de\": {\"fallback_pct\": 66.7, \"fallback_keys\": [\"help\", \"home.cta\"]}, \"es\": {\"fallback_pct\": 0.0, \"fallback_keys\": []}, \"fr\": {\"fallback_pct\": 50.0, \"fallback_keys\": [\"home.cta\"]}}","transformation_instruction":"Parse the supplied raw log text and compute localization fallback rate by locale. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00ovkup2tdr6bkyj","kind":"contributor_item","title":"Submission R6BKYJ","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d=defaultdict(lambda:{'requests':0,'errors':0,'clients':set()})\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); r=d[f['version']]; status=int(f['status']); r['requests']+=1;r['errors']+=status>=400;r['clients'].add(f['client'])\n total=sum(v['requests'] for v in d.values())\n result={v:{'traffic_share_pct':round(x['requests']*100/total,1),'error_pct':round(x['errors']*100/x['requests'],1),'unique_clients':len(x['clients'])} for v,x in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"version=v1 status=200 client=a\nversion=v1 status=500 client=b\nversion=v1 status=200 client=a\nversion=v2 status=200 client=c\nversion=v2 status=201 client=d\nversion=v2 status=400 client=e","output_data_sample":"{\"v1\": {\"traffic_share_pct\": 50.0, \"error_pct\": 33.3, \"unique_clients\": 2}, \"v2\": {\"traffic_share_pct\": 50.0, \"error_pct\": 33.3, \"unique_clients\": 3}}","transformation_instruction":"Parse the supplied raw log text and compute aPI-version adoption and error rate. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00ookup2epikg5vo","kind":"contributor_item","title":"Submission IKG5VO","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d=defaultdict(lambda:{'delays':[],'missed':0})\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); r=d[f['job']]\n if f['actual']=='-':r['missed']+=1\n else:r['delays'].append(int(f['actual'])-int(f['scheduled']))\n result={j:{'missed':v['missed'],'max_lateness':max(v['delays'],default=None),'late_over_30':sum(x>30 for x in v['delays'])} for j,v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"job=hourly scheduled=100 actual=105\njob=hourly scheduled=200 actual=260\njob=hourly scheduled=300 actual=-\njob=daily scheduled=1000 actual=1010\njob=daily scheduled=2000 actual=2005","output_data_sample":"{\"daily\": {\"missed\": 0, \"max_lateness\": 10, \"late_over_30\": 0}, \"hourly\": {\"missed\": 1, \"max_lateness\": 60, \"late_over_30\": 1}}","transformation_instruction":"Parse the supplied raw log text and compute scheduled-job lateness and missed-run detection. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00oakup2dv87z6qt","kind":"contributor_item","title":"Submission 87Z6QT","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n rates = {}\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); allowed = int(f['allowed']); limited = int(f['limited'])\n rates[f['client']] = allowed / (allowed + limited)\n values = list(rates.values()); fairness = sum(values) ** 2 / (len(values) * sum(x*x for x in values))\n result = {'allow_pct': {k: round(v * 100, 1) for k, v in sorted(rates.items())}, 'jain_fairness': round(fairness, 4), 'worst_client': min(rates, key=rates.get)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"client=a allowed=90 limited=10\nclient=b allowed=45 limited=5\nclient=c allowed=40 limited=40\nclient=d allowed=18 limited=2","output_data_sample":"{\"allow_pct\": {\"a\": 90.0, \"b\": 90.0, \"c\": 50.0, \"d\": 90.0}, \"jain_fairness\": 0.9552, \"worst_client\": \"c\"}","transformation_instruction":"Parse the supplied raw log text and compute rate-limit fairness across clients. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00otkup2mkwfcv3p","kind":"contributor_item","title":"Submission WFCV3P","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d=defaultdict(lambda:{'bytes':0,'parts':0,'terminal':None})\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); r=d[f['upload']]\n if f['state']=='stored':r['bytes']+=int(f['bytes']);r['parts']+=1\n else:r['terminal']=f['state']\n result={'completed_bytes':sum(v['bytes'] for v in d.values() if v['terminal']=='complete'),'orphaned_bytes':sum(v['bytes'] for v in d.values() if v['terminal'] is None),'aborted_uploads':sum(v['terminal']=='abort' for v in d.values())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"upload=u1 part=1 bytes=100 state=stored\nupload=u1 part=2 bytes=120 state=stored\nupload=u1 part=0 bytes=0 state=complete\nupload=u2 part=1 bytes=200 state=stored\nupload=u2 part=2 bytes=180 state=stored\nupload=u3 part=1 bytes=90 state=stored\nupload=u3 part=0 bytes=0 state=abort","output_data_sample":"{\"completed_bytes\": 220, \"orphaned_bytes\": 380, \"aborted_uploads\": 1}","transformation_instruction":"Parse the supplied raw log text and compute multipart upload completion and orphaned-byte totals. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00ockup276m7zfts","kind":"contributor_item","title":"Submission M7ZFTS","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(dict)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['request']][f['stage']] = int(f['ms'])\n result = {}\n for req, stages in sorted(d.items()):\n total = sum(stages.values()); bottleneck = max(stages, key=stages.get)\n result[req] = {'total_ms': total, 'bottleneck': bottleneck, 'bottleneck_share_pct': round(stages[bottleneck] * 100 / total, 1)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"request=r1 stage=queue ms=20\nrequest=r1 stage=compute ms=80\nrequest=r1 stage=network ms=40\nrequest=r2 stage=queue ms=60\nrequest=r2 stage=compute ms=70\nrequest=r2 stage=network ms=20","output_data_sample":"{\"r1\": {\"total_ms\": 140, \"bottleneck\": \"compute\", \"bottleneck_share_pct\": 57.1}, \"r2\": {\"total_ms\": 150, \"bottleneck\": \"compute\", \"bottleneck_share_pct\": 46.7}}","transformation_instruction":"Parse the supplied raw log text and compute request stage contribution to end-to-end latency. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00odkup22yfz5jqh","kind":"contributor_item","title":"Submission FZ5JQH","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['hook']].append((int(f['attempt']), int(f['status'])))\n result = {}\n for hook, rows in sorted(d.items()):\n rows.sort(); success = next((a for a,s in rows if 200 <= s < 300), None)\n result[hook] = {'delivered': success is not None, 'attempts_to_delivery': success, 'retryable_failures': sum(s in (429,500,502,503,504) for _,s in rows)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"hook=h1 attempt=1 status=500\nhook=h1 attempt=2 status=200\nhook=h2 attempt=1 status=429\nhook=h2 attempt=2 status=503\nhook=h2 attempt=3 status=204\nhook=h3 attempt=1 status=400\nhook=h3 attempt=2 status=400","output_data_sample":"{\"h1\": {\"delivered\": true, \"attempts_to_delivery\": 2, \"retryable_failures\": 1}, \"h2\": {\"delivered\": true, \"attempts_to_delivery\": 3, \"retryable_failures\": 2}, \"h3\": {\"delivered\": false, \"attempts_to_delivery\": null, \"retryable_failures\": 0}}","transformation_instruction":"Parse the supplied raw log text and compute webhook eventual success and attempts-to-delivery. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00oekup26pez9e6v","kind":"contributor_item","title":"Submission EZ9E6V","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(list)\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); d[f['pod']].append((int(f['throttled_ms']), int(f['latency_ms'])))\n result = {}\n for pod, rows in sorted(d.items()):\n throttled = [lat for throttle,lat in rows if throttle > 0]; baseline = [lat for throttle,lat in rows if throttle == 0]\n result[pod] = {'throttled_samples': len(throttled), 'latency_increase_ms': round(sum(throttled)/len(throttled) - sum(baseline)/len(baseline), 1) if throttled and baseline else None}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"pod=a throttled_ms=0 latency_ms=80\npod=a throttled_ms=20 latency_ms=120\npod=a throttled_ms=40 latency_ms=180\npod=b throttled_ms=0 latency_ms=70\npod=b throttled_ms=10 latency_ms=75","output_data_sample":"{\"a\": {\"throttled_samples\": 2, \"latency_increase_ms\": 70.0}, \"b\": {\"throttled_samples\": 1, \"latency_increase_ms\": 5.0}}","transformation_instruction":"Parse the supplied raw log text and compute cPU throttling impact on latency. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00oikup20h99qukz","kind":"contributor_item","title":"Submission 99QUKZ","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d = defaultdict(lambda: {'attempts': 0, 'denied': 0, 'actors': set()})\n for line in lines:\n f = dict(x.split('=', 1) for x in line.split()); kind = f['resource'].split('://')[0]; r=d[kind]; r['attempts']+=1\n if f['outcome']=='denied': r['denied']+=1; r['actors'].add(f['actor'])\n result={k:{'denial_pct':round(v['denied']*100/v['attempts'],1),'affected_actors':sorted(v['actors'])} for k,v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"actor=u1 resource=s3://a action=read outcome=denied\nactor=u1 resource=s3://b action=write outcome=denied\nactor=u2 resource=db://orders action=read outcome=allowed\nactor=u2 resource=db://users action=write outcome=denied\nactor=u3 resource=s3://c action=read outcome=allowed","output_data_sample":"{\"db\": {\"denial_pct\": 50.0, \"affected_actors\": [\"u2\"]}, \"s3\": {\"denial_pct\": 66.7, \"affected_actors\": [\"u1\"]}}","transformation_instruction":"Parse the supplied raw log text and compute permission-denied concentration by resource class. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00ojkup2imj8tf6s","kind":"contributor_item","title":"Submission J8TF6S","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from datetime import date\n rows=[]\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); days=(date.fromisoformat(f['expires'])-date.fromisoformat(f['observed'])).days\n rows.append({'host':f['host'],'days_remaining':days,'risk':'expired' if days<0 else 'urgent' if days<=14 else 'normal'})\n result={'certificates':sorted(rows,key=lambda x:x['days_remaining']),'urgent_or_expired':sum(x['risk']!='normal' for x in rows)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"observed=2026-08-18 host=api expires=2026-08-25 issuer=A\nobserved=2026-08-18 host=cdn expires=2026-10-01 issuer=B\nobserved=2026-08-18 host=old expires=2026-08-17 issuer=A","output_data_sample":"{\"certificates\": [{\"host\": \"old\", \"days_remaining\": -1, \"risk\": \"expired\"}, {\"host\": \"api\", \"days_remaining\": 7, \"risk\": \"urgent\"}, {\"host\": \"cdn\", \"days_remaining\": 44, \"risk\": \"normal\"}], \"urgent_or_expired\": 2}","transformation_instruction":"Parse the supplied raw log text and compute certificate expiry risk relative to observation time. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00olkup2wpjum25a","kind":"contributor_item","title":"Submission JUM25A","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict,Counter\n order=['cart','shipping','payment','complete']; d=defaultdict(set)\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); d[f['session']].add(f['event'])\n abandon=Counter()\n for events in d.values():\n if 'complete' not in events: abandon[max((e for e in events),key=order.index)]+=1\n result={'sessions':len(d),'completed':sum('complete' in x for x in d.values()),'abandoned_after':dict(sorted(abandon.items(),key=lambda x:order.index(x[0])))}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"session=s1 event=cart\nsession=s1 event=shipping\nsession=s1 event=payment\nsession=s1 event=complete\nsession=s2 event=cart\nsession=s2 event=shipping\nsession=s3 event=cart\nsession=s3 event=shipping\nsession=s3 event=payment","output_data_sample":"{\"sessions\": 3, \"completed\": 1, \"abandoned_after\": {\"shipping\": 1, \"payment\": 1}}","transformation_instruction":"Parse the supplied raw log text and compute checkout funnel abandonment stage. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00okkup2fs4ni4yc","kind":"contributor_item","title":"Submission 4NI4YC","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d=defaultdict(lambda:{'correct':0,'total':0,'lat':[]})\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); r=d[f['model']]; r['total']+=1; r['correct']+=f['prediction']==f['truth']; r['lat'].append(int(f['latency']))\n result={m:{'accuracy_pct':round(v['correct']*100/v['total'],1),'median_latency_ms':__import__('statistics').median(v['lat'])} for m,v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"model=v1 prediction=cat truth=cat latency=40\nmodel=v1 prediction=dog truth=cat latency=45\nmodel=v1 prediction=dog truth=dog latency=50\nmodel=v2 prediction=cat truth=cat latency=55\nmodel=v2 prediction=dog truth=dog latency=60\nmodel=v2 prediction=bird truth=bird latency=70","output_data_sample":"{\"v1\": {\"accuracy_pct\": 66.7, \"median_latency_ms\": 45}, \"v2\": {\"accuracy_pct\": 100.0, \"median_latency_ms\": 60}}","transformation_instruction":"Parse the supplied raw log text and compute inference accuracy proxy and latency by model version. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00opkup2n21qnh1a","kind":"contributor_item","title":"Submission 1QNH1A","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d=defaultdict(lambda:[0,0,0,0.0])\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); r=d[f['campaign']]; vals=[int(f['impressions']),int(f['clicks']),int(f['conversions']),float(f['spend'])]\n for i,x in enumerate(vals):r[i]+=x\n result={c:{'ctr_pct':round(v[1]*100/v[0],2),'conversion_pct_of_clicks':round(v[2]*100/v[1],2),'cost_per_conversion':round(v[3]/v[2],2)} for c,v in sorted(d.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"campaign=a impressions=1000 clicks=50 conversions=5 spend=100\ncampaign=a impressions=500 clicks=20 conversions=2 spend=40\ncampaign=b impressions=800 clicks=80 conversions=4 spend=160\ncampaign=b impressions=200 clicks=10 conversions=1 spend=30","output_data_sample":"{\"a\": {\"ctr_pct\": 4.67, \"conversion_pct_of_clicks\": 10.0, \"cost_per_conversion\": 20.0}, \"b\": {\"ctr_pct\": 9.0, \"conversion_pct_of_clicks\": 5.56, \"cost_per_conversion\": 38.0}}","transformation_instruction":"Parse the supplied raw log text and compute advertising click-through and spend per conversion. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00onkup21n8t2vy3","kind":"contributor_item","title":"Submission 8T2VY3","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n d=defaultdict(list); offenders=[]\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); offset=int(f['offset_ms']); d[f['source']].append(abs(offset))\n if abs(offset)>50: offenders.append(f['node'])\n result={'by_source':{s:{'mean_abs_skew_ms':round(sum(v)/len(v),1),'max_abs_skew_ms':max(v)} for s,v in sorted(d.items())},'outside_50ms':sorted(offenders)}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"node=n1 offset_ms=12 source=ntp-a\nnode=n2 offset_ms=-85 source=ntp-a\nnode=n3 offset_ms=140 source=ntp-b\nnode=n4 offset_ms=-20 source=ntp-b","output_data_sample":"{\"by_source\": {\"ntp-a\": {\"mean_abs_skew_ms\": 48.5, \"max_abs_skew_ms\": 85}, \"ntp-b\": {\"mean_abs_skew_ms\": 80.0, \"max_abs_skew_ms\": 140}}, \"outside_50ms\": [\"n2\", \"n3\"]}","transformation_instruction":"Parse the supplied raw log text and compute clock-skew summary and nodes outside tolerance. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00orkup2s7pf8kul","kind":"contributor_item","title":"Submission PF8KUL","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n from collections import defaultdict\n starts={}; durations=defaultdict(list)\n for line in lines:\n f=dict(x.split('=',1) for x in line.split()); g=f['group']; t=int(f['ts'])\n if f['event']=='rebalance_start':starts[g]=t\n elif g in starts:durations[g].append(t-starts.pop(g))\n result={g:{'rebalances':len(v),'total_unavailable_s':sum(v),'max_rebalance_s':max(v)} for g,v in sorted(durations.items())}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"group=g1 event=rebalance_start ts=100\ngroup=g1 event=rebalance_end ts=112\ngroup=g1 event=rebalance_start ts=200\ngroup=g1 event=rebalance_end ts=245\ngroup=g2 event=rebalance_start ts=300\ngroup=g2 event=rebalance_end ts=308","output_data_sample":"{\"g1\": {\"rebalances\": 2, \"total_unavailable_s\": 57, \"max_rebalance_s\": 45}, \"g2\": {\"rebalances\": 1, \"total_unavailable_s\": 8, \"max_rebalance_s\": 8}}","transformation_instruction":"Parse the supplied raw log text and compute broker consumer-group rebalance stability. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00oxkup2yrbxqlql","kind":"contributor_item","title":"Submission BXQLQL","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import sqlite3\n db=sqlite3.connect(':memory:');db.execute('create table logs(product text,type text,amount integer)')\n for line in lines:\n f=dict(x.split('=',1) for x in line.split());db.execute('insert into logs values(?,?,?)',(f['product'],f['type'],int(f['amount'])))\n rows=db.execute(\"select product,sum(case when type='sale' then amount else 0 end),sum(case when type='refund' then amount else 0 end) from logs group by product order by product\").fetchall()\n result={p:{'gross':gross,'refunds':refund,'net':gross-refund,'refund_pct':round(refund*100/gross,1)} for p,gross,refund in rows}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"product=a type=sale amount=100\nproduct=a type=sale amount=80\nproduct=a type=refund amount=30\nproduct=b type=sale amount=200\nproduct=b type=refund amount=50","output_data_sample":"{\"a\": {\"gross\": 180, \"refunds\": 30, \"net\": 150, \"refund_pct\": 16.7}, \"b\": {\"gross\": 200, \"refunds\": 50, \"net\": 150, \"refund_pct\": 25.0}}","transformation_instruction":"Parse the supplied raw log text and compute sQL revenue and refund net by product. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."} {"id":"cmsxm0nwe00oykup2j0my35xk","kind":"contributor_item","title":"Submission MY35XK","provisional":false,"output_code":"import json\n\ndef transform(input):\n lines = input.strip().splitlines()\n import sqlite3\n db=sqlite3.connect(':memory:');db.execute('create table logs(sensor text,ts integer,value integer)')\n for line in lines:\n f=dict(x.split('=',1) for x in line.split());db.execute('insert into logs values(?,?,?)',(f['sensor'],int(f['ts']),int(f['value'])))\n rows=db.execute('with d as (select sensor,ts,value-lag(value) over(partition by sensor order by ts) delta from logs) select sensor,ts,delta from d where delta is not null order by abs(delta) desc,sensor limit 1').fetchall()\n result={'sensor':rows[0][0],'timestamp':rows[0][1],'delta':rows[0][2]}\n return result if isinstance(result, str) else json.dumps(result, ensure_ascii=False)\n","input_data_sample":"sensor=a ts=1 value=10\nsensor=a ts=2 value=12\nsensor=a ts=3 value=30\nsensor=b ts=1 value=50\nsensor=b ts=2 value=40\nsensor=b ts=3 value=43","output_data_sample":"{\"sensor\": \"a\", \"timestamp\": 3, \"delta\": 18}","transformation_instruction":"Parse the supplied raw log text and compute sQL window function for largest reading jump. Ignore or specially handle the boundary cases encoded in the fixture, preserve deterministic ordering, and return the resulting metrics as a JSON string."}