{"abstract":"The winner of an each-way bet receives only the win part, or the last paying place is missed.","category":"Betting odds conversion","checks":9,"contract":"Each-way settlement with dead heats. stake_cents is the stake of each part (win and place). odds is fractional \"a/b\"; terms \"1/4\" or \"1/5\" is the place fraction of the odds. position is the finishing position shared by dead_heat runners (1 = no dead heat), occupying positions position .. position + dead_heat - 1. Win part: paid if position == 1 with stake / dead_heat at 1 + a/b. Place part: paid if position <= places_paid, with stake scaled by min(dead_heat, places_paid - position + 1) / dead_heat at 1 + (a/b) * terms. Return the total return in cents rounded down.","evaluation_group":"w2-odds-conversion-each-way-dead-heat","failed_approach":"Excluding the winner from the place part misreads each-way as win-or-place.","family":"w2-odds-conversion-each-way-dead-heat-place-eligibility","id":"FA-84501","implementations":{"attempt":{"sha256":"e0246cd78f36c0951efe83f18206c3530b52d75e4cdb16bb61017f262b4359f9","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom fractions import Fraction\nimport math\nN = 1\nobservations = []\ndef solve(stake_cents, odds, terms, position, places_paid, dead_heat):\n    a, b = map(int, odds.split('/'))\n    f = Fraction(a, b)\n    tn, td = map(int, terms.split('/'))\n    place_f = f * Fraction(tn, td)\n    ret = Fraction(0)\n    if position == 1:\n        ret += Fraction(stake_cents, dead_heat) * (1 + f)\n    if 1 < position <= places_paid:\n        share = Fraction(min(dead_heat, places_paid - position + 1), dead_heat)\n        ret += stake_cents * share * (1 + place_f)\n    return math.floor(ret)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '14/2', '1/5', 1, 4, 2), 1600),\n  ('regression: place eligibility', (1000, '1/5', '1/4', 2, 2, 3), 350),\n  ('variant scenario 1', (250, '2/5', '1/4', 3, 4, 3), 183),\n  ('variant scenario 2', (100, '27/1', '1/5', 1, 4, 2), 2040)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '16/1', '1/5', 1, 2, 1), 5300),\n  ('regression: place eligibility', (250, '17/1', '1/5', 3, 3, 2), 550),\n  ('variant scenario 1', (250, '19/2', '1/5', 2, 5, 2), 725),\n  ('variant scenario 2', (250, '21/5', '1/5', 2, 5, 3), 460)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '10/2', '1/4', 1, 3, 1), 2062),\n  ('regression: place eligibility', (1000, '1/1', '1/4', 2, 2, 2), 625),\n  ('variant scenario 1', (100, '24/1', '1/4', 3, 2, 3), 0),\n  ('variant scenario 2', (100, '2/2', '1/5', 4, 3, 2), 0)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (500, '18/1', '1/5', 1, 4, 2), 7050),\n  ('regression: place eligibility', (250, '11/1', '1/5', 3, 3, 1), 800),\n  ('variant scenario 1', (250, '28/5', '1/4', 3, 2, 1), 0),\n  ('variant scenario 2', (250, '31/4', '1/5', 2, 4, 3), 637)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (1000, '15/2', '1/5', 1, 4, 3), 5333),\n  ('regression: place eligibility', (250, '29/1', '1/5', 2, 2, 1), 1700),\n  ('variant scenario 1', (500, '19/5', '1/5', 2, 4, 1), 880),\n  ('variant scenario 2', (500, '33/1', '1/4', 3, 5, 3), 4625)]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"9e1783677dc83edbe15b7b2894bf33e328fbac01774ceb855d79f4e3671132e7","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom fractions import Fraction\nimport math\nN = 1\nobservations = []\ndef solve(stake_cents, odds, terms, position, places_paid, dead_heat):\n    a, b = map(int, odds.split('/'))\n    f = Fraction(a, b)\n    tn, td = map(int, terms.split('/'))\n    place_f = f * Fraction(tn, td)\n    ret = Fraction(0)\n    if position == 1:\n        ret += Fraction(stake_cents, dead_heat) * (1 + f)\n    if position < places_paid:\n        share = Fraction(min(dead_heat, places_paid - position + 1), dead_heat)\n        ret += stake_cents * share * (1 + place_f)\n    return math.floor(ret)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '14/2', '1/5', 1, 4, 2), 1600),\n  ('regression: place eligibility', (1000, '1/5', '1/4', 2, 2, 3), 350),\n  ('variant scenario 1', (250, '2/5', '1/4', 3, 4, 3), 183),\n  ('variant scenario 2', (100, '27/1', '1/5', 1, 4, 2), 2040)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '16/1', '1/5', 1, 2, 1), 5300),\n  ('regression: place eligibility', (250, '17/1', '1/5', 3, 3, 2), 550),\n  ('variant scenario 1', (250, '19/2', '1/5', 2, 5, 2), 725),\n  ('variant scenario 2', (250, '21/5', '1/5', 2, 5, 3), 460)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '10/2', '1/4', 1, 3, 1), 2062),\n  ('regression: place eligibility', (1000, '1/1', '1/4', 2, 2, 2), 625),\n  ('variant scenario 1', (100, '24/1', '1/4', 3, 2, 3), 0),\n  ('variant scenario 2', (100, '2/2', '1/5', 4, 3, 2), 0)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (500, '18/1', '1/5', 1, 4, 2), 7050),\n  ('regression: place eligibility', (250, '11/1', '1/5', 3, 3, 1), 800),\n  ('variant scenario 1', (250, '28/5', '1/4', 3, 2, 1), 0),\n  ('variant scenario 2', (250, '31/4', '1/5', 2, 4, 3), 637)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (1000, '15/2', '1/5', 1, 4, 3), 5333),\n  ('regression: place eligibility', (250, '29/1', '1/5', 2, 2, 1), 1700),\n  ('variant scenario 1', (500, '19/5', '1/5', 2, 4, 1), 880),\n  ('variant scenario 2', (500, '33/1', '1/4', 3, 5, 3), 4625)]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"f82fae75f3a978ea4cd5afcf5fcf56e8ed9d8c802b4c1bc8e7891db2d03b60dc","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom fractions import Fraction\nimport math\nN = 1\nobservations = []\ndef solve(stake_cents, odds, terms, position, places_paid, dead_heat):\n    a, b = map(int, odds.split('/'))\n    f = Fraction(a, b)\n    tn, td = map(int, terms.split('/'))\n    place_f = f * Fraction(tn, td)\n    ret = Fraction(0)\n    if position == 1:\n        ret += Fraction(stake_cents, dead_heat) * (1 + f)\n    if position <= places_paid:\n        share = Fraction(min(dead_heat, places_paid - position + 1), dead_heat)\n        ret += stake_cents * share * (1 + place_f)\n    return math.floor(ret)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '14/2', '1/5', 1, 4, 2), 1600),\n  ('regression: place eligibility', (1000, '1/5', '1/4', 2, 2, 3), 350),\n  ('variant scenario 1', (250, '2/5', '1/4', 3, 4, 3), 183),\n  ('variant scenario 2', (100, '27/1', '1/5', 1, 4, 2), 2040)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '16/1', '1/5', 1, 2, 1), 5300),\n  ('regression: place eligibility', (250, '17/1', '1/5', 3, 3, 2), 550),\n  ('variant scenario 1', (250, '19/2', '1/5', 2, 5, 2), 725),\n  ('variant scenario 2', (250, '21/5', '1/5', 2, 5, 3), 460)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (250, '10/2', '1/4', 1, 3, 1), 2062),\n  ('regression: place eligibility', (1000, '1/1', '1/4', 2, 2, 2), 625),\n  ('variant scenario 1', (100, '24/1', '1/4', 3, 2, 3), 0),\n  ('variant scenario 2', (100, '2/2', '1/5', 4, 3, 2), 0)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (500, '18/1', '1/5', 1, 4, 2), 7050),\n  ('regression: place eligibility', (250, '11/1', '1/5', 3, 3, 1), 800),\n  ('variant scenario 1', (250, '28/5', '1/4', 3, 2, 1), 0),\n  ('variant scenario 2', (250, '31/4', '1/5', 2, 4, 3), 637)],\n [('control winner', (1000, '4/1', '1/4', 1, 3, 1), 7000),\n  ('control placed', (1000, '4/1', '1/4', 2, 3, 1), 2000),\n  ('control unplaced', (1000, '4/1', '1/4', 4, 3, 1), 0),\n  ('boundary dead heat for the win', (1000, '4/1', '1/5', 1, 3, 2), 4300),\n  ('boundary dead heat for last place', (1000, '10/1', '1/5', 3, 3, 2), 1500),\n  ('regression: place eligibility', (1000, '15/2', '1/5', 1, 4, 3), 5333),\n  ('regression: place eligibility', (250, '29/1', '1/5', 2, 2, 1), 1700),\n  ('variant scenario 1', (500, '19/5', '1/5', 2, 4, 1), 880),\n  ('variant scenario 2', (500, '33/1', '1/4', 3, 5, 3), 4625)]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"Stipulated, bounded toy contract stated in the contract field; not a claim of conformance with any operator, exchange or regulator rule set. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-odds-conversion-each-way-dead-heat-place-eligibility","generated_at":"2026-09-29T14:50:31.573400+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Horse-racing settlement applies place terms and dead-heat reductions to each part separately.","repair":"Pay the place part for any position up to and including places_paid.","root_cause":"The place condition uses position < places_paid.","sha256":"8c79f6b300b665c80585b3abecd9cc6448c8edfe9be2bd65a31e1e7894cf1b52","title":"Winner excluded from the place part or last place unpaid · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":43.79,"exit_code":1,"observations":[{"actual":5000,"check":"control winner","expected":7000,"passed":false},{"actual":2000,"check":"control placed","expected":2000,"passed":true},{"actual":0,"check":"control unplaced","expected":0,"passed":true},{"actual":2500,"check":"boundary dead heat for the win","expected":4300,"passed":false},{"actual":1500,"check":"boundary dead heat for last place","expected":1500,"passed":true},{"actual":1000,"check":"regression: place eligibility","expected":1600,"passed":false},{"actual":350,"check":"regression: place eligibility","expected":350,"passed":true},{"actual":183,"check":"variant scenario 1","expected":183,"passed":true},{"actual":1400,"check":"variant scenario 2","expected":2040,"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control winner\", \"actual\": 5000, \"expected\": 7000, \"passed\": false}, {\"check\": \"control placed\", \"actual\": 2000, \"expected\": 2000, \"passed\": true}, {\"check\": \"control unplaced\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"boundary dead heat for the win\", \"actual\": 2500, \"expected\": 4300, \"passed\": false}, {\"check\": \"boundary dead heat for last place\", \"actual\": 1500, \"expected\": 1500, \"passed\": true}, {\"check\": \"regression: place eligibility\", \"actual\": 1000, \"expected\": 1600, \"passed\": false}, {\"check\": \"regression: place eligibility\", \"actual\": 350, \"expected\": 350, \"passed\": true}, {\"check\": \"variant scenario 1\", \"actual\": 183, \"expected\": 183, \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": 1400, \"expected\": 2040, \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.047,"exit_code":1,"observations":[{"actual":7000,"check":"control winner","expected":7000,"passed":true},{"actual":2000,"check":"control placed","expected":2000,"passed":true},{"actual":0,"check":"control unplaced","expected":0,"passed":true},{"actual":4300,"check":"boundary dead heat for the win","expected":4300,"passed":true},{"actual":0,"check":"boundary dead heat for last place","expected":1500,"passed":false},{"actual":1600,"check":"regression: place eligibility","expected":1600,"passed":true},{"actual":0,"check":"regression: place eligibility","expected":350,"passed":false},{"actual":183,"check":"variant scenario 1","expected":183,"passed":true},{"actual":2040,"check":"variant scenario 2","expected":2040,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control winner\", \"actual\": 7000, \"expected\": 7000, \"passed\": true}, {\"check\": \"control placed\", \"actual\": 2000, \"expected\": 2000, \"passed\": true}, {\"check\": \"control unplaced\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"boundary dead heat for the win\", \"actual\": 4300, \"expected\": 4300, \"passed\": true}, {\"check\": \"boundary dead heat for last place\", \"actual\": 0, \"expected\": 1500, \"passed\": false}, {\"check\": \"regression: place eligibility\", \"actual\": 1600, \"expected\": 1600, \"passed\": true}, {\"check\": \"regression: place eligibility\", \"actual\": 0, \"expected\": 350, \"passed\": false}, {\"check\": \"variant scenario 1\", \"actual\": 183, \"expected\": 183, \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": 2040, \"expected\": 2040, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":43.65,"exit_code":0,"observations":[{"actual":7000,"check":"control winner","expected":7000,"passed":true},{"actual":2000,"check":"control placed","expected":2000,"passed":true},{"actual":0,"check":"control unplaced","expected":0,"passed":true},{"actual":4300,"check":"boundary dead heat for the win","expected":4300,"passed":true},{"actual":1500,"check":"boundary dead heat for last place","expected":1500,"passed":true},{"actual":1600,"check":"regression: place eligibility","expected":1600,"passed":true},{"actual":350,"check":"regression: place eligibility","expected":350,"passed":true},{"actual":183,"check":"variant scenario 1","expected":183,"passed":true},{"actual":2040,"check":"variant scenario 2","expected":2040,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control winner\", \"actual\": 7000, \"expected\": 7000, \"passed\": true}, {\"check\": \"control placed\", \"actual\": 2000, \"expected\": 2000, \"passed\": true}, {\"check\": \"control unplaced\", \"actual\": 0, \"expected\": 0, \"passed\": true}, {\"check\": \"boundary dead heat for the win\", \"actual\": 4300, \"expected\": 4300, \"passed\": true}, {\"check\": \"boundary dead heat for last place\", \"actual\": 1500, \"expected\": 1500, \"passed\": true}, {\"check\": \"regression: place eligibility\", \"actual\": 1600, \"expected\": 1600, \"passed\": true}, {\"check\": \"regression: place eligibility\", \"actual\": 350, \"expected\": 350, \"passed\": true}, {\"check\": \"variant scenario 1\", \"actual\": 183, \"expected\": 183, \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": 2040, \"expected\": 2040, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}