{"abstract":"East-west distances are wildly wrong while north-south ones are fine.","category":"Seismic magnitude estimation","checks":8,"contract":"event [lat, lon] and stations [code, lat, lon] in degrees. Haversine distance with R = 6371 km. Keep stations within 600 km inclusive. Return [[code, km rounded 0.1, degrees rounded 0.001]] sorted by distance then code.","contract_signature":"event, stations","evaluation_group":"w2-seismic_magnitude_estimation-epicentral-distance","failed_approach":"cos(dphi) is not the product of the latitude cosines.","family":"w2-seismic_magnitude_estimation-epicentral-distance-latitude-cosine-units","id":"FA-71531","implementations":{"attempt":{"sha256":"a7b69b7dabae66fae11783498474977290ea25a6353a0f6047976dd64b17b0a0","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(event, stations):\n    R = 6371.0\n    out = []\n    for code, la, lo in stations:\n        p1 = math.radians(event[0])\n        p2 = math.radians(la)\n        dphi = p2 - p1\n        dl = math.radians(lo - event[1])\n        a = math.sin(dphi / 2) ** 2 + math.cos(dphi) * math.sin(dl / 2) ** 2\n        d = 2 * R * math.asin(math.sqrt(min(1.0, a)))\n        if d <= 600:\n            out.append([code, round(d, 1), round(math.degrees(d / R), 3)])\n    return sorted(out, key=lambda r: (r[1], r[0]))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['network 2', [[44.56, -117.35], [['S00', 33.87, -122.39], ['S01', 32.58, -119.0], ['S02', 30.34, -116.47], ['S03', 43.88, -121.21], ['S04', 32.47, -111.54]]], [['S03', 316.7, 2.848]]], ['network 3', [[37.38, -120.81], [['S00', 37.99, -119.17], ['S01', 44.87, -121.53], ['S02', 36.92, -112.06], ['S03', 45.59, -124.41], ['S04', 48.41, -124.22], ['S05', 45.33, -114.43]]], [['S00', 159.5, 1.434]]], ['network 5', [[41.23, -114.32], [['S00', 48.44, -112.36], ['S01', 39.92, -111.66], ['S02', 31.63, -118.69], ['S03', 44.86, -116.63], ['S04', 45.92, -112.0], ['S05', 31.93, -116.6]]], [['S01', 267.7, 2.408], ['S03', 445.1, 4.003], ['S04', 553.9, 4.981]]], ['network 6', [[42.93, -114.98], [['S00', 41.78, -113.99], ['S01', 46.04, -120.17], ['S02', 39.37, -111.82], ['S03', 48.06, -111.76], ['S04', 45.02, -119.59]]], [['S00', 151.6, 1.363], ['S04', 435.9, 3.92], ['S02', 476.0, 4.281], ['S01', 537.5, 4.834]]], ['network 7', [[38.24, -116.31], [['S00', 44.82, -111.25], ['S01', 41.96, -117.22], ['S02', 45.77, -122.79]]], [['S01', 420.8, 3.784]]], ['network 8', [[37.27, -120.03], [['S00', 32.27, -124.77], ['S01', 36.2, -116.4], ['S02', 46.93, -122.1], ['S03', 48.81, -114.9]]], [['S01', 344.6, 3.099]]], ['network 9', [[39.63, -120.96], [['S00', 47.23, -111.26], ['S01', 41.57, -124.4], ['S02', 43.29, -122.87], ['S03', 45.0, -116.27], ['S04', 49.12, -110.82], ['S05', 33.21, -123.87]]], [['S01', 361.7, 3.253], ['S02', 437.0, 3.93]]], ['network 12', [[39.75, -115.38], [['S00', 39.91, -122.96], ['S01', 40.0, -124.22], ['S02', 45.24, -114.12], ['S03', 36.65, -117.11], ['S04', 39.11, -115.83], ['S05', 48.17, -111.51]]], [['S04', 81.0, 0.728], ['S03', 376.4, 3.385]]]], [['network 6', [[42.93, -114.98], [['S00', 41.78, -113.99], ['S01', 46.04, -120.17], ['S02', 39.37, -111.82], ['S03', 48.06, -111.76], ['S04', 45.02, -119.59]]], [['S00', 151.6, 1.363], ['S04', 435.9, 3.92], ['S02', 476.0, 4.281], ['S01', 537.5, 4.834]]], ['network 9', [[39.63, -120.96], [['S00', 47.23, -111.26], ['S01', 41.57, -124.4], ['S02', 43.29, -122.87], ['S03', 45.0, -116.27], ['S04', 49.12, -110.82], ['S05', 33.21, -123.87]]], [['S01', 361.7, 3.253], ['S02', 437.0, 3.93]]], ['network 12', [[39.75, -115.38], [['S00', 39.91, -122.96], ['S01', 40.0, -124.22], ['S02', 45.24, -114.12], ['S03', 36.65, -117.11], ['S04', 39.11, -115.83], ['S05', 48.17, -111.51]]], [['S04', 81.0, 0.728], ['S03', 376.4, 3.385]]], ['network 14', [[36.07, -121.76], [['S00', 47.41, -116.96], ['S01', 36.95, -119.89], ['S02', 31.53, -122.92], ['S03', 32.44, -118.51], ['S04', 35.33, -113.8]]], [['S01', 193.7, 1.742], ['S03', 502.1, 4.515], ['S02', 516.1, 4.641]]], ['network 16', [[38.62, -114.83], [['S00', 44.48, -122.4], ['S01', 39.21, -110.38]]], [['S01', 390.5, 3.512]]], ['network 17', [[40.22, -115.43], [['S00', 34.58, -110.93], ['S01', 32.33, -116.94], ['S02', 42.07, -117.12]]], [['S02', 249.7, 2.245]]], ['network 18', [[36.81, -120.08], [['S00', 45.93, -122.19], ['S01', 42.64, -115.55], ['S02', 44.75, -122.18], ['S03', 41.26, -115.09], ['S04', 43.24, -121.66]]], []], ['network 20', [[44.06, -114.59], [['S00', 39.32, -110.59], ['S01', 36.71, -114.59], ['S02', 38.77, -120.99], ['S03', 31.6, -120.79]]], []]], [['network 9', [[39.63, -120.96], [['S00', 47.23, -111.26], ['S01', 41.57, -124.4], ['S02', 43.29, -122.87], ['S03', 45.0, -116.27], ['S04', 49.12, -110.82], ['S05', 33.21, -123.87]]], [['S01', 361.7, 3.253], ['S02', 437.0, 3.93]]], ['network 23', [[44.25, -117.92], [['S00', 44.39, -122.69], ['S01', 37.18, -114.68], ['S02', 44.85, -124.42], ['S03', 42.91, -119.64]]], [['S03', 203.5, 1.83], ['S00', 379.7, 3.415], ['S02', 519.2, 4.67]]], ['network 24', [[42.12, -121.58], [['S00', 39.06, -115.35], ['S01', 41.41, -121.4]]], [['S01', 80.3, 0.723]]], ['network 25', [[38.77, -114.31], [['S00', 43.94, -110.09], ['S01', 47.99, -124.55], ['S02', 48.6, -124.13], ['S03', 47.11, -121.53]]], []], ['network 26', [[42.47, -114.8], [['S00', 36.7, -111.1], ['S01', 46.83, -118.43], ['S02', 34.65, -112.02]]], [['S01', 563.3, 5.066]]], ['network 28', [[36.13, -121.64], [['S00', 30.99, -116.87], ['S01', 48.63, -114.1], ['S02', 30.53, -117.85], ['S03', 31.41, -124.62], ['S04', 35.71, -124.61]]], [['S04', 271.5, 2.442], ['S03', 592.6, 5.33]]], ['co-located station', [[40.0, -120.0], [['AAA', 40.0, -120.0], ['BBB', 41.0, -120.0]]], [['AAA', 0.0, 0.0], ['BBB', 111.2, 1.0]]], ['equal distance tie', [[0.0, 0.0], [['ZZZ', 1.0, 0.0], ['AAA', -1.0, 0.0]]], [['AAA', 111.2, 1.0], ['ZZZ', 111.2, 1.0]]]], [['network 2', [[44.56, -117.35], [['S00', 33.87, -122.39], ['S01', 32.58, -119.0], ['S02', 30.34, -116.47], ['S03', 43.88, -121.21], ['S04', 32.47, -111.54]]], [['S03', 316.7, 2.848]]], ['network 3', [[37.38, -120.81], [['S00', 37.99, -119.17], ['S01', 44.87, -121.53], ['S02', 36.92, -112.06], ['S03', 45.59, -124.41], ['S04', 48.41, -124.22], ['S05', 45.33, -114.43]]], [['S00', 159.5, 1.434]]], ['network 5', [[41.23, -114.32], [['S00', 48.44, -112.36], ['S01', 39.92, -111.66], ['S02', 31.63, -118.69], ['S03', 44.86, -116.63], ['S04', 45.92, -112.0], ['S05', 31.93, -116.6]]], [['S01', 267.7, 2.408], ['S03', 445.1, 4.003], ['S04', 553.9, 4.981]]], ['network 6', [[42.93, -114.98], [['S00', 41.78, -113.99], ['S01', 46.04, -120.17], ['S02', 39.37, -111.82], ['S03', 48.06, -111.76], ['S04', 45.02, -119.59]]], [['S00', 151.6, 1.363], ['S04', 435.9, 3.92], ['S02', 476.0, 4.281], ['S01', 537.5, 4.834]]], ['network 7', [[38.24, -116.31], [['S00', 44.82, -111.25], ['S01', 41.96, -117.22], ['S02', 45.77, -122.79]]], [['S01', 420.8, 3.784]]], ['network 8', [[37.27, -120.03], [['S00', 32.27, -124.77], ['S01', 36.2, -116.4], ['S02', 46.93, -122.1], ['S03', 48.81, -114.9]]], [['S01', 344.6, 3.099]]], ['network 9', [[39.63, -120.96], [['S00', 47.23, -111.26], ['S01', 41.57, -124.4], ['S02', 43.29, -122.87], ['S03', 45.0, -116.27], ['S04', 49.12, -110.82], ['S05', 33.21, -123.87]]], [['S01', 361.7, 3.253], ['S02', 437.0, 3.93]]], ['network 16', [[38.62, -114.83], [['S00', 44.48, -122.4], ['S01', 39.21, -110.38]]], [['S01', 390.5, 3.512]]]], [['network 8', [[37.27, -120.03], [['S00', 32.27, -124.77], ['S01', 36.2, -116.4], ['S02', 46.93, -122.1], ['S03', 48.81, -114.9]]], [['S01', 344.6, 3.099]]], ['network 12', [[39.75, -115.38], [['S00', 39.91, -122.96], ['S01', 40.0, -124.22], ['S02', 45.24, -114.12], ['S03', 36.65, -117.11], ['S04', 39.11, -115.83], ['S05', 48.17, -111.51]]], [['S04', 81.0, 0.728], ['S03', 376.4, 3.385]]], ['network 14', [[36.07, -121.76], [['S00', 47.41, -116.96], ['S01', 36.95, -119.89], ['S02', 31.53, -122.92], ['S03', 32.44, -118.51], ['S04', 35.33, -113.8]]], [['S01', 193.7, 1.742], ['S03', 502.1, 4.515], ['S02', 516.1, 4.641]]], ['network 16', [[38.62, -114.83], [['S00', 44.48, -122.4], ['S01', 39.21, -110.38]]], [['S01', 390.5, 3.512]]], ['network 17', [[40.22, -115.43], [['S00', 34.58, -110.93], ['S01', 32.33, -116.94], ['S02', 42.07, -117.12]]], [['S02', 249.7, 2.245]]], ['network 18', [[36.81, -120.08], [['S00', 45.93, -122.19], ['S01', 42.64, -115.55], ['S02', 44.75, -122.18], ['S03', 41.26, -115.09], ['S04', 43.24, -121.66]]], []], ['network 20', [[44.06, -114.59], [['S00', 39.32, -110.59], ['S01', 36.71, -114.59], ['S02', 38.77, -120.99], ['S03', 31.6, -120.79]]], []], ['network 23', [[44.25, -117.92], [['S00', 44.39, -122.69], ['S01', 37.18, -114.68], ['S02', 44.85, -124.42], ['S03', 42.91, -119.64]]], [['S03', 203.5, 1.83], ['S00', 379.7, 3.415], ['S02', 519.2, 4.67]]]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*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":"c6967781dfce66e4d08136d7f10423c2e1e60dd6255e13c72901c3e82851b34c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(event, stations):\n    R = 6371.0\n    out = []\n    for code, la, lo in stations:\n        p1 = math.radians(event[0])\n        p2 = math.radians(la)\n        dphi = p2 - p1\n        dl = math.radians(lo - event[1])\n        a = math.sin(dphi / 2) ** 2 + math.cos(event[0]) * math.cos(la) * math.sin(dl / 2) ** 2\n        d = 2 * R * math.asin(math.sqrt(min(1.0, a)))\n        if d <= 600:\n            out.append([code, round(d, 1), round(math.degrees(d / R), 3)])\n    return sorted(out, key=lambda r: (r[1], r[0]))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['network 2', [[44.56, -117.35], [['S00', 33.87, -122.39], ['S01', 32.58, -119.0], ['S02', 30.34, -116.47], ['S03', 43.88, -121.21], ['S04', 32.47, -111.54]]], [['S03', 316.7, 2.848]]], ['network 3', [[37.38, -120.81], [['S00', 37.99, -119.17], ['S01', 44.87, -121.53], ['S02', 36.92, -112.06], ['S03', 45.59, -124.41], ['S04', 48.41, -124.22], ['S05', 45.33, -114.43]]], [['S00', 159.5, 1.434]]], ['network 5', [[41.23, -114.32], [['S00', 48.44, -112.36], ['S01', 39.92, -111.66], ['S02', 31.63, -118.69], ['S03', 44.86, -116.63], ['S04', 45.92, -112.0], ['S05', 31.93, -116.6]]], [['S01', 267.7, 2.408], ['S03', 445.1, 4.003], ['S04', 553.9, 4.981]]], ['network 6', [[42.93, -114.98], [['S00', 41.78, -113.99], ['S01', 46.04, -120.17], ['S02', 39.37, -111.82], ['S03', 48.06, -111.76], ['S04', 45.02, -119.59]]], [['S00', 151.6, 1.363], ['S04', 435.9, 3.92], ['S02', 476.0, 4.281], ['S01', 537.5, 4.834]]], ['network 7', [[38.24, -116.31], [['S00', 44.82, -111.25], ['S01', 41.96, -117.22], ['S02', 45.77, -122.79]]], [['S01', 420.8, 3.784]]], ['network 8', [[37.27, -120.03], [['S00', 32.27, -124.77], ['S01', 36.2, -116.4], ['S02', 46.93, -122.1], ['S03', 48.81, -114.9]]], [['S01', 344.6, 3.099]]], ['network 9', [[39.63, -120.96], [['S00', 47.23, -111.26], ['S01', 41.57, -124.4], ['S02', 43.29, -122.87], ['S03', 45.0, -116.27], ['S04', 49.12, -110.82], ['S05', 33.21, -123.87]]], [['S01', 361.7, 3.253], ['S02', 437.0, 3.93]]], ['network 12', [[39.75, -115.38], [['S00', 39.91, -122.96], ['S01', 40.0, -124.22], ['S02', 45.24, -114.12], ['S03', 36.65, -117.11], ['S04', 39.11, -115.83], ['S05', 48.17, -111.51]]], [['S04', 81.0, 0.728], ['S03', 376.4, 3.385]]]], [['network 6', [[42.93, -114.98], [['S00', 41.78, -113.99], ['S01', 46.04, -120.17], ['S02', 39.37, -111.82], ['S03', 48.06, -111.76], ['S04', 45.02, -119.59]]], [['S00', 151.6, 1.363], ['S04', 435.9, 3.92], ['S02', 476.0, 4.281], ['S01', 537.5, 4.834]]], ['network 9', [[39.63, -120.96], [['S00', 47.23, -111.26], ['S01', 41.57, -124.4], ['S02', 43.29, -122.87], ['S03', 45.0, -116.27], ['S04', 49.12, -110.82], ['S05', 33.21, -123.87]]], [['S01', 361.7, 3.253], ['S02', 437.0, 3.93]]], ['network 12', [[39.75, -115.38], [['S00', 39.91, -122.96], ['S01', 40.0, -124.22], ['S02', 45.24, -114.12], ['S03', 36.65, -117.11], ['S04', 39.11, -115.83], ['S05', 48.17, -111.51]]], [['S04', 81.0, 0.728], ['S03', 376.4, 3.385]]], ['network 14', [[36.07, -121.76], [['S00', 47.41, -116.96], ['S01', 36.95, -119.89], ['S02', 31.53, -122.92], ['S03', 32.44, -118.51], ['S04', 35.33, -113.8]]], [['S01', 193.7, 1.742], ['S03', 502.1, 4.515], ['S02', 516.1, 4.641]]], ['network 16', [[38.62, -114.83], [['S00', 44.48, -122.4], ['S01', 39.21, -110.38]]], [['S01', 390.5, 3.512]]], ['network 17', [[40.22, -115.43], [['S00', 34.58, -110.93], ['S01', 32.33, -116.94], ['S02', 42.07, -117.12]]], [['S02', 249.7, 2.245]]], ['network 18', [[36.81, -120.08], [['S00', 45.93, -122.19], ['S01', 42.64, -115.55], ['S02', 44.75, -122.18], ['S03', 41.26, -115.09], ['S04', 43.24, -121.66]]], []], ['network 20', [[44.06, -114.59], [['S00', 39.32, -110.59], ['S01', 36.71, -114.59], ['S02', 38.77, -120.99], ['S03', 31.6, -120.79]]], []]], [['network 9', [[39.63, -120.96], [['S00', 47.23, -111.26], ['S01', 41.57, -124.4], ['S02', 43.29, -122.87], ['S03', 45.0, -116.27], ['S04', 49.12, -110.82], ['S05', 33.21, -123.87]]], [['S01', 361.7, 3.253], ['S02', 437.0, 3.93]]], ['network 23', [[44.25, -117.92], [['S00', 44.39, -122.69], ['S01', 37.18, -114.68], ['S02', 44.85, -124.42], ['S03', 42.91, -119.64]]], [['S03', 203.5, 1.83], ['S00', 379.7, 3.415], ['S02', 519.2, 4.67]]], ['network 24', [[42.12, -121.58], [['S00', 39.06, -115.35], ['S01', 41.41, -121.4]]], [['S01', 80.3, 0.723]]], ['network 25', [[38.77, -114.31], [['S00', 43.94, -110.09], ['S01', 47.99, -124.55], ['S02', 48.6, -124.13], ['S03', 47.11, -121.53]]], []], ['network 26', [[42.47, -114.8], [['S00', 36.7, -111.1], ['S01', 46.83, -118.43], ['S02', 34.65, -112.02]]], [['S01', 563.3, 5.066]]], ['network 28', [[36.13, -121.64], [['S00', 30.99, -116.87], ['S01', 48.63, -114.1], ['S02', 30.53, -117.85], ['S03', 31.41, -124.62], ['S04', 35.71, -124.61]]], [['S04', 271.5, 2.442], ['S03', 592.6, 5.33]]], ['co-located station', [[40.0, -120.0], [['AAA', 40.0, -120.0], ['BBB', 41.0, -120.0]]], [['AAA', 0.0, 0.0], ['BBB', 111.2, 1.0]]], ['equal distance tie', [[0.0, 0.0], [['ZZZ', 1.0, 0.0], ['AAA', -1.0, 0.0]]], [['AAA', 111.2, 1.0], ['ZZZ', 111.2, 1.0]]]], [['network 2', [[44.56, -117.35], [['S00', 33.87, -122.39], ['S01', 32.58, -119.0], ['S02', 30.34, -116.47], ['S03', 43.88, -121.21], ['S04', 32.47, -111.54]]], [['S03', 316.7, 2.848]]], ['network 3', [[37.38, -120.81], [['S00', 37.99, -119.17], ['S01', 44.87, -121.53], ['S02', 36.92, -112.06], ['S03', 45.59, -124.41], ['S04', 48.41, -124.22], ['S05', 45.33, -114.43]]], [['S00', 159.5, 1.434]]], ['network 5', [[41.23, -114.32], [['S00', 48.44, -112.36], ['S01', 39.92, -111.66], ['S02', 31.63, -118.69], ['S03', 44.86, -116.63], ['S04', 45.92, -112.0], ['S05', 31.93, -116.6]]], [['S01', 267.7, 2.408], ['S03', 445.1, 4.003], ['S04', 553.9, 4.981]]], ['network 6', [[42.93, -114.98], [['S00', 41.78, -113.99], ['S01', 46.04, -120.17], ['S02', 39.37, -111.82], ['S03', 48.06, -111.76], ['S04', 45.02, -119.59]]], [['S00', 151.6, 1.363], ['S04', 435.9, 3.92], ['S02', 476.0, 4.281], ['S01', 537.5, 4.834]]], ['network 7', [[38.24, -116.31], [['S00', 44.82, -111.25], ['S01', 41.96, -117.22], ['S02', 45.77, -122.79]]], [['S01', 420.8, 3.784]]], ['network 8', [[37.27, -120.03], [['S00', 32.27, -124.77], ['S01', 36.2, -116.4], ['S02', 46.93, -122.1], ['S03', 48.81, -114.9]]], [['S01', 344.6, 3.099]]], ['network 9', [[39.63, -120.96], [['S00', 47.23, -111.26], ['S01', 41.57, -124.4], ['S02', 43.29, -122.87], ['S03', 45.0, -116.27], ['S04', 49.12, -110.82], ['S05', 33.21, -123.87]]], [['S01', 361.7, 3.253], ['S02', 437.0, 3.93]]], ['network 16', [[38.62, -114.83], [['S00', 44.48, -122.4], ['S01', 39.21, -110.38]]], [['S01', 390.5, 3.512]]]], [['network 8', [[37.27, -120.03], [['S00', 32.27, -124.77], ['S01', 36.2, -116.4], ['S02', 46.93, -122.1], ['S03', 48.81, -114.9]]], [['S01', 344.6, 3.099]]], ['network 12', [[39.75, -115.38], [['S00', 39.91, -122.96], ['S01', 40.0, -124.22], ['S02', 45.24, -114.12], ['S03', 36.65, -117.11], ['S04', 39.11, -115.83], ['S05', 48.17, -111.51]]], [['S04', 81.0, 0.728], ['S03', 376.4, 3.385]]], ['network 14', [[36.07, -121.76], [['S00', 47.41, -116.96], ['S01', 36.95, -119.89], ['S02', 31.53, -122.92], ['S03', 32.44, -118.51], ['S04', 35.33, -113.8]]], [['S01', 193.7, 1.742], ['S03', 502.1, 4.515], ['S02', 516.1, 4.641]]], ['network 16', [[38.62, -114.83], [['S00', 44.48, -122.4], ['S01', 39.21, -110.38]]], [['S01', 390.5, 3.512]]], ['network 17', [[40.22, -115.43], [['S00', 34.58, -110.93], ['S01', 32.33, -116.94], ['S02', 42.07, -117.12]]], [['S02', 249.7, 2.245]]], ['network 18', [[36.81, -120.08], [['S00', 45.93, -122.19], ['S01', 42.64, -115.55], ['S02', 44.75, -122.18], ['S03', 41.26, -115.09], ['S04', 43.24, -121.66]]], []], ['network 20', [[44.06, -114.59], [['S00', 39.32, -110.59], ['S01', 36.71, -114.59], ['S02', 38.77, -120.99], ['S03', 31.6, -120.79]]], []], ['network 23', [[44.25, -117.92], [['S00', 44.39, -122.69], ['S01', 37.18, -114.68], ['S02', 44.85, -124.42], ['S03', 42.91, -119.64]]], [['S03', 203.5, 1.83], ['S00', 379.7, 3.415], ['S02', 519.2, 4.67]]]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*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 deterministic teaching model of a seismological magnitude procedure; constants and tables are fixed by the contract and no claim of agency or standards conformance is made. 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-seismic_magnitude_estimation-epicentral-distance-latitude-cosine-units","generated_at":"2026-09-29T14:48:30.454949+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Local magnitude and location use only stations in the calibrated distance range.","root_cause":"The cosine factors are evaluated on latitudes in degrees.","sha256":"160dd567a383d108140026ad1923d01b595df0b464f2b6f9e07162a9c6a600c2","title":"Epicentral distance and station selection: latitude cosine units · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":37.729,"exit_code":1,"observations":[{"actual":[["S03",435.8,3.919]],"check":"network 2","expected":[["S03",316.7,2.848]],"passed":false},{"actual":[["S00",194.6,1.75]],"check":"network 3","expected":[["S00",159.5,1.434]],"passed":false},{"actual":[["S01",329.7,2.965],["S03",478.3,4.302],["S04",581.7,5.231]],"check":"network 5","expected":[["S01",267.7,2.408],["S03",445.1,4.003],["S04",553.9,4.981]],"passed":false},{"actual":[["S00",168.7,1.517],["S02",529.2,4.759],["S04",562.7,5.061]],"check":"network 6","expected":[["S00",151.6,1.363],["S04",435.9,3.92],["S02",476.0,4.281],["S01",537.5,4.834]],"passed":false},{"actual":[["S01",425.8,3.83]],"check":"network 7","expected":[["S01",420.8,3.784]],"passed":false},{"actual":[["S01",420.8,3.784]],"check":"network 8","expected":[["S01",344.6,3.099]],"passed":false},{"actual":[["S01",439.1,3.949],["S02",459.0,4.128]],"check":"network 9","expected":[["S01",361.7,3.253],["S02",437.0,3.93]],"passed":false},{"actual":[["S04",87.0,0.782],["S03",394.7,3.55]],"check":"network 12","expected":[["S04",81.0,0.728],["S03",376.4,3.385]],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"network 2\", \"actual\": [[\"S03\", 435.8, 3.919]], \"expected\": [[\"S03\", 316.7, 2.848]], \"passed\": false}, {\"check\": \"network 3\", \"actual\": [[\"S00\", 194.6, 1.75]], \"expected\": [[\"S00\", 159.5, 1.434]], \"passed\": false}, {\"check\": \"network 5\", \"actual\": [[\"S01\", 329.7, 2.965], [\"S03\", 478.3, 4.302], [\"S04\", 581.7, 5.231]], \"expected\": [[\"S01\", 267.7, 2.408], [\"S03\", 445.1, 4.003], [\"S04\", 553.9, 4.981]], \"passed\": false}, {\"check\": \"network 6\", \"actual\": [[\"S00\", 168.7, 1.517], [\"S02\", 529.2, 4.759], [\"S04\", 562.7, 5.061]], \"expected\": [[\"S00\", 151.6, 1.363], [\"S04\", 435.9, 3.92], [\"S02\", 476.0, 4.281], [\"S01\", 537.5, 4.834]], \"passed\": false}, {\"check\": \"network 7\", \"actual\": [[\"S01\", 425.8, 3.83]], \"expected\": [[\"S01\", 420.8, 3.784]], \"passed\": false}, {\"check\": \"network 8\", \"actual\": [[\"S01\", 420.8, 3.784]], \"expected\": [[\"S01\", 344.6, 3.099]], \"passed\": false}, {\"check\": \"network 9\", \"actual\": [[\"S01\", 439.1, 3.949], [\"S02\", 459.0, 4.128]], \"expected\": [[\"S01\", 361.7, 3.253], [\"S02\", 437.0, 3.93]], \"passed\": false}, {\"check\": \"network 12\", \"actual\": [[\"S04\", 87.0, 0.782], [\"S03\", 394.7, 3.55]], \"expected\": [[\"S04\", 81.0, 0.728], [\"S03\", 376.4, 3.385]], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":38.915,"exit_code":1,"observations":[{"actual":[["S03",399.0,3.589]],"check":"network 2","expected":[["S03",316.7,2.848]],"passed":false},{"actual":[["S00",186.7,1.679]],"check":"network 3","expected":[["S00",159.5,1.434]],"passed":false},{"actual":[["S01",265.0,2.383],["S03",352.0,3.166],["S04",542.3,4.877]],"check":"network 5","expected":[["S01",267.7,2.408],["S03",445.1,4.003],["S04",553.9,4.981]],"passed":false},{"actual":[["S00",113.2,1.018],["S01",205.9,1.852],["S04",346.7,3.118],["S02",388.1,3.49],["S03",536.4,4.824]],"check":"network 6","expected":[["S00",151.6,1.363],["S04",435.9,3.92],["S02",476.0,4.281],["S01",537.5,4.834]],"passed":false},{"actual":[["S01",409.0,3.678]],"check":"network 7","expected":[["S01",420.8,3.784]],"passed":false},{"actual":[["S01",157.4,1.415]],"check":"network 8","expected":[["S01",344.6,3.099]],"passed":false},{"actual":[["S01",291.5,2.622],["S02",391.6,3.522],["S03",553.3,4.976]],"check":"network 9","expected":[["S01",361.7,3.253],["S02",437.0,3.93]],"passed":false},{"actual":[["S04",69.9,0.628],["S03",332.1,2.987],["S00",442.8,3.982],["S01",545.9,4.909]],"check":"network 12","expected":[["S04",81.0,0.728],["S03",376.4,3.385]],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"network 2\", \"actual\": [[\"S03\", 399.0, 3.589]], \"expected\": [[\"S03\", 316.7, 2.848]], \"passed\": false}, {\"check\": \"network 3\", \"actual\": [[\"S00\", 186.7, 1.679]], \"expected\": [[\"S00\", 159.5, 1.434]], \"passed\": false}, {\"check\": \"network 5\", \"actual\": [[\"S01\", 265.0, 2.383], [\"S03\", 352.0, 3.166], [\"S04\", 542.3, 4.877]], \"expected\": [[\"S01\", 267.7, 2.408], [\"S03\", 445.1, 4.003], [\"S04\", 553.9, 4.981]], \"passed\": false}, {\"check\": \"network 6\", \"actual\": [[\"S00\", 113.2, 1.018], [\"S01\", 205.9, 1.852], [\"S04\", 346.7, 3.118], [\"S02\", 388.1, 3.49], [\"S03\", 536.4, 4.824]], \"expected\": [[\"S00\", 151.6, 1.363], [\"S04\", 435.9, 3.92], [\"S02\", 476.0, 4.281], [\"S01\", 537.5, 4.834]], \"passed\": false}, {\"check\": \"network 7\", \"actual\": [[\"S01\", 409.0, 3.678]], \"expected\": [[\"S01\", 420.8, 3.784]], \"passed\": false}, {\"check\": \"network 8\", \"actual\": [[\"S01\", 157.4, 1.415]], \"expected\": [[\"S01\", 344.6, 3.099]], \"passed\": false}, {\"check\": \"network 9\", \"actual\": [[\"S01\", 291.5, 2.622], [\"S02\", 391.6, 3.522], [\"S03\", 553.3, 4.976]], \"expected\": [[\"S01\", 361.7, 3.253], [\"S02\", 437.0, 3.93]], \"passed\": false}, {\"check\": \"network 12\", \"actual\": [[\"S04\", 69.9, 0.628], [\"S03\", 332.1, 2.987], [\"S00\", 442.8, 3.982], [\"S01\", 545.9, 4.909]], \"expected\": [[\"S04\", 81.0, 0.728], [\"S03\", 376.4, 3.385]], \"passed\": false}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}