{"election_name":"Alabama Lieutenant Governor Republican Primary Runoff","election_type":"Lieutenant Governor","election_scope":"Primary","election_date":"2026-06-16T05:00:00.000Z","country":"US","province":"AL","district":null,"municipality":null,"polls_open":"2026-06-16T13:00:00.000Z","polls_close":"2026-06-17T00:00:00.000Z","is_disputed":false,"has_map":true,"registered_voters":null,"percent_reporting":34.6,"last_updated":"2026-06-17T01:21:51.544Z","round":1,"maps":[{"name":"Alabama","map":"assets/Alabama.svg"}],"candidates":[{"name":"John Wahl","party":"Republican","incumbent":false,"major_candidate":true,"winner":false,"advanced":false,"color":"#6d1b83","votes":56954,"percent":55.42,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","incumbent":false,"major_candidate":true,"winner":false,"advanced":false,"color":"#7A1230","votes":45811,"percent":44.58,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}],"region_results":{"limestone":{"name":"Limestone","type":"County","fips":"01083","fill":"#c6606b","percent_reporting":87.97,"candidates":[{"name":"John Wahl","party":"Republican","votes":4178,"percent":58.75,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":2933,"percent":41.25,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"walker":{"name":"Walker","type":"County","fips":"01127","fill":"#c6606b","percent_reporting":66.05,"candidates":[{"name":"John Wahl","party":"Republican","votes":3494,"percent":57.01,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":2635,"percent":42.99,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"montgomery":{"name":"Montgomery","type":"County","fips":"01101","fill":"#e0bb24","percent_reporting":66.98,"candidates":[{"name":"Wes Allen","party":"Republican","votes":3129,"percent":52.47,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":2834,"percent":47.53,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"mobile":{"name":"Mobile","type":"County","fips":"01097","fill":"#c6606b","percent_reporting":25.14,"candidates":[{"name":"John Wahl","party":"Republican","votes":3393,"percent":59.63,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":2297,"percent":40.37,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"cullman":{"name":"Cullman","type":"County","fips":"01043","fill":"#c6606b","percent_reporting":48.08,"candidates":[{"name":"John Wahl","party":"Republican","votes":3211,"percent":60.9,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":2062,"percent":39.1,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"coffee":{"name":"Coffee","type":"County","fips":"01031","fill":"#c6606b","percent_reporting":77.38,"candidates":[{"name":"John Wahl","party":"Republican","votes":2498,"percent":56.01,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1962,"percent":43.99,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"marshall":{"name":"Marshall","type":"County","fips":"01095","fill":"#c6606b","percent_reporting":53.34,"candidates":[{"name":"John Wahl","party":"Republican","votes":2077,"percent":51.04,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1992,"percent":48.96,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"marion":{"name":"Marion","type":"County","fips":"01093","fill":"#c6606b","percent_reporting":90.01,"candidates":[{"name":"John Wahl","party":"Republican","votes":2312,"percent":65.48,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1219,"percent":34.52,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"lauderdale":{"name":"Lauderdale","type":"County","fips":"01077","fill":"#c6606b","percent_reporting":51.93,"candidates":[{"name":"John Wahl","party":"Republican","votes":2335,"percent":68.2,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1089,"percent":31.8,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"madison":{"name":"Madison","type":"County","fips":"01089","fill":"#c6606b","percent_reporting":15.33,"candidates":[{"name":"John Wahl","party":"Republican","votes":1903,"percent":56.32,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1476,"percent":43.68,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"chilton":{"name":"Chilton","type":"County","fips":"01021","fill":"#e0bb24","percent_reporting":78.81,"candidates":[{"name":"Wes Allen","party":"Republican","votes":1754,"percent":52.17,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":1608,"percent":47.83,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"lee":{"name":"Lee","type":"County","fips":"01081","fill":"#c6606b","percent_reporting":28.16,"candidates":[{"name":"John Wahl","party":"Republican","votes":1913,"percent":56.92,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1448,"percent":43.08,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"autauga":{"name":"Autauga","type":"County","fips":"01001","fill":"#c6606b","percent_reporting":53.37,"candidates":[{"name":"John Wahl","party":"Republican","votes":1693,"percent":53.26,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1486,"percent":46.74,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"talladega":{"name":"Talladega","type":"County","fips":"01121","fill":"#c6606b","percent_reporting":72,"candidates":[{"name":"John Wahl","party":"Republican","votes":1906,"percent":60.22,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1259,"percent":39.78,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"fayette":{"name":"Fayette","type":"County","fips":"01057","fill":"#e0bb24","percent_reporting":91.36,"candidates":[{"name":"Wes Allen","party":"Republican","votes":1334,"percent":51.49,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":1257,"percent":48.51,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"st_clair":{"name":"St. Clair","type":"County","fips":"01115","fill":"#c6606b","percent_reporting":32.41,"candidates":[{"name":"John Wahl","party":"Republican","votes":1577,"percent":60.96,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":1010,"percent":39.04,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"randolph":{"name":"Randolph","type":"County","fips":"01111","fill":"#c6606b","percent_reporting":99,"candidates":[{"name":"John Wahl","party":"Republican","votes":1360,"percent":62.7,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":809,"percent":37.3,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"henry":{"name":"Henry","type":"County","fips":"01067","fill":"#c6606b","percent_reporting":70.82,"candidates":[{"name":"John Wahl","party":"Republican","votes":961,"percent":51.56,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":903,"percent":48.44,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"tallapoosa":{"name":"Tallapoosa","type":"County","fips":"01123","fill":"#c6606b","percent_reporting":44.59,"candidates":[{"name":"John Wahl","party":"Republican","votes":1030,"percent":55.86,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":814,"percent":44.14,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"lawrence":{"name":"Lawrence","type":"County","fips":"01079","fill":"#c6606b","percent_reporting":51.2,"candidates":[{"name":"John Wahl","party":"Republican","votes":1103,"percent":60.84,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":710,"percent":39.16,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"covington":{"name":"Covington","type":"County","fips":"01039","fill":"#e0bb24","percent_reporting":39.62,"candidates":[{"name":"Wes Allen","party":"Republican","votes":955,"percent":52.91,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":850,"percent":47.09,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"dale":{"name":"Dale","type":"County","fips":"01045","fill":"#e0bb24","percent_reporting":44.44,"candidates":[{"name":"Wes Allen","party":"Republican","votes":928,"percent":53.95,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":792,"percent":46.05,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"pike":{"name":"Pike","type":"County","fips":"01109","fill":"#e0bb24","percent_reporting":69.57,"candidates":[{"name":"Wes Allen","party":"Republican","votes":1440,"percent":85.36,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":247,"percent":14.64,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"baldwin":{"name":"Baldwin","type":"County","fips":"01003","fill":"#c6606b","percent_reporting":6.57,"candidates":[{"name":"John Wahl","party":"Republican","votes":1074,"percent":66.96,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":530,"percent":33.04,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"morgan":{"name":"Morgan","type":"County","fips":"01103","fill":"#c6606b","percent_reporting":13.74,"candidates":[{"name":"John Wahl","party":"Republican","votes":964,"percent":60.94,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":618,"percent":39.06,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"butler":{"name":"Butler","type":"County","fips":"01013","fill":"#e0bb24","percent_reporting":70.05,"candidates":[{"name":"Wes Allen","party":"Republican","votes":724,"percent":53.27,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":635,"percent":46.73,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"cherokee":{"name":"Cherokee","type":"County","fips":"01019","fill":"#c6606b","percent_reporting":54.2,"candidates":[{"name":"John Wahl","party":"Republican","votes":781,"percent":59.62,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":529,"percent":40.38,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"franklin":{"name":"Franklin","type":"County","fips":"01059","fill":"#e0bb24","percent_reporting":42.84,"candidates":[{"name":"Wes Allen","party":"Republican","votes":672,"percent":53.33,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":588,"percent":46.67,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"geneva":{"name":"Geneva","type":"County","fips":"01061","fill":"#c6606b","percent_reporting":30.33,"candidates":[{"name":"John Wahl","party":"Republican","votes":674,"percent":54.09,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":572,"percent":45.91,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"monroe":{"name":"Monroe","type":"County","fips":"01099","fill":"#c6606b","percent_reporting":70.04,"candidates":[{"name":"John Wahl","party":"Republican","votes":704,"percent":60.12,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":467,"percent":39.88,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"bibb":{"name":"Bibb","type":"County","fips":"01007","fill":"#e0bb24","percent_reporting":52.64,"candidates":[{"name":"Wes Allen","party":"Republican","votes":621,"percent":56.71,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":474,"percent":43.29,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"barbour":{"name":"Barbour","type":"County","fips":"01005","fill":"#c6606b","percent_reporting":76.83,"candidates":[{"name":"John Wahl","party":"Republican","votes":599,"percent":57.71,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":439,"percent":42.29,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"dallas":{"name":"Dallas","type":"County","fips":"01047","fill":"#e0bb24","percent_reporting":92.07,"candidates":[{"name":"Wes Allen","party":"Republican","votes":540,"percent":52.22,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":494,"percent":47.78,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"dekalb":{"name":"DeKalb","type":"County","fips":"01049","fill":"#c6606b","percent_reporting":19.77,"candidates":[{"name":"John Wahl","party":"Republican","votes":626,"percent":61.55,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":391,"percent":38.45,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"escambia":{"name":"Escambia","type":"County","fips":"01053","fill":"#c6606b","percent_reporting":41.97,"candidates":[{"name":"John Wahl","party":"Republican","votes":625,"percent":62.25,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":379,"percent":37.75,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"jefferson":{"name":"Jefferson","type":"County","fips":"01073","fill":"#e0bb24","percent_reporting":3.05,"candidates":[{"name":"Wes Allen","party":"Republican","votes":494,"percent":53.75,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":425,"percent":46.25,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"clarke":{"name":"Clarke","type":"County","fips":"01025","fill":"#e0bb24","percent_reporting":55.18,"candidates":[{"name":"Wes Allen","party":"Republican","votes":454,"percent":50.44,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":446,"percent":49.56,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"etowah":{"name":"Etowah","type":"County","fips":"01055","fill":"#c6606b","percent_reporting":9.01,"candidates":[{"name":"John Wahl","party":"Republican","votes":423,"percent":57.01,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":319,"percent":42.99,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"winston":{"name":"Winston","type":"County","fips":"01133","fill":"#c6606b","percent_reporting":23.63,"candidates":[{"name":"John Wahl","party":"Republican","votes":463,"percent":66.24,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":236,"percent":33.76,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"cleburne":{"name":"Cleburne","type":"County","fips":"01029","fill":"#c6606b","percent_reporting":30.11,"candidates":[{"name":"John Wahl","party":"Republican","votes":334,"percent":54.4,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":280,"percent":45.6,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"lamar":{"name":"Lamar","type":"County","fips":"01075","fill":"#c6606b","percent_reporting":46.5,"candidates":[{"name":"John Wahl","party":"Republican","votes":308,"percent":52.03,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":284,"percent":47.97,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"russell":{"name":"Russell","type":"County","fips":"01113","fill":"#c6606b","percent_reporting":35.85,"candidates":[{"name":"John Wahl","party":"Republican","votes":364,"percent":69.07,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":163,"percent":30.93,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"clay":{"name":"Clay","type":"County","fips":"01027","fill":"#c6606b","percent_reporting":34.8,"candidates":[{"name":"John Wahl","party":"Republican","votes":273,"percent":54.93,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":224,"percent":45.07,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"crenshaw":{"name":"Crenshaw","type":"County","fips":"01041","fill":"#e0bb24","percent_reporting":23.95,"candidates":[{"name":"Wes Allen","party":"Republican","votes":340,"percent":72.49,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":129,"percent":27.51,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"calhoun":{"name":"Calhoun","type":"County","fips":"01015","fill":"#c6606b","percent_reporting":6.37,"candidates":[{"name":"John Wahl","party":"Republican","votes":274,"percent":59.18,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":189,"percent":40.82,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"tuscaloosa":{"name":"Tuscaloosa","type":"County","fips":"01125","fill":"#c6606b","percent_reporting":4.63,"candidates":[{"name":"John Wahl","party":"Republican","votes":221,"percent":52.12,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":203,"percent":47.88,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"coosa":{"name":"Coosa","type":"County","fips":"01037","fill":"#c6606b","percent_reporting":34.99,"candidates":[{"name":"John Wahl","party":"Republican","votes":209,"percent":55.88,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"Wes Allen","party":"Republican","votes":165,"percent":44.12,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"washington":{"name":"Washington","type":"County","fips":"01129","fill":"#e0bb24","percent_reporting":14.08,"candidates":[{"name":"Wes Allen","party":"Republican","votes":181,"percent":51.71,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":169,"percent":48.29,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"wilcox":{"name":"Wilcox","type":"County","fips":"01131","fill":"#e0bb24","percent_reporting":73.97,"candidates":[{"name":"Wes Allen","party":"Republican","votes":108,"percent":50,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":108,"percent":50,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"elmore":{"name":"Elmore","type":"County","fips":"01051","fill":"#e0bb24","percent_reporting":0.95,"candidates":[{"name":"Wes Allen","party":"Republican","votes":45,"percent":54.22,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":38,"percent":45.78,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"blount":{"name":"Blount","type":"County","fips":"01009","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"bullock":{"name":"Bullock","type":"County","fips":"01011","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"chambers":{"name":"Chambers","type":"County","fips":"01017","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"choctaw":{"name":"Choctaw","type":"County","fips":"01023","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"colbert":{"name":"Colbert","type":"County","fips":"01033","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"conecuh":{"name":"Conecuh","type":"County","fips":"01035","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"greene":{"name":"Greene","type":"County","fips":"01063","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"hale":{"name":"Hale","type":"County","fips":"01065","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"houston":{"name":"Houston","type":"County","fips":"01069","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"jackson":{"name":"Jackson","type":"County","fips":"01071","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"lowndes":{"name":"Lowndes","type":"County","fips":"01085","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"macon":{"name":"Macon","type":"County","fips":"01087","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"marengo":{"name":"Marengo","type":"County","fips":"01091","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"perry":{"name":"Perry","type":"County","fips":"01105","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"pickens":{"name":"Pickens","type":"County","fips":"01107","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"shelby":{"name":"Shelby","type":"County","fips":"01117","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]},"sumter":{"name":"Sumter","type":"County","fips":"01119","fill":"#404040","percent_reporting":0,"candidates":[{"name":"Wes Allen","party":"Republican","votes":0,"percent":0,"color":"#7A1230","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false},{"name":"John Wahl","party":"Republican","votes":0,"percent":0,"color":"#6d1b83","winner":false,"advanced":false,"incumbent":false,"major_candidate":true,"major_reason":["metadata","runtime"],"bio":"","photourl":"","endorsed":false}]}}}