{
    "componentChunkName": "component---src-components-page-template-jsx",
    "path": "/guides/general/troubleshooting",
    "result": {"data":{"mdx":{"id":"9459e024-6e02-5ab3-aefd-88552b45049f","body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : 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/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"section\": \"Guides\",\n  \"chapter\": \"General\",\n  \"title\": \"Troubleshooting\",\n  \"description\": \"Solutions to common problems you might encounter at NUbots.\",\n  \"slug\": \"/guides/general/troubleshooting\",\n  \"authors\": [\"Ysobel Sims (@ysims)\", \"Josephus Paye II (@JosephusPaye)\"]\n};\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 Alert = makeShortcode(\"Alert\");\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, \"If this page does not solve your problem, ask for help on Slack by messaging a channel or asking a senior team member directly.\"), mdx(\"h2\", {\n    \"id\": \"nubots\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#nubots\",\n    \"aria-label\": \"nubots permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"NUbots\"), mdx(\"h3\", {\n    \"id\": \"why-is-b-target-generic-taking-so-long\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#why-is-b-target-generic-taking-so-long\",\n    \"aria-label\": \"why is b target generic taking so long permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Why is \", mdx(\"inlineCode\", {\n    parentName: \"h3\"\n  }, \"./b target generic\"), \" taking so long?\"), mdx(\"p\", null, \"If \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b target generic\"), \" (or \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b target nuc...\"), \") is taking more than ~10 minutes and you haven't modified the Dockerfile, then something is wrong. You should see it downloading layers from DockerHub, not building everything from scratch.\"), mdx(\"p\", null, \"A simple fix is to remove your BuildKit container.\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Run \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"docker container ls\"), \"\\nYou should see an entry like\"), mdx(\"pre\", {\n    parentName: \"li\"\n  }, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"a07fa40e50f2   moby/buildkit:buildx-stable-1   \\\"buildkitd --allow-i\\u2026\\\"   4 days ago   Up 2 hours             buildx_buildkit_nubots0\\n\")), mdx(\"p\", {\n    parentName: \"li\"\n  }, \"The first column is the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"CONTAINER_ID\"), \".\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Run \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"docker stop <CONTAINER_ID>\"), \", replacing \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"<CONTAINER_ID>\"), \" with your BuildKit container ID from the previous step.\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Run \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"docker rm <CONTAINER_ID>\"), \", replacing \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"<CONTAINER_ID>\"), \" with your BuildKit container ID.\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Run \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b target <target>\"), \", where \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"<target>\"), \" is the desired target, such as \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"generic\"), \". The command should pull from DockerHub rather than build from scratch.\"))), mdx(\"p\", null, \"Another fix is to reinstall Docker.\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Completely uninstall everything and delete images, containers, volumes and configuration files. From \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://askubuntu.com/questions/935569/how-to-completely-uninstall-docker\"\n  }, \"Ask Ubuntu Stack Exchange\"), \".\"), mdx(\"pre\", {\n    parentName: \"li\"\n  }, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"sudo apt-get purge -y docker-engine docker docker.io docker-ce docker-ce-cli docker-compose-plugin\\nsudo apt-get autoremove -y --purge docker-engine docker docker.io docker-ce docker-compose-plugin\\nsudo rm -rf /var/lib/docker /etc/docker\\nsudo rm /etc/apparmor.d/docker\\nsudo groupdel docker\\nsudo rm -rf /var/run/docker.sock\\nsudo rm -rf /var/lib/containerd\\nsudo rm -r ~/.docker\\n\"))), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Follow the Docker install instructions on \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://nubook.nubots.net/guides/main/getting-started#docker\"\n  }, \"the Getting Started page\"), \".\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Run \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b target <target>\"), \", where \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"<target>\"), \" is the desired target, such as \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"generic\"), \". The command should pull from DockerHub rather than build from scratch.\"))), mdx(\"p\", null, \"If you're still having issues, make sure your local Dockerfile in the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"NUbots/NUbots\"), \" repository is the same as on \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://github.com/NUbots/NUbots/blob/main/docker/Dockerfile\"\n  }, \"GitHub\"), \". You may need to merge main into your branch. If you are making modifications to the Dockerfile, you will have to build the image yourself. Layers are cached, so anything before your modification in the Dockerfile should not rebuild.\"), mdx(\"h3\", {\n    \"id\": \"why-am-i-having-no-such-file-errors\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#why-am-i-having-no-such-file-errors\",\n    \"aria-label\": \"why am i having no such file errors permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Why am I having no such file errors?\"), mdx(\"p\", null, \"If your compiler can't find \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"FileWatcher.h\"), \" as in the following error:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"nuclear/roles/firmwareinstaller.cpp:3:10: fatal error: extension/FileWatcher/src/FileWatcher.h: No such file or directory\\n    3 | #include \\\"extension/FileWatcher/src/FileWatcher.h\\\"\\n      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\\n\")), mdx(\"p\", null, \"Run \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b configure --clean\"), \". This refreshes the docker volumes, removing the offending file.\"), mdx(\"h3\", {\n    \"id\": \"why-isnt-my-new-file-being-compiled\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#why-isnt-my-new-file-being-compiled\",\n    \"aria-label\": \"why isnt my new file being compiled permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Why isn't my new file being compiled?\"), mdx(\"p\", null, \"If you have just added a new file to the codebase, make sure that it's part of a role. After you have added it to a role, run \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b configure\"), \", and the build system should detect the new file and compile it the next time you run \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b build\"), \".\"), mdx(\"h3\", {\n    \"id\": \"why-am-i-having-cmakecache-errors-when-i-run-b-command\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#why-am-i-having-cmakecache-errors-when-i-run-b-command\",\n    \"aria-label\": \"why am i having cmakecache errors when i run b command permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Why am I having CMakeCache errors when I run \", mdx(\"inlineCode\", {\n    parentName: \"h3\"\n  }, \"./b <command>\"), \"?\"), mdx(\"p\", null, \"If you're having errors which say that there was no such value in \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"b.cmake_cache\"), \" such as in this snippet:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-py\"\n  }, \"Traceback (most recent call last):\\n  File \\\"/home/nubots/NUbots/nuclear/b.py\\\", line 113, in <module>\\n    module.run(**vars(command.parse_args()))\\n  File \\\"/home/nubots/NUbots/tools/utility/dockerise/run.py\\\", line 79, in _run\\n    func(**kwargs)\\n  File \\\"/home/nubots/NUbots/tools/run.py\\\", line 34, in run\\n    use_asan = b.cmake_cache[\\\"USE_ASAN\\\"] == \\\"ON\\\"\\nKeyError: 'USE_ASAN'\\n\")), mdx(\"p\", null, \"you might have a \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"CMakeCache.txt\"), \" file in your NUbots directory messing up the build's cache.\\nYou can find and delete the file in your text editor, or by running the find command inside the NUbots directory:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"# Make sure that you're in the NUbots project directory before executing this...\\nfind . -type f -name CMakeCache.txt -delete && find . -type d -name CMakeFiles -delete\\n\")), mdx(\"p\", null, \"If the problem persists, try purging the build volume by running \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b configure --clean\"), \".\\nNote that purging the build volume means you'll have to rerun \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b build\"), \" to use built code.\"), mdx(\"h3\", {\n    \"id\": \"not-enough-memory-in-docker-macos\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#not-enough-memory-in-docker-macos\",\n    \"aria-label\": \"not enough memory in docker macos permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Not enough memory in Docker? (macOS)\"), mdx(\"p\", null, \"By default Docker Desktop will allocate 2GB of memory to use for building images. When building the NUbots image, this is insufficient and will result in an error. To fix this, open the Docker menu in the menu bar, go to advanced settings, and increase the memory available.\"), mdx(\"h2\", {\n    \"id\": \"nusight\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#nusight\",\n    \"aria-label\": \"nusight permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"NUsight\"), mdx(\"h3\", {\n    \"id\": \"multiple-docker-robots-in-nusight\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#multiple-docker-robots-in-nusight\",\n    \"aria-label\": \"multiple docker robots in nusight permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Multiple Docker robots in NUsight?\"), mdx(\"p\", null, \"This means someone else is also running a Docker robot. You can modify the name of your Docker robot by doing the following.\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Open the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"NetworkConfiguration.yaml\"), \" file in a text editor (here we are using nano on the command line):\"), mdx(\"pre\", {\n    parentName: \"li\"\n  }, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"nano module/support/configuration/NetworkConfiguration/data/config/NetworkConfiguration.yaml\\n\"))), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Update the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"name\"), \" field with the name you want to use and press \", mdx(\"kbd\", null, \"Ctrl\"), \"+\", mdx(\"kbd\", null, \"S\"), \" to save the file and then \", mdx(\"kbd\", null, \"Ctrl\"), \"+\", mdx(\"kbd\", null, \"X\"), \" to exit.\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"Rebuild using \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"./b build\"), \" for the changes to take effect.\")), mdx(\"li\", {\n    parentName: \"ol\"\n  }, mdx(\"p\", {\n    parentName: \"li\"\n  }, \"In NUsight, toggle off the robots you do not want to see by clicking the robot icon at the top right of the NUsight GUI and toggling the slider next to the name of every other robot except the one you set in step 2.\"))), mdx(\"h2\", {\n    \"id\": \"hardware\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#hardware\",\n    \"aria-label\": \"hardware permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Hardware\"), mdx(\"p\", null, \"Take care when working with hardware. If you are unsure, ask someone directly for assistance.\"), mdx(\"h2\", {\n    \"id\": \"nubook\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#nubook\",\n    \"aria-label\": \"nubook permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"NUbook\"), mdx(Alert, {\n    type: \"info\",\n    mdxType: \"Alert\"\n  }, \"The commands shown below should be run from the NUbook root folder, unless otherwise stated.\"), mdx(\"h3\", {\n    \"id\": \"why-is-my-newly-added-page-not-showing-up\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#why-is-my-newly-added-page-not-showing-up\",\n    \"aria-label\": \"why is my newly added page not showing up permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Why is my newly added page not showing up?\"), mdx(\"p\", null, \"When you add a new page, you should remove the Gatsby \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \".cache\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"public\"), \" folders, by running:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"rm -rf .cache public\\n\")), mdx(\"p\", null, \"And then try building again:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"yarn dev\\n\")), mdx(\"h3\", {\n    \"id\": \"why-am-i-getting-weird-errors-when-i-run-yarn-dev\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#why-am-i-getting-weird-errors-when-i-run-yarn-dev\",\n    \"aria-label\": \"why am i getting weird errors when i run yarn dev permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Why am I getting weird errors when I run \", mdx(\"inlineCode\", {\n    parentName: \"h3\"\n  }, \"yarn dev\"), \"?\"), mdx(\"p\", null, \"Usually this happens when there is a problem with one or more packages in the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"node_modules\"), \" folder. Try deleting \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"node_modules\"), \" and running \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"yarn\"), \" to reinstall dependencies:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"rm -rf node_modules && yarn\\n\")), mdx(\"p\", null, \"Then try building again:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"yarn dev\\n\")), mdx(\"h3\", {\n    \"id\": \"why-am-i-getting-errors-from-prettier-when-running-yarn-dev--why-cant-i-push-to-github\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#why-am-i-getting-errors-from-prettier-when-running-yarn-dev--why-cant-i-push-to-github\",\n    \"aria-label\": \"why am i getting errors from prettier when running yarn dev  why cant i push to github permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Why am I getting errors from Prettier when running \", mdx(\"inlineCode\", {\n    parentName: \"h3\"\n  }, \"yarn dev\"), \"? / Why can't I push to GitHub?\"), mdx(\"p\", null, \"If a page you have added or changed is not formatted correctly, your changes may not show up in the NUbook preview, and you will not be able to push to GitHub.\"), mdx(\"p\", null, \"To fix this, run:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"yarn format --fix\\n\")), mdx(\"h3\", {\n    \"id\": \"why-are-my-changes-not-showing-up-in-nubook\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#why-are-my-changes-not-showing-up-in-nubook\",\n    \"aria-label\": \"why are my changes not showing up in nubook permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Why are my changes not showing up in NUbook?\"), mdx(\"p\", null, \"First, make sure you have saved the file, then refresh NUbook in the browser to see if your changes show up.\"), mdx(\"p\", null, \"If you have created a new page or added a new image, you may need to remove the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \".cache\"), \" and \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"public\"), \" folders. To do so, run:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"rm -rf .cache public\\n\")), mdx(\"p\", null, \"And then try building again:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-bash\"\n  }, \"yarn dev\\n\")));\n}\n;\nMDXContent.isMDXComponent = true;","tableOfContents":{"items":[{"url":"#nubots","title":"NUbots","items":[{"url":"#why-is-b-target-generic-taking-so-long","title":"Why is ./b target generic taking so long?"},{"url":"#why-am-i-having-no-such-file-errors","title":"Why am I having no such file errors?"},{"url":"#why-isnt-my-new-file-being-compiled","title":"Why isn't my new file being compiled?"},{"url":"#why-am-i-having-cmakecache-errors-when-i-run-b-command","title":"Why am I having CMakeCache errors when I run ./b <command>?"},{"url":"#not-enough-memory-in-docker-macos","title":"Not enough memory in Docker? (macOS)"}]},{"url":"#nusight","title":"NUsight","items":[{"url":"#multiple-docker-robots-in-nusight","title":"Multiple Docker robots in NUsight?"}]},{"url":"#hardware","title":"Hardware"},{"url":"#nubook","title":"NUbook","items":[{"url":"#why-is-my-newly-added-page-not-showing-up","title":"Why is my newly added page not showing up?"},{"url":"#why-am-i-getting-weird-errors-when-i-run-yarn-dev","title":"Why am I getting weird errors when I run yarn dev?"},{"url":"#why-am-i-getting-errors-from-prettier-when-running-yarn-dev--why-cant-i-push-to-github","title":"Why am I getting errors from Prettier when running yarn dev? / Why can't I push to GitHub?"},{"url":"#why-are-my-changes-not-showing-up-in-nubook","title":"Why are my changes not showing up in NUbook?"}]}]},"frontmatter":{"section":"Guides","chapter":"General","title":"Troubleshooting","description":"Solutions to common problems you might encounter at NUbots.","keywords":null,"slug":"/guides/general/troubleshooting","hidden":null},"childNUbookContributions":{"authors":[{"name":"Ysobel Sims","username":"ysims"},{"name":"Josephus Paye II","username":"JosephusPaye"}],"lastCommit":{"date":"2025-04-25T07:38:17.000Z","hash":"469a4c56889fffe317d68d36787b559a7430a310"}}}},"pageContext":{"mdxPath":"src/book/03-guides/04-general/04-troubleshooting.mdx","id":"9459e024-6e02-5ab3-aefd-88552b45049f","next":{"chapter":"General","title":"Code Conventions","description":"Conventions used in NUbots code.","slug":"/guides/general/code-conventions","hidden":null},"previous":{"chapter":"General","title":"RoboCup Setup","description":"Setting up the robot for RoboCup Games","slug":"/guides/general/robocup-setup","hidden":null},"menu":[{"title":"Team","slug":"/team/introduction","chapters":[{"title":"Introduction","slug":"/team/introduction","pages":[{"title":"Introduction to NUbots","slug":"/team/introduction","hidden":null},{"title":"Areas of Research","slug":"/team/areas-of-research","hidden":null},{"title":"Current Team","slug":"/team/current-members","hidden":null}],"hidden":false},{"title":"Joining the Team","slug":"/team/how-we-work","pages":[{"title":"How We Work","slug":"/team/how-we-work","hidden":null},{"title":"How to Join NUbots","slug":"/team/how-to-join","hidden":null},{"title":"Lab Induction","slug":"/team/induction","hidden":null}],"hidden":false},{"title":"Community","slug":"/team/sponsors","pages":[{"title":"Sponsors","slug":"/team/sponsors","hidden":null},{"title":"Connect","slug":"/team/connect","hidden":null}],"hidden":false},{"title":"History","slug":"/team/history","pages":[{"title":"Team History","slug":"/team/history","hidden":null},{"title":"Past Members","slug":"/team/past-members","hidden":null},{"title":"Publications","slug":"/team/publications","hidden":null}],"hidden":false},{"title":"RoboCup","slug":"/team/robocup","pages":[{"title":"RoboCup","slug":"/team/robocup","hidden":null},{"title":"Resources","slug":"/team/robocup/resources","hidden":null},{"title":"Debriefs","slug":"/team/robocup/debriefs","hidden":null}],"hidden":false}],"hidden":false},{"title":"System","slug":"/system/foundations/overview","chapters":[{"title":"Foundations","slug":"/system/foundations/overview","pages":[{"title":"Overview","slug":"/system/foundations/overview","hidden":null},{"title":"Build System","slug":"/system/foundations/build-system","hidden":null},{"title":"Continuous Integration","slug":"/system/foundations/ci-system","hidden":null},{"title":"NUClear","slug":"/system/foundations/nuclear","hidden":null},{"title":"Mathematics","slug":"/system/foundations/mathematics","hidden":null},{"title":"Configuration and Script System","slug":"/system/foundations/config-script","hidden":null},{"title":"Director","slug":"/system/foundations/director","hidden":null}],"hidden":false},{"title":"Subsystems","slug":"/system/subsystems/input","pages":[{"title":"Input","slug":"/system/subsystems/input","hidden":null},{"title":"Odometry","slug":"/system/subsystems/odometry","hidden":null},{"title":"Localisation","slug":"/system/subsystems/localisation","hidden":null},{"title":"Motion","slug":"/system/subsystems/motion","hidden":null},{"title":"Vision","slug":"/system/subsystems/vision","hidden":null},{"title":"Behaviour","slug":"/system/subsystems/behaviour","hidden":null},{"title":"Logging","slug":"/system/subsystems/logging","hidden":null}],"hidden":false},{"title":"Tools","slug":"/system/tools/nusight","pages":[{"title":"NUsight","slug":"/system/tools/nusight","hidden":null},{"title":"NUbook","slug":"/system/tools/nubook","hidden":null},{"title":"NUpbr","slug":"/system/tools/nupbr","hidden":null},{"title":"NUgan","slug":"/system/tools/nugan","hidden":null},{"title":"System Configuration","slug":"/system/tools/system_configuration","hidden":null},{"title":"NatNet SDK","slug":"/system/tools/natnet_sdk","hidden":null}],"hidden":false},{"title":"Hardware","slug":"/system/hardware/overview","pages":[{"title":"Overview and Specifications","slug":"/system/hardware/overview","hidden":null}],"hidden":false},{"title":"Modules","slug":"/system/modules/actuation/","pages":[{"title":"Actuation","slug":"/system/modules/actuation/","hidden":null},{"title":"Extension","slug":"/system/modules/extension/","hidden":null},{"title":"Input","slug":"/system/modules/input/","hidden":null},{"title":"Localisation","slug":"/system/modules/localisation/","hidden":null},{"title":"Nbs","slug":"/system/modules/nbs/","hidden":null},{"title":"Network","slug":"/system/modules/network/","hidden":null},{"title":"Output","slug":"/system/modules/output/","hidden":null},{"title":"Planning","slug":"/system/modules/planning/","hidden":null},{"title":"Platform","slug":"/system/modules/platform/","hidden":null},{"title":"Purpose","slug":"/system/modules/purpose/","hidden":null},{"title":"Skill","slug":"/system/modules/skill/","hidden":null},{"title":"Strategy","slug":"/system/modules/strategy/","hidden":null},{"title":"Support","slug":"/system/modules/support/","hidden":null},{"title":"Tools","slug":"/system/modules/tools/","hidden":null},{"title":"Vision","slug":"/system/modules/vision/","hidden":null}],"hidden":false}],"hidden":false},{"title":"Guides","slug":"/guides/main/getting-started","chapters":[{"title":"Main Codebase","slug":"/guides/main/getting-started","pages":[{"title":"Getting Started","slug":"/guides/main/getting-started","hidden":null},{"title":"NUClear","slug":"/guides/main/nuclear-tutorial","hidden":null},{"title":"Running and Tuning Scripts","slug":"/guides/main/tuning-and-running-scripts","hidden":null},{"title":"Maintaining Subsystems","slug":"/guides/main/maintaining-subsystems","hidden":null},{"title":"Data Recording and Playback","slug":"/guides/main/data-recording-playback","hidden":null},{"title":"Camera Calibration","slug":"/guides/main/camera-calibration","hidden":null},{"title":"Onboarding Workshop","slug":"/guides/main/onboarding","hidden":null}],"hidden":false},{"title":"Tools","slug":"/guides/tools/nusight-contribution","pages":[{"title":"Contributing to NUsight","slug":"/guides/tools/nusight-contribution","hidden":null},{"title":"Setting Up Webots","slug":"/guides/tools/webots-setup","hidden":null},{"title":"Visual Mesh Getting Started","slug":"/guides/tools/visualmesh","hidden":null},{"title":"Using NUpbr","slug":"/guides/tools/nupbr-guide","hidden":null},{"title":"GameController Setup","slug":"/guides/tools/gamecontroller","hidden":null}],"hidden":false},{"title":"Hardware","slug":"/guides/hardware/working-with-robots","pages":[{"title":"Working with Robots","slug":"/guides/hardware/working-with-robots","hidden":null},{"title":"Flashing a Robot","slug":"/guides/hardware/flashing","hidden":null},{"title":"Servo Setup and Calibration","slug":"/guides/hardware/servo-calibration","hidden":null},{"title":"Batteries","slug":"/guides/hardware/batteries","hidden":null},{"title":"DARwIn Op2 Robot Restoration and Calibration Guide","slug":"/guides/hardware/darwin-op2-guide","hidden":null}],"hidden":false},{"title":"General","slug":"/guides/general/learning-resources","pages":[{"title":"Learning Resources","slug":"/guides/general/learning-resources","hidden":null},{"title":"Contribution Workflow","slug":"/guides/general/contribute","hidden":null},{"title":"RoboCup Setup","slug":"/guides/general/robocup-setup","hidden":null},{"title":"Troubleshooting","slug":"/guides/general/troubleshooting","hidden":null},{"title":"Code Conventions","slug":"/guides/general/code-conventions","hidden":null},{"title":"Glossary","slug":"/guides/general/glossary","hidden":null}],"hidden":false}],"hidden":false},{"title":"Kitchen Sink","slug":"/kitchen-sink/headers","chapters":[{"title":"Markdown","slug":"/kitchen-sink/headers","pages":[{"title":"Headers","slug":"/kitchen-sink/headers","hidden":true},{"title":"Formatting and Paragraphs","slug":"/kitchen-sink/formatting-and-paragraphs","hidden":true},{"title":"Blockquotes","slug":"/kitchen-sink/blockquotes","hidden":true},{"title":"Alerts","slug":"/kitchen-sink/alerts","hidden":true},{"title":"Images","slug":"/kitchen-sink/images","hidden":true},{"title":"Lists","slug":"/kitchen-sink/lists","hidden":true},{"title":"Code","slug":"/kitchen-sink/code","hidden":true},{"title":"Math","slug":"/kitchen-sink/math","hidden":true},{"title":"Table of Contents","slug":"/kitchen-sink/table-of-contents","hidden":true},{"title":"Tables","slug":"/kitchen-sink/tables","hidden":true},{"title":"Collapsible Content","slug":"/kitchen-sink/collapsible","hidden":true},{"title":"GraphViz Diagrams","slug":"/kitchen-sink/graphviz-diagrams","hidden":true},{"title":"Referencing","slug":"/kitchen-sink/referencing","hidden":true}],"hidden":true}],"hidden":true}],"references":null,"hidden":null}},
    "staticQueryHashes": ["3715292327","445096115","466146812"]}