{
    "componentChunkName": "component---src-templates-state-js",
    "path": "/reforms/AL",
    "result": {"data":{"timeline":{"nodes":[{"id":"c9fca489-64d2-545f-9f95-b42f213c4019","data":{"TimelineName":"Alabama","TimelineState":["recxb6HI7G1rI8U21"],"TimelineType":"Congressional","State__from_Reforms_":["AL"],"Alert":"High","Final_Map_Deadline":"2022-01-28","TimelineDeadlineType":{"id":"bcf1f578-b55d-547c-85a6-2c200d31b753","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(\"p\", null, \"Candidate filing \"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"TimelineOtherDates":{"id":"1ccffa86-130c-540c-8708-c478d7187201","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(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"5/24/2021 - candidates can start fundraising (one year before primary)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Jan 2022? - state parties set candidate qualifying deadlines \"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"5/24/2022 - primary election\")));\n}\n;\nMDXContent.isMDXComponent = true;"}},"Proposed_Actions":["Special session","Delay primary"],"TimelineNewsSources":{"id":"fbe67649-7c1b-52cd-9326-813b8310d5ae","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(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.aldailynews.com/census-data-delay-puts-redistricting-on-hold-could-impact-candidates/\"\n  }, \"Census data delay puts redistricting on hold, could impact candidates\")), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.al.com/news/2021/03/alabama-sues-the-us-census-bureau-over-data-delay-fuzzy-numbers.html\"\n  }, \"Alabama sues the U.S. Census Bureau over data delay, fuzzy \")));\n}\n;\nMDXContent.isMDXComponent = true;"}},"TimelineAdditionalNotes":{"id":"c53948f6-2c33-59c4-8812-b9dff2bb3b14","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  }));\n}\n;\nMDXContent.isMDXComponent = true;"}}}},{"id":"6c460501-eaec-542f-8867-c982e84e2a3a","data":{"TimelineName":"Alabama","TimelineState":["recxb6HI7G1rI8U21"],"TimelineType":"State Legislative","State__from_Reforms_":["AL"],"Alert":"High","Final_Map_Deadline":"2022-01-28","TimelineDeadlineType":{"id":"b796df2a-57b1-5f70-9f21-755c0754a24e","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(\"p\", null, \"Candidate filing \"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"TimelineOtherDates":{"id":"fcea65fc-a7b3-5c74-a6f6-769783d8ae4e","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(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"5/24/2021 - candidates can start fundraising (one year before primary)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Jan 2022? - state parties set candidate qualifying deadlines \"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"5/24/2022 - primary election\")));\n}\n;\nMDXContent.isMDXComponent = true;"}},"Proposed_Actions":["Special session","Delay primary"],"TimelineNewsSources":{"id":"1792baff-c986-50cc-b3f3-485f35b0f66f","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(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.aldailynews.com/census-data-delay-puts-redistricting-on-hold-could-impact-candidates/\"\n  }, \"Census data delay puts redistricting on hold, could impact candidates\")), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.al.com/news/2021/03/alabama-sues-the-us-census-bureau-over-data-delay-fuzzy-numbers.html\"\n  }, \"Alabama sues the U.S. Census Bureau over data delay, fuzzy numbers\")));\n}\n;\nMDXContent.isMDXComponent = true;"}},"TimelineAdditionalNotes":{"id":"5df1a544-9d9d-5b10-a84a-1d969e64c771","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  }));\n}\n;\nMDXContent.isMDXComponent = true;"}}}}]},"allAirtable":{"nodes":[]},"airtable":{"data":{"Congressional_Boundaries":"Drawn by legislature","Legislative_Party":"Republican","State_Boundaries":"Drawn by legislature","State_Abbreviation":"AL","Governor_Party":"Republican","Status":"Legal routes to reform","State":"Alabama","Actions":{"id":"2a407f02-8fb2-58a5-8945-d61724a693a7","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(\"p\", null, \"Participate in the Legislature\\u2019s public input process:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Obtain Alabama redistricting data from \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://openprecincts.org/al/\"\n  }, \"OpenPrecincts\"), \".\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Start to plan out what defines your community \\u2013 whether it\\u2019s a shared economic interest, school districts, or other social or other cultural, historical, or economic interests \\u2013 and how that can be represented on a map. This will come in handy once the Legislature starts collecting feedback.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Use software tools such as \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://davesredistricting.org/\"\n  }, \"Dave's Redistricting App\"), \" and \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://districtr.org/\"\n  }, \"Districtr\"), \" to draw district maps showing either (a) what a fair map would look like, or (b) where the community you believe should be better represented is located.\")), mdx(\"p\", null, \"Read the Common Cause \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.commoncause.org/wp-content/uploads/2020/01/CC-Activist-Handbook-on-Redistricting-Reform-1.27.20.pdf\"\n  }, \"Activist Handbook on Redistricting Reform\"), \" to learn about what reforms have been successful in the past, and what steps to take to enact reform in the future. \"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"History":{"id":"a6bdaf1a-5b3a-56af-8af5-efc3feb1fea1","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(\"p\", null, \"In the 2011 redistricting cycle, Alabama faced several legal challenges:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"In \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://www.brennancenter.org/our-work/court-cases/alabama-legislative-black-caucus-v-alabama-amicus-brief\"\n  }, \"Alabama Legislative Black Caucus v. Alabama\"), \" (2015), the Supreme Court rejected the district court ruling that upheld Alabama\\u2019s 2011 redistricting maps, which were motivated by race. On remand, a three-judge panel in Alabama found 12 state districts to be unconstitutional racial gerrymanders.\\xA0\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"In \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://www.brennancenter.org/our-work/court-cases/chestnut-v-merrill\"\n  }, \"Chestnut v. Merrill\"), \", plaintiffs filed a lawsuit under Section 2 of the Voting Rights Act, challenging Alabama's 1st, 2nd, and 3rd congressional districts as cracking minority voters, and the 7th congressional district as packing minority voters. However, a federal district court declared the case moot in March 2020, citing lack of jurisdiction and concerns with separation of powers.\")));\n}\n;\nMDXContent.isMDXComponent = true;"}},"Process":{"id":"fe4b1c95-7554-5798-9835-f0c5a94cc003","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(\"h3\", {\n    \"id\": \"state-legislature\"\n  }, \"State Legislature\"), mdx(\"p\", null, \"Alabama's state legislative and congressional district lines are drawn by the Legislature by ordinary statute, and are subject to the Governor's veto. The Legislature can override vetoes with a simple majority vote in each chamber.\"), mdx(\"h3\", {\n    \"id\": \"criteria\"\n  }, \"Criteria\"), mdx(\"p\", null, \"In addition to the federal requirements of one person, one vote and the Voting Rights Act, Alabama\\u2019s state constitution (\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"http://alisondb.legislature.state.al.us/alison/codeofalabama/constitution/1901/CA-245741.htm\"\n  }, \"Art. IX, \\xA7 200\"), \") requires that state senate districts be contiguous and avoid county splits. In May 2011, the Reapportionment Committee adopted additional \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://bit.ly/3gC6aSU\"\n  }, \"guidelines\"), \" for the cycle which further required that districts be compact and preserve communities of interest. Protection of incumbents is permitted.\"), mdx(\"h3\", {\n    \"id\": \"public-input\"\n  }, \"Public Input\"), mdx(\"p\", null, \"While Alabama law does not require public hearings, the legislative Reapportionment Committee held hearings throughout the state in May 2011. Moreover, the Committee guidelines allowed any citizen or group to present their own map, in accordance with certain procedures outlined \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://bit.ly/3gC6aSU\"\n  }, \"here\"), \". It is probable that there will be similar opportunities for public input in 2021.\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"Reform":{"id":"85176de9-d08b-51bf-b939-0511fb180fe8","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  }));\n}\n;\nMDXContent.isMDXComponent = true;"}},"Issues":{"id":"86d43578-e3d9-5aa3-8190-3f19e7f5ae4f","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(\"h3\", {\n    \"id\": \"pitfalls\"\n  }, \"Pitfalls\"), mdx(\"p\", null, \"Alabama has a guaranteed trifecta in 2021, as the Republican Party controls both chambers of the Legislature and the Governorship. Single-party control of the redistricting process increases the risk of partisan and racial gerrymandering.\\xA0\"), mdx(\"p\", null, \"Additionally, this will be Alabama\\u2019s first cycle without the protections of Section 5 of the Voting Rights Act, which was struck down in the 2013 Supreme Court case Shelby County v. Holder. In the absence of preclearance requirements to protect communities of color, and given the recent history of gerrymandering in Alabama, observers should closely monitor every step of the redistricting process to ensure fair treatment for all.\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"Sources":{"id":"2b1f810e-7a0a-5c5f-a1e1-ad564f9e9213","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(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://redistricting.lls.edu/states-AL.php\"\n  }, \"All About Redistricting\")), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"http://www.ncsl.org/research/redistricting.aspx\"\n  }, \"NCSL\")), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://ballotpedia.org/Redistricting_in_Alabama\"\n  }, \"Ballotpedia\")));\n}\n;\nMDXContent.isMDXComponent = true;"}},"Contacts":{"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(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://lwval.org/\"\n  }, \"League of Women Voters of Alabama\")), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://www.alabamavotingrights.com/\"\n  }, \"Alabama Voting Rights Project\")));\n}\n;\nMDXContent.isMDXComponent = true;"}},"Representable":{"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(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://representable.org/map/AL\"\n  }, \"Check out Communities of Interest collected in this state on Representable\")), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://representable.org/state/AL\"\n  }, \"Learn about Communities of Interest in this state\")));\n}\n;\nMDXContent.isMDXComponent = true;"}}}},"allAirtableDashboard":{"totalCount":6,"group":[{"nodes":[{"id":"7be67c08-0361-58e4-8399-5fbc3dee6327","table":"Dashboard","data":{"DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanName":"Alabama 2021 Congressional – Struck Down (Milligan v. Merrill)","DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardPlanDescription":{"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(\"p\", null, \"Alabama 2021 Congressional Map 2021\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"DashboardPlanState":["recxb6HI7G1rI8U21"],"DashboardPlanStatus":"Live","DashboardPlanYear":2021,"DashboardType":"report-card","DashboardPlanEnacted":"Struck Down","DashboardChamber":"congressional","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-maps/AL-congress-2021-livingston.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-report-cards/AL-congress-2021-livingston-report-card.json","Last_Modified":"2025-06-03T20:25:15.000Z","Created":"2023-08-17T17:42:17.000Z","DateAdded":"2024-03-20T17:43:00.000Z"},"recordId":"recAf9qMDQvctqOyo"},{"id":"8396033d-cf0e-56b9-a568-740f60e43590","table":"Dashboard","data":{"DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanName":"Alabama 2021 Senate – Enacted","DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardPlanDescription":{"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(\"p\", null, \"Alabama 2021 Final State Senate Map\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"DashboardPlanState":["recxb6HI7G1rI8U21"],"DashboardPlanStatus":"Live","DashboardPlanYear":2021,"DashboardType":"report-card","DashboardPlanEnacted":"Enacted","DashboardChamber":"state-senate","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/state-senate/2020-census/results/plan-maps/AL-senate.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/state-senate/2020-census/results/plan-report-cards/AL-senate-report-card.json","Last_Modified":"2025-05-28T16:47:11.000Z","Created":"2023-12-09T05:16:24.000Z","DateAdded":"2023-12-09T05:17:00.000Z"},"recordId":"rec0idDRwyhX4hI3r"},{"id":"a328fcf6-7abd-59e3-a8e4-d99311dc6221","table":"Dashboard","data":{"DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanName":"Alabama 2023 Congressional – Enacted – Remedial (Special Master)","DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardPlanDescription":{"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(\"p\", null, \"Alabama 2023 Special Master Remedial Map - Enacted\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"DashboardPlanState":["recxb6HI7G1rI8U21"],"DashboardPlanStatus":"Live","DashboardPlanYear":2023,"DashboardType":"report-card","DashboardPlanEnacted":"Enacted","DashboardChamber":"congressional","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-maps/AL-remedial_three.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-report-cards/AL-remedial_three-report-card.json","Last_Modified":"2025-06-03T20:20:39.000Z","Created":"2023-09-28T05:29:37.000Z","DateAdded":"2023-09-28T05:31:00.000Z"},"recordId":"recAdcHsXUpyTRR1p"},{"id":"94df94e3-f00d-579b-b65c-b619331ddb86","table":"Dashboard","data":{"DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanName":"Alabama 2023 Congressional – Draft – Remedial v2","DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardPlanDescription":{"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(\"p\", null, \"Alabama 2023 Remedial Congressional Map Two\\t\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"DashboardPlanState":["recxb6HI7G1rI8U21"],"DashboardPlanStatus":"Live","DashboardPlanYear":2023,"DashboardType":"report-card","DashboardPlanEnacted":"Draft","DashboardChamber":"congressional","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-maps/AL-remedial_two.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-report-cards/AL-remedial_two-report-card.json","Last_Modified":"2025-06-03T20:20:46.000Z","Created":"2023-09-28T05:29:35.000Z","DateAdded":"2023-09-28T05:31:00.000Z"},"recordId":"recAAYHxX6SEsf5xF"},{"id":"fe670dc4-2d48-5fea-9e34-1cd2dda62112","table":"Dashboard","data":{"DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanName":"Alabama 2023 Congressional – Draft – Remedial v1","DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardPlanDescription":{"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(\"p\", null, \"Alabama 2023 Remedial Congressional Map One\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"DashboardPlanState":["recxb6HI7G1rI8U21"],"DashboardPlanStatus":"Live","DashboardPlanYear":2023,"DashboardType":"report-card","DashboardPlanEnacted":"Draft","DashboardChamber":"congressional","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-maps/AL-remedial_one.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-report-cards/AL-remedial_one-report-card.json","Last_Modified":"2025-06-03T20:20:27.000Z","Created":"2023-09-28T05:29:31.000Z","DateAdded":"2023-09-28T05:30:00.000Z"},"recordId":"rec24CONNnSzdgkaX"},{"id":"3a43a1bf-4f60-5a53-aadb-3073f2c55eca","table":"Dashboard","data":{"DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanName":"Alabama 2021 House – Enacted","DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardPlanDescription":{"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(\"p\", null, \"Alabama 2021 State House Official\"));\n}\n;\nMDXContent.isMDXComponent = true;"}},"DashboardPlanState":["recxb6HI7G1rI8U21"],"DashboardPlanStatus":"Live","DashboardPlanYear":2021,"DashboardType":"report-card","DashboardPlanEnacted":"Enacted","DashboardChamber":"state-house","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/state-house/2020-census/results/plan-maps/AL-house-2021-livingston.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/state-house/2020-census/results/plan-report-cards/AL-house-2021-livingston-report-card.json","Last_Modified":"2025-05-28T16:47:17.000Z","Created":"2023-09-27T15:07:07.000Z","DateAdded":"2023-09-27T15:08:00.000Z"},"recordId":"rec83mUGowlh7PhXd"}],"totalCount":6,"field":"data.DashboardPlanStateAbbreviation","fieldValue":"AL"}],"nodes":[{"id":"7be67c08-0361-58e4-8399-5fbc3dee6327","recordId":"recAf9qMDQvctqOyo","data":{"DashboardPlanName":"Alabama 2021 Congressional – Struck Down (Milligan v. Merrill)","DashboardPlanStatus":"Live","DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanYear":2021,"DashboardPlanSourceURL":null,"DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardFileID":"congress-2021-livingston","DashboardType":"report-card","DashboardPlanEnacted":"Struck Down","DashboardChamber":"congressional","DateAdded":"2024-03-20T17:43:00.000Z","Created":"2023-08-17T17:42:17.000Z","Last_Modified":"2025-06-03T20:25:15.000Z","Live_URL":"https://gerrymander.princeton.edu/redistricting-report-card/?planId=recAf9qMDQvctqOyo","Local_URL":"http://localhost:8000/redistricting-report-card?planId=recAf9qMDQvctqOyo","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-maps/AL-congress-2021-livingston.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-report-cards/AL-congress-2021-livingston-report-card.json"}},{"id":"8396033d-cf0e-56b9-a568-740f60e43590","recordId":"rec0idDRwyhX4hI3r","data":{"DashboardPlanName":"Alabama 2021 Senate – Enacted","DashboardPlanStatus":"Live","DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanYear":2021,"DashboardPlanSourceURL":null,"DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardFileID":"senate","DashboardType":"report-card","DashboardPlanEnacted":"Enacted","DashboardChamber":"state-senate","DateAdded":"2023-12-09T05:17:00.000Z","Created":"2023-12-09T05:16:24.000Z","Last_Modified":"2025-05-28T16:47:11.000Z","Live_URL":"https://gerrymander.princeton.edu/redistricting-report-card/?planId=rec0idDRwyhX4hI3r","Local_URL":"http://localhost:8000/redistricting-report-card?planId=rec0idDRwyhX4hI3r","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/state-senate/2020-census/results/plan-maps/AL-senate.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/state-senate/2020-census/results/plan-report-cards/AL-senate-report-card.json"}},{"id":"a328fcf6-7abd-59e3-a8e4-d99311dc6221","recordId":"recAdcHsXUpyTRR1p","data":{"DashboardPlanName":"Alabama 2023 Congressional – Enacted – Remedial (Special Master)","DashboardPlanStatus":"Live","DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanYear":2023,"DashboardPlanSourceURL":null,"DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardFileID":"remedial_three","DashboardType":"report-card","DashboardPlanEnacted":"Enacted","DashboardChamber":"congressional","DateAdded":"2023-09-28T05:31:00.000Z","Created":"2023-09-28T05:29:37.000Z","Last_Modified":"2025-06-03T20:20:39.000Z","Live_URL":"https://gerrymander.princeton.edu/redistricting-report-card/?planId=recAdcHsXUpyTRR1p","Local_URL":"http://localhost:8000/redistricting-report-card?planId=recAdcHsXUpyTRR1p","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-maps/AL-remedial_three.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-report-cards/AL-remedial_three-report-card.json"}},{"id":"94df94e3-f00d-579b-b65c-b619331ddb86","recordId":"recAAYHxX6SEsf5xF","data":{"DashboardPlanName":"Alabama 2023 Congressional – Draft – Remedial v2","DashboardPlanStatus":"Live","DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanYear":2023,"DashboardPlanSourceURL":null,"DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardFileID":"remedial_two","DashboardType":"report-card","DashboardPlanEnacted":"Draft","DashboardChamber":"congressional","DateAdded":"2023-09-28T05:31:00.000Z","Created":"2023-09-28T05:29:35.000Z","Last_Modified":"2025-06-03T20:20:46.000Z","Live_URL":"https://gerrymander.princeton.edu/redistricting-report-card/?planId=recAAYHxX6SEsf5xF","Local_URL":"http://localhost:8000/redistricting-report-card?planId=recAAYHxX6SEsf5xF","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-maps/AL-remedial_two.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-report-cards/AL-remedial_two-report-card.json"}},{"id":"fe670dc4-2d48-5fea-9e34-1cd2dda62112","recordId":"rec24CONNnSzdgkaX","data":{"DashboardPlanName":"Alabama 2023 Congressional – Draft – Remedial v1","DashboardPlanStatus":"Live","DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanYear":2023,"DashboardPlanSourceURL":null,"DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardFileID":"remedial_one","DashboardType":"report-card","DashboardPlanEnacted":"Draft","DashboardChamber":"congressional","DateAdded":"2023-09-28T05:30:00.000Z","Created":"2023-09-28T05:29:31.000Z","Last_Modified":"2025-06-03T20:20:27.000Z","Live_URL":"https://gerrymander.princeton.edu/redistricting-report-card/?planId=rec24CONNnSzdgkaX","Local_URL":"http://localhost:8000/redistricting-report-card?planId=rec24CONNnSzdgkaX","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-maps/AL-remedial_one.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/congressional/2020-census/results/plan-report-cards/AL-remedial_one-report-card.json"}},{"id":"3a43a1bf-4f60-5a53-aadb-3073f2c55eca","recordId":"rec83mUGowlh7PhXd","data":{"DashboardPlanName":"Alabama 2021 House – Enacted","DashboardPlanStatus":"Live","DashboardPlanMapURL":null,"DashboardPlanScoreURL":null,"DashboardPlanYear":2021,"DashboardPlanSourceURL":"https://www.akredistrict.org/map-gallery/web/final-redistricting-map.html","DashboardPlanStateName":["Alabama"],"DashboardPlanStateAbbreviation":["AL"],"DashboardFileID":"house-2021-livingston","DashboardType":"report-card","DashboardPlanEnacted":"Enacted","DashboardChamber":"state-house","DateAdded":"2023-09-27T15:08:00.000Z","Created":"2023-09-27T15:07:07.000Z","Last_Modified":"2025-05-28T16:47:17.000Z","Live_URL":"https://gerrymander.princeton.edu/redistricting-report-card/?planId=rec83mUGowlh7PhXd","Local_URL":"http://localhost:8000/redistricting-report-card?planId=rec83mUGowlh7PhXd","GeneratedMapURL":"https://redistricting-report-card.s3.amazonaws.com/AL/state-house/2020-census/results/plan-maps/AL-house-2021-livingston.geojson","GeneratedScoreURL":"https://redistricting-report-card.s3.amazonaws.com/AL/state-house/2020-census/results/plan-report-cards/AL-house-2021-livingston-report-card.json"}}]}},"pageContext":{"pagePath":"/reforms/AL","state":"AL","ogImage":{"path":"og-images/social/AL.png","size":{"width":1200,"height":630},"__ogImageGenerationContext":{"componentPath":"__generated/og-imagessocialAL.png","imgPath":"public/og-images/social/AL.png","size":{"width":1200,"height":630}}}}},
    "staticQueryHashes": ["1739555907","1946304716","764694655"]}