{
    "componentChunkName": "component---src-components-one-pager-layout-js",
    "path": "/redistricting-report-card-methodology",
    "result": {"pageContext":{"created_time":"2021-08-20T02:51:00.000Z","last_modified_time":"2023-11-08T22:24:37.000Z","URL":"/redistricting-report-card-methodology","Title":"Redistricting Report Card Methodology","Attachments":null,"Linked_State_Abbreviation":null,"Content":{"childMdx":{"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsx mdx */\nvar _frontmatter = {};\n\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\n\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"were-tracking-and-scoring-maps-throughout-redistricting-check-out-our-grades-at-our-redistricting-report-card-️\"\n  }, \"We're tracking and scoring maps throughout redistricting. \", mdx(\"a\", {\n    parentName: \"h1\",\n    \"href\": \"https://gerrymander.princeton.edu/redistricting-report-card\"\n  }, \"Check out our grades at our\", mdx(\"em\", {\n    parentName: \"a\"\n  }, \" Redistricting Report Card \"), \"\\u2197\\uFE0F\")), mdx(\"h1\", {\n    \"id\": \"dashboard-metrics\"\n  }, \"Dashboard Metrics\"), mdx(\"h2\", {\n    \"id\": \"geographic-scores\"\n  }, \"Geographic Scores\"), mdx(\"p\", null, \"Compactness:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Average Reock score over all districts\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Minimum Reock score over all districts\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Average Polsby-Popper score over all districts\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Minimum Polsby-Popper score over all districts\")), mdx(\"p\", null, \"For each district, the Reock score is calculated by taking the ratio of the area of the district to the area of the minimum circumscribing circle, or in other words, the smallest circle that entirely encapsulates the district. The closer the district resembles a circle, the more compact it is. The score ranges from 0 to 1, where 0 is not compact and 1 is optimally compact.\"), mdx(\"p\", null, \"Reock score is the ratio of the area of the red district to the area of its minimum bounding circle. \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://fisherzachary.github.io/public/r-output.html#reock-score\"\n  }, \"See here for an example\"), \".\"), mdx(\"p\", null, \"For each district, the Polsby-Popper score is calculated by taking the ratio of the area of the district to the area of the circle whose circumference matches the perimeter of the district, in other words, the circle that would result if you stretched out the district into a circle. The less contorted the boundaries of the district and the closer it resembles a circle, the more compact the district. The score ranges from 0 to 1, where 0 is not compact and 1 is optimally compact.\"), mdx(\"p\", null, \"Polsby-Popper score is the ratio of the area of the red district to area of the circle whose perimeter is identical to the district\\u2019s perimeter. \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://fisherzachary.github.io/public/r-output.html#polsby-popper\"\n  }, \"See here for an example.\")), mdx(\"p\", null, \"County Splits:\"), mdx(\"p\", null, \"The number of county splits is the count of the number of counties that are split into at least 2 districts. The minimum number of county splits is calculated as the count of the number of counties that have populations larger than the ideal population size of a district. These counties are too large to fit into one district and therefore must be split. The maximum number of county splits is the total number of counties in a given state.\"), mdx(\"p\", null, \"We also include a more nuanced county splits metric developed by Wachspress et al. called split pairs (Wachspress J., Moffatt C., Adler W. Metrics of locality splitting in political districting (version 0.0.3)). It\\u2019s calculated as the proportion of pairs of people in the same county that are in different voting districts. Imagine there's a random voter that does not remember their voting district. This person picks someone randomly from their county and asks what voting district they are in. If they guess that they are in the same voting district, the split pairs metric tells us the probability of being wrong. The metric ranges from 0 to 1 and the closer to 0, the better.\"), mdx(\"h2\", {\n    \"id\": \"partisan-scores\"\n  }, \"Partisan Scores\"), mdx(\"p\", null, \"We use statewide elections to calculate a partisan index of each voting precinct which we can then use to calculate district-by-district estimates for Democratic vote share percentage (it is common practice to study estimates from the Democratic point of view, but one could easily flip the analysis and consider it from the Republican point of view). To calculate the partisan index, we consider an average of the most recent statewide elections for the U.S. President, U.S. Senate, and Governor.\"), mdx(\"p\", null, \"Partisan metrics:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Democratic seat share\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Calculated by counting the number of districts whose Democratic vote share percentage estimate is greater than 50%\"))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Number of competitive seats\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Calculated by counting the number of districts whose Democratic and Republican vote share percentages estimate is between 46.5-53.5%\"))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Partisan bias\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Calculated as the difference between a party\\u2019s seat share and 50% in a hypothetical election where each party receives exactly 50% of the vote share. This captures if one party is unfairly winning additional seats. A positive difference indicates a partisan advantage for Republicans and a negative difference advantages Democrats.\"))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Packed Wins\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Calculated as the difference between the average win percentage of each party\\u2019s wins. If one party is packed into a few districts and cracked into many others, it will have a much higher average win percentage than the other party. Packed wins quantifies the difference between the two major parties\\u2019 average win percentages. In an ideally fair map, both parties would have similar average win percentages.\"))), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Mean-median difference\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Calculated as the difference between a party\\u2019s average vote share and its median vote share across all districts. This measures if voters are being packed into a few districts and cracked into others. A positive difference indicates a partisan advantage for Republicans and a negative difference advantages Democrats.\")))), mdx(\"p\", null, \"As of 12/8/21, we have improved the calculation for the partisan breakdown by allowing competitive seats to be split between the two parties. This allows flexibility for seats that could flip within a cycle due to shifts to one party or another or specific candidate effects. We find the probability of a Democratic win for a given voteshare by calculating the area under a normal curve with mean 50% and standard deviation 1.5%. This was calibrated to mainly affect districts in our 7-percentage point competitiveness zone. We then sum up all of the probabilities for each district to find the estimate of total Democratic seats won under this plan. This new methodology allows districts with voteshares close to 50% to be split fairly evenly between the two parties, while districts far away will be counted as complete wins for one party or the other. We apply this technique to both proposed draft plans as well as the simulated maps in the ensemble generation. This gives us a one-to-one comparison between the proposed plan and simulated maps. We have also removed the leeway in partisan fairness grading as this improvement addresses the reasons for including it.\"), mdx(\"h2\", {\n    \"id\": \"minority-composition\"\n  }, \"Minority Composition\"), mdx(\"p\", null, \"We use minority voting age population (VAP) to approximate a given minority group\\u2019s political influence in a given district. This number is used, in combination with sophisticated analysis of racially polarized voting, in Voting Rights Act legal cases.\"), mdx(\"p\", null, \"Displayed measures:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Sorted District-by-district demographic estimates of:\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Black VAP percentage (BVAP)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Hispanic VAP percentage (HVAP)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Asian VAP percentage (AVAP)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"American Indian or Alaska Native VAP percentage (NVAP)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Native Hawaiian or Other Pacific Islander VAP percentage (PVAP)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Minority VAP percentage (MVAP)\", mdx(\"ul\", {\n    parentName: \"li\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Calculated as the sum of BVAP, HVAP, AVAP, NVAP,\\xA0and PVAP\")))))), mdx(\"h2\", {\n    \"id\": \"partisan-composition\"\n  }, \"Partisan Composition\"), mdx(\"p\", null, \"We plot sorted district-by-district estimates of Democratic vote shares for the map. Within the plot, we show the competitiveness zone which we define as districts where the Democratic and Republican vote share is between 46.5%-53.5%.\"), mdx(\"h1\", {\n    \"id\": \"report-card-scoring\"\n  }, \"Report Card Scoring\"), mdx(\"h2\", {\n    \"id\": \"geographic-report-card-scoring\"\n  }, \"Geographic Report Card Scoring\"), mdx(\"p\", null, \"Compactness and county splits were graded using a set of maps drawn by the legislature, organizations, and individuals from the Princeton Mapping Corps. Starting in 2023, we assigned grades using simulated ensembles.\"), mdx(\"h3\", {\n    \"id\": \"compactness-scoring\"\n  }, \"Compactness scoring\"), mdx(\"p\", null, \"Many state constitutions include language to draw relatively compact districts. We graded compactness as follows:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Calculate each map\\u2019s average Reock score;\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Set the \\\"F\\\" and \\\"A\\\" grade thresholds respectively at the 5th and 95th percentile of the set of average scores;\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Assign maps between the 5th and 95th percentiles a \\\"C\\\"\")), mdx(\"h3\", {\n    \"id\": \"county-splits-scoring\"\n  }, \"County Splits scoring\"), mdx(\"p\", null, \"Many state constitutions include language to respect existing administrative and political boundaries such as county lines. We graded county splits as follows:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Calculate each of their county splits scores\\xA0\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Set the \\\"A\\\" and \\\"F\\\" grade thresholds respectively at the 5th and 95th percentile of the set of county splits scores\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"All maps between the 5th and 95th percentiles receive a \\\"C\\\"\")), mdx(\"p\", null, \"If a map received an \\\"A\\\" for compactness and county splits, it received an \\\"A\\\" in geography. If it receives an \\\"F\\\" for compactness and county splits, it received an \\\"F\\\" in geography. If it received one \\\"A\\\" and one \\\"C\\\" for compactness and county splits, it received a \\\"B\\\" for geography. All other maps receive a \\\"C\\\" for geography.\"), mdx(\"h2\", {\n    \"id\": \"competitiveness-scoring\"\n  }, \"Competitiveness Scoring\"), mdx(\"p\", null, \"Often, a gerrymandered map produces a majority of districts that are not competitive, effectively guaranteeing electoral victories to members of only one party in these districts. We defined a competitive district as one where the Democratic (and Republican) vote share was within 46.5-53.5%. Using the distribution of the number of competitive seats derived from the ensemble, we give an:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u201CA\\u201D to maps with more competitive districts than 95% of the maps in the ensemble\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u201CB\\u201D to maps where the number of competitive districts is between the 64th and 95th percentile of the distribution\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u201CC\\u201D to maps where the number of competitive districts is between the 5th and 64th percentile of the distribution\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u201CF\\u201D to maps with fewer competitive districts than 95% of the maps in the ensemble\")), mdx(\"p\", null, \"An \\u201CA\\u201D map is particularly competitive, an \\u201CF\\u201D is particularly uncompetitive, and a \\u201CC\\u201D map lands within the majority of maps we see in the distribution. We distinguished between \\u201CA\\u201D and \\u201CC\\u201D because having a very competitive map could result in a distorted partisan fairness grade. This is because having many competitive districts near the 50% threshold could result in far fewer or more Democratic seats depending on small electoral changes.\"), mdx(\"h2\", {\n    \"id\": \"partisan-fairness-scoring\"\n  }, \"Partisan Fairness Scoring\"), mdx(\"p\", null, \"When determining whether a redistricting plan is a partisan gerrymander or not, there are two perspectives that must be considered.\\xA0\"), mdx(\"p\", null, \"The first is an aspirational view of fairness. We take the normative stance that the parties should be treated symmetrically (i.e., if Democrats get 60% of the vote in a state and get X% of the seats, Republicans should also get X% of the seats if they would have received 60% of the vote). We use the \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://en.wikipedia.org/wiki/Cube_rule\"\n  }, \"cube law\"), \" to encode what the seat share should be for a given vote share. This empirical result in the political science literature finds that the ratio of seat shares should be proportional to the ratio of the cubes of the vote shares. This law matches up closely with what would naturally occur for the distribution of vote shares across the U.S. When a seat share falls outside a reasonable range defined by the cube law, it indicates that the map does not comport with an aspirational view of partisan fairness.\"), mdx(\"p\", null, \"The second is a practical view of what\\u2019s possible to draw under the state-specific conditions. Using the ensemble method, we are able to generate a large set of alternative districting plans that follow traditional redistricting criteria. The resulting distribution of Democratic seat shares for each of the maps in the ensemble gives a baseline for the naturally occurring seat shares for a state given its political geography and redistricting rules. When the seat share falls outside the bulk of the distribution defined by the ensemble, it indicates that the map may have been drawn using partisan criteria beyond the traditional principles defined in the state\\u2019s constitution.\\xA0\"), mdx(\"p\", null, \"In essence, the normative symmetry standard tests whether a map is \\u201Cgood\\u201D in being fair to the parties whereas the ensemble method tests whether a map could have been drawn by a nonpartisan actor.\"), mdx(\"p\", null, \"The normative symmetry range is calculated by taking the statewide vote share, deriving the expected Democratic seat share using the cube law, and building a range around that seat share. Because the range of acceptable outcomes is related to the number of total seats, we define the range as the maximum of 1 seat and 7% times the total number of seats (5% if the total number of seats is greater than 200). The ensemble range is determined by the 5th and 95th percentile of distribution of seat shares in the maps in the ensemble.\"), mdx(\"h3\", {\n    \"id\": \"partisan-fairness-report-card-grades\"\n  }, \"Partisan Fairness Report Card Grades\"), mdx(\"p\", null, \"Since the normative symmetry method is more aspirational and the ensemble method is more practical, we reward maps with higher grades when they are in the normative range, but make sure that maps that are in the ensemble range are not penalized too harshly.\"), mdx(\"p\", null, \"When the normative symmetry range and ensemble range overlap:\"), mdx(\"table\", null, mdx(\"thead\", null, \"\\xA0\", mdx(\"tr\", null, \"\\xA0\\xA0\", mdx(\"th\", null), \"\\xA0\\xA0\", mdx(\"th\", null, \"Normative Symmetry Range\"), \"\\xA0\\xA0\", mdx(\"th\", null, \"Ensemble Range\"), \"\\xA0\")), mdx(\"tbody\", null, \"\\xA0\", mdx(\"tr\", null, \"\\xA0\\xA0\", mdx(\"td\", null, \"A\"), \"\\xA0\\xA0\", mdx(\"td\", null, \"PASS\"), \"\\xA0\\xA0\", mdx(\"td\", null, \"PASS\"), \"\\xA0\"), \"\\xA0\", mdx(\"tr\", null, \"\\xA0\\xA0\", mdx(\"td\", null, \"B\"), \"\\xA0\\xA0\", mdx(\"td\", null, \"PASS\"), \"\\xA0\\xA0\", mdx(\"td\", null, \"FAIL\"), \"\\xA0\"), \"\\xA0\", mdx(\"tr\", null, \"\\xA0\\xA0\", mdx(\"td\", null, \"C\"), \"\\xA0\\xA0\", mdx(\"td\", null, \"FAIL\"), \"\\xA0\\xA0\", mdx(\"td\", null, \"PASS\"), \"\\xA0\"), \"\\xA0\", mdx(\"tr\", null, \"\\xA0\\xA0\", mdx(\"td\", null, \"F\"), \"\\xA0\\xA0\", mdx(\"td\", null, \"FAIL\"), \"\\xA0\\xA0\", mdx(\"td\", null, \"FAIL\"), \"\\xA0\"))), mdx(\"p\", null, \"When the normative symmetry range and ensemble range do not overlap, we assign an \\u201CA\\u201D to the seat share value at the edge of the ensemble range in the direction of the normative range. This seat share represents a naturally occurring result that is also close to being normatively \\u201Cgood\\u201D. We assign a \\u201CB\\u201D to all seat share values in the normative range and between the normative and ensemble ranges. We assign a \\u201CC\\u201D to all other seat shares in the ensemble range. Finally, we assign an \\u201CF\\u201D to all seat shares on the exterior of the ensemble and normative ranges.\"), mdx(\"p\", null, \"In both scenarios, we want to curve the grades in such a way that we don't harshly penalize maps that are close to the normative range and firmly within the ensemble range. To do this, we create a \\\"leeway\\\" seat amount by calculating (0.07 \", \"*\", \" total number of districts) and round down to the nearest integer. We then pad the ends of the normative symmetry range with the leeway seat amount and grade those values as \\\"B\\\" as long as they are still in the ensemble range.\"), mdx(\"p\", null, \"For small states (seven or fewer congressional districts), the first partisan-symmetry-based standard was too permissive for grading purposes. In these states we used the ensemble-based component alone to assign a grade. In these simulations, each simulated district was scored as 0.0 to 1.0 Democratic seats, where the exact fraction was calculated from partisan margin as tcdf((v-50)/3.7,3), where v is the estimated vote share in percentage points, tcdf(x,k) is the cumulative t-distribution with parameter x and k degrees of freedom. The parameter 3.7 was selected to match the overall win probabilities of 2012-2020 congressional races in which the same map was used. Grades were assigned by how the actual map compares to the distribution of all maps in the ensemble. If the map was in the most extreme 2.3% (which would be 2.0 standard deviations for a normal distribution) for either party, it received an F. If the map is in the middle 81.8% of simulations (approximately +/-1.3 standard deviations), the map received an A. Other, intermediate maps receive a C.\"), mdx(\"p\", null, \"Finally, if competitiveness was an \\u201CA\\u201D, we bumped up the overall partisan fairness grade by one letter. If competitiveness was an \\u201CF\\u201D, we downgraded the overall partisan fairness grade by one letter.\"), mdx(\"p\", null, \"Finally, if competitiveness is an \\u201CA\\u201D, we bump up the overall partisan fairness grade by one letter. If competitiveness is an \\u201CF\\u201D, we downgrade the overall partisan fairness grade by one letter. \"), mdx(\"h2\", {\n    \"id\": \"minority-composition-1\"\n  }, \"Minority Composition\"), mdx(\"p\", null, \"If any specific minority group or coalition of minority groups have fewer districts that are greater than 30% than the last court-accepted map, we flag that map as possibly backsliding in minority opportunity-to-elect districts. If any specific minority group or coalition of minority groups have more districts greater than 60% than the last court-accepted map, we flag that map as possibly over-packing a specific minority group or coalition of minority groups. Again, we do not claim to capture VRA compliance, as it requires the performance of racially polarized voting analysis on a district-by-district basis. Our analysis is a simplification to study minority demographics, which is an assessment of composition; opportunity to elect and achieve minority representation requires more complicated analysis.\"), mdx(\"h1\", {\n    \"id\": \"explanation-of-ensemble-methodology\"\n  }, \"Explanation of Ensemble Methodology\"), mdx(\"p\", null, \"To generate a large set of alternative districting plans, we used the open-source package, \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://gerrychain.readthedocs.io/en/latest/user/install.html\"\n  }, \"Gerrychain\"), \", that is commonly used in computational redistricting. We run the algorithm on precinct-level statewide files.\"), mdx(\"p\", null, \"If the state did not have a reapportioned number of representatives, the last court-accepted plan was used as the starting partition. If the state had a different number of congressional districts than the previous cycle, a random partition was created and then optimized to pass the backsliding test and to have a reasonable number of cut edges (compactness) and county splits relative to the last court-accepted plan. This optimized partition closely matches the conditions in the last court-accepted plan and is used as the starting partition.\"), mdx(\"p\", null, \"The ensemble constrains maps to have population equality within 5%, fewer or the same number of county splits and cut edges as the starting partition, and minority representation as dictated by the backsliding test. The algorithm is run for 1,000,000 steps which results in 1,000,000 alternative maps that strictly follow traditional redistricting criteria.\"), mdx(\"p\", null, \"On this ensemble of alternative maps, we calculate the number of Democratic districts and the number of competitive districts using a partisan index that\\u2019s the average of the most recent statewide elections for the U.S. President, U.S. Senate, and Governor. This gives us a distribution of the number of Democratic districts and number of competitive districts for maps that could have been drawn in the state that follow traditional criteria, but have no partisan intent.\"), mdx(\"h1\", {\n    \"id\": \"report-card-grading\"\n  }, \"Report Card Grading\"), mdx(\"p\", null, \"We combine the graded categories into a final report card grade. However, each of these categories is given different weight depending on its importance in capturing gerrymandering. Our partisan fairness category is the most robust in detecting gerrymandering harms, so our final grade is heavily influenced by the partisan fairness grade with the other categories making grade adjustments. Specifically, we start with partisan fairness grade as our base final report card grade. If geographic features is an \\u201CF\\u201D, we downgrade the final grade by one letter. We acknowledge that this is only one possible grading scheme that we have developed using the expertise at the Electoral Innovation Lab and have provided the individual grades and scores.\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"ogImage":{"path":"og-images/social//redistricting-report-card-methodology.png","size":{"width":1200,"height":630},"__ogImageGenerationContext":{"componentPath":"__generated/og-imagessocialredistricting-report-card-methodology.png","imgPath":"public/og-images/social/redistricting-report-card-methodology.png","size":{"width":1200,"height":630}}}}},
    "staticQueryHashes": ["764694655"]}