{
  "version": "2026.1",
  "verified": "2026-08-02",
  "_meta": {
    "note": "Every value carries its authority in statutes[]. Fields marked unverified:true MUST be confirmed against the cited source before launch. Re-verify entire file each December (AOC) and July (NCRB).",
    "sources": {
      "aoc_costs": "AOC Criminal Court Costs Chart, eff. 2025-01-01 — nccourts.gov/assets/documents/publications/Criminal-Costs-effective-January-1-2025.pdf",
      "waiver_list": "AOC Traffic Offense Waiver List, offenses on/after 2024-12-01 — nccourts.gov/assets/documents/forms/traffic-waiver_7.pdf",
      "mandatory_list": "AOC mandatory-appearance list — nccourts.gov/assets/documents/publications/waiver-list-traffic-mandatory-2024.pdf",
      "gs_20_16": "ncleg.gov G.S. 20-16 (DMV points, suspension ladders)",
      "gs_20_16_1": "ncleg.gov G.S. 20-16.1 (mandatory speed suspensions)",
      "gs_20_4_01": "ncleg.gov G.S. 20-4.01(4a) (PJC as conviction)",
      "gs_20_11": "ncleg.gov G.S. 20-11 (GDL)",
      "ncrb_a25_4": "NCRB Circular A-25-4, SDIP Rule 5 revisions eff. 2025-07-01",
      "ncdoi_sdip": "ncdoi.gov SDIP consumer page (surcharge factors, point schedule)"
    }
  },
  "costs": {
    "infraction_total": 191,
    "misdemeanor_total": 193,
    "seatbelt_flat_total": 180,
    "ie_addon": 50,
    "fta": 200,
    "components": [
      {
        "label": "General Court of Justice fee (district)",
        "statute": "G.S. 7A-304(a)(4)",
        "amt": 147.5
      },
      {
        "label": "Facilities fee",
        "statute": "G.S. 7A-304(a)(2)",
        "amt": 12
      },
      {
        "label": "Telecom/data connectivity fee",
        "statute": "G.S. 7A-304(a)(2a)",
        "amt": 4
      },
      {
        "label": "LEO retirement/insurance",
        "statute": "G.S. 7A-304(a)(3),(3a)",
        "amt": 7.5
      },
      {
        "label": "Indigent defense fee",
        "statute": "G.S. 7A-304(a)(3c)",
        "amt": 5
      },
      {
        "label": "Service of process (citation)",
        "statute": "G.S. 7A-304(a)(1)",
        "amt": 5
      },
      {
        "label": "Chapter 20 (motor vehicle) add-on",
        "statute": "G.S. 7A-304(a)(4a)",
        "amt": 10
      }
    ],
    "statutes": [
      "AOC chart eff. 2025-01-01 — VERIFIED 2026-08-02: infraction total $191.00 exact"
    ]
  },
  "sdip_factors": {
    "1": {
      "pct": 40,
      "unverified": false
    },
    "2": {
      "pct": 55,
      "unverified": false
    },
    "3": {
      "pct": 70,
      "unverified": false
    },
    "4": {
      "pct": 90,
      "unverified": false
    },
    "5": {
      "pct": 110,
      "unverified": true
    },
    "6": {
      "pct": 135,
      "unverified": true
    },
    "7": {
      "pct": 165,
      "unverified": true
    },
    "8": {
      "pct": 200,
      "unverified": false
    },
    "9": {
      "pct": 225,
      "unverified": true
    },
    "10": {
      "pct": 260,
      "unverified": false
    },
    "11": {
      "pct": 300,
      "unverified": true
    },
    "12": {
      "pct": 340,
      "unverified": false
    },
    "_note": "Rows 1,2,3,4,8,10,12 verified on ncdoi.gov 2026-08-02. Rows 5,6,7,9,11 are the pre-revision ladder still on attorney sites (110/135/165/225/300) — the verified rows moved (+10 on 1-4, 195→200 on 8), so these likely moved too. CONFIRM against the current NCRB Personal Auto Manual Rule 5 before launch. Engine must show a data-caveat when a total lands on an unverified row (only happens when points sum across multiple violations)."
  },
  "windows": {
    "cutover": "2025-07-01",
    "long_years": 5,
    "short_years": 3,
    "rule": "long applies iff conviction on/after cutover AND sdip_pts >= 4 AND violation is not speeding-over-posted-limit; accidents always short",
    "statutes": [
      "NCRB A-25-4 — verbatim rule verified 2026-08-02"
    ]
  },
  "accident_tiers": {
    "one_point": "BI <= $1,800 AND PD <= $2,300",
    "two_point": "PD $2,301–$3,849",
    "three_point": "death, or BI > $1,800, or PD >= $3,850",
    "bi": 1800,
    "pd_minor": 2300,
    "pd_major": 3850,
    "forgiveness": "one-point accident not surcharged if (a) no moving-violation conviction from the accident AND (b) no other convictions or at-fault accidents in the 3-year period",
    "statutes": [
      "NCRB A-25-4 — verified 2026-08-02"
    ]
  },
  "ten_over_forgiveness": {
    "rule": "One conviction of speeding 10 or under over the limit is not surcharged if it is the only moving violation in the experience period; companion-violation check window is 5 years for convictions on/after 2025-07-01",
    "statutes": [
      "NCDOI SDIP page",
      "NCRB A-25-4"
    ]
  },
  "pjc": {
    "insurance": "No surcharge and no SDIP points for a PJC UNLESS anyone in the household has another PJC for a moving violation within 5 years (if that other PJC was granted on/after 2025-07-01) or within 3 years (if granted before). Net: one PJC per household per 5 years going forward.",
    "household_years_post": 5,
    "household_years_pre": 3,
    "dmv_free_per_5yr": 2,
    "dmv_rule": "Third or subsequent PJC within any 5-year period counts as a conviction for license points; every PJC counts for CDL holders / CMV offenses",
    "blocked": [
      "speeding-over-25",
      "school-bus",
      "dwi"
    ],
    "blocked_statutes": {
      "speeding-over-25": "G.S. 20-141(p)",
      "school-bus": "G.S. 20-217(e)",
      "dwi": "G.S. 20-179 case law"
    },
    "out_of_state_caveat": "Most states likely treat an NC PJC as a plain conviction on their own license — widely asserted, no primary source. DISCLAIM, never assert.",
    "statutes": [
      "NCRB A-25-4 verbatim (verified 2026-08-02)",
      "G.S. 20-4.01(4a)"
    ]
  },
  "suspensions": {
    "mandatory_30day": "conviction of (a) exceeding the limit by MORE THAN 15 mph while driving at an ACTUAL SPEED greater than 55 mph, or (b) driving in excess of 80 mph. NOTE: actual speed, not zone; and strictly more than 15 over — 72-in-a-55 triggers, 70-in-a-55 does not.",
    "sixty_day": "second offense within one year, or speeding plus reckless driving on the same occasion",
    "points_ladder": "12 points within 3 years (8 within 3 years after a reinstatement); 1st suspension up to 60 days, 2nd up to 6 months, later up to 1 year",
    "statutes": [
      "G.S. 20-16.1 — quoted language verified 2026-08-02",
      "G.S. 20-16(c),(e)"
    ]
  },
  "clinic": {
    "points_off": 3,
    "once_per_years": 5,
    "fee": 83.5,
    "fee_unverified": true,
    "statutes": [
      "G.S. 20-16(e) — points/frequency verified on ncdot.gov 2026-08-02; the $83.50 fee is from an attorney source (NCDMV page fee section did not render) — CONFIRM with DMV"
    ]
  },
  "lawyer_path": {
    "typical_outcome": "reduction to improper equipment (non-moving): no DMV points, no SDIP points",
    "cost_formula": "costs.infraction_total + costs.ie_addon + reduced/waived fine + attorney fee",
    "attorney_fee_range": [
      99,
      400
    ],
    "statutes": [
      "Market language only — iTicket advertises from $99; NEVER name firms"
    ]
  },
  "teen": {
    "surcharge_years": 8,
    "rule": "NCRB Personal Auto Manual Rule 4.F — Inexperienced Operator. Factors are ADDITIVE rating factors applied per coverage to the base premium (2.50 = +250% of the base liability premium). Effective for policies on/after 2025-10-01. The 8-year period applies ONLY to drivers FIRST LICENSED on/after 2025-07-01; drivers licensed before that date keep the 3-year period (rows <1, <2, <3 only). Enacted by S.L. 2024-29.",
    "source": "NCRB Circular A-25-3 (6 Jun 2025), Exhibit D — https://www.ncrb.org/Portals/0/ncrb/circular%20letters/automobile/2025/A-25-3%20Revised%20Private%20Passenger%20Automobile%20and%20Motorcycle%20Insurance%20Rates.pdf",
    "extraction_note": "Transcribed from the Exhibit D PDF via automated extraction 2026-08-02. EYEBALL-VERIFY the four tables against the exhibit before launch (5 minutes). Watch A-26-2 (2026 rate review, pending) for factor revisions.",
    "factors": {
      "single_car": {
        "principal": {
          "1": {
            "liability": 2.5,
            "collision": 2.1,
            "comprehensive": 0.2
          },
          "2": {
            "liability": 1.4,
            "collision": 1.2,
            "comprehensive": 0.2
          },
          "3": {
            "liability": 1.05,
            "collision": 0.9,
            "comprehensive": 0.2
          },
          "4": {
            "liability": 0.85,
            "collision": 0.7,
            "comprehensive": 0.15
          },
          "5": {
            "liability": 0.65,
            "collision": 0.5,
            "comprehensive": 0.15
          },
          "6": {
            "liability": 0.5,
            "collision": 0.3,
            "comprehensive": 0.1
          },
          "7": {
            "liability": 0.3,
            "collision": 0.2,
            "comprehensive": 0.1
          },
          "8": {
            "liability": 0.2,
            "collision": 0.1,
            "comprehensive": 0
          }
        },
        "occasional": {
          "1": {
            "liability": 1,
            "collision": 0.1,
            "comprehensive": 0.1
          },
          "2": {
            "liability": 0.6,
            "collision": 0,
            "comprehensive": -0.1
          },
          "3": {
            "liability": 0.4,
            "collision": 0,
            "comprehensive": -0.1
          },
          "4": {
            "liability": 0.3,
            "collision": 0,
            "comprehensive": -0.1
          },
          "5": {
            "liability": 0.2,
            "collision": 0,
            "comprehensive": -0.1
          },
          "6": {
            "liability": 0.1,
            "collision": 0,
            "comprehensive": -0.1
          },
          "7": {
            "liability": 0,
            "collision": 0,
            "comprehensive": -0.1
          },
          "8": {
            "liability": 0,
            "collision": 0,
            "comprehensive": -0.1
          }
        }
      },
      "multi_car": {
        "principal": {
          "1": {
            "liability": 2.15,
            "collision": 1.75,
            "comprehensive": 0.1
          },
          "2": {
            "liability": 1.05,
            "collision": 0.85,
            "comprehensive": 0.1
          },
          "3": {
            "liability": 0.7,
            "collision": 0.55,
            "comprehensive": 0.1
          },
          "4": {
            "liability": 0.5,
            "collision": 0.35,
            "comprehensive": 0.05
          },
          "5": {
            "liability": 0.3,
            "collision": 0.15,
            "comprehensive": 0.05
          },
          "6": {
            "liability": 0.15,
            "collision": -0.05,
            "comprehensive": 0
          },
          "7": {
            "liability": -0.05,
            "collision": -0.15,
            "comprehensive": 0
          },
          "8": {
            "liability": -0.15,
            "collision": -0.25,
            "comprehensive": -0.1
          }
        },
        "occasional": {
          "1": {
            "liability": 1.15,
            "collision": 0.65,
            "comprehensive": 0
          },
          "2": {
            "liability": 0.4,
            "collision": 0.25,
            "comprehensive": -0.1
          },
          "3": {
            "liability": 0.25,
            "collision": 0.05,
            "comprehensive": -0.1
          },
          "4": {
            "liability": 0.15,
            "collision": -0.05,
            "comprehensive": -0.1
          },
          "5": {
            "liability": 0.05,
            "collision": -0.15,
            "comprehensive": -0.1
          },
          "6": {
            "liability": -0.05,
            "collision": -0.25,
            "comprehensive": -0.1
          },
          "7": {
            "liability": -0.15,
            "collision": -0.35,
            "comprehensive": -0.1
          },
          "8": {
            "liability": -0.25,
            "collision": -0.35,
            "comprehensive": -0.1
          }
        }
      }
    },
    "assumed_premium_split": {
      "liability": 0.55,
      "collision": 0.3,
      "comprehensive": 0.15,
      "_note": "MODELING ASSUMPTION, not law: the factors apply per-coverage to base premiums, but the tool only knows the entered total premium. This split approximates a typical NC full-coverage policy. Disclose beneath the curve: 'assumes a typical premium mix; your carrier's split will differ.' Make configurable."
    },
    "gdl": {
      "l1": "Limited learner permit: age 15–17; hold 9 months; 60-hour log (≥10 night, max 10 hrs/wk creditable); supervised only; first 6 months 5:00am–9:00pm; no mobile phone",
      "l2": "Limited provisional: age 16+; unsupervised 5am–9pm plus direct to/from work or volunteering; max 1 passenger under 21 (family exceptions); hold 6 months + 12 more logged hours (6 night)",
      "l3": "Full provisional: time/passenger limits removed",
      "hb584": "HB 584 (2025) — would have cut L1 hold to 6 months and dropped logs — DID NOT PASS (stalled in House Judiciary 1 since 2025-04-30). Recheck each session."
    },
    "statutes": [
      "NCRB A-25-3 Exhibit D / Rule 4.F",
      "S.L. 2024-29",
      "G.S. 20-11 (GDL)"
    ],
    "verification": "web-extracted-2026-08-02; eyeball Exhibit D before launch"
  },
  "violations": [
    {
      "slug": "speeding-6-10-over-under55",
      "label": "Speeding 6–10 over (limit under 55, speed ≤55)",
      "waivable": true,
      "fine": 15,
      "dmv_pts": 2,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": "ten-over",
      "notes": "No surcharge if sole moving violation in window (ten-over forgiveness)",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "speeding-6-10-over-over55",
      "label": "Speeding 6–10 over (actual speed over 55)",
      "waivable": true,
      "fine": 15,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": "ten-over",
      "notes": "DMV 3 pts because actual speed exceeds 55 (G.S. 20-16: speeding in excess of 55)",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "speeding-11-15-over-under55",
      "label": "Speeding 11–15 over (speed ≤55)",
      "waivable": true,
      "fine": 30,
      "dmv_pts": 2,
      "sdip_pts": 2,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "speeding-11-15-over-over55",
      "label": "Speeding 11–15 over (actual speed over 55)",
      "waivable": true,
      "fine": 30,
      "dmv_pts": 3,
      "sdip_pts": 2,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "No mandatory suspension at exactly 15 over — the statute requires MORE than 15",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "speeding-16-25-over-under55",
      "label": "Speeding 16–25 over (speed ≤55)",
      "waivable": true,
      "fine": 50,
      "dmv_pts": 2,
      "sdip_pts": 2,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "Waivable at $50 only where listed (≤55 speeds); check the waiver list row",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "speeding-16-25-over-over55",
      "label": "Speeding 16–25 over (actual speed over 55)",
      "waivable": true,
      "fine": 50,
      "dmv_pts": 3,
      "sdip_pts": 2,
      "pjc_eligible": true,
      "suspension": "mandatory-30",
      "forgiveness": null,
      "notes": "MANDATORY 30-day suspension: >15 over while driving over 55 (G.S. 20-16.1)",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "speeding-over-25",
      "label": "Speeding more than 25 over",
      "waivable": false,
      "fine": null,
      "dmv_pts": 3,
      "sdip_pts": 2,
      "pjc_eligible": false,
      "suspension": null,
      "forgiveness": null,
      "notes": "PJC BARRED (G.S. 20-141(p)). SDIP pts may be higher if speed >75/limit<70 or >80 — engine checks absolute-speed rows. Court appearance in practice",
      "statutes": [
        "G.S. 20-141(p)",
        "G.S. 20-16",
        "NCDOI SDIP"
      ]
    },
    {
      "slug": "speeding-76-plus-limit-under-70",
      "label": "Speeding over 75 where limit is under 70",
      "waivable": false,
      "fine": null,
      "dmv_pts": 3,
      "sdip_pts": 4,
      "pjc_eligible": true,
      "suspension": "check",
      "forgiveness": null,
      "notes": "4 SDIP pts (NCDOI). Suspension if also >15 over with speed >55 — engine computes",
      "statutes": [
        "NCDOI SDIP",
        "G.S. 20-16.1"
      ]
    },
    {
      "slug": "speeding-over-80",
      "label": "Speeding in excess of 80 mph",
      "waivable": false,
      "fine": null,
      "dmv_pts": 3,
      "sdip_pts": 4,
      "pjc_eligible": true,
      "suspension": "mandatory-30",
      "forgiveness": null,
      "notes": "MANDATORY 30-day suspension at any speed over 80 (G.S. 20-16.1); 4 SDIP pts (NCDOI: >80 where limit ≥70)",
      "statutes": [
        "G.S. 20-16.1",
        "NCDOI SDIP"
      ]
    },
    {
      "slug": "school-zone-speeding",
      "label": "Speeding in a school zone",
      "waivable": true,
      "fine": 250,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "$250 preset fine; DMV 3 pts (G.S. 20-16 school zone row); SDIP per speed bracket — engine may upgrade",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "red-light",
      "label": "Running a red light",
      "waivable": true,
      "fine": 50,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "stop-sign",
      "label": "Running a stop sign",
      "waivable": true,
      "fine": 50,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "following-too-close",
      "label": "Following too closely",
      "waivable": true,
      "fine": 35,
      "dmv_pts": 4,
      "sdip_pts": 2,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "SDIP 2 per NCDOI page; one A-25-4 extract read as 1 — CONFIRM in manual. DMV 4 pts surprises people",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "illegal-passing",
      "label": "Illegal passing",
      "waivable": true,
      "fine": 50,
      "dmv_pts": 4,
      "sdip_pts": 2,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "wrong-side-road",
      "label": "Driving on wrong side of road",
      "waivable": false,
      "fine": null,
      "dmv_pts": 4,
      "sdip_pts": 2,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "failure-to-yield",
      "label": "Failure to yield right-of-way",
      "waivable": true,
      "fine": 35,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "failure-to-yield-pedestrian",
      "label": "Failure to yield to pedestrian",
      "waivable": true,
      "fine": 35,
      "dmv_pts": 4,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "failure-to-yield-bike",
      "label": "Failure to yield to bicycle/motorcycle/scooter",
      "waivable": true,
      "fine": 35,
      "dmv_pts": 4,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "failure-stop-siren",
      "label": "Failure to stop for siren",
      "waivable": false,
      "fine": null,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "safety-zone",
      "label": "Driving through safety zone",
      "waivable": false,
      "fine": null,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "unsafe-movement",
      "label": "Unsafe movement / other moving violation",
      "waivable": true,
      "fine": 35,
      "dmv_pts": 2,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "no-operators-license",
      "label": "No operator's license",
      "waivable": true,
      "fine": 50,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "expired-registration",
      "label": "Expired registration",
      "waivable": true,
      "fine": 25,
      "dmv_pts": 0,
      "sdip_pts": 0,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "Non-moving: no DMV or SDIP points",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "expired-inspection",
      "label": "Expired inspection",
      "waivable": true,
      "fine": 25,
      "dmv_pts": 0,
      "sdip_pts": 0,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "Non-moving",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "seatbelt-adult",
      "label": "Seat belt (adult, front seat)",
      "waivable": true,
      "fine": 25.5,
      "dmv_pts": 0,
      "sdip_pts": 0,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "$180 flat total ($25.50 fine + $154.50 reduced costs). No points (G.S. 20-135.2A(e))",
      "statutes": [
        "G.S. 20-135.2A(e)",
        "AOC chart"
      ]
    },
    {
      "slug": "child-restraint",
      "label": "Child restraint violation",
      "waivable": true,
      "fine": 25,
      "dmv_pts": 2,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "littering",
      "label": "Littering from vehicle (unintentional)",
      "waivable": true,
      "fine": 50,
      "dmv_pts": 1,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "no-insurance",
      "label": "Operating without liability insurance",
      "waivable": false,
      "fine": null,
      "dmv_pts": 3,
      "sdip_pts": 3,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "MANDATORY court appearance. DMV lapse cascade separate: $50/$100/$150 civil penalty + $50 restoration",
      "statutes": [
        "mandatory list",
        "G.S. 20-16",
        "NCDOI SDIP"
      ]
    },
    {
      "slug": "reckless-driving",
      "label": "Reckless driving",
      "waivable": false,
      "fine": null,
      "dmv_pts": 4,
      "sdip_pts": 4,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "5-year window if convicted on/after 7/1/2025 (4+ pts, not speeding)",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "aggressive-driving",
      "label": "Aggressive driving",
      "waivable": false,
      "fine": null,
      "dmv_pts": 5,
      "sdip_pts": 8,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "8 SDIP pts (+200%) — one of the largest non-DWI surcharges",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP"
      ]
    },
    {
      "slug": "school-bus",
      "label": "Passing a stopped school bus",
      "waivable": false,
      "fine": null,
      "dmv_pts": 5,
      "sdip_pts": 4,
      "pjc_eligible": false,
      "suspension": null,
      "forgiveness": null,
      "notes": "PJC BARRED (G.S. 20-217(e)); 5-yr window",
      "statutes": [
        "G.S. 20-217(e)",
        "G.S. 20-16",
        "NCDOI SDIP"
      ]
    },
    {
      "slug": "hit-run-property",
      "label": "Hit and run (property damage only)",
      "waivable": false,
      "fine": null,
      "dmv_pts": 4,
      "sdip_pts": 4,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "failure-report-accident",
      "label": "Failure to report accident",
      "waivable": false,
      "fine": null,
      "dmv_pts": 3,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "driving-while-suspended",
      "label": "Driving while license suspended/revoked",
      "waivable": false,
      "fine": null,
      "dmv_pts": null,
      "sdip_pts": 8,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "8 SDIP pts (+200%); DMV consequence is further suspension, not points. Route to counsel language",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "highway-racing",
      "label": "Highway racing / lending vehicle for racing",
      "waivable": false,
      "fine": null,
      "dmv_pts": null,
      "sdip_pts": 10,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "+260%; license revocation consequences — counsel language",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "speeding-to-elude",
      "label": "Speeding to elude arrest",
      "waivable": false,
      "fine": null,
      "dmv_pts": null,
      "sdip_pts": 10,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "+260%; counsel language",
      "statutes": [
        "G.S. 20-16",
        "NCDOI SDIP",
        "waiver list 12/2024"
      ]
    },
    {
      "slug": "dwi",
      "label": "DWI / impaired driving",
      "waivable": false,
      "fine": null,
      "dmv_pts": null,
      "sdip_pts": 12,
      "pjc_eligible": false,
      "suspension": null,
      "forgiveness": null,
      "notes": "+340% · license revocation · PJC barred · output = consult counsel, full stop",
      "statutes": [
        "G.S. 20-179",
        "NCDOI SDIP"
      ]
    },
    {
      "slug": "accident-1pt",
      "label": "At-fault accident (BI ≤$1,800 and PD ≤$2,300)",
      "waivable": null,
      "fine": null,
      "dmv_pts": null,
      "sdip_pts": 1,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": "minor-accident",
      "notes": "Forgiven if no moving violation from the accident + clean 3-yr household record",
      "statutes": [
        "NCRB A-25-4"
      ]
    },
    {
      "slug": "accident-2pt",
      "label": "At-fault accident (PD $2,301–$3,849)",
      "waivable": null,
      "fine": null,
      "dmv_pts": null,
      "sdip_pts": 2,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "NCRB A-25-4"
      ]
    },
    {
      "slug": "accident-3pt",
      "label": "At-fault accident (death, BI >$1,800, or PD ≥$3,850)",
      "waivable": null,
      "fine": null,
      "dmv_pts": null,
      "sdip_pts": 3,
      "pjc_eligible": true,
      "suspension": null,
      "forgiveness": null,
      "notes": "",
      "statutes": [
        "NCRB A-25-4"
      ]
    }
  ]
}