{"componentChunkName":"component---gatsby-theme-spaceout-src-templates-article-template-tsx","path":"/importance-of-design-system","result":{"pageContext":{"article":{"id":"384d3fab-354b-5d56-87c6-5156b53e3e99","slug":"/importance-of-design-system","secret":false,"title":"Importance of design system","author":"Luke Celitan","date":"December 12th, 2022","dateForSEO":"2022-12-12T00:00:00.000Z","timeToRead":3,"excerpt":"Why You Need A Design System, And How To Create One","subscription":true,"body":"var _excluded = [\"components\"];\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); }\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; }\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/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"title\": \"Importance of design system\",\n  \"author\": \"Luke Celitan\",\n  \"date\": \"2022-12-12T00:00:00.000Z\",\n  \"hero\": \"./designSystem1.jpg\",\n  \"excerpt\": \"Why You Need A Design System, And How To Create One\",\n  \"category\": \"Post\",\n  \"tech\": [\"TS\", \"Nodejs\", \"ReactIcon\", \"Rust\"]\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  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"what-is-a-design-system\"\n  }, \"What is a Design System?\"), mdx(\"p\", null, \"A design system is a collection of reusable components and guidelines for\\ndesigning and building digital products. It can be used to create a consistent\\nuser experience across multiple devices and platforms, and to streamline the\\ndesign and development process. Design systems often include style guides, UI\\nkits, code libraries, and other resources that developers and designers can use\\nto create consistent, cohesive user experiences. When used correctly, design\\nsystems can help teams work more efficiently, improve the quality of their work,\\nand ship better products faster.\"), mdx(\"h2\", {\n    \"id\": \"why-is-it-important-to-have-a-design-system\"\n  }, \"Why is it important to have a design system?\"), mdx(\"p\", null, \"A design system is a collection of reusable components and guidelines for design\\nand development. It can be used by a team of designers and developers to build\\ndigital products, such as websites and applications, in a consistent and\\ncohesive way. There are many benefits to having a design system, such as:\\n-Improved efficiency: A design system enables team members to work more\\nefficiently by reusing common components instead of starting from scratch each\\ntime. -Reduced errors and inconsistencies: By following the same design rules\\nand using the same components, mistakes and inconsistencies are reduced. -Faster\\nturnaround times: Using a design system can help speed up the development\\nprocess as team members are familiar with the components and how they fit\\ntogether. -Increased satisfaction: When designers and developers have a greater\\ndegree of control over the end product, they are usually more satisfied with\\ntheir work. This leads to improved morale and motivation within the team.\"), mdx(\"h2\", {\n    \"id\": \"what-are-the-different-types-of-design-systems\"\n  }, \"What are the different types of design systems?\"), mdx(\"p\", null, \"There are many different types of design systems, but they all share some\\ncommonalities. A design system is a set of reusable components and guidelines\\nthat can be used to build digital products. Design systems can help create\\nconsistency and coherence across a product, and make it easier to scale and\\nmaintain a product over time. The most common type of design system is a\\ncomponent library. A component library is a collection of UI components that can\\nbe reused in different contexts. Component libraries can be static (e.g.\\nBootstrap) or dynamic (e.g. React). Another type of design system is a style\\nguide. A style guide is a set of rules and guidelines for how to use the\\ncomponents in a component library. Style guides can be used to enforce\\nconsistency across a team, or across an entire organization. Other types of\\ndesign systems include pattern libraries and front-end frameworks. Pattern\\nlibraries are collections of UI patterns that can be reused in different\\ncontexts. Front-end frameworks are sets of code that can be used to build web\\napplications. Front-end frameworks often come with their own component libraries\\nand style guides.\"), mdx(\"h2\", {\n    \"id\": \"how-do-i-know-if-i-need-a-design-system\"\n  }, \"How do I know if I need a design system?\"), mdx(\"p\", null, \"If you\\u2019re not sure whether you need a design system, ask yourself the following\\nquestions: - Do you have a lot of different products or platforms that need to\\nbe designed? - Do you find yourself constantly reinventing the wheel when it\\ncomes to design? - Are your designers wasting time on creating assets that could\\nbe reused? - Do you have trouble maintaining consistency across your designs? If\\nyou answered yes to any of these questions, then it\\u2019s likely that a design\\nsystem would be beneficial for your organization. A design system can help to\\nstreamline your design process, improve efficiency, and create consistency\\nacross your products.\"), mdx(\"p\", null, mdx(\"span\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"1024px\"\n    }\n  }, \"\\n      \", mdx(\"span\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"100%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAACXBIWXMAAAsTAAALEwEAmpwYAAADpElEQVQ4y5VUWW/cVBT2L+KJPwBv8ILEDwBVzUuLFAoPBKkVEggolRgQDeoCgQZVrUSStqKTVEmhTdIlmSwzWWbixLPZ49iO17Gv17vaXDcRFMQLn45lSz7nu+ee850j5C/AGMv/P4TjV8HB8iJnOaWM0qLkyxnlzzH1ieX/PEPgHhwTt1dVzUWkABFKMuKDFEQQEwoRySChhDMSzktx+f0XhYAwTTK6vHb421KgHiHgwECLxep682l/rlZsS5QzNntku0s3u/QoLGiZ4nEauZBmxPSIG7Bq1Yp35bs/zl8ZX6hU5r8af/LpeP3i9caNe7uinGkWbQ9Q//cWfvgUHpqkKHLKhDilXYN4Hip0y9lSzp4eb/ddK0Kq4hhWGA7B5NTOhcvWzWo+9QDK7WBoAFcyUs3mVRJAQkSFOA5iMa437A/OTSbrLVrbhj0jRmUdp+akS19sXL4RfD9NeibTosJpqnlXZmVwTFoyMRxMSL74YP/cyBV6p5pXruaLq4YUH3bo/KPOyOjtU6PTP91xJbXYEqFsEcxvztPmJ0sqaXWx2GNrs90Px341ND/S3dQGWUTAEJtWJra8mfviwjNT0bFm49VdFMY8PBeGIRlYpDKZvXUGvfdl+tGlx1EEHUBtD3kB5i7NdvjzzOC7H+qLK2ZngAf9UOxkME5zQgQ/IqpDP67Er7yRjJzPTo0tjV7YOF/RL07EN6f958vu9kE8u6TefyzrVuL4LJl5VKxvsbLaVAhiyu8wcRef/Yx+c6tY+MN+893lV99uvHbau/Vtx57dbB9E1rBwQW77xAXU3DsyD5wgJFyFAs9ePCqcZ81iasa/t7wr4jOftF5/p/7+mCj+UrPn6keyb7por4clFfV11NVxbTc1bMx1KYQJPdCotSKlG6LX97zDqDqtXPu6Wa2sdK7O709vAJChFO51ELdWD+kGBCHOIMOYB3ORqFC5VpWrm0ov3KoNNclLNC9eahw8FHee67aTRSGyPayoUDOg5yKYkRzjUmFRSjoa8XQwlN0nNe/z61JdKvugO8RNi7ZeNPZBZxCmuPD7+tpqF2JeZsoQLvscZ2XBHJ/6IdVcZm8rw4Yc9+3U9IdW0lWxC0ia0RSyCJQpvDyUAkTUA1QxSVsjokqULVNfVw53DE0aKmra1bgKqOFRyydhynA5l39HC3xIEeJTSfiERAkBMA9QEcAiyPIgpSChvJdcwvxvhighJ+vh5U3CXiyOEvl/2onPv/EnyS4vAU5+UKMAAAAASUVORK5CYII=')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"picture\", {\n    parentName: \"span\"\n  }, \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/75751e1afed5261f6013a18327da63a8/53334/designSystem.webp 1024w\"],\n    \"sizes\": \"(max-width: 1024px) 100vw, 1024px\",\n    \"type\": \"image/webp\"\n  }), \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/75751e1afed5261f6013a18327da63a8/658fc/designSystem.png 1024w\"],\n    \"sizes\": \"(max-width: 1024px) 100vw, 1024px\",\n    \"type\": \"image/png\"\n  }), \"\\n          \", mdx(\"img\", {\n    parentName: \"picture\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"src\": \"/static/75751e1afed5261f6013a18327da63a8/658fc/designSystem.png\",\n    \"alt\": \"design system\",\n    \"title\": \"design system\",\n    \"loading\": \"lazy\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    }\n  }), \"\\n        \"), \"\\n    \")), mdx(\"h2\", {\n    \"id\": \"how-do-i-create-and-maintain-a-design-system-when-we-have-so-many-internal-products\"\n  }, \"How do I create and maintain a design system when we have so many internal products?\"), mdx(\"p\", null, \"Design systems are a great way to ensure consistency, usability and\\naccessibility across your products. But they can also be challenging to create\\nand maintain, especially when you have a large and diverse portfolio of internal\\nproducts. How do you balance the needs of different teams, stakeholders and\\nusers? How do you keep your design system up to date and relevant? How do you\\navoid duplication, fragmentation and confusion?\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Define the scope and purpose of your design system\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Involve your users and stakeholders from the start\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Establish a clear governance and ownership model\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Document and communicate your design system effectively\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Use tools and platforms that support collaboration and automation\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Iterate and evolve your design system over time\")));\n}\n;\nMDXContent.isMDXComponent = true;","tech":["TS","Nodejs","ReactIcon","Rust"],"category":"Post","appDescription":null,"hero":{"full":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAAMBAAAAAAAAAAAAAAAAAAIEBQH/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAQL/2gAMAwEAAhADEAAAAdCFOvNbrORdiHQf/8QAGhAAAgMBAQAAAAAAAAAAAAAAAgMAARQREv/aAAgBAQABBQJjLAiYVWBehM+QjuIMKXnXM65nVP/EABYRAAMAAAAAAAAAAAAAAAAAAAABEv/aAAgBAwEBPwGWSymUz//EABYRAQEBAAAAAAAAAAAAAAAAAAAREP/aAAgBAgEBPwHIj//EAB8QAAECBgMAAAAAAAAAAAAAAAACEQMQISIxoTJh4f/aAAgBAQAGPwLw6HGhrteV6qmNmNnE/8QAHBAAAwADAQEBAAAAAAAAAAAAAAERITFBYZHw/9oACAEBAAE/IUxcb2wnXDIn4Grqp30csjT4+GjLOw9f0ZnWfg/Rn//aAAwDAQACAAMAAAAQMMcB/8QAFhEAAwAAAAAAAAAAAAAAAAAAAAFh/9oACAEDAQE/EIsiyrKs/8QAFxEAAwEAAAAAAAAAAAAAAAAAABFRAf/aAAgBAgEBPxB5R5RIJD//xAAgEAEAAgICAQUAAAAAAAAAAAABABEhMUFR0WFxgfDx/9oACAEBAAE/EHamsgr5MUd4jaRC8ijw+0BFtprs3LAwio2WtruUgJKWOX5CgDiBdHGz0mjg+m5aoXCVEKPP5n//2Q==","aspectRatio":1,"src":"/static/60f53bc1df34e9dd797daa54291216ad/58fe7/designSystem1.jpg","srcSet":"/static/60f53bc1df34e9dd797daa54291216ad/e0f30/designSystem1.jpg 236w,\n/static/60f53bc1df34e9dd797daa54291216ad/86afd/designSystem1.jpg 472w,\n/static/60f53bc1df34e9dd797daa54291216ad/58fe7/designSystem1.jpg 944w,\n/static/60f53bc1df34e9dd797daa54291216ad/0ff54/designSystem1.jpg 1200w","srcWebp":"/static/60f53bc1df34e9dd797daa54291216ad/99fbb/designSystem1.webp","srcSetWebp":"/static/60f53bc1df34e9dd797daa54291216ad/77392/designSystem1.webp 236w,\n/static/60f53bc1df34e9dd797daa54291216ad/1f177/designSystem1.webp 472w,\n/static/60f53bc1df34e9dd797daa54291216ad/99fbb/designSystem1.webp 944w,\n/static/60f53bc1df34e9dd797daa54291216ad/9000d/designSystem1.webp 1200w","sizes":"(max-width: 944px) 100vw, 944px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M232%2048h-3c-2%200-2%200%200%201v2l-2-1h-7c-6%200-6%200-4%201%205%202%204%204-1%203l-7%201c-2%201-1%201%205%201%204%200%206%200%204%201s-2%201%202%201h6l5-1c2%200%202%200%201%202l-1%202%202-1c1-2%206-4%2012-5s16-5%2015-6l-7-1-5%201c2%201%202%201-1%202-4%201-6%201-2-1%202-1%202-1%200-1-1%200-2%200-1-1l-5-1-6%201M36%2052c-3%202-5%206-5%2011%200%203%200%203%201%202%202-2%202-2%203%201l4%207%202%203%203-2c9-9%202-28-8-22m211%206c-12%205-15%2028-6%2038l4%203h8c12-2%2018-8%2016-18l1-5c2-2-1-11-5-15-6-5-11-6-18-3m-123%203c0%203%200%204-1%203s-1%200-1%205c0%204%200%205%201%204%200-2%202-3%202-1%200%203-3%2011-4%2011v-2c2-4%201-4-1%200-3%204-5%202-3-2l1-3c-1%200-2%201-2%203l-2%201c0-4-3-4-4%201l-3%203-1%201-1%201c-4%201-4%201%200-2%204-5%207-13%204-14-7-1-7-1-7-5%200-2%200-3%201-2s4%201%204-1l-4-1-5%201%202%201c2%200%201%205-1%205s-2%200-1%201c3%200%202%202%200%205-3%203-4%203-3-1l1-6c0-2%200-3-1-1%200%202-1%202-2%202l-5-1c-3%200-3%200-3-4%200-3%200-3-1%200%200%203%200%203-5%203h-5l4%201c4%201%206%202%204%203-1%201-5%202-7%201l-1%201-4%201h-4c-1-2-1-2-4%200-2%201-3%200-3-4%200-2%200-2-2%200-1%202-1%203-2%202h-2l-3-1c-1-1-2%200-3%202l-6%206-3%202%205%201%2010%201h2c-3%201%205%202%2013%202%204%200%204%200%204%202-1%202%201%204%205%204l2%201-3%201h-3l-2%201c-3%200-4%202-1%202%202%200%202%200-1%202l-3%201h3l5%201h1c-1-2%202-3%206-2%202%201%203%203%201%205v1l2-2%205-2%206-1%207-2c2%200%203-1%203-2h1c0%202%202%203%2011%204%209%200%2011%202%202%202h-6l3%204c3%204%204%205%207%205s3%200%201-1l-2-1h2l3%201%202%201v-2c2-1%200-4-4-4l-3-1h3l4-1%201-1c2%202%206%200%206-3%201-4%202-4%2019-8%202%200%202%200%201-2l-2-3c-1-1-1%200-1%202s0%203-1%202h-10v-3c0-3%200-3%203-3l4-2%204-2c2%200%202%200%200-1-3-1-3-1%202-1l6-1h4c3%200%207-3%205-5l-1%201c-1%202-2%202-6%202-2%200-4%200-3%201l-4%201-10%201c-4%200-5%200-4-1l6-1c4-1%204-1-2-1-5%200-6%200-9%203l-5%203-4%203c-3%203-6%204-4%201%203-8%204-20%200-25v3m201%207h-6l-6%201c-2%200-1%207%201%207l1%202-1%202c-2%200-2%202-2%2011v12l1-11c0-11%200-11%203-12%203-2%204-1%202%201l-1%204c0%203%200%203%203%203h3l-3-1-2-1%202-1c2-1%202-1%203%201%202%203%203%206%202%207v1l-2%201c-3%200-2%203%202%208l3%203-1-6v-7h3c2%200%202%200%201%201s-2%202-1%2010v3l3-3%203-5%202-2%201-2%201-2%202-1c2-2%202-12%201-15v-1l-1-3-3-4h-7c-5%200-6%200-3-1l4-1h-4l-4%201m-98%2013c-6%201-6%201-6%208v7h-4l-5-1v-3l1-2c0-2-2-3-2%200-1%201-1%200-1-2v-4h5c3-1%205-1%204-2-2-1-29%204-29%206l1%201%201%202c1%201%201%201%201-1s1-3%206-4c10-2%209-2%2010%204a32%2032%200%20003%2012l-7-1-2-1%201%202c1%202%201%202-2%202s-3%200-2-1l1-2-2%201h-1c-1-1%200-2%204-2%204-1%204-1%204-4-1-5-2-5-8-4-5%200-5%200-6%204v5l-1%201h-2l1%201v1c-1%200-2-1-2-3s0-2-6-2l-5%201v-6c0-6-1-6-3-6s-2%200-2%206l-1%208c-3%203%208%2014%2012%2013l3%201-2%201h4l1-1c-3%200-2-2%201-2%203-1%203%200%202%201%200%201%200%202%202%201l3-5%201-4%206-2a17833%2017833%200%200034-5h3l-2-3-5-6c-1-3-1-3-2-1%200%203%200%203-4%202h-4l-2-5c0-3%202-5%207-5l4-1-1-1-5%201m24%2020l-5%202h-2l-3%201-7%201h-3c3%200%204%200%204%202%200%201%200%202%201%201l1%201%202%202c2%201%203%201%202%202-2%201-1%202%202%202l5%202%202%201c1-1-2-4-5-4l-2-1c1-1%203-2%209-2%207%200%207%200%202%201l-3%201c3%200%203%200%201%201h-2l2%204c2%203%203%204%206%205%205%201%209%203%2011%207l2%202c0-2%204-1%204%201l-2%201c-2-1-2%200-2%202s0%203-2%203l-4%201-1-1v-1l-1%202%204%201%205-1%201-2c0-2%201-3%203%200%202%201%202%201%206-2l4-4h-4c-4%200-5%200-4-4%200-3%204-3%204%200%200%202%201%203%202%203%202%201%202%200%202-2%200-3-3-5-7-5h-2l4-2c2%200%203-1%203-2%201-1%201-1%202%201v2l3-2c3-2%204-2%2014-1l29%204c2%200%205%206%205%2010%200%202%200%202%204%202%203%200%203%200%203-3s0-3%201-2l5%202%203%203c0%201%200%202%201%201v-6h5c4%200%205%201%206%202v-2c0-3-1-6-3-7-3-3-3-4%201-4l6-2a1141%201141%200%2001-103-18l-15%201m-115%208v3l-6-1-9-1c-4%200-4%200-4%202%200%204%208%206%2011%203h1c1%202-1%202-24%201l-18-2-1%203c1%204%201%204%2022%205%2010%201%2011%201%2010-1l1-2c1-1%201%200%201%201%200%203%202%204%2015%204l7%201v-4c0-3-1-3-2-3-2%200-2%200-1-1l1-3%201-2%201%202%202%202c3-1%204%201%201%202-2%200-2%201-2%204l1%203%201-3c0-4%202-4%202%200%201%204%206%204%206%200s-8-13-12-13l-5-2v2m148%200v1l9%201c30%205%2066%208%2059%205a1467%201467%200%2000-68-7m-231%205c-19%205-24%206-23%207%202%200%202%201%202%203-1%202-1%202%204%201%209-1%209-1%2010-5%200-4%202-4%202%200l1%203%201-1%202-2c2%200%202%200%201%201s-1%201%202%201l17-2h13v-3c0-3%200-3-5-3-13-2-20-2-27%200m3%2010l-24%204c-4%200%204%202%2010%202l10%201h15c12%200%2013%200%2012%202%200%201%200%202%202%203%203%200%204%202%202%202l-5%204c-3%202-4%204-3%204l2-1h1c-1%201%2010%204%2022%204l11%202%203-1%202-1%2014%201%2015%201%201%201v1c1%202%201%202-2%203-4%201-5%201-1%201l4-1h1c3%202%203%201%201-1-2-3-2-4%201-2l1%202%201%201c1-1%204%202%204%204l-2%203-2%201-6%201c-6%200-8%201-6%205h1c0-2%206-3%2016-1%204%200%204%200%202%201s-2%201-1%202l3-1h1l1%201v-13l1-12-3%202h-3v-2c3%201%206-2%205-5%200-4-2-5-4-2-3%202-6%202-7%200%200-2%200-2%202-2%201%201%203%200%205-1l2-2-2-1c-2-2-4-2-11%200-14%202-14%202-14-2l-1-4h6c3%200%205%200%204-1a916%20916%200%2000-87-3m240%207c0%208%200%209%202%209h4c6%202%2013%202%2012%201-2-1-3-3%200-3%201%201%201%200%201-4v-4l1%204%201%205v-5c0-3%201-4%203-6%203-3%203-4-8-4l-13-2h-3v9m-56-6c-2%201-2%205-2%2043v43h7v-42c0-39%200-42-2-44h-3m6%2043v45h-16l-12-1c5%200%205%200%205-3%200-2%200-3-2-3s-2%200%201-4l3-5h-1c-1%201-1%201-1-1l1-4c0-2%201-1%201%201l1%204v-4c0-6%201-9%203-9l1-1-3-1c-4%200-4%200-4%203%200%206-2%2014-4%2017s-2%202-1-2l3-7c0-5%200-5-2-5l-2%201%202%201%201%202-1%204-4%201h-4v-7c0-7%201-9%204-6s5%203%206%201c2-3%201-3-4-3s-6%200-6-7c0-3%200-3%204-3l4-1-5-1-5-1c-1-1-1-1-1%201%201%203-3%204-4%201v-3l-1-1c-3%200-4-2-2-4%202-1%202-2%202-3-1%200-2%200-3%202h-4l-16-1c-2%200-2%201-2%202%201%201%200%202-1%202-1%201-1%201%201%201l2%201%208%201c9-1%2010-1%2012%202%203%204%202%204-3%203h-12c-6%200-6%200-6-2%200-1%200-2-1-1-1%200-1%208%201%2022l-1%2012c0%204%200%205%203%207%2010%209%2015%2015%2011%2017l-1%202-2%204-4%203h-1c0-1-5%200-7%202h-2l-1-1c0-2-2-3-4-2l-1-3c0-2%200-3-1-1-3%2014-17%2031-27%2033-3%200-3%200-3-4%200-8%200-8%208-8h7l-7-1-6-1h5l8-2%202-2-2-3-1-4%201-2%202-4c2-3%202-3%205-2%202%202%203%202%203%201l-2-1c-2-1-2-1%200-3l2-1h8l-4-1h-3v-23l-1-25v-2h-10c-9%200-10%200-10%202h17c2%201%200%201-5%201-7%200-8%200-8%202%200%203%202%204%208%203l5-1%201-2c1-1%201%201%201%204v6h-8c-7%200-8%200-8-2%200-1-1-2-5-2l-4-1%201%205c0%204-1%206-2%203h-10l3-1c3%201%203%200%203-3s0-3-3-3l-4-2c-1-2-1-2-1%202l-1%208v5h-10c-10%200-12-1-10-5v-3l4-1%204%201c0%202%201%200%202-2l-1-3-1%202-4%201-4-1-1-1-1%204c0%207-2%2015-5%2018l-3%202%201-3v-1l1-1%201-1-14-1c-14%200-14%200-12%202l2%201c2-1%202%203%201%207s-1%204-6%204l-6-1-2%203c-2%203-2%203-3%202%200-2%200-2-1-1s-1%200-1-2l1-3-2%203-2%204%201-4v-3l-2%202c-1%203-1%203-2%202-1-2-1-2-2%200-3%208-10%2013-17%2013l-4%201%2023%204%2011%202c3%202%2012%203%2018%203%204%200%204%200%207%206l4%207-16%201a99%2099%200%2000-22%202c-2%200-2%200%200%203v6c-1%201%200%201%202%201l4%201%202%201%206%202h8l13-2c10%200%2010%200%2011-3s1-3-6-3c-5%200-6%200-6%202%200%201%200%203-2%203h-2v-4c1-4%202-4%206-4%207%200%2013%202%2013%204l-2%204c0%202%205%204%2011%203%203-1%206-1%209%201%204%201%2010%201%2018-1%202%200%202%200%201%201l-4%201c-2%200-2%200%201%201l4%203c2%201%202%201%202-6l1-8%201%203c0%204%202%208%205%208l1%201-3%201-4%201h8l39%202c-3%202-43%204-45%202l-2-2v2c1%201%201%201-3%201s-5%200-7-4c-3-4-4-5-4-2l-2%201-2%201h4l2%201v1l1%201-6%201c-5%200-6%200-7-3-3-4-7-7-8-5-2%201-2%202%201%204l2%204h-3c-2%200-4-1-8-5-2-3-6-5-7-5s-1%201%203%205l6%205H0v37l1%2038h46a733%20733%200%200145%203l4%201c3%200%203%200%202-1h9c6%202%206%203%201%203h-4l2%201h10c2-2%202-2-4-3l-6-3c1-1%2011%202%2013%204l4%201c2-1%202-1-1-2l-7-3c-8-1-1-1%2035-1a36539%2036539%200%200046%202c-5%200-5%202%200%203%204%200%204%200%202%201l-3%201h3c3%201%205%205%202%205v1l1%201c0%203%200%203%201%201l2-3c0-2%203-3%203-1l2%201h7l-3-2c-5-1-4-2%201-3h17c0%201-6%203-10%203-3%200-3%201-3%203%200%204%200%205%202%203%200-2%201-2%201-1l2%201%202-2h1c1%202%205%202%205%201-1-1%200-3%201-3v-2c-1%200-1-1%201-2%201-2%202-2%203-1l6%203c4%200%204%200%202%201h-6c-4-1-5-1-3%201l5%201c5%200%2019-3%2017-4-3%200-5-2-3-2l1-1%202-2h-3c-13%201-23-1-14-3l7-1a832%20832%200%200166%202c1-2%203-2%2044-2%2038%200%2043%200%2043-2l1-37v-36h-53l2-3%206-10%204-6h14c1%201%202%201%202-1l3-3c4-2%206-2-18-1a31425%2031425%200%2001-111%208l-11%201c-3%201%204%201%2030-1a451%20451%200%2001-79-2h-1l-3%201h-2l2-1%203-1h-3c-2%200-2%200-1-1l4-1c1%201%201%200%201-2s0-3%201-2l1%202v3h22a335%20335%200%200064-2l19-1%201-17v-16l-51%201-52-1v-3l1-2v5h37l-17-1-17-1%203-1c3%201%203%201%203-2l1-2v5l15-1c12%200%2015%200%2016%202%200%201%209%201%209-1l11-2a1274%201274%200%200023%202l1-1c1-2%205-2%205%200%200%203%202%200%203-4%201-3%201-4%201-1l-1%204%205-1h4l-1-6c0-6%201-6%201%201l1%205h7l11%202%203%202h-4l-10%201h-7v33h9a3693%203693%200%200161-5l7-2%201-1c3%200%200-2-5-3l-6-2%203-10%203-11h-24l-27-1c-4-2-5-4-3-4l3%201h1l28-1c27%200%2034-1%2032-3-2-4%205-9%2012-8h2c1-2%200-2-3-2l-4-2v-3h-1l-1-1-1-1c-2-1-1-3%201-3%201-1%200-1-2-1h-5a402%20402%200%2000-56-2c-3%200-4%200-3-2%200-2%201-2%205-2%203%200%204%200%204-2h1c0%203%202%202%202%200%201-3%203-2%204%201%200%202%201%202%208%202h7v-8l1-7v15h12v-14l1%207v7h3c2%200%203%200%203-3%201-4%203-5%206-5l4-2c2-2%202-2-2-3-2-1-1-1%201-1%204%200%206%202%203%204-1%202-1%202%202%202s3%200%203-2c-1-1%200-2%201-3%202-1%202-2%200-3-1-1-22-3-37-3h-6l6%201%2015%201%2011%201h-7a430%20430%200%2000-26-2c0-2-24-4-45-4l-9-1h17c20%200%2020%200%2024-3l4-2v3c0%202%200%203%202%203l7%201c4%200%208-2%208-5l2-1c2%200%202%200%201%201v5l1-2%201-2v5h20c1%202%203%201%203-1l-1-3%201-2c1-2%202-2%204%201%203%203%203%203%200%203-2-1-3%200-3%201%200%202%201%202%204%202%204%200%204-2%201-6-1-1-2-3-1-4l-1-1-2-1-2%202c-1%201-1%200-1-2%200-4-1-5-7-6-2-1-3-1-3%201-1%201%200%202%202%202%202%201%201%201-2%201l-5%202c-2%202-5%202-5%201l2-2c5-1%201-2-10-2l-14-2-1%201c1%201%200%202-1%202l-1-1c0-1-1-2-3-2-4%200-6-2-2-2%205%200%202-2-4-2-6-1-6-1-5-3s2-2%202%200c1%201%205%202%205%200s-2-3-8-4a320%20320%200%2001-13%200l-3%201c-1%200-2%200-1-1l-3-1h-4l-2%201c0%202%202%203%2015%204l10%201-3%201-14-2c-9%200-11-1-11-2s-2%201-3%205c-2%205-2%2017-1%2019l18%201%2017%201-18-1h-17v16l1%2015%201%202-1%201-1%205-1%207a527%20527%200%20010-81c1-5-1-5-6-1-6%205-16%206-23%200-5-3-5-3-5%203l1%205h6c11%200%2016%201%2016%203l2%201h-12c-15%200-17-1-15-4s1-12%200-12c-1-1-2%200-2%202l-1-3-1-9-1%2043m91-24c0%205%200%207-2%207h-1v-4c-2-5-5-3-4%203%201%204%202%205%2014%205%207%201%207%201%206-1l-1-3c-7%200-7%200-1-1l7-1h-6c-4%200-6%200-4-1h8c7%200%2010%203%207%207-1%202-1%202%202%202s3%200%202-1l-1-4c0-3%203-2%204%201%201%202%201%202%201-1l1-4v-4l-1-3h-2l-3-1-4-1c-10%200-17%200-16-1s1-1-2-1h-4v7m-54%201c0%205%200%206-2%208s-2%203-2%208c0%206%200%207-1%206l-3%201c0%201-1%202-3%202h-2v12c1%2012%201%2012-2%2014-2%202-2%203-2%208v7h4c4%200%204%200%204-4%200-2%200-3%201-2%201%204%202-1%202-15v-17c-2-2-1-4%201-4l1%2024%201%2024v-61l3-2c2-2%202-3%202-7-1-7-3-8-2-2m-31%208l-1%205v4h9l13%201h4v-4c0-5-2-6-12-6-5%200-5%200-2%201%204%200%204%200%204%204%200%203%200%203-1%201%200-3-1-4-6-4-4%200-6-1-7-2h-1M23%20163c-8%204-13%2015-13%2030v5c0-9%202-8%202%201%201%2010%203%2017%206%2023%202%204%205%207%205%205l-5-10c-2-2-3-13-2-16%201-4%202-4%206%200%203%203%204%205%2010%2018%204%2010%206%2011%2010%207%206-6%207-13%207-28%201-15-1-20-6-28-5-9-12-11-20-7m271%2022h-1c-3%200-4%202-4%205l1%204h30v-3c0-3%200-3-2-2l-13-1c-9%200-10%200-10-2v-2l-1%201m-1%2020c4%202%206%204%206%207v1l1-4v-3h9l9%201h1l5-1%205%201h5l3-1%203%201v1l2-1c0-2%2013-1%2013%200h2l5-1h5l-17-1a3780%203780%200%2001-57%200m-32%207c0%201-3%202-3%200l-3-1-3%201v1c4%200%202%203-1%203l11%201%2015-1c0-4-1-5-8-4l-6-1v-1l-2%202m-111%2063v5h19c14%200%2017%200%2012-1-14-2-18-2-19-1l-3%201c-2%200-2%200-2-4%200-5%200-5-2-5s-3%201-3%202c0%202%200%202-1%200s-1-1-1%203m48-1l-1%201-1%202v2l-1%201h-1l-2%203-4%202c-2%201%206%202%208%200h1l17%201c20%200%2019-2-1-2l-12-1h-5c0-1%202-3%204-3v-4l-1-4-1%202m-14%2046l-1%207c1%207%201%208%207%207%204-1%203-5-2-6-3%200-4-2-1-2%202%200%203-2%204-5%201-2%200-2-2-2l-5%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"regular":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAAMBAAAAAAAAAAAAAAAAAAIEBQH/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAQL/2gAMAwEAAhADEAAAAdCFOvNbrORdiHQf/8QAGhAAAgMBAQAAAAAAAAAAAAAAAgMAARQREv/aAAgBAQABBQJjLAiYVWBehM+QjuIMKXnXM65nVP/EABYRAAMAAAAAAAAAAAAAAAAAAAABEv/aAAgBAwEBPwGWSymUz//EABYRAQEBAAAAAAAAAAAAAAAAAAAREP/aAAgBAgEBPwHIj//EAB8QAAECBgMAAAAAAAAAAAAAAAACEQMQISIxoTJh4f/aAAgBAQAGPwLw6HGhrteV6qmNmNnE/8QAHBAAAwADAQEBAAAAAAAAAAAAAAERITFBYZHw/9oACAEBAAE/IUxcb2wnXDIn4Grqp30csjT4+GjLOw9f0ZnWfg/Rn//aAAwDAQACAAMAAAAQMMcB/8QAFhEAAwAAAAAAAAAAAAAAAAAAAAFh/9oACAEDAQE/EIsiyrKs/8QAFxEAAwEAAAAAAAAAAAAAAAAAABFRAf/aAAgBAgEBPxB5R5RIJD//xAAgEAEAAgICAQUAAAAAAAAAAAABABEhMUFR0WFxgfDx/9oACAEBAAE/EHamsgr5MUd4jaRC8ijw+0BFtprs3LAwio2WtruUgJKWOX5CgDiBdHGz0mjg+m5aoXCVEKPP5n//2Q==","aspectRatio":1,"src":"/static/60f53bc1df34e9dd797daa54291216ad/1dc0b/designSystem1.jpg","srcSet":"/static/60f53bc1df34e9dd797daa54291216ad/3a5ce/designSystem1.jpg 163w,\n/static/60f53bc1df34e9dd797daa54291216ad/05730/designSystem1.jpg 327w,\n/static/60f53bc1df34e9dd797daa54291216ad/1dc0b/designSystem1.jpg 653w,\n/static/60f53bc1df34e9dd797daa54291216ad/f72c7/designSystem1.jpg 980w,\n/static/60f53bc1df34e9dd797daa54291216ad/0ff54/designSystem1.jpg 1200w","srcWebp":"/static/60f53bc1df34e9dd797daa54291216ad/0acdf/designSystem1.webp","srcSetWebp":"/static/60f53bc1df34e9dd797daa54291216ad/ac59e/designSystem1.webp 163w,\n/static/60f53bc1df34e9dd797daa54291216ad/7660b/designSystem1.webp 327w,\n/static/60f53bc1df34e9dd797daa54291216ad/0acdf/designSystem1.webp 653w,\n/static/60f53bc1df34e9dd797daa54291216ad/75470/designSystem1.webp 980w,\n/static/60f53bc1df34e9dd797daa54291216ad/9000d/designSystem1.webp 1200w","sizes":"(max-width: 653px) 100vw, 653px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M232%2048h-3c-2%200-2%200%200%201v2l-2-1h-7c-6%200-6%200-4%201%205%202%204%204-1%203l-7%201c-2%201-1%201%205%201%204%200%206%200%204%201s-2%201%202%201h6l5-1c2%200%202%200%201%202l-1%202%202-1c1-2%206-4%2012-5s16-5%2015-6l-7-1-5%201c2%201%202%201-1%202-4%201-6%201-2-1%202-1%202-1%200-1-1%200-2%200-1-1l-5-1-6%201M36%2052c-3%202-5%206-5%2011%200%203%200%203%201%202%202-2%202-2%203%201l4%207%202%203%203-2c9-9%202-28-8-22m211%206c-12%205-15%2028-6%2038l4%203h8c12-2%2018-8%2016-18l1-5c2-2-1-11-5-15-6-5-11-6-18-3m-123%203c0%203%200%204-1%203s-1%200-1%205c0%204%200%205%201%204%200-2%202-3%202-1%200%203-3%2011-4%2011v-2c2-4%201-4-1%200-3%204-5%202-3-2l1-3c-1%200-2%201-2%203l-2%201c0-4-3-4-4%201l-3%203-1%201-1%201c-4%201-4%201%200-2%204-5%207-13%204-14-7-1-7-1-7-5%200-2%200-3%201-2s4%201%204-1l-4-1-5%201%202%201c2%200%201%205-1%205s-2%200-1%201c3%200%202%202%200%205-3%203-4%203-3-1l1-6c0-2%200-3-1-1%200%202-1%202-2%202l-5-1c-3%200-3%200-3-4%200-3%200-3-1%200%200%203%200%203-5%203h-5l4%201c4%201%206%202%204%203-1%201-5%202-7%201l-1%201-4%201h-4c-1-2-1-2-4%200-2%201-3%200-3-4%200-2%200-2-2%200-1%202-1%203-2%202h-2l-3-1c-1-1-2%200-3%202l-6%206-3%202%205%201%2010%201h2c-3%201%205%202%2013%202%204%200%204%200%204%202-1%202%201%204%205%204l2%201-3%201h-3l-2%201c-3%200-4%202-1%202%202%200%202%200-1%202l-3%201h3l5%201h1c-1-2%202-3%206-2%202%201%203%203%201%205v1l2-2%205-2%206-1%207-2c2%200%203-1%203-2h1c0%202%202%203%2011%204%209%200%2011%202%202%202h-6l3%204c3%204%204%205%207%205s3%200%201-1l-2-1h2l3%201%202%201v-2c2-1%200-4-4-4l-3-1h3l4-1%201-1c2%202%206%200%206-3%201-4%202-4%2019-8%202%200%202%200%201-2l-2-3c-1-1-1%200-1%202s0%203-1%202h-10v-3c0-3%200-3%203-3l4-2%204-2c2%200%202%200%200-1-3-1-3-1%202-1l6-1h4c3%200%207-3%205-5l-1%201c-1%202-2%202-6%202-2%200-4%200-3%201l-4%201-10%201c-4%200-5%200-4-1l6-1c4-1%204-1-2-1-5%200-6%200-9%203l-5%203-4%203c-3%203-6%204-4%201%203-8%204-20%200-25v3m201%207h-6l-6%201c-2%200-1%207%201%207l1%202-1%202c-2%200-2%202-2%2011v12l1-11c0-11%200-11%203-12%203-2%204-1%202%201l-1%204c0%203%200%203%203%203h3l-3-1-2-1%202-1c2-1%202-1%203%201%202%203%203%206%202%207v1l-2%201c-3%200-2%203%202%208l3%203-1-6v-7h3c2%200%202%200%201%201s-2%202-1%2010v3l3-3%203-5%202-2%201-2%201-2%202-1c2-2%202-12%201-15v-1l-1-3-3-4h-7c-5%200-6%200-3-1l4-1h-4l-4%201m-98%2013c-6%201-6%201-6%208v7h-4l-5-1v-3l1-2c0-2-2-3-2%200-1%201-1%200-1-2v-4h5c3-1%205-1%204-2-2-1-29%204-29%206l1%201%201%202c1%201%201%201%201-1s1-3%206-4c10-2%209-2%2010%204a32%2032%200%20003%2012l-7-1-2-1%201%202c1%202%201%202-2%202s-3%200-2-1l1-2-2%201h-1c-1-1%200-2%204-2%204-1%204-1%204-4-1-5-2-5-8-4-5%200-5%200-6%204v5l-1%201h-2l1%201v1c-1%200-2-1-2-3s0-2-6-2l-5%201v-6c0-6-1-6-3-6s-2%200-2%206l-1%208c-3%203%208%2014%2012%2013l3%201-2%201h4l1-1c-3%200-2-2%201-2%203-1%203%200%202%201%200%201%200%202%202%201l3-5%201-4%206-2a17833%2017833%200%200034-5h3l-2-3-5-6c-1-3-1-3-2-1%200%203%200%203-4%202h-4l-2-5c0-3%202-5%207-5l4-1-1-1-5%201m24%2020l-5%202h-2l-3%201-7%201h-3c3%200%204%200%204%202%200%201%200%202%201%201l1%201%202%202c2%201%203%201%202%202-2%201-1%202%202%202l5%202%202%201c1-1-2-4-5-4l-2-1c1-1%203-2%209-2%207%200%207%200%202%201l-3%201c3%200%203%200%201%201h-2l2%204c2%203%203%204%206%205%205%201%209%203%2011%207l2%202c0-2%204-1%204%201l-2%201c-2-1-2%200-2%202s0%203-2%203l-4%201-1-1v-1l-1%202%204%201%205-1%201-2c0-2%201-3%203%200%202%201%202%201%206-2l4-4h-4c-4%200-5%200-4-4%200-3%204-3%204%200%200%202%201%203%202%203%202%201%202%200%202-2%200-3-3-5-7-5h-2l4-2c2%200%203-1%203-2%201-1%201-1%202%201v2l3-2c3-2%204-2%2014-1l29%204c2%200%205%206%205%2010%200%202%200%202%204%202%203%200%203%200%203-3s0-3%201-2l5%202%203%203c0%201%200%202%201%201v-6h5c4%200%205%201%206%202v-2c0-3-1-6-3-7-3-3-3-4%201-4l6-2a1141%201141%200%2001-103-18l-15%201m-115%208v3l-6-1-9-1c-4%200-4%200-4%202%200%204%208%206%2011%203h1c1%202-1%202-24%201l-18-2-1%203c1%204%201%204%2022%205%2010%201%2011%201%2010-1l1-2c1-1%201%200%201%201%200%203%202%204%2015%204l7%201v-4c0-3-1-3-2-3-2%200-2%200-1-1l1-3%201-2%201%202%202%202c3-1%204%201%201%202-2%200-2%201-2%204l1%203%201-3c0-4%202-4%202%200%201%204%206%204%206%200s-8-13-12-13l-5-2v2m148%200v1l9%201c30%205%2066%208%2059%205a1467%201467%200%2000-68-7m-231%205c-19%205-24%206-23%207%202%200%202%201%202%203-1%202-1%202%204%201%209-1%209-1%2010-5%200-4%202-4%202%200l1%203%201-1%202-2c2%200%202%200%201%201s-1%201%202%201l17-2h13v-3c0-3%200-3-5-3-13-2-20-2-27%200m3%2010l-24%204c-4%200%204%202%2010%202l10%201h15c12%200%2013%200%2012%202%200%201%200%202%202%203%203%200%204%202%202%202l-5%204c-3%202-4%204-3%204l2-1h1c-1%201%2010%204%2022%204l11%202%203-1%202-1%2014%201%2015%201%201%201v1c1%202%201%202-2%203-4%201-5%201-1%201l4-1h1c3%202%203%201%201-1-2-3-2-4%201-2l1%202%201%201c1-1%204%202%204%204l-2%203-2%201-6%201c-6%200-8%201-6%205h1c0-2%206-3%2016-1%204%200%204%200%202%201s-2%201-1%202l3-1h1l1%201v-13l1-12-3%202h-3v-2c3%201%206-2%205-5%200-4-2-5-4-2-3%202-6%202-7%200%200-2%200-2%202-2%201%201%203%200%205-1l2-2-2-1c-2-2-4-2-11%200-14%202-14%202-14-2l-1-4h6c3%200%205%200%204-1a916%20916%200%2000-87-3m240%207c0%208%200%209%202%209h4c6%202%2013%202%2012%201-2-1-3-3%200-3%201%201%201%200%201-4v-4l1%204%201%205v-5c0-3%201-4%203-6%203-3%203-4-8-4l-13-2h-3v9m-56-6c-2%201-2%205-2%2043v43h7v-42c0-39%200-42-2-44h-3m6%2043v45h-16l-12-1c5%200%205%200%205-3%200-2%200-3-2-3s-2%200%201-4l3-5h-1c-1%201-1%201-1-1l1-4c0-2%201-1%201%201l1%204v-4c0-6%201-9%203-9l1-1-3-1c-4%200-4%200-4%203%200%206-2%2014-4%2017s-2%202-1-2l3-7c0-5%200-5-2-5l-2%201%202%201%201%202-1%204-4%201h-4v-7c0-7%201-9%204-6s5%203%206%201c2-3%201-3-4-3s-6%200-6-7c0-3%200-3%204-3l4-1-5-1-5-1c-1-1-1-1-1%201%201%203-3%204-4%201v-3l-1-1c-3%200-4-2-2-4%202-1%202-2%202-3-1%200-2%200-3%202h-4l-16-1c-2%200-2%201-2%202%201%201%200%202-1%202-1%201-1%201%201%201l2%201%208%201c9-1%2010-1%2012%202%203%204%202%204-3%203h-12c-6%200-6%200-6-2%200-1%200-2-1-1-1%200-1%208%201%2022l-1%2012c0%204%200%205%203%207%2010%209%2015%2015%2011%2017l-1%202-2%204-4%203h-1c0-1-5%200-7%202h-2l-1-1c0-2-2-3-4-2l-1-3c0-2%200-3-1-1-3%2014-17%2031-27%2033-3%200-3%200-3-4%200-8%200-8%208-8h7l-7-1-6-1h5l8-2%202-2-2-3-1-4%201-2%202-4c2-3%202-3%205-2%202%202%203%202%203%201l-2-1c-2-1-2-1%200-3l2-1h8l-4-1h-3v-23l-1-25v-2h-10c-9%200-10%200-10%202h17c2%201%200%201-5%201-7%200-8%200-8%202%200%203%202%204%208%203l5-1%201-2c1-1%201%201%201%204v6h-8c-7%200-8%200-8-2%200-1-1-2-5-2l-4-1%201%205c0%204-1%206-2%203h-10l3-1c3%201%203%200%203-3s0-3-3-3l-4-2c-1-2-1-2-1%202l-1%208v5h-10c-10%200-12-1-10-5v-3l4-1%204%201c0%202%201%200%202-2l-1-3-1%202-4%201-4-1-1-1-1%204c0%207-2%2015-5%2018l-3%202%201-3v-1l1-1%201-1-14-1c-14%200-14%200-12%202l2%201c2-1%202%203%201%207s-1%204-6%204l-6-1-2%203c-2%203-2%203-3%202%200-2%200-2-1-1s-1%200-1-2l1-3-2%203-2%204%201-4v-3l-2%202c-1%203-1%203-2%202-1-2-1-2-2%200-3%208-10%2013-17%2013l-4%201%2023%204%2011%202c3%202%2012%203%2018%203%204%200%204%200%207%206l4%207-16%201a99%2099%200%2000-22%202c-2%200-2%200%200%203v6c-1%201%200%201%202%201l4%201%202%201%206%202h8l13-2c10%200%2010%200%2011-3s1-3-6-3c-5%200-6%200-6%202%200%201%200%203-2%203h-2v-4c1-4%202-4%206-4%207%200%2013%202%2013%204l-2%204c0%202%205%204%2011%203%203-1%206-1%209%201%204%201%2010%201%2018-1%202%200%202%200%201%201l-4%201c-2%200-2%200%201%201l4%203c2%201%202%201%202-6l1-8%201%203c0%204%202%208%205%208l1%201-3%201-4%201h8l39%202c-3%202-43%204-45%202l-2-2v2c1%201%201%201-3%201s-5%200-7-4c-3-4-4-5-4-2l-2%201-2%201h4l2%201v1l1%201-6%201c-5%200-6%200-7-3-3-4-7-7-8-5-2%201-2%202%201%204l2%204h-3c-2%200-4-1-8-5-2-3-6-5-7-5s-1%201%203%205l6%205H0v37l1%2038h46a733%20733%200%200145%203l4%201c3%200%203%200%202-1h9c6%202%206%203%201%203h-4l2%201h10c2-2%202-2-4-3l-6-3c1-1%2011%202%2013%204l4%201c2-1%202-1-1-2l-7-3c-8-1-1-1%2035-1a36539%2036539%200%200046%202c-5%200-5%202%200%203%204%200%204%200%202%201l-3%201h3c3%201%205%205%202%205v1l1%201c0%203%200%203%201%201l2-3c0-2%203-3%203-1l2%201h7l-3-2c-5-1-4-2%201-3h17c0%201-6%203-10%203-3%200-3%201-3%203%200%204%200%205%202%203%200-2%201-2%201-1l2%201%202-2h1c1%202%205%202%205%201-1-1%200-3%201-3v-2c-1%200-1-1%201-2%201-2%202-2%203-1l6%203c4%200%204%200%202%201h-6c-4-1-5-1-3%201l5%201c5%200%2019-3%2017-4-3%200-5-2-3-2l1-1%202-2h-3c-13%201-23-1-14-3l7-1a832%20832%200%200166%202c1-2%203-2%2044-2%2038%200%2043%200%2043-2l1-37v-36h-53l2-3%206-10%204-6h14c1%201%202%201%202-1l3-3c4-2%206-2-18-1a31425%2031425%200%2001-111%208l-11%201c-3%201%204%201%2030-1a451%20451%200%2001-79-2h-1l-3%201h-2l2-1%203-1h-3c-2%200-2%200-1-1l4-1c1%201%201%200%201-2s0-3%201-2l1%202v3h22a335%20335%200%200064-2l19-1%201-17v-16l-51%201-52-1v-3l1-2v5h37l-17-1-17-1%203-1c3%201%203%201%203-2l1-2v5l15-1c12%200%2015%200%2016%202%200%201%209%201%209-1l11-2a1274%201274%200%200023%202l1-1c1-2%205-2%205%200%200%203%202%200%203-4%201-3%201-4%201-1l-1%204%205-1h4l-1-6c0-6%201-6%201%201l1%205h7l11%202%203%202h-4l-10%201h-7v33h9a3693%203693%200%200161-5l7-2%201-1c3%200%200-2-5-3l-6-2%203-10%203-11h-24l-27-1c-4-2-5-4-3-4l3%201h1l28-1c27%200%2034-1%2032-3-2-4%205-9%2012-8h2c1-2%200-2-3-2l-4-2v-3h-1l-1-1-1-1c-2-1-1-3%201-3%201-1%200-1-2-1h-5a402%20402%200%2000-56-2c-3%200-4%200-3-2%200-2%201-2%205-2%203%200%204%200%204-2h1c0%203%202%202%202%200%201-3%203-2%204%201%200%202%201%202%208%202h7v-8l1-7v15h12v-14l1%207v7h3c2%200%203%200%203-3%201-4%203-5%206-5l4-2c2-2%202-2-2-3-2-1-1-1%201-1%204%200%206%202%203%204-1%202-1%202%202%202s3%200%203-2c-1-1%200-2%201-3%202-1%202-2%200-3-1-1-22-3-37-3h-6l6%201%2015%201%2011%201h-7a430%20430%200%2000-26-2c0-2-24-4-45-4l-9-1h17c20%200%2020%200%2024-3l4-2v3c0%202%200%203%202%203l7%201c4%200%208-2%208-5l2-1c2%200%202%200%201%201v5l1-2%201-2v5h20c1%202%203%201%203-1l-1-3%201-2c1-2%202-2%204%201%203%203%203%203%200%203-2-1-3%200-3%201%200%202%201%202%204%202%204%200%204-2%201-6-1-1-2-3-1-4l-1-1-2-1-2%202c-1%201-1%200-1-2%200-4-1-5-7-6-2-1-3-1-3%201-1%201%200%202%202%202%202%201%201%201-2%201l-5%202c-2%202-5%202-5%201l2-2c5-1%201-2-10-2l-14-2-1%201c1%201%200%202-1%202l-1-1c0-1-1-2-3-2-4%200-6-2-2-2%205%200%202-2-4-2-6-1-6-1-5-3s2-2%202%200c1%201%205%202%205%200s-2-3-8-4a320%20320%200%2001-13%200l-3%201c-1%200-2%200-1-1l-3-1h-4l-2%201c0%202%202%203%2015%204l10%201-3%201-14-2c-9%200-11-1-11-2s-2%201-3%205c-2%205-2%2017-1%2019l18%201%2017%201-18-1h-17v16l1%2015%201%202-1%201-1%205-1%207a527%20527%200%20010-81c1-5-1-5-6-1-6%205-16%206-23%200-5-3-5-3-5%203l1%205h6c11%200%2016%201%2016%203l2%201h-12c-15%200-17-1-15-4s1-12%200-12c-1-1-2%200-2%202l-1-3-1-9-1%2043m91-24c0%205%200%207-2%207h-1v-4c-2-5-5-3-4%203%201%204%202%205%2014%205%207%201%207%201%206-1l-1-3c-7%200-7%200-1-1l7-1h-6c-4%200-6%200-4-1h8c7%200%2010%203%207%207-1%202-1%202%202%202s3%200%202-1l-1-4c0-3%203-2%204%201%201%202%201%202%201-1l1-4v-4l-1-3h-2l-3-1-4-1c-10%200-17%200-16-1s1-1-2-1h-4v7m-54%201c0%205%200%206-2%208s-2%203-2%208c0%206%200%207-1%206l-3%201c0%201-1%202-3%202h-2v12c1%2012%201%2012-2%2014-2%202-2%203-2%208v7h4c4%200%204%200%204-4%200-2%200-3%201-2%201%204%202-1%202-15v-17c-2-2-1-4%201-4l1%2024%201%2024v-61l3-2c2-2%202-3%202-7-1-7-3-8-2-2m-31%208l-1%205v4h9l13%201h4v-4c0-5-2-6-12-6-5%200-5%200-2%201%204%200%204%200%204%204%200%203%200%203-1%201%200-3-1-4-6-4-4%200-6-1-7-2h-1M23%20163c-8%204-13%2015-13%2030v5c0-9%202-8%202%201%201%2010%203%2017%206%2023%202%204%205%207%205%205l-5-10c-2-2-3-13-2-16%201-4%202-4%206%200%203%203%204%205%2010%2018%204%2010%206%2011%2010%207%206-6%207-13%207-28%201-15-1-20-6-28-5-9-12-11-20-7m271%2022h-1c-3%200-4%202-4%205l1%204h30v-3c0-3%200-3-2-2l-13-1c-9%200-10%200-10-2v-2l-1%201m-1%2020c4%202%206%204%206%207v1l1-4v-3h9l9%201h1l5-1%205%201h5l3-1%203%201v1l2-1c0-2%2013-1%2013%200h2l5-1h5l-17-1a3780%203780%200%2001-57%200m-32%207c0%201-3%202-3%200l-3-1-3%201v1c4%200%202%203-1%203l11%201%2015-1c0-4-1-5-8-4l-6-1v-1l-2%202m-111%2063v5h19c14%200%2017%200%2012-1-14-2-18-2-19-1l-3%201c-2%200-2%200-2-4%200-5%200-5-2-5s-3%201-3%202c0%202%200%202-1%200s-1-1-1%203m48-1l-1%201-1%202v2l-1%201h-1l-2%203-4%202c-2%201%206%202%208%200h1l17%201c20%200%2019-2-1-2l-12-1h-5c0-1%202-3%204-3v-4l-1-4-1%202m-14%2046l-1%207c1%207%201%208%207%207%204-1%203-5-2-6-3%200-4-2-1-2%202%200%203-2%204-5%201-2%200-2-2-2l-5%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"narrow":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAAMBAAAAAAAAAAAAAAAAAAIEBQH/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAQL/2gAMAwEAAhADEAAAAdCFOvNbrORdiHQf/8QAGhAAAgMBAQAAAAAAAAAAAAAAAgMAARQREv/aAAgBAQABBQJjLAiYVWBehM+QjuIMKXnXM65nVP/EABYRAAMAAAAAAAAAAAAAAAAAAAABEv/aAAgBAwEBPwGWSymUz//EABYRAQEBAAAAAAAAAAAAAAAAAAAREP/aAAgBAgEBPwHIj//EAB8QAAECBgMAAAAAAAAAAAAAAAACEQMQISIxoTJh4f/aAAgBAQAGPwLw6HGhrteV6qmNmNnE/8QAHBAAAwADAQEBAAAAAAAAAAAAAAERITFBYZHw/9oACAEBAAE/IUxcb2wnXDIn4Grqp30csjT4+GjLOw9f0ZnWfg/Rn//aAAwDAQACAAMAAAAQMMcB/8QAFhEAAwAAAAAAAAAAAAAAAAAAAAFh/9oACAEDAQE/EIsiyrKs/8QAFxEAAwEAAAAAAAAAAAAAAAAAABFRAf/aAAgBAgEBPxB5R5RIJD//xAAgEAEAAgICAQUAAAAAAAAAAAABABEhMUFR0WFxgfDx/9oACAEBAAE/EHamsgr5MUd4jaRC8ijw+0BFtprs3LAwio2WtruUgJKWOX5CgDiBdHGz0mjg+m5aoXCVEKPP5n//2Q==","aspectRatio":1,"src":"/static/60f53bc1df34e9dd797daa54291216ad/eaa58/designSystem1.jpg","srcSet":"/static/60f53bc1df34e9dd797daa54291216ad/5a3ee/designSystem1.jpg 114w,\n/static/60f53bc1df34e9dd797daa54291216ad/41f8f/designSystem1.jpg 229w,\n/static/60f53bc1df34e9dd797daa54291216ad/eaa58/designSystem1.jpg 457w,\n/static/60f53bc1df34e9dd797daa54291216ad/c309b/designSystem1.jpg 686w,\n/static/60f53bc1df34e9dd797daa54291216ad/e3008/designSystem1.jpg 914w,\n/static/60f53bc1df34e9dd797daa54291216ad/0ff54/designSystem1.jpg 1200w","srcWebp":"/static/60f53bc1df34e9dd797daa54291216ad/15384/designSystem1.webp","srcSetWebp":"/static/60f53bc1df34e9dd797daa54291216ad/31fce/designSystem1.webp 114w,\n/static/60f53bc1df34e9dd797daa54291216ad/e3e25/designSystem1.webp 229w,\n/static/60f53bc1df34e9dd797daa54291216ad/15384/designSystem1.webp 457w,\n/static/60f53bc1df34e9dd797daa54291216ad/0258d/designSystem1.webp 686w,\n/static/60f53bc1df34e9dd797daa54291216ad/64ea2/designSystem1.webp 914w,\n/static/60f53bc1df34e9dd797daa54291216ad/9000d/designSystem1.webp 1200w","sizes":"(max-width: 457px) 100vw, 457px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M232%2048h-3c-2%200-2%200%200%201v2l-2-1h-7c-6%200-6%200-4%201%205%202%204%204-1%203l-7%201c-2%201-1%201%205%201%204%200%206%200%204%201s-2%201%202%201h6l5-1c2%200%202%200%201%202l-1%202%202-1c1-2%206-4%2012-5s16-5%2015-6l-7-1-5%201c2%201%202%201-1%202-4%201-6%201-2-1%202-1%202-1%200-1-1%200-2%200-1-1l-5-1-6%201M36%2052c-3%202-5%206-5%2011%200%203%200%203%201%202%202-2%202-2%203%201l4%207%202%203%203-2c9-9%202-28-8-22m211%206c-12%205-15%2028-6%2038l4%203h8c12-2%2018-8%2016-18l1-5c2-2-1-11-5-15-6-5-11-6-18-3m-123%203c0%203%200%204-1%203s-1%200-1%205c0%204%200%205%201%204%200-2%202-3%202-1%200%203-3%2011-4%2011v-2c2-4%201-4-1%200-3%204-5%202-3-2l1-3c-1%200-2%201-2%203l-2%201c0-4-3-4-4%201l-3%203-1%201-1%201c-4%201-4%201%200-2%204-5%207-13%204-14-7-1-7-1-7-5%200-2%200-3%201-2s4%201%204-1l-4-1-5%201%202%201c2%200%201%205-1%205s-2%200-1%201c3%200%202%202%200%205-3%203-4%203-3-1l1-6c0-2%200-3-1-1%200%202-1%202-2%202l-5-1c-3%200-3%200-3-4%200-3%200-3-1%200%200%203%200%203-5%203h-5l4%201c4%201%206%202%204%203-1%201-5%202-7%201l-1%201-4%201h-4c-1-2-1-2-4%200-2%201-3%200-3-4%200-2%200-2-2%200-1%202-1%203-2%202h-2l-3-1c-1-1-2%200-3%202l-6%206-3%202%205%201%2010%201h2c-3%201%205%202%2013%202%204%200%204%200%204%202-1%202%201%204%205%204l2%201-3%201h-3l-2%201c-3%200-4%202-1%202%202%200%202%200-1%202l-3%201h3l5%201h1c-1-2%202-3%206-2%202%201%203%203%201%205v1l2-2%205-2%206-1%207-2c2%200%203-1%203-2h1c0%202%202%203%2011%204%209%200%2011%202%202%202h-6l3%204c3%204%204%205%207%205s3%200%201-1l-2-1h2l3%201%202%201v-2c2-1%200-4-4-4l-3-1h3l4-1%201-1c2%202%206%200%206-3%201-4%202-4%2019-8%202%200%202%200%201-2l-2-3c-1-1-1%200-1%202s0%203-1%202h-10v-3c0-3%200-3%203-3l4-2%204-2c2%200%202%200%200-1-3-1-3-1%202-1l6-1h4c3%200%207-3%205-5l-1%201c-1%202-2%202-6%202-2%200-4%200-3%201l-4%201-10%201c-4%200-5%200-4-1l6-1c4-1%204-1-2-1-5%200-6%200-9%203l-5%203-4%203c-3%203-6%204-4%201%203-8%204-20%200-25v3m201%207h-6l-6%201c-2%200-1%207%201%207l1%202-1%202c-2%200-2%202-2%2011v12l1-11c0-11%200-11%203-12%203-2%204-1%202%201l-1%204c0%203%200%203%203%203h3l-3-1-2-1%202-1c2-1%202-1%203%201%202%203%203%206%202%207v1l-2%201c-3%200-2%203%202%208l3%203-1-6v-7h3c2%200%202%200%201%201s-2%202-1%2010v3l3-3%203-5%202-2%201-2%201-2%202-1c2-2%202-12%201-15v-1l-1-3-3-4h-7c-5%200-6%200-3-1l4-1h-4l-4%201m-98%2013c-6%201-6%201-6%208v7h-4l-5-1v-3l1-2c0-2-2-3-2%200-1%201-1%200-1-2v-4h5c3-1%205-1%204-2-2-1-29%204-29%206l1%201%201%202c1%201%201%201%201-1s1-3%206-4c10-2%209-2%2010%204a32%2032%200%20003%2012l-7-1-2-1%201%202c1%202%201%202-2%202s-3%200-2-1l1-2-2%201h-1c-1-1%200-2%204-2%204-1%204-1%204-4-1-5-2-5-8-4-5%200-5%200-6%204v5l-1%201h-2l1%201v1c-1%200-2-1-2-3s0-2-6-2l-5%201v-6c0-6-1-6-3-6s-2%200-2%206l-1%208c-3%203%208%2014%2012%2013l3%201-2%201h4l1-1c-3%200-2-2%201-2%203-1%203%200%202%201%200%201%200%202%202%201l3-5%201-4%206-2a17833%2017833%200%200034-5h3l-2-3-5-6c-1-3-1-3-2-1%200%203%200%203-4%202h-4l-2-5c0-3%202-5%207-5l4-1-1-1-5%201m24%2020l-5%202h-2l-3%201-7%201h-3c3%200%204%200%204%202%200%201%200%202%201%201l1%201%202%202c2%201%203%201%202%202-2%201-1%202%202%202l5%202%202%201c1-1-2-4-5-4l-2-1c1-1%203-2%209-2%207%200%207%200%202%201l-3%201c3%200%203%200%201%201h-2l2%204c2%203%203%204%206%205%205%201%209%203%2011%207l2%202c0-2%204-1%204%201l-2%201c-2-1-2%200-2%202s0%203-2%203l-4%201-1-1v-1l-1%202%204%201%205-1%201-2c0-2%201-3%203%200%202%201%202%201%206-2l4-4h-4c-4%200-5%200-4-4%200-3%204-3%204%200%200%202%201%203%202%203%202%201%202%200%202-2%200-3-3-5-7-5h-2l4-2c2%200%203-1%203-2%201-1%201-1%202%201v2l3-2c3-2%204-2%2014-1l29%204c2%200%205%206%205%2010%200%202%200%202%204%202%203%200%203%200%203-3s0-3%201-2l5%202%203%203c0%201%200%202%201%201v-6h5c4%200%205%201%206%202v-2c0-3-1-6-3-7-3-3-3-4%201-4l6-2a1141%201141%200%2001-103-18l-15%201m-115%208v3l-6-1-9-1c-4%200-4%200-4%202%200%204%208%206%2011%203h1c1%202-1%202-24%201l-18-2-1%203c1%204%201%204%2022%205%2010%201%2011%201%2010-1l1-2c1-1%201%200%201%201%200%203%202%204%2015%204l7%201v-4c0-3-1-3-2-3-2%200-2%200-1-1l1-3%201-2%201%202%202%202c3-1%204%201%201%202-2%200-2%201-2%204l1%203%201-3c0-4%202-4%202%200%201%204%206%204%206%200s-8-13-12-13l-5-2v2m148%200v1l9%201c30%205%2066%208%2059%205a1467%201467%200%2000-68-7m-231%205c-19%205-24%206-23%207%202%200%202%201%202%203-1%202-1%202%204%201%209-1%209-1%2010-5%200-4%202-4%202%200l1%203%201-1%202-2c2%200%202%200%201%201s-1%201%202%201l17-2h13v-3c0-3%200-3-5-3-13-2-20-2-27%200m3%2010l-24%204c-4%200%204%202%2010%202l10%201h15c12%200%2013%200%2012%202%200%201%200%202%202%203%203%200%204%202%202%202l-5%204c-3%202-4%204-3%204l2-1h1c-1%201%2010%204%2022%204l11%202%203-1%202-1%2014%201%2015%201%201%201v1c1%202%201%202-2%203-4%201-5%201-1%201l4-1h1c3%202%203%201%201-1-2-3-2-4%201-2l1%202%201%201c1-1%204%202%204%204l-2%203-2%201-6%201c-6%200-8%201-6%205h1c0-2%206-3%2016-1%204%200%204%200%202%201s-2%201-1%202l3-1h1l1%201v-13l1-12-3%202h-3v-2c3%201%206-2%205-5%200-4-2-5-4-2-3%202-6%202-7%200%200-2%200-2%202-2%201%201%203%200%205-1l2-2-2-1c-2-2-4-2-11%200-14%202-14%202-14-2l-1-4h6c3%200%205%200%204-1a916%20916%200%2000-87-3m240%207c0%208%200%209%202%209h4c6%202%2013%202%2012%201-2-1-3-3%200-3%201%201%201%200%201-4v-4l1%204%201%205v-5c0-3%201-4%203-6%203-3%203-4-8-4l-13-2h-3v9m-56-6c-2%201-2%205-2%2043v43h7v-42c0-39%200-42-2-44h-3m6%2043v45h-16l-12-1c5%200%205%200%205-3%200-2%200-3-2-3s-2%200%201-4l3-5h-1c-1%201-1%201-1-1l1-4c0-2%201-1%201%201l1%204v-4c0-6%201-9%203-9l1-1-3-1c-4%200-4%200-4%203%200%206-2%2014-4%2017s-2%202-1-2l3-7c0-5%200-5-2-5l-2%201%202%201%201%202-1%204-4%201h-4v-7c0-7%201-9%204-6s5%203%206%201c2-3%201-3-4-3s-6%200-6-7c0-3%200-3%204-3l4-1-5-1-5-1c-1-1-1-1-1%201%201%203-3%204-4%201v-3l-1-1c-3%200-4-2-2-4%202-1%202-2%202-3-1%200-2%200-3%202h-4l-16-1c-2%200-2%201-2%202%201%201%200%202-1%202-1%201-1%201%201%201l2%201%208%201c9-1%2010-1%2012%202%203%204%202%204-3%203h-12c-6%200-6%200-6-2%200-1%200-2-1-1-1%200-1%208%201%2022l-1%2012c0%204%200%205%203%207%2010%209%2015%2015%2011%2017l-1%202-2%204-4%203h-1c0-1-5%200-7%202h-2l-1-1c0-2-2-3-4-2l-1-3c0-2%200-3-1-1-3%2014-17%2031-27%2033-3%200-3%200-3-4%200-8%200-8%208-8h7l-7-1-6-1h5l8-2%202-2-2-3-1-4%201-2%202-4c2-3%202-3%205-2%202%202%203%202%203%201l-2-1c-2-1-2-1%200-3l2-1h8l-4-1h-3v-23l-1-25v-2h-10c-9%200-10%200-10%202h17c2%201%200%201-5%201-7%200-8%200-8%202%200%203%202%204%208%203l5-1%201-2c1-1%201%201%201%204v6h-8c-7%200-8%200-8-2%200-1-1-2-5-2l-4-1%201%205c0%204-1%206-2%203h-10l3-1c3%201%203%200%203-3s0-3-3-3l-4-2c-1-2-1-2-1%202l-1%208v5h-10c-10%200-12-1-10-5v-3l4-1%204%201c0%202%201%200%202-2l-1-3-1%202-4%201-4-1-1-1-1%204c0%207-2%2015-5%2018l-3%202%201-3v-1l1-1%201-1-14-1c-14%200-14%200-12%202l2%201c2-1%202%203%201%207s-1%204-6%204l-6-1-2%203c-2%203-2%203-3%202%200-2%200-2-1-1s-1%200-1-2l1-3-2%203-2%204%201-4v-3l-2%202c-1%203-1%203-2%202-1-2-1-2-2%200-3%208-10%2013-17%2013l-4%201%2023%204%2011%202c3%202%2012%203%2018%203%204%200%204%200%207%206l4%207-16%201a99%2099%200%2000-22%202c-2%200-2%200%200%203v6c-1%201%200%201%202%201l4%201%202%201%206%202h8l13-2c10%200%2010%200%2011-3s1-3-6-3c-5%200-6%200-6%202%200%201%200%203-2%203h-2v-4c1-4%202-4%206-4%207%200%2013%202%2013%204l-2%204c0%202%205%204%2011%203%203-1%206-1%209%201%204%201%2010%201%2018-1%202%200%202%200%201%201l-4%201c-2%200-2%200%201%201l4%203c2%201%202%201%202-6l1-8%201%203c0%204%202%208%205%208l1%201-3%201-4%201h8l39%202c-3%202-43%204-45%202l-2-2v2c1%201%201%201-3%201s-5%200-7-4c-3-4-4-5-4-2l-2%201-2%201h4l2%201v1l1%201-6%201c-5%200-6%200-7-3-3-4-7-7-8-5-2%201-2%202%201%204l2%204h-3c-2%200-4-1-8-5-2-3-6-5-7-5s-1%201%203%205l6%205H0v37l1%2038h46a733%20733%200%200145%203l4%201c3%200%203%200%202-1h9c6%202%206%203%201%203h-4l2%201h10c2-2%202-2-4-3l-6-3c1-1%2011%202%2013%204l4%201c2-1%202-1-1-2l-7-3c-8-1-1-1%2035-1a36539%2036539%200%200046%202c-5%200-5%202%200%203%204%200%204%200%202%201l-3%201h3c3%201%205%205%202%205v1l1%201c0%203%200%203%201%201l2-3c0-2%203-3%203-1l2%201h7l-3-2c-5-1-4-2%201-3h17c0%201-6%203-10%203-3%200-3%201-3%203%200%204%200%205%202%203%200-2%201-2%201-1l2%201%202-2h1c1%202%205%202%205%201-1-1%200-3%201-3v-2c-1%200-1-1%201-2%201-2%202-2%203-1l6%203c4%200%204%200%202%201h-6c-4-1-5-1-3%201l5%201c5%200%2019-3%2017-4-3%200-5-2-3-2l1-1%202-2h-3c-13%201-23-1-14-3l7-1a832%20832%200%200166%202c1-2%203-2%2044-2%2038%200%2043%200%2043-2l1-37v-36h-53l2-3%206-10%204-6h14c1%201%202%201%202-1l3-3c4-2%206-2-18-1a31425%2031425%200%2001-111%208l-11%201c-3%201%204%201%2030-1a451%20451%200%2001-79-2h-1l-3%201h-2l2-1%203-1h-3c-2%200-2%200-1-1l4-1c1%201%201%200%201-2s0-3%201-2l1%202v3h22a335%20335%200%200064-2l19-1%201-17v-16l-51%201-52-1v-3l1-2v5h37l-17-1-17-1%203-1c3%201%203%201%203-2l1-2v5l15-1c12%200%2015%200%2016%202%200%201%209%201%209-1l11-2a1274%201274%200%200023%202l1-1c1-2%205-2%205%200%200%203%202%200%203-4%201-3%201-4%201-1l-1%204%205-1h4l-1-6c0-6%201-6%201%201l1%205h7l11%202%203%202h-4l-10%201h-7v33h9a3693%203693%200%200161-5l7-2%201-1c3%200%200-2-5-3l-6-2%203-10%203-11h-24l-27-1c-4-2-5-4-3-4l3%201h1l28-1c27%200%2034-1%2032-3-2-4%205-9%2012-8h2c1-2%200-2-3-2l-4-2v-3h-1l-1-1-1-1c-2-1-1-3%201-3%201-1%200-1-2-1h-5a402%20402%200%2000-56-2c-3%200-4%200-3-2%200-2%201-2%205-2%203%200%204%200%204-2h1c0%203%202%202%202%200%201-3%203-2%204%201%200%202%201%202%208%202h7v-8l1-7v15h12v-14l1%207v7h3c2%200%203%200%203-3%201-4%203-5%206-5l4-2c2-2%202-2-2-3-2-1-1-1%201-1%204%200%206%202%203%204-1%202-1%202%202%202s3%200%203-2c-1-1%200-2%201-3%202-1%202-2%200-3-1-1-22-3-37-3h-6l6%201%2015%201%2011%201h-7a430%20430%200%2000-26-2c0-2-24-4-45-4l-9-1h17c20%200%2020%200%2024-3l4-2v3c0%202%200%203%202%203l7%201c4%200%208-2%208-5l2-1c2%200%202%200%201%201v5l1-2%201-2v5h20c1%202%203%201%203-1l-1-3%201-2c1-2%202-2%204%201%203%203%203%203%200%203-2-1-3%200-3%201%200%202%201%202%204%202%204%200%204-2%201-6-1-1-2-3-1-4l-1-1-2-1-2%202c-1%201-1%200-1-2%200-4-1-5-7-6-2-1-3-1-3%201-1%201%200%202%202%202%202%201%201%201-2%201l-5%202c-2%202-5%202-5%201l2-2c5-1%201-2-10-2l-14-2-1%201c1%201%200%202-1%202l-1-1c0-1-1-2-3-2-4%200-6-2-2-2%205%200%202-2-4-2-6-1-6-1-5-3s2-2%202%200c1%201%205%202%205%200s-2-3-8-4a320%20320%200%2001-13%200l-3%201c-1%200-2%200-1-1l-3-1h-4l-2%201c0%202%202%203%2015%204l10%201-3%201-14-2c-9%200-11-1-11-2s-2%201-3%205c-2%205-2%2017-1%2019l18%201%2017%201-18-1h-17v16l1%2015%201%202-1%201-1%205-1%207a527%20527%200%20010-81c1-5-1-5-6-1-6%205-16%206-23%200-5-3-5-3-5%203l1%205h6c11%200%2016%201%2016%203l2%201h-12c-15%200-17-1-15-4s1-12%200-12c-1-1-2%200-2%202l-1-3-1-9-1%2043m91-24c0%205%200%207-2%207h-1v-4c-2-5-5-3-4%203%201%204%202%205%2014%205%207%201%207%201%206-1l-1-3c-7%200-7%200-1-1l7-1h-6c-4%200-6%200-4-1h8c7%200%2010%203%207%207-1%202-1%202%202%202s3%200%202-1l-1-4c0-3%203-2%204%201%201%202%201%202%201-1l1-4v-4l-1-3h-2l-3-1-4-1c-10%200-17%200-16-1s1-1-2-1h-4v7m-54%201c0%205%200%206-2%208s-2%203-2%208c0%206%200%207-1%206l-3%201c0%201-1%202-3%202h-2v12c1%2012%201%2012-2%2014-2%202-2%203-2%208v7h4c4%200%204%200%204-4%200-2%200-3%201-2%201%204%202-1%202-15v-17c-2-2-1-4%201-4l1%2024%201%2024v-61l3-2c2-2%202-3%202-7-1-7-3-8-2-2m-31%208l-1%205v4h9l13%201h4v-4c0-5-2-6-12-6-5%200-5%200-2%201%204%200%204%200%204%204%200%203%200%203-1%201%200-3-1-4-6-4-4%200-6-1-7-2h-1M23%20163c-8%204-13%2015-13%2030v5c0-9%202-8%202%201%201%2010%203%2017%206%2023%202%204%205%207%205%205l-5-10c-2-2-3-13-2-16%201-4%202-4%206%200%203%203%204%205%2010%2018%204%2010%206%2011%2010%207%206-6%207-13%207-28%201-15-1-20-6-28-5-9-12-11-20-7m271%2022h-1c-3%200-4%202-4%205l1%204h30v-3c0-3%200-3-2-2l-13-1c-9%200-10%200-10-2v-2l-1%201m-1%2020c4%202%206%204%206%207v1l1-4v-3h9l9%201h1l5-1%205%201h5l3-1%203%201v1l2-1c0-2%2013-1%2013%200h2l5-1h5l-17-1a3780%203780%200%2001-57%200m-32%207c0%201-3%202-3%200l-3-1-3%201v1c4%200%202%203-1%203l11%201%2015-1c0-4-1-5-8-4l-6-1v-1l-2%202m-111%2063v5h19c14%200%2017%200%2012-1-14-2-18-2-19-1l-3%201c-2%200-2%200-2-4%200-5%200-5-2-5s-3%201-3%202c0%202%200%202-1%200s-1-1-1%203m48-1l-1%201-1%202v2l-1%201h-1l-2%203-4%202c-2%201%206%202%208%200h1l17%201c20%200%2019-2-1-2l-12-1h-5c0-1%202-3%204-3v-4l-1-4-1%202m-14%2046l-1%207c1%207%201%208%207%207%204-1%203-5-2-6-3%200-4-2-1-2%202%200%203-2%204-5%201-2%200-2-2-2l-5%201'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"seo":{"src":"/static/60f53bc1df34e9dd797daa54291216ad/0ff54/designSystem1.jpg"}}},"authors":[{"authorsPage":true,"bio":"Hello everybody 👋 !  My name is Luke and I am the creator and owner of the spaceout.pl. Personally, I am a big geek with huge love for Star Wars, Marvel and DC comic books, Funk and 80s music. I take most of my design inspiration from offline experiences like going to art museums, galleries and working with other creative people on various projects. I also work with various Activist and NGO groups as a pro-bono designer and developer.\n","id":"f69d27c7-7f9a-5fbd-b05d-1a324fd10c0a","name":"Luke Celitan","featured":true,"social":[{"url":"https://www.facebook.com/spaceout/"},{"url":"https://twitter.com/spaceout.pl"},{"url":"https://www.instagram.com/spaceout.pl/"},{"url":"https://huggingface.co/MassivDash"},{"url":"https://bsky.app/profile/lukecelitan.bsky.social"}],"slug":"/authors/luke-celitan","avatar":{"small":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGQABAAIDAAAAAAAAAAAAAAAAAAIFAQME/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEAMQAAABvOTVgtERIAH/xAAaEAEBAQEAAwAAAAAAAAAAAAACAQMEABAS/9oACAEBAAEFAmoDjs0/Oq1a9kUzN+j7/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAwEBPwEf/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAgEBPwEf/8QAHhAAAgEDBQAAAAAAAAAAAAAAAQIAAxESECAxMlH/2gAIAQEABj8CLHgTGqmBPXSlTANsrmKyXLK0B92f/8QAHhABAAECBwAAAAAAAAAAAAAAAREAIRAgMUFhcdH/2gAIAQEAAT8hUmKFDbjke4JaIOG01Fthsd0YugnJ/9oADAMBAAIAAwAAABDzzzz/xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAEDAQE/EB//xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAECAQE/EB//xAAfEAEBAAEDBQEAAAAAAAAAAAABETEAQWEQICFxgZH/2gAIAQEAAT8QhmFXf0c6oSU1s8jwz0W5QpAeFf1+Gp7aimCmBvvoV0CRyUvZ/9k=","aspectRatio":1,"src":"/static/4f53b0980dc97328dd1294bbc374fd0e/fa1ea/spaceghost.jpg","srcSet":"/static/4f53b0980dc97328dd1294bbc374fd0e/afb2b/spaceghost.jpg 13w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/7c20e/spaceghost.jpg 25w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/fa1ea/spaceghost.jpg 50w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/03612/spaceghost.jpg 75w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/61cdf/spaceghost.jpg 100w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/442ab/spaceghost.jpg 305w","srcWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/e7b2c/spaceghost.webp","srcSetWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/58718/spaceghost.webp 13w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/74aad/spaceghost.webp 25w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/e7b2c/spaceghost.webp 50w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/ed320/spaceghost.webp 75w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/66016/spaceghost.webp 100w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/85828/spaceghost.webp 305w","sizes":"(max-width: 50px) 100vw, 50px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M189%2065A519%20519%200%200065%20299c-5%2020-5%2018%203%2015%208-4%2039-10%2057-12%2011-1%2010%200%2010-11%200-29%206-103%2010-121%204-21%2016-36%2033-43%206-2%208-2%2020-2%2018%200%2024%202%2036%2013%2020%2021%2025%2046%2029%20138l2%2026h10a267%20267%200%200168%2014l-6-26A607%20607%200%2000218%2071c-10-10-15-15-18-15-2%200-6%203-11%209m47%20129c-14%208-26%2015-26%2017%200%203%2018%205%2024%202%205-3%209-10%209-18%200-5%200-5-7-1m-82%201l1%205c1%2011%209%2018%2020%2017%207-1%2013-3%2013-5s-32-19-34-17'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"medium":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGQABAAIDAAAAAAAAAAAAAAAAAAIFAQME/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEAMQAAABvOTVgtERIAH/xAAaEAEBAQEAAwAAAAAAAAAAAAACAQMEABAS/9oACAEBAAEFAmoDjs0/Oq1a9kUzN+j7/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAwEBPwEf/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAgEBPwEf/8QAHhAAAgEDBQAAAAAAAAAAAAAAAQIAAxESECAxMlH/2gAIAQEABj8CLHgTGqmBPXSlTANsrmKyXLK0B92f/8QAHhABAAECBwAAAAAAAAAAAAAAAREAIRAgMUFhcdH/2gAIAQEAAT8hUmKFDbjke4JaIOG01Fthsd0YugnJ/9oADAMBAAIAAwAAABDzzzz/xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAEDAQE/EB//xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAECAQE/EB//xAAfEAEBAAEDBQEAAAAAAAAAAAABETEAQWEQICFxgZH/2gAIAQEAAT8QhmFXf0c6oSU1s8jwz0W5QpAeFf1+Gp7aimCmBvvoV0CRyUvZ/9k=","aspectRatio":1,"src":"/static/4f53b0980dc97328dd1294bbc374fd0e/61cdf/spaceghost.jpg","srcSet":"/static/4f53b0980dc97328dd1294bbc374fd0e/7c20e/spaceghost.jpg 25w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/fa1ea/spaceghost.jpg 50w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/61cdf/spaceghost.jpg 100w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/59538/spaceghost.jpg 150w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/fd013/spaceghost.jpg 200w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/442ab/spaceghost.jpg 305w","srcWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/66016/spaceghost.webp","srcSetWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/74aad/spaceghost.webp 25w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/e7b2c/spaceghost.webp 50w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/66016/spaceghost.webp 100w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/d9b14/spaceghost.webp 150w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/6b183/spaceghost.webp 200w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/85828/spaceghost.webp 305w","sizes":"(max-width: 100px) 100vw, 100px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M189%2065A519%20519%200%200065%20299c-5%2020-5%2018%203%2015%208-4%2039-10%2057-12%2011-1%2010%200%2010-11%200-29%206-103%2010-121%204-21%2016-36%2033-43%206-2%208-2%2020-2%2018%200%2024%202%2036%2013%2020%2021%2025%2046%2029%20138l2%2026h10a267%20267%200%200168%2014l-6-26A607%20607%200%2000218%2071c-10-10-15-15-18-15-2%200-6%203-11%209m47%20129c-14%208-26%2015-26%2017%200%203%2018%205%2024%202%205-3%209-10%209-18%200-5%200-5-7-1m-82%201l1%205c1%2011%209%2018%2020%2017%207-1%2013-3%2013-5s-32-19-34-17'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"large":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGQABAAIDAAAAAAAAAAAAAAAAAAIFAQME/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEAMQAAABvOTVgtERIAH/xAAaEAEBAQEAAwAAAAAAAAAAAAACAQMEABAS/9oACAEBAAEFAmoDjs0/Oq1a9kUzN+j7/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAwEBPwEf/8QAFBEBAAAAAAAAAAAAAAAAAAAAIP/aAAgBAgEBPwEf/8QAHhAAAgEDBQAAAAAAAAAAAAAAAQIAAxESECAxMlH/2gAIAQEABj8CLHgTGqmBPXSlTANsrmKyXLK0B92f/8QAHhABAAECBwAAAAAAAAAAAAAAAREAIRAgMUFhcdH/2gAIAQEAAT8hUmKFDbjke4JaIOG01Fthsd0YugnJ/9oADAMBAAIAAwAAABDzzzz/xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAEDAQE/EB//xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAECAQE/EB//xAAfEAEBAAEDBQEAAAAAAAAAAAABETEAQWEQICFxgZH/2gAIAQEAAT8QhmFXf0c6oSU1s8jwz0W5QpAeFf1+Gp7aimCmBvvoV0CRyUvZ/9k=","aspectRatio":1,"src":"/static/4f53b0980dc97328dd1294bbc374fd0e/442ab/spaceghost.jpg","srcSet":"/static/4f53b0980dc97328dd1294bbc374fd0e/a2637/spaceghost.jpg 82w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/15203/spaceghost.jpg 164w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/442ab/spaceghost.jpg 305w","srcWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/85828/spaceghost.webp","srcSetWebp":"/static/4f53b0980dc97328dd1294bbc374fd0e/2d087/spaceghost.webp 82w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/29d87/spaceghost.webp 164w,\n/static/4f53b0980dc97328dd1294bbc374fd0e/85828/spaceghost.webp 305w","sizes":"(max-width: 305px) 100vw, 305px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M189%2065A519%20519%200%200065%20299c-5%2020-5%2018%203%2015%208-4%2039-10%2057-12%2011-1%2010%200%2010-11%200-29%206-103%2010-121%204-21%2016-36%2033-43%206-2%208-2%2020-2%2018%200%2024%202%2036%2013%2020%2021%2025%2046%2029%20138l2%2026h10a267%20267%200%200168%2014l-6-26A607%20607%200%2000218%2071c-10-10-15-15-18-15-2%200-6%203-11%209m47%20129c-14%208-26%2015-26%2017%200%203%2018%205%2024%202%205-3%209-10%209-18%200-5%200-5-7-1m-82%201l1%205c1%2011%209%2018%2020%2017%207-1%2013-3%2013-5s-32-19-34-17'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"}}}],"basePath":"/","tech":["TS","Nodejs","ReactIcon","Rust"],"category":"Post","slug":"/importance-of-design-system","id":"384d3fab-354b-5d56-87c6-5156b53e3e99","title":"Importance of design system","appDescription":null,"mailchimp":false,"next":[{"id":"19207872-c4ca-5f5d-8ea1-af504359cb67","slug":"/clean-architecture-common-pitfalls","secret":false,"title":"Clean Architecture - common pitfalls","author":"Luke Celitan","date":"November 1st, 2022","dateForSEO":"2022-11-01T00:00:00.000Z","timeToRead":5,"excerpt":"How To Avoid The Pitfalls Of Not Applying Clean Architecture In Software","subscription":true,"body":"var _excluded = [\"components\"];\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); }\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; }\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/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"title\": \"Clean Architecture - common pitfalls\",\n  \"author\": \"Luke Celitan\",\n  \"date\": \"2022-11-01T00:00:00.000Z\",\n  \"hero\": \"./cleancode.jpg\",\n  \"excerpt\": \"How To Avoid The Pitfalls Of Not Applying Clean Architecture In Software\",\n  \"category\": \"Post\",\n  \"tech\": [\"Rust\", \"Nodejs\"]\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  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"how-to-avoid-the-pitfalls-of-not-applying-clean-architecture-in-software\"\n  }, \"How To Avoid The Pitfalls Of Not Applying Clean Architecture In Software\"), mdx(\"p\", null, \"The software that we design and implement has to be reliable, maintainable and\\nscalable. If a software is not designed with these qualities in mind, it can\\nturn into a mess. This article discusses the importance of practicing clean code\\nand architecture in order to avoid the pitfalls of not applying them\"), mdx(\"h2\", {\n    \"id\": \"clean-code-and-clean-architecture\"\n  }, \"Clean code and clean architecture\"), mdx(\"p\", null, \"When it comes to software development, clean code and clean architecture are two\\nof the most important concepts to keep in mind. Unfortunately, they are often\\noverlooked or not applied properly, which can lead to a number of problems down\\nthe line. Clean code is all about making your code easy to read, understand, and\\nmaintain. It should be well-organized and free of any unnecessary clutter. This\\nmakes it simpler and faster to make changes when needed, and also helps prevent\\nerrors from creeping in. Meanwhile, clean architecture is all about designing\\nyour software in a way that keeps the different parts loosely coupled and easily\\ninterchangeable. This makes your code more robust and easier to scale as your\\nneeds change over time. Unfortunately, both of these concepts are often ignored\\nor misunderstood. As a result, many software projects end up being needlessly\\ncomplex and difficult to maintain. If you want to avoid these pitfalls, be sure\\nto keep clean code and clean architecture in mind from the very start of your\\nproject.\"), mdx(\"p\", null, \"When in need of good architecture patterns look out for existing platforms and\\nsolutions. Open source projects that survived the harsh reality of software\\nengineering will be a great source for anyone who is looking for good patterns.\\nWith time and experience a software engineer will be able to tell apart the\\nanti-patterns and patterns one should follow.\"), mdx(\"p\", null, mdx(\"span\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"1024px\"\n    }\n  }, \"\\n      \", mdx(\"span\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"100%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAACXBIWXMAAAsTAAALEwEAmpwYAAADXklEQVQ4y12T+VMScRTA/dPKpp8aO6xsJqVrprxmUrwQj1FBKURKCUVUBDtEnVLyyAJNRc28EFzzChi1yQiUc1nYu7dgKH7nze77vn2fd32/m0JRxH8haYqkOCGSjQRJEgxNMQyV/IlISWg0TYKgaIgk8bMeOBFB0eBf1x94nuNPYYKI7mxvbm1uRCJY3AKufr83HEZxIrq99WP802icT0TnYNiwLI2FUeuaZWnpezDgB49oFDs+PvJ6j6MRzON2rSwvCsvLVleXWZaFNCcwlArhvd4jHI/s7mwvfl+A7cHBHiRZWV4a6NdruzuHBt83SiXp6dedTnsSnOjW7XZNTpgQm9VmXRsZ/ghkZ4dao+kqLHx6j5fFy8oEI5BnJ8JlhsIO9vd+/dpfXFwA8vP4J33vu9c9OrGoDsJhGIogNigHyPPTBpPVapE+l0yYjDMzU2YQ8zQ852bNBsOgUtGs1XQ5HEnVJmXGsJDVujb80aBStclkjZKGekVLi0LRLBQKcnKewJzm52YpkjhHnvTs8x0vfJvPy81OvXihtJgvqqu5k5FxM/1GTXUl6Pfv81yuQ5ZlEt2eHhXUEwoFpyYnW17KS4r5G+vrToe9qqpCWC7Q6TQCQcnlS6nabg240RTF0DTL0AwDb05P4fYsGwwGBj+8f/f2DYKsI+s2gBvqxW2tyuqqysLCgmtX01ZXV8ANx3EMw448Hia2uMwOu10ub8rLyxEISkWiWunzZ/Vicbuq9UVTY2bm3fz8PAixu7MTCAZQFDVPT/X36cPhMIAcHAgEjEajRNLQ1dkxPfV1bGxU+UoBadtVbaWlxWUlRfNz5iOP22a19PX1VldXVFUKnU5nDI51ABrE7lC3a7o637zWqdWqnh5tk0xaWSEs4hfAzG7fusnjZT56+KC2tiY7+7FWp+VgJvangIYgSIcaDks50N/nsP/cQGyfx0flctkLeROfX9AolcIpwiUzmb5A2aFQCObPwfHM8PesWSwv5dC+zDD0obiIn5uTfTXtCkwLhofjUQDCKOrxuA8Pf4N/bGAMwwkHh/1+PwxvdGTYZDLq9b0VQoFYLDIMDYIRJ4g4EF9wbOwpHOPjCz7AkZAEEcEwv8/ndrvjWMIzoZ+BYxH/R2FiAjeCPunrjFtC/gHqYNgYh/Z68gAAAABJRU5ErkJggg==')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"picture\", {\n    parentName: \"span\"\n  }, \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/e0a2b089269e7989df033fa027c06cd9/53334/blueprint2.webp 1024w\"],\n    \"sizes\": \"(max-width: 1024px) 100vw, 1024px\",\n    \"type\": \"image/webp\"\n  }), \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/e0a2b089269e7989df033fa027c06cd9/658fc/blueprint2.png 1024w\"],\n    \"sizes\": \"(max-width: 1024px) 100vw, 1024px\",\n    \"type\": \"image/png\"\n  }), \"\\n          \", mdx(\"img\", {\n    parentName: \"picture\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"src\": \"/static/e0a2b089269e7989df033fa027c06cd9/658fc/blueprint2.png\",\n    \"alt\": \"Blueprint for clean code\",\n    \"title\": \"Blueprint for clean code\",\n    \"loading\": \"lazy\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    }\n  }), \"\\n        \"), \"\\n    \")), mdx(\"h2\", {\n    \"id\": \"what-does-clean-code-look-like\"\n  }, \"What does clean code look like?\"), mdx(\"p\", null, \"When it comes to clean code, there are a few key things to keep in mind. First\\nand foremost, clean code is readable and easy to understand. It is well-\\norganized and well-documented, so that anyone who needs to can easily find and\\nuse the information they need. Clean code is also consistent in style and\\nformatting. This makes it easier to read and understand, as well as more likely\\nto be error-free. In addition, clean code is modular \\u2013 it is organized into\\nsmall, self-contained units that can be easily reused. Finally, clean code is\\ntestable. This means that it can be verified that the code does what it is\\nsupposed to do, and that any changes made will not break existing functionality.\\nBy following these guidelines, you can ensure that your code is clean, readable,\\nand maintainable \\u2013 all of which are essential for any software project.\"), mdx(\"h2\", {\n    \"id\": \"clean-code-essentials\"\n  }, \"Clean code essentials:\"), mdx(\"h3\", {\n    \"id\": \"security\"\n  }, \"Security\"), mdx(\"p\", null, \"The best present any software architect can do for himself is to start the\\ndesign from security first perspective. Making a proper threat modeling will\\nhelp in establishing the correct patterns and services needed to complete the\\nproject.\"), mdx(\"p\", null, \"These days security first approach in my opinion is the only way to write a\\nprofessional software. Even if your code or project is squeaky clean but you did\\nnot plan or execute any kind of security strategy, you may end up loosing\\nreputation or feel wrath of your client when their application gets DDOS\\u2019ed or\\ndata breached.\"), mdx(\"p\", null, \"For more info om threat modeling and running your project in the DevSecOps\\nmethodology please checkout his \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://spaceout.pl/dev-sec-ops\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"link\")), mdx(\"h3\", {\n    \"id\": \"documentation\"\n  }, \"Documentation\"), mdx(\"p\", null, \"This sometimes can be the most overlooked part of the project, however it will\\nbe the most important thing in keeping it truly alive. Proper documentation\\nshould include\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"How to install the project\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"How to start the application in dev mode\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"How to build the project (production mode)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"What is the delivery scenario (CI/CD, Release strategy and naming conventions)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Architecture and Services used in Software (Servers, DB\\u2019s, Caches, Blobs, 3rd\\nparty)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Where to get the secret keys (Vaults, People, \\u2026)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"How to monitor the software (Logs, AppInsights, Trackers \\u2026)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"coding and contributions standards (Style, Commits, Tests, Coverage)\")), mdx(\"h2\", {\n    \"id\": \"common-pitfalls\"\n  }, \"Common pitfalls\"), mdx(\"h3\", {\n    \"id\": \"we-do-not-need-to-think-about-the-structure-or-clean-code-at-the-beginning-of-the-project\"\n  }, \"We do not need to think about the structure or clean code at the beginning of the project\"), mdx(\"p\", null, \"There are many potential problems that can arise from not having a clean\\narchitecture or clean code in your software project. Some of the more common\\nones include:\"), mdx(\"ol\", null, mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"Increased complexity and confusion: Without a well-defined architecture, your\\ncode can quickly become complex and difficult to understand. This can lead to\\nconfusion and errors when making changes or adding new features.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"decreased flexibility: A messy codebase can be very inflexible, making it\\nhard to make changes or add new functionality without breaking existing code.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"increased maintenance costs: Dirty code is often more difficult and\\ntime-consuming to maintain, leading to higher costs over time.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"decreased reliability: Code that is poorly organized and written in a hurry\\nis often less reliable and may contain more bugs. This can lead to unexpected\\nbehavior and crashes, which can be very frustrating for users.\"), mdx(\"li\", {\n    parentName: \"ol\"\n  }, \"decreased quality: In general, lower-quality code is simply not as good as\\nwell-crafted code. This can impact the overall quality of your project and\\nmake it less likely to meet users\\u2019 needs and expectations.\")), mdx(\"p\", null, \"Not following the rules outlined before will result in a typical scenario where\\nyour development velocity will drop exponentially, leaving your project manager\\nor client frustrated. In this case the development team primary goal is to\\ndeliver features, not thinking about the structure of the project, not giving\\nthe team or developer the time needed to implement proper testing or refactoring\\nwhat was already written. The usual management response to this situation is add\\nmore man power to the development team in hopes that additional team mates will\\nbring the velocity back up to where it was at the beginning of the project.\\nHowever adding more people to a late project will make it even latter.\"), mdx(\"p\", null, \"It is important to understand that the business does not understand this, nor\\ncare, however it is up the development team to establish the speed and proper\\ntimetable. The conversation about the proposed velocity with business side will\\nbe a difficult one, but it will always be a part of the development cycle.\"), mdx(\"h3\", {\n    \"id\": \"no-need-to-deploy-straight-away-we-will-think-about-the-cicd-later-on\"\n  }, \"No need to deploy straight away, we will think about the CI/CD later on\"), mdx(\"p\", null, \"Not establishing proper git flow, automatic code delivery to an online\\nenvironment, will result in a classic \\u201CIt works on my computer\\u201D - \\u201Cbut are we\\ngoing to give your computer to the client ?\\u201D Developers tend to have fast\\nmachines with loads of ram, pushing straight to online instances should be a\\nnatural step in order to catch these differences. Calls and functions that work\\nnormally on your computer can suddenly be too much for a small server or online\\ncloud instance. We also have to think about differences in Operating Systems,\\nnetwork speed and other external factors.\"), mdx(\"p\", null, \"Make yourself a favour and make sure to test major pushes straight on the online\\nenvironment.\"), mdx(\"p\", null, \"This will also help with any kind of more advanced patterns like microservices,\\none must be careful not fall into a trap of creating applications that are easy\\nto develop but hard to deploy\"), mdx(\"h3\", {\n    \"id\": \"clean-architecture-does-not-impact-on-how-the-system-works\"\n  }, \"Clean architecture does not impact on how the system works\"), mdx(\"p\", null, \"This is another misconception among developers, true software architects will\\ntake into consideration what are the business costs of running a project. Clean\\narchitecture keeps the system lean, unnecessary code or bad arch will have\\nimpact on system performance, ram and cpu usage. Upgrading servers or instances\\nso your application works as it should can result in additional frictions with\\nyour client, or can even result in client dropping the project if the estimated\\nserver costs are met with huge real costs of sustaining an application.\"), mdx(\"h2\", {\n    \"id\": \"conclusion\"\n  }, \"Conclusion\"), mdx(\"p\", null, \"If you\\u2019re not careful, it\\u2019s easy to fall into the trap of not applying clean\\narchitecture in your software development projects. However, by following the\\ntips outlined in this article, you can avoid these pitfalls and create cleaner,\\nmore maintainable code. By adhering to the principles of clean architecture, you\\ncan make your code easier to understand, reuse, and modify \\u2013 which will save you\\ntime and money in the long run.\"), mdx(\"p\", null, \"Clean arch tries to minimize costs of adding features, fixing bugs, it will\\ndirect the developer in where solution should be added, and what is the most\\nimportant it should protect the system from implementing a bug that cannot be\\nfixed.\"));\n}\n;\nMDXContent.isMDXComponent = true;","tech":["Rust","Nodejs"],"category":"Post","appDescription":null,"hero":{"full":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAQEBAQAAAAAAAAAAAAAAAAQFAgb/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAgH/2gAMAwEAAhADEAAAAdCVFNeiTjL4CkN//8QAGhAAAQUBAAAAAAAAAAAAAAAAAgABAwQRE//aAAgBAQABBQKxLxBrLbityRyB0Il3iTi2YijDf//EABYRAAMAAAAAAAAAAAAAAAAAAAABEv/aAAgBAwEBPwGWSymUz//EABYRAQEBAAAAAAAAAAAAAAAAAAAREP/aAAgBAgEBPwFcj//EAB4QAAIBAwUAAAAAAAAAAAAAAAABAhARISIxMmFx/9oACAEBAAY/AvSGmSvRKOWWawcqPo2P/8QAHRAAAgMAAgMAAAAAAAAAAAAAAREAITFBYXGBof/aAAgBAQABPyFRbb2oVx0iRxENm4QBZ0DBGMU04BBAa6i0hiid8RQBuj3uBV+5/9oADAMBAAIAAwAAABDAAHz/xAAWEQADAAAAAAAAAAAAAAAAAAAAAWH/2gAIAQMBAT8QiyLKsqz/xAAXEQEBAQEAAAAAAAAAAAAAAAAAEQFR/9oACAECAQE/ELiExHH/xAAfEAEBAAICAQUAAAAAAAAAAAABEQAhMdFBUWFxobH/2gAIAQEAAT8QkaUQC8FMFAUBIpnh4zmtuxGExFlEQept84GTW02DqE9u8GBAgV1kPIaC3HT7cTKqhq3X8x0AHy7z/9k=","aspectRatio":1,"src":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/58fe7/cleancode.jpg","srcSet":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/e0f30/cleancode.jpg 236w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/86afd/cleancode.jpg 472w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/58fe7/cleancode.jpg 944w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/0ff54/cleancode.jpg 1200w","srcWebp":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/99fbb/cleancode.webp","srcSetWebp":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/77392/cleancode.webp 236w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/1f177/cleancode.webp 472w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/99fbb/cleancode.webp 944w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/9000d/cleancode.webp 1200w","sizes":"(max-width: 944px) 100vw, 944px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M232%203c-3%203%205%207%2013%206%205%200%209%202%2012%206%203%205%204%205%201%205-2%200-2%205%200%208%202%202%202%202%201%203-2%201%202%203%204%203l3%201v-4c-3-6-1-7%204-2%204%204%207%208%204%207h-1c-1%201%2011%2013%2012%2012l-1-2-2-3c1-1%2010%208%2014%2014l4%205-3-7c-4-6-5-7-2-4h2c0-2-4-5-5-4l-2-1-8-10c-5-5-6-6-4-6l3%201-3-3c-4-5-6-6-9-6s-7-4-9-8c-3-6-25-15-28-11m150%2027a456%20456%200%2001-32%2027c6-7%203-5-4%202-8%208-10%2011-6%2012h4a127%20127%200%200021-23c1%201%201%201%200%200%200-2%203-4%205-3v-2c0%201%206-4%2011-11%2013-13%2013-14%201-2m-251%202a171%20171%200%2000-13%2024l-1%203h-3l-1%201%201%201c2-2%201%201-1%202l-2%202-1%204-1%203-2-3-1-3v3c0%204%203%2011%207%2016%204%204%2010%206%2019%206h5l2-6%204-10c4-6%204-6%200-8-3-1-5%200-4%204l-7%209%203-5c3-6%202-10-2-9-2%200-2%200%200-1l4-2c2%201%203%200%201-4l-3-7-1-4c-1%200-2-3-1-5%201-1%201-4-1-4v-2l2-8-3%203m133%2025c0%204%203%2010%205%2010l1-2v-1l2%205c0%202%204%206%207%206%202%200%200-7-3-11s-3-4-3-1c1%203-5-3-8-8l-2-2%201%204m39-1c3%206%202%209-2%207l1%203c2%205%202%2010-1%2010h-2l-3-1c-3%200-9-3-9-4l-1-1-1%204c0%204%201%204%204%205%204%201%206%203%204%203-1%200-2%201-1%202%200%201%200%202-1%201h-1l-1-2c1-2%201-2-5-2h-11c-8-2-8-2-12-1s-4%202-2%209c0%202%203%203%204%201h15c13%200%2013%200%2014-2%200-2%200-2%201%200%204%204%2014-11%2014-20%200-6-1-12-3-13-1-1-1-1-1%201m-111%205v7h21v-5h-10l-10%201v-5c-1-3-1-3-1%202M44%2057l3%203%202%204c0%203%209%2011%2012%2011%204-2%204-5%200-10l-5-4%203%204c4%204%201%204-4-1l-11-7m105%2016c-2%201-6%209-7%2015l-1%203h6c6-1%207-2%205-4s-1-3%201-10c1-2-2-5-4-4m-42%208l2%204%201%203c-1%201-1%200-2-1-2-5-4-3-5%205-1%203-1%203%201%203l1%202%202-1%202-2v2l-1%204c-1%201-2%209%200%208%201%200%201%204-1%208l-3%2012c-1%2014-2%2012-2-3v-13c-2-1-3%201-3%206v4l-1-4-1-15c0-9%200-11-1-10l-3%202c-3-1-4%201-4%2015l-2%2015-2%2016c-1%2018-3%2019-5%204%200-11-2-9-2%203%200%209%200%2010-2%2010s-3%203-1%206c1%203%203%202%203%200%200-4%202%201%203%208%201%205%201%205%201-5v-10l2%201c3%201%203%202%201%202s-3%202-1%202l1%201v2c1%200%202%204%202%2010l1%205v-3l1%203%202%2012c1%2011%202%2012%207%2010s6-1%205%207c0%204%200%206%201%205%201-2%201-2%201%200v3c-2%201%205%2011%2012%2015%201%201%201%201-1%202-2%200-3%201-3%202l-1%201c-2-2-2%206%200%2013l-1%202-2-5-1-4-9%2018c-2%205-6%2012-6%2010-1-1-20%207-22%209h-2c1-2-2-1-6%203l-7%203H0v37a372%20372%200%20002%2039c0-2%208-1%209%201%202%204%203%206%201%204-2-1-2-1-1%202l2%2012%201%2013-3-7c-4-12-7-17-9-15%200%201-1%201-1-1-1-1-1%205-1%2012%200%2017%200%2017%205%2017h4l-4-10c-4-13-4-15-3-15l1%201%204%2013%204%2011h9l8-1%202-2h6c3-1%203-1%202%201s-1%202%205%202h7v-3a1465%201465%200%20001-35l12-1c13%200%2013%200%2014%207v6l1%2014%201%2012h27l-1-5v-7l-1-19%207%205%204%204%203%202c0%204%204%204%207%202%204-3%205-2%202%201-4%205-4%2014%201%2013%201-1%202-1%202%201s1%203%2016%203c8%200%2014%200%2013-1-2%200-4-9-3-9v-3c1-2%201-2-3-2-6%201-6%200%200-1%204-1%207%200%207%201l-1%201-1%201v2c1%200%203%208%202%209l1%201h2l2%201%201-1%202-2c1-1%201%200%201%201l1%202%204-12%201-4c1-1%201-1%201%201%200%203%200%203%201%201%201-1%202-3%201-5l1-4c4-2%204%200%204%2012v12l1-11%201-11v21h21l-1-8-1-8%201%202%201%203%201-2-1-21h2v-2h-3c-1%201-1%201-1-1%200-1%201-2%203-2%203%200%203%200%203%204s0%204%202%203v-5c1-3%2011-3%2011%200l1%203c3%200%204-4%201-4-1-1%204-1%2010-1l10%201v3c0%202-1%203-5%203-6%202-9%201-9-3%200-2%200-3-1-2l-1%206c0%205%200%205-3%205-5%200-7-1-7-7%201-7-2-3-2%205l-3%2011c-1%204-1%204-2%202s-1-2-1%201c0%202%201%203%204%205l5%206%201%202c0-1%201-2%203-2s2%200%202%202v1l1-1h1l4%201h4v-11l1-11h5c4%200%206%202%202%202-2%200-2%200%200%201l1%201c-1%200-2%200-1%201l-1%202c0%201-1%201-1-1l-2-4-1%208-1%2010c0%202%200%202%2011%202%2013%200%2013%200%2012-5l3-3%202-6%201-4v-16c1-1%201-1%201%201v2l5-3%205-4%205-1c4%200%204%200%205%205a689%20689%200%20001%2024v10h29v-14l-2-19v-6h84l1-38v-37h-44l3-3c3-3%206-4%2010-4l5-1c1-1%201-1-2-1-5%200-10%202-15%205-6%204-14%206-12%203l-1-1-1%201-15%201h-15l1-10%201-18c2-11%200-19-5-24l-1-2%201-1c0-2%202-3%204-2h1l1-2v-6l-1-6c1-1-1-2-1%200v9h-3%201v-2c-2-3-6-4-6-2h-7c-6%201-6%201-6%204s0%203%201%201l2-2v2l-2%205c-1-1-2%200-2%201%200%202-1%203-2%203-2%200-2%200-1-1%202-2%204-11%202-11l-1%202h-1c0-2-5-4-10-7-8-4-8-5-5-5l4%201%208%204c5%203%206%203%2011%202l6-1-2-2c-1-2-1-2%201-2h3c1%200%205-7%205-10l5-1c6%201%206%201%209-8%203-7%203-14%201-12-2%201-3-9-3-30a386%20386%200%2000-1-17c-2%205-4%204-4-2%200-11-1-3-2%2013%200%2013-1%2018-2%2019-2%203-3%201-4-8-2-10-3-12-8-10l-3%202v-7l-1-8%204-6c6-5%206-6%203-13-8-16-18-17-95-17a531%20531%200%2001-54-1c0%201-16%203-18%202-1-1%200-1%202-1h3l-3-1-3-1h2l3-1c0-1-22-2-23-1h-3c-2-1-2-1-1-2%202-1%201-1-2-1l-3-2%201-1v-1c-1-4-4-9-4-7m92%2051c-4%202-16%2012-16%2014h2l-2%204-2%204%207-6c15-16%2021-15%2042%205%2013%2013%2017%2016%2028%2020%2010%204%2020%203%2027-4%204-4%202-4-3%200-8%206-15%205-29-1-10-5-14-8-12-8l-4-5c-3-3-5-5-4-6h-1l-1-1c2-2-13-16-17-16h-15m-3%2016c-5%203-8%206-18%2018-4%206-7%208-9%208-5%202-5%203-3%2013l3%2010%206%201c6%201%206%201%209-3l4-5a265%20265%200%20002-10l1%206c-1%202%200%203%202%200l2-1%202-1%2010-1c10%200%2011%201%2021%2013l8%209v2l1%201c4-2%209-2%2011-1s2%201-1%201c-5%200-9%202-13%207s-4%205%201%207c3%201%203%201%206-2%204-4%209-6%2012-6%204%201%204%200%201-4-2-3-3-4-2-5%201-2%203-2%202%200l2%203c3%201%203%201%203-1%200-1%200-2%201-1l1-5c0-3%200-4-1-2s-1%200-3-8c0-7-2-10-6-13l-2-3c0-2-1-2-8-3-3-1-5-2-9-7-15-18-18-20-27-20l-9%203m134%2013l-1%2023%205-12c1-4%200-12-1-12l-2-4c0-3-1-2-1%205m-70-4c-2%200-2%201-2%202%201%203-1%203-6%201-9-4-7-1%203%205%208%204%2018%205%2024%202%202-1%203-2%202-3v-1c1-2-10-6-13-4-1%201-1%200-1-1%200-2-1-2-7-1m32%2016l-4%203-2%201c-1-1-3%200-5%203l-3%204%208%202c11%203%209%204-5%201-3%200-4%201-1%202%201%201%200%201-1%201-5%200-3%201%204%203h7l1-1c2%201%202%200%204-2l1-3-1%204c0%203%200%204%201%203%202%200%203-4%202-5v-3c2-4%202-9%201-10l-1-2c0-2-1-2-6-1m11%209c-2%203-6%2016-6%2024l-1%205%202-3%202-2v3c1%202%201%202%201-3l2-4%201-2c1-4%203-2%202%203%200%203%200%204%201%203%201-2%203-15%201-13v3l-2%201c-2%201-3%200-3-1l1-2%202-1v-1l-1-3c1-2%201-2%201%200%200%203%202%203%202%200%200-4-1-5-3-3v-2c0-5%200-5-2-2m-89%2023c0%209-2%208-2-1%200-4%200-5-2-5s-2%201-2%207c0%205%200%206-2%206l-2-1%201-1%201-5-1-6c-2%200-2%201-2%207v7l-1-7-1-7v8c0%205%200%208%201%207l7-1%206%201h1v-3l-1-8-1-6v8m54%209l-6%202h-5l2%202%203%202-3-1c-3-1-3-1-2%201v1l-4-2v3l-1-1-2-1v2l4%206c1%203%201%203%202%201s1-2%202%200l1%202v-2c0-2%200-2%201-1h5l6-1c7-1%207-1%203-8-5-6-6-6-6-5m-101%2011h-1l-1%201-1%201-1-1c1-2-2-1-4%202-2%202-2%202%200%202l3%201c1%201%200%201-3%201h-5l2%201%203%201c0%201-1%202-3%201-1%200-2%200-1%201%204%203%203%204-2%204l-6-1%201-2%204-1-4-1c-5%200-7%202-7%208v4l2-2c3-4%2010-4%209%200h2c1-2%202-2%206%205%202%203%204%206%203%207h3v-2l-1-2c0-3-3-8-5-11-3-2-2-3%201-1l4%204c2%203%202%203%202%201s0-2%202-2c1%201%202%200%203-3%200-2%202-3%203-4l2-1-2-5c-2%200-2%200-1-2%202-3-5-7-7-4m111%2031c-8%206-11%209-9%209%203%200-2%202-7%203-5%200-6%201-6%203%200%204%203%204%2015%200%2010-3%2012-4%2018-9%204-3%205-6%202-6a953%20953%200%2001-13%200M15%20363c-1%202%201%204%205%204h4l14%201c2%200%203%200%204-3l2-3-9-1c-9%200-12%200-10%202%201%201%201%201-1%201s-3%200-2-1c2-1%201-2-3-2l-4%202m126%204l3%206%205-1h5l-2%202c-3%204-3%204%206%204l8%201c1%202%200%204-2%204s-1%202%201%202v1c-2%200-2%201-2%202l1%204c0%202%207%201%208-2%202-4%201-5-1-5-4%200-3-2%201-3s5-2%204-7c-1-2-1-2-2%200l-4%201h-2c-1%201-1%201-1-1s1-3%203-2c3%202%203-1%201-2l-6-2c-3%200-3%200-1-1%202%200%202-1%200-3l-3-2-1-1-1-1c-2%200-2%201%200%204%203%204%202%205-5%205h-7c-1%201-3%200-3-2h3l-1-3v-3c1-1%200-1-2-1l-3%201h-1l-1-1%202%206m113-2c-1%203-1%203%201%203s2%201%202%204v5h8v-6c0-7%200-7-3-9-6-2-7-1-8%203M15%20387c1%204%201%204%205%203%204-2%207-2%207%201l5%202h6l1-4c1-4%201-5-4-3s-5%202-8%200l-5-1h-5c-2-1-2-1-2%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"regular":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAQEBAQAAAAAAAAAAAAAAAAQFAgb/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAgH/2gAMAwEAAhADEAAAAdCVFNeiTjL4CkN//8QAGhAAAQUBAAAAAAAAAAAAAAAAAgABAwQRE//aAAgBAQABBQKxLxBrLbityRyB0Il3iTi2YijDf//EABYRAAMAAAAAAAAAAAAAAAAAAAABEv/aAAgBAwEBPwGWSymUz//EABYRAQEBAAAAAAAAAAAAAAAAAAAREP/aAAgBAgEBPwFcj//EAB4QAAIBAwUAAAAAAAAAAAAAAAABAhARISIxMmFx/9oACAEBAAY/AvSGmSvRKOWWawcqPo2P/8QAHRAAAgMAAgMAAAAAAAAAAAAAAREAITFBYXGBof/aAAgBAQABPyFRbb2oVx0iRxENm4QBZ0DBGMU04BBAa6i0hiid8RQBuj3uBV+5/9oADAMBAAIAAwAAABDAAHz/xAAWEQADAAAAAAAAAAAAAAAAAAAAAWH/2gAIAQMBAT8QiyLKsqz/xAAXEQEBAQEAAAAAAAAAAAAAAAAAEQFR/9oACAECAQE/ELiExHH/xAAfEAEBAAICAQUAAAAAAAAAAAABEQAhMdFBUWFxobH/2gAIAQEAAT8QkaUQC8FMFAUBIpnh4zmtuxGExFlEQept84GTW02DqE9u8GBAgV1kPIaC3HT7cTKqhq3X8x0AHy7z/9k=","aspectRatio":1,"src":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/1dc0b/cleancode.jpg","srcSet":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/3a5ce/cleancode.jpg 163w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/05730/cleancode.jpg 327w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/1dc0b/cleancode.jpg 653w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/f72c7/cleancode.jpg 980w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/0ff54/cleancode.jpg 1200w","srcWebp":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/0acdf/cleancode.webp","srcSetWebp":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/ac59e/cleancode.webp 163w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/7660b/cleancode.webp 327w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/0acdf/cleancode.webp 653w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/75470/cleancode.webp 980w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/9000d/cleancode.webp 1200w","sizes":"(max-width: 653px) 100vw, 653px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M232%203c-3%203%205%207%2013%206%205%200%209%202%2012%206%203%205%204%205%201%205-2%200-2%205%200%208%202%202%202%202%201%203-2%201%202%203%204%203l3%201v-4c-3-6-1-7%204-2%204%204%207%208%204%207h-1c-1%201%2011%2013%2012%2012l-1-2-2-3c1-1%2010%208%2014%2014l4%205-3-7c-4-6-5-7-2-4h2c0-2-4-5-5-4l-2-1-8-10c-5-5-6-6-4-6l3%201-3-3c-4-5-6-6-9-6s-7-4-9-8c-3-6-25-15-28-11m150%2027a456%20456%200%2001-32%2027c6-7%203-5-4%202-8%208-10%2011-6%2012h4a127%20127%200%200021-23c1%201%201%201%200%200%200-2%203-4%205-3v-2c0%201%206-4%2011-11%2013-13%2013-14%201-2m-251%202a171%20171%200%2000-13%2024l-1%203h-3l-1%201%201%201c2-2%201%201-1%202l-2%202-1%204-1%203-2-3-1-3v3c0%204%203%2011%207%2016%204%204%2010%206%2019%206h5l2-6%204-10c4-6%204-6%200-8-3-1-5%200-4%204l-7%209%203-5c3-6%202-10-2-9-2%200-2%200%200-1l4-2c2%201%203%200%201-4l-3-7-1-4c-1%200-2-3-1-5%201-1%201-4-1-4v-2l2-8-3%203m133%2025c0%204%203%2010%205%2010l1-2v-1l2%205c0%202%204%206%207%206%202%200%200-7-3-11s-3-4-3-1c1%203-5-3-8-8l-2-2%201%204m39-1c3%206%202%209-2%207l1%203c2%205%202%2010-1%2010h-2l-3-1c-3%200-9-3-9-4l-1-1-1%204c0%204%201%204%204%205%204%201%206%203%204%203-1%200-2%201-1%202%200%201%200%202-1%201h-1l-1-2c1-2%201-2-5-2h-11c-8-2-8-2-12-1s-4%202-2%209c0%202%203%203%204%201h15c13%200%2013%200%2014-2%200-2%200-2%201%200%204%204%2014-11%2014-20%200-6-1-12-3-13-1-1-1-1-1%201m-111%205v7h21v-5h-10l-10%201v-5c-1-3-1-3-1%202M44%2057l3%203%202%204c0%203%209%2011%2012%2011%204-2%204-5%200-10l-5-4%203%204c4%204%201%204-4-1l-11-7m105%2016c-2%201-6%209-7%2015l-1%203h6c6-1%207-2%205-4s-1-3%201-10c1-2-2-5-4-4m-42%208l2%204%201%203c-1%201-1%200-2-1-2-5-4-3-5%205-1%203-1%203%201%203l1%202%202-1%202-2v2l-1%204c-1%201-2%209%200%208%201%200%201%204-1%208l-3%2012c-1%2014-2%2012-2-3v-13c-2-1-3%201-3%206v4l-1-4-1-15c0-9%200-11-1-10l-3%202c-3-1-4%201-4%2015l-2%2015-2%2016c-1%2018-3%2019-5%204%200-11-2-9-2%203%200%209%200%2010-2%2010s-3%203-1%206c1%203%203%202%203%200%200-4%202%201%203%208%201%205%201%205%201-5v-10l2%201c3%201%203%202%201%202s-3%202-1%202l1%201v2c1%200%202%204%202%2010l1%205v-3l1%203%202%2012c1%2011%202%2012%207%2010s6-1%205%207c0%204%200%206%201%205%201-2%201-2%201%200v3c-2%201%205%2011%2012%2015%201%201%201%201-1%202-2%200-3%201-3%202l-1%201c-2-2-2%206%200%2013l-1%202-2-5-1-4-9%2018c-2%205-6%2012-6%2010-1-1-20%207-22%209h-2c1-2-2-1-6%203l-7%203H0v37a372%20372%200%20002%2039c0-2%208-1%209%201%202%204%203%206%201%204-2-1-2-1-1%202l2%2012%201%2013-3-7c-4-12-7-17-9-15%200%201-1%201-1-1-1-1-1%205-1%2012%200%2017%200%2017%205%2017h4l-4-10c-4-13-4-15-3-15l1%201%204%2013%204%2011h9l8-1%202-2h6c3-1%203-1%202%201s-1%202%205%202h7v-3a1465%201465%200%20001-35l12-1c13%200%2013%200%2014%207v6l1%2014%201%2012h27l-1-5v-7l-1-19%207%205%204%204%203%202c0%204%204%204%207%202%204-3%205-2%202%201-4%205-4%2014%201%2013%201-1%202-1%202%201s1%203%2016%203c8%200%2014%200%2013-1-2%200-4-9-3-9v-3c1-2%201-2-3-2-6%201-6%200%200-1%204-1%207%200%207%201l-1%201-1%201v2c1%200%203%208%202%209l1%201h2l2%201%201-1%202-2c1-1%201%200%201%201l1%202%204-12%201-4c1-1%201-1%201%201%200%203%200%203%201%201%201-1%202-3%201-5l1-4c4-2%204%200%204%2012v12l1-11%201-11v21h21l-1-8-1-8%201%202%201%203%201-2-1-21h2v-2h-3c-1%201-1%201-1-1%200-1%201-2%203-2%203%200%203%200%203%204s0%204%202%203v-5c1-3%2011-3%2011%200l1%203c3%200%204-4%201-4-1-1%204-1%2010-1l10%201v3c0%202-1%203-5%203-6%202-9%201-9-3%200-2%200-3-1-2l-1%206c0%205%200%205-3%205-5%200-7-1-7-7%201-7-2-3-2%205l-3%2011c-1%204-1%204-2%202s-1-2-1%201c0%202%201%203%204%205l5%206%201%202c0-1%201-2%203-2s2%200%202%202v1l1-1h1l4%201h4v-11l1-11h5c4%200%206%202%202%202-2%200-2%200%200%201l1%201c-1%200-2%200-1%201l-1%202c0%201-1%201-1-1l-2-4-1%208-1%2010c0%202%200%202%2011%202%2013%200%2013%200%2012-5l3-3%202-6%201-4v-16c1-1%201-1%201%201v2l5-3%205-4%205-1c4%200%204%200%205%205a689%20689%200%20001%2024v10h29v-14l-2-19v-6h84l1-38v-37h-44l3-3c3-3%206-4%2010-4l5-1c1-1%201-1-2-1-5%200-10%202-15%205-6%204-14%206-12%203l-1-1-1%201-15%201h-15l1-10%201-18c2-11%200-19-5-24l-1-2%201-1c0-2%202-3%204-2h1l1-2v-6l-1-6c1-1-1-2-1%200v9h-3%201v-2c-2-3-6-4-6-2h-7c-6%201-6%201-6%204s0%203%201%201l2-2v2l-2%205c-1-1-2%200-2%201%200%202-1%203-2%203-2%200-2%200-1-1%202-2%204-11%202-11l-1%202h-1c0-2-5-4-10-7-8-4-8-5-5-5l4%201%208%204c5%203%206%203%2011%202l6-1-2-2c-1-2-1-2%201-2h3c1%200%205-7%205-10l5-1c6%201%206%201%209-8%203-7%203-14%201-12-2%201-3-9-3-30a386%20386%200%2000-1-17c-2%205-4%204-4-2%200-11-1-3-2%2013%200%2013-1%2018-2%2019-2%203-3%201-4-8-2-10-3-12-8-10l-3%202v-7l-1-8%204-6c6-5%206-6%203-13-8-16-18-17-95-17a531%20531%200%2001-54-1c0%201-16%203-18%202-1-1%200-1%202-1h3l-3-1-3-1h2l3-1c0-1-22-2-23-1h-3c-2-1-2-1-1-2%202-1%201-1-2-1l-3-2%201-1v-1c-1-4-4-9-4-7m92%2051c-4%202-16%2012-16%2014h2l-2%204-2%204%207-6c15-16%2021-15%2042%205%2013%2013%2017%2016%2028%2020%2010%204%2020%203%2027-4%204-4%202-4-3%200-8%206-15%205-29-1-10-5-14-8-12-8l-4-5c-3-3-5-5-4-6h-1l-1-1c2-2-13-16-17-16h-15m-3%2016c-5%203-8%206-18%2018-4%206-7%208-9%208-5%202-5%203-3%2013l3%2010%206%201c6%201%206%201%209-3l4-5a265%20265%200%20002-10l1%206c-1%202%200%203%202%200l2-1%202-1%2010-1c10%200%2011%201%2021%2013l8%209v2l1%201c4-2%209-2%2011-1s2%201-1%201c-5%200-9%202-13%207s-4%205%201%207c3%201%203%201%206-2%204-4%209-6%2012-6%204%201%204%200%201-4-2-3-3-4-2-5%201-2%203-2%202%200l2%203c3%201%203%201%203-1%200-1%200-2%201-1l1-5c0-3%200-4-1-2s-1%200-3-8c0-7-2-10-6-13l-2-3c0-2-1-2-8-3-3-1-5-2-9-7-15-18-18-20-27-20l-9%203m134%2013l-1%2023%205-12c1-4%200-12-1-12l-2-4c0-3-1-2-1%205m-70-4c-2%200-2%201-2%202%201%203-1%203-6%201-9-4-7-1%203%205%208%204%2018%205%2024%202%202-1%203-2%202-3v-1c1-2-10-6-13-4-1%201-1%200-1-1%200-2-1-2-7-1m32%2016l-4%203-2%201c-1-1-3%200-5%203l-3%204%208%202c11%203%209%204-5%201-3%200-4%201-1%202%201%201%200%201-1%201-5%200-3%201%204%203h7l1-1c2%201%202%200%204-2l1-3-1%204c0%203%200%204%201%203%202%200%203-4%202-5v-3c2-4%202-9%201-10l-1-2c0-2-1-2-6-1m11%209c-2%203-6%2016-6%2024l-1%205%202-3%202-2v3c1%202%201%202%201-3l2-4%201-2c1-4%203-2%202%203%200%203%200%204%201%203%201-2%203-15%201-13v3l-2%201c-2%201-3%200-3-1l1-2%202-1v-1l-1-3c1-2%201-2%201%200%200%203%202%203%202%200%200-4-1-5-3-3v-2c0-5%200-5-2-2m-89%2023c0%209-2%208-2-1%200-4%200-5-2-5s-2%201-2%207c0%205%200%206-2%206l-2-1%201-1%201-5-1-6c-2%200-2%201-2%207v7l-1-7-1-7v8c0%205%200%208%201%207l7-1%206%201h1v-3l-1-8-1-6v8m54%209l-6%202h-5l2%202%203%202-3-1c-3-1-3-1-2%201v1l-4-2v3l-1-1-2-1v2l4%206c1%203%201%203%202%201s1-2%202%200l1%202v-2c0-2%200-2%201-1h5l6-1c7-1%207-1%203-8-5-6-6-6-6-5m-101%2011h-1l-1%201-1%201-1-1c1-2-2-1-4%202-2%202-2%202%200%202l3%201c1%201%200%201-3%201h-5l2%201%203%201c0%201-1%202-3%201-1%200-2%200-1%201%204%203%203%204-2%204l-6-1%201-2%204-1-4-1c-5%200-7%202-7%208v4l2-2c3-4%2010-4%209%200h2c1-2%202-2%206%205%202%203%204%206%203%207h3v-2l-1-2c0-3-3-8-5-11-3-2-2-3%201-1l4%204c2%203%202%203%202%201s0-2%202-2c1%201%202%200%203-3%200-2%202-3%203-4l2-1-2-5c-2%200-2%200-1-2%202-3-5-7-7-4m111%2031c-8%206-11%209-9%209%203%200-2%202-7%203-5%200-6%201-6%203%200%204%203%204%2015%200%2010-3%2012-4%2018-9%204-3%205-6%202-6a953%20953%200%2001-13%200M15%20363c-1%202%201%204%205%204h4l14%201c2%200%203%200%204-3l2-3-9-1c-9%200-12%200-10%202%201%201%201%201-1%201s-3%200-2-1c2-1%201-2-3-2l-4%202m126%204l3%206%205-1h5l-2%202c-3%204-3%204%206%204l8%201c1%202%200%204-2%204s-1%202%201%202v1c-2%200-2%201-2%202l1%204c0%202%207%201%208-2%202-4%201-5-1-5-4%200-3-2%201-3s5-2%204-7c-1-2-1-2-2%200l-4%201h-2c-1%201-1%201-1-1s1-3%203-2c3%202%203-1%201-2l-6-2c-3%200-3%200-1-1%202%200%202-1%200-3l-3-2-1-1-1-1c-2%200-2%201%200%204%203%204%202%205-5%205h-7c-1%201-3%200-3-2h3l-1-3v-3c1-1%200-1-2-1l-3%201h-1l-1-1%202%206m113-2c-1%203-1%203%201%203s2%201%202%204v5h8v-6c0-7%200-7-3-9-6-2-7-1-8%203M15%20387c1%204%201%204%205%203%204-2%207-2%207%201l5%202h6l1-4c1-4%201-5-4-3s-5%202-8%200l-5-1h-5c-2-1-2-1-2%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"narrow":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAQEBAQAAAAAAAAAAAAAAAAQFAgb/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAgH/2gAMAwEAAhADEAAAAdCVFNeiTjL4CkN//8QAGhAAAQUBAAAAAAAAAAAAAAAAAgABAwQRE//aAAgBAQABBQKxLxBrLbityRyB0Il3iTi2YijDf//EABYRAAMAAAAAAAAAAAAAAAAAAAABEv/aAAgBAwEBPwGWSymUz//EABYRAQEBAAAAAAAAAAAAAAAAAAAREP/aAAgBAgEBPwFcj//EAB4QAAIBAwUAAAAAAAAAAAAAAAABAhARISIxMmFx/9oACAEBAAY/AvSGmSvRKOWWawcqPo2P/8QAHRAAAgMAAgMAAAAAAAAAAAAAAREAITFBYXGBof/aAAgBAQABPyFRbb2oVx0iRxENm4QBZ0DBGMU04BBAa6i0hiid8RQBuj3uBV+5/9oADAMBAAIAAwAAABDAAHz/xAAWEQADAAAAAAAAAAAAAAAAAAAAAWH/2gAIAQMBAT8QiyLKsqz/xAAXEQEBAQEAAAAAAAAAAAAAAAAAEQFR/9oACAECAQE/ELiExHH/xAAfEAEBAAICAQUAAAAAAAAAAAABEQAhMdFBUWFxobH/2gAIAQEAAT8QkaUQC8FMFAUBIpnh4zmtuxGExFlEQept84GTW02DqE9u8GBAgV1kPIaC3HT7cTKqhq3X8x0AHy7z/9k=","aspectRatio":1,"src":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/eaa58/cleancode.jpg","srcSet":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/5a3ee/cleancode.jpg 114w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/41f8f/cleancode.jpg 229w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/eaa58/cleancode.jpg 457w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/c309b/cleancode.jpg 686w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/e3008/cleancode.jpg 914w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/0ff54/cleancode.jpg 1200w","srcWebp":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/15384/cleancode.webp","srcSetWebp":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/31fce/cleancode.webp 114w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/e3e25/cleancode.webp 229w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/15384/cleancode.webp 457w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/0258d/cleancode.webp 686w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/64ea2/cleancode.webp 914w,\n/static/7d4a98470ec7e64e3cbb19681c7c7fab/9000d/cleancode.webp 1200w","sizes":"(max-width: 457px) 100vw, 457px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M232%203c-3%203%205%207%2013%206%205%200%209%202%2012%206%203%205%204%205%201%205-2%200-2%205%200%208%202%202%202%202%201%203-2%201%202%203%204%203l3%201v-4c-3-6-1-7%204-2%204%204%207%208%204%207h-1c-1%201%2011%2013%2012%2012l-1-2-2-3c1-1%2010%208%2014%2014l4%205-3-7c-4-6-5-7-2-4h2c0-2-4-5-5-4l-2-1-8-10c-5-5-6-6-4-6l3%201-3-3c-4-5-6-6-9-6s-7-4-9-8c-3-6-25-15-28-11m150%2027a456%20456%200%2001-32%2027c6-7%203-5-4%202-8%208-10%2011-6%2012h4a127%20127%200%200021-23c1%201%201%201%200%200%200-2%203-4%205-3v-2c0%201%206-4%2011-11%2013-13%2013-14%201-2m-251%202a171%20171%200%2000-13%2024l-1%203h-3l-1%201%201%201c2-2%201%201-1%202l-2%202-1%204-1%203-2-3-1-3v3c0%204%203%2011%207%2016%204%204%2010%206%2019%206h5l2-6%204-10c4-6%204-6%200-8-3-1-5%200-4%204l-7%209%203-5c3-6%202-10-2-9-2%200-2%200%200-1l4-2c2%201%203%200%201-4l-3-7-1-4c-1%200-2-3-1-5%201-1%201-4-1-4v-2l2-8-3%203m133%2025c0%204%203%2010%205%2010l1-2v-1l2%205c0%202%204%206%207%206%202%200%200-7-3-11s-3-4-3-1c1%203-5-3-8-8l-2-2%201%204m39-1c3%206%202%209-2%207l1%203c2%205%202%2010-1%2010h-2l-3-1c-3%200-9-3-9-4l-1-1-1%204c0%204%201%204%204%205%204%201%206%203%204%203-1%200-2%201-1%202%200%201%200%202-1%201h-1l-1-2c1-2%201-2-5-2h-11c-8-2-8-2-12-1s-4%202-2%209c0%202%203%203%204%201h15c13%200%2013%200%2014-2%200-2%200-2%201%200%204%204%2014-11%2014-20%200-6-1-12-3-13-1-1-1-1-1%201m-111%205v7h21v-5h-10l-10%201v-5c-1-3-1-3-1%202M44%2057l3%203%202%204c0%203%209%2011%2012%2011%204-2%204-5%200-10l-5-4%203%204c4%204%201%204-4-1l-11-7m105%2016c-2%201-6%209-7%2015l-1%203h6c6-1%207-2%205-4s-1-3%201-10c1-2-2-5-4-4m-42%208l2%204%201%203c-1%201-1%200-2-1-2-5-4-3-5%205-1%203-1%203%201%203l1%202%202-1%202-2v2l-1%204c-1%201-2%209%200%208%201%200%201%204-1%208l-3%2012c-1%2014-2%2012-2-3v-13c-2-1-3%201-3%206v4l-1-4-1-15c0-9%200-11-1-10l-3%202c-3-1-4%201-4%2015l-2%2015-2%2016c-1%2018-3%2019-5%204%200-11-2-9-2%203%200%209%200%2010-2%2010s-3%203-1%206c1%203%203%202%203%200%200-4%202%201%203%208%201%205%201%205%201-5v-10l2%201c3%201%203%202%201%202s-3%202-1%202l1%201v2c1%200%202%204%202%2010l1%205v-3l1%203%202%2012c1%2011%202%2012%207%2010s6-1%205%207c0%204%200%206%201%205%201-2%201-2%201%200v3c-2%201%205%2011%2012%2015%201%201%201%201-1%202-2%200-3%201-3%202l-1%201c-2-2-2%206%200%2013l-1%202-2-5-1-4-9%2018c-2%205-6%2012-6%2010-1-1-20%207-22%209h-2c1-2-2-1-6%203l-7%203H0v37a372%20372%200%20002%2039c0-2%208-1%209%201%202%204%203%206%201%204-2-1-2-1-1%202l2%2012%201%2013-3-7c-4-12-7-17-9-15%200%201-1%201-1-1-1-1-1%205-1%2012%200%2017%200%2017%205%2017h4l-4-10c-4-13-4-15-3-15l1%201%204%2013%204%2011h9l8-1%202-2h6c3-1%203-1%202%201s-1%202%205%202h7v-3a1465%201465%200%20001-35l12-1c13%200%2013%200%2014%207v6l1%2014%201%2012h27l-1-5v-7l-1-19%207%205%204%204%203%202c0%204%204%204%207%202%204-3%205-2%202%201-4%205-4%2014%201%2013%201-1%202-1%202%201s1%203%2016%203c8%200%2014%200%2013-1-2%200-4-9-3-9v-3c1-2%201-2-3-2-6%201-6%200%200-1%204-1%207%200%207%201l-1%201-1%201v2c1%200%203%208%202%209l1%201h2l2%201%201-1%202-2c1-1%201%200%201%201l1%202%204-12%201-4c1-1%201-1%201%201%200%203%200%203%201%201%201-1%202-3%201-5l1-4c4-2%204%200%204%2012v12l1-11%201-11v21h21l-1-8-1-8%201%202%201%203%201-2-1-21h2v-2h-3c-1%201-1%201-1-1%200-1%201-2%203-2%203%200%203%200%203%204s0%204%202%203v-5c1-3%2011-3%2011%200l1%203c3%200%204-4%201-4-1-1%204-1%2010-1l10%201v3c0%202-1%203-5%203-6%202-9%201-9-3%200-2%200-3-1-2l-1%206c0%205%200%205-3%205-5%200-7-1-7-7%201-7-2-3-2%205l-3%2011c-1%204-1%204-2%202s-1-2-1%201c0%202%201%203%204%205l5%206%201%202c0-1%201-2%203-2s2%200%202%202v1l1-1h1l4%201h4v-11l1-11h5c4%200%206%202%202%202-2%200-2%200%200%201l1%201c-1%200-2%200-1%201l-1%202c0%201-1%201-1-1l-2-4-1%208-1%2010c0%202%200%202%2011%202%2013%200%2013%200%2012-5l3-3%202-6%201-4v-16c1-1%201-1%201%201v2l5-3%205-4%205-1c4%200%204%200%205%205a689%20689%200%20001%2024v10h29v-14l-2-19v-6h84l1-38v-37h-44l3-3c3-3%206-4%2010-4l5-1c1-1%201-1-2-1-5%200-10%202-15%205-6%204-14%206-12%203l-1-1-1%201-15%201h-15l1-10%201-18c2-11%200-19-5-24l-1-2%201-1c0-2%202-3%204-2h1l1-2v-6l-1-6c1-1-1-2-1%200v9h-3%201v-2c-2-3-6-4-6-2h-7c-6%201-6%201-6%204s0%203%201%201l2-2v2l-2%205c-1-1-2%200-2%201%200%202-1%203-2%203-2%200-2%200-1-1%202-2%204-11%202-11l-1%202h-1c0-2-5-4-10-7-8-4-8-5-5-5l4%201%208%204c5%203%206%203%2011%202l6-1-2-2c-1-2-1-2%201-2h3c1%200%205-7%205-10l5-1c6%201%206%201%209-8%203-7%203-14%201-12-2%201-3-9-3-30a386%20386%200%2000-1-17c-2%205-4%204-4-2%200-11-1-3-2%2013%200%2013-1%2018-2%2019-2%203-3%201-4-8-2-10-3-12-8-10l-3%202v-7l-1-8%204-6c6-5%206-6%203-13-8-16-18-17-95-17a531%20531%200%2001-54-1c0%201-16%203-18%202-1-1%200-1%202-1h3l-3-1-3-1h2l3-1c0-1-22-2-23-1h-3c-2-1-2-1-1-2%202-1%201-1-2-1l-3-2%201-1v-1c-1-4-4-9-4-7m92%2051c-4%202-16%2012-16%2014h2l-2%204-2%204%207-6c15-16%2021-15%2042%205%2013%2013%2017%2016%2028%2020%2010%204%2020%203%2027-4%204-4%202-4-3%200-8%206-15%205-29-1-10-5-14-8-12-8l-4-5c-3-3-5-5-4-6h-1l-1-1c2-2-13-16-17-16h-15m-3%2016c-5%203-8%206-18%2018-4%206-7%208-9%208-5%202-5%203-3%2013l3%2010%206%201c6%201%206%201%209-3l4-5a265%20265%200%20002-10l1%206c-1%202%200%203%202%200l2-1%202-1%2010-1c10%200%2011%201%2021%2013l8%209v2l1%201c4-2%209-2%2011-1s2%201-1%201c-5%200-9%202-13%207s-4%205%201%207c3%201%203%201%206-2%204-4%209-6%2012-6%204%201%204%200%201-4-2-3-3-4-2-5%201-2%203-2%202%200l2%203c3%201%203%201%203-1%200-1%200-2%201-1l1-5c0-3%200-4-1-2s-1%200-3-8c0-7-2-10-6-13l-2-3c0-2-1-2-8-3-3-1-5-2-9-7-15-18-18-20-27-20l-9%203m134%2013l-1%2023%205-12c1-4%200-12-1-12l-2-4c0-3-1-2-1%205m-70-4c-2%200-2%201-2%202%201%203-1%203-6%201-9-4-7-1%203%205%208%204%2018%205%2024%202%202-1%203-2%202-3v-1c1-2-10-6-13-4-1%201-1%200-1-1%200-2-1-2-7-1m32%2016l-4%203-2%201c-1-1-3%200-5%203l-3%204%208%202c11%203%209%204-5%201-3%200-4%201-1%202%201%201%200%201-1%201-5%200-3%201%204%203h7l1-1c2%201%202%200%204-2l1-3-1%204c0%203%200%204%201%203%202%200%203-4%202-5v-3c2-4%202-9%201-10l-1-2c0-2-1-2-6-1m11%209c-2%203-6%2016-6%2024l-1%205%202-3%202-2v3c1%202%201%202%201-3l2-4%201-2c1-4%203-2%202%203%200%203%200%204%201%203%201-2%203-15%201-13v3l-2%201c-2%201-3%200-3-1l1-2%202-1v-1l-1-3c1-2%201-2%201%200%200%203%202%203%202%200%200-4-1-5-3-3v-2c0-5%200-5-2-2m-89%2023c0%209-2%208-2-1%200-4%200-5-2-5s-2%201-2%207c0%205%200%206-2%206l-2-1%201-1%201-5-1-6c-2%200-2%201-2%207v7l-1-7-1-7v8c0%205%200%208%201%207l7-1%206%201h1v-3l-1-8-1-6v8m54%209l-6%202h-5l2%202%203%202-3-1c-3-1-3-1-2%201v1l-4-2v3l-1-1-2-1v2l4%206c1%203%201%203%202%201s1-2%202%200l1%202v-2c0-2%200-2%201-1h5l6-1c7-1%207-1%203-8-5-6-6-6-6-5m-101%2011h-1l-1%201-1%201-1-1c1-2-2-1-4%202-2%202-2%202%200%202l3%201c1%201%200%201-3%201h-5l2%201%203%201c0%201-1%202-3%201-1%200-2%200-1%201%204%203%203%204-2%204l-6-1%201-2%204-1-4-1c-5%200-7%202-7%208v4l2-2c3-4%2010-4%209%200h2c1-2%202-2%206%205%202%203%204%206%203%207h3v-2l-1-2c0-3-3-8-5-11-3-2-2-3%201-1l4%204c2%203%202%203%202%201s0-2%202-2c1%201%202%200%203-3%200-2%202-3%203-4l2-1-2-5c-2%200-2%200-1-2%202-3-5-7-7-4m111%2031c-8%206-11%209-9%209%203%200-2%202-7%203-5%200-6%201-6%203%200%204%203%204%2015%200%2010-3%2012-4%2018-9%204-3%205-6%202-6a953%20953%200%2001-13%200M15%20363c-1%202%201%204%205%204h4l14%201c2%200%203%200%204-3l2-3-9-1c-9%200-12%200-10%202%201%201%201%201-1%201s-3%200-2-1c2-1%201-2-3-2l-4%202m126%204l3%206%205-1h5l-2%202c-3%204-3%204%206%204l8%201c1%202%200%204-2%204s-1%202%201%202v1c-2%200-2%201-2%202l1%204c0%202%207%201%208-2%202-4%201-5-1-5-4%200-3-2%201-3s5-2%204-7c-1-2-1-2-2%200l-4%201h-2c-1%201-1%201-1-1s1-3%203-2c3%202%203-1%201-2l-6-2c-3%200-3%200-1-1%202%200%202-1%200-3l-3-2-1-1-1-1c-2%200-2%201%200%204%203%204%202%205-5%205h-7c-1%201-3%200-3-2h3l-1-3v-3c1-1%200-1-2-1l-3%201h-1l-1-1%202%206m113-2c-1%203-1%203%201%203s2%201%202%204v5h8v-6c0-7%200-7-3-9-6-2-7-1-8%203M15%20387c1%204%201%204%205%203%204-2%207-2%207%201l5%202h6l1-4c1-4%201-5-4-3s-5%202-8%200l-5-1h-5c-2-1-2-1-2%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"seo":{"src":"/static/7d4a98470ec7e64e3cbb19681c7c7fab/0ff54/cleancode.jpg"}}},{"id":"fc731126-1fb1-5bd0-9b45-e17990fd8299","slug":"/s3-manager","secret":false,"title":"S3 Manager","author":"Luke Celitan","date":"April 27th, 2022","dateForSEO":"2022-04-27T00:00:00.000Z","timeToRead":2,"excerpt":"GUI for managing and browsking S3 buckets","subscription":true,"body":"var _excluded = [\"components\"];\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); }\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; }\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/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"title\": \"S3 Manager\",\n  \"excerpt\": \"GUI for managing and browsking S3 buckets\",\n  \"date\": \"2022-04-27T00:00:00.000Z\",\n  \"hero\": \"s3ManagerCover.png\",\n  \"author\": \"Luke Celitan\",\n  \"appDescription\": \"AWS S3 GUI\",\n  \"category\": \"Project\",\n  \"tech\": [\"Svelte\", \"Rust\", \"TS\", \"Tailwind\"]\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  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"s3-manager\"\n  }, \"S3 Manager\"), mdx(\"p\", null, \"Hi everyone, I\\u2019m excited to share with you a project I\\u2019ve been working on for\\nthe last few months. It\\u2019s a graphical user interface to aws s3 service, which\\nlets you easily manage your buckets, files and permissions. I have wrote it\\nusing Rust lang in the backend and svelte for a frontend, and I want to tell you\\nhow fun it was working with rust backend.\"), mdx(\"p\", null, \"Rust is a systems programming language that focuses on performance, reliability\\nand concurrency. It has a powerful type system, memory safety guarantees and a\\nrich ecosystem of libraries and tools. Rust also has some unique features that\\nmake it a great choice for backend development, such as:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Ownership and borrowing: Rust uses these concepts to manage memory and\\nresources without a garbage collector, avoiding runtime overhead and memory\\nleaks.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Traits and generics: Rust allows you to define abstract interfaces and\\nimplement them for different types, enabling code reuse and polymorphism.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Async/await: Rust supports asynchronous programming with a built-in syntax\\nthat makes it easy to write concurrent code that is readable and efficient.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Error handling: Rust has a robust and expressive way of dealing with errors,\\nusing the Result and Option types and the ? operator.\")), mdx(\"p\", null, \"Using Rust for the backend of my GUI project was a rewarding experience. I\\nlearned a lot about the language and its features, and I enjoyed the challenge\\nof writing fast and reliable code. I also used some awesome crates that made my\\nlife easier, such as:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Tokio: A runtime for writing async applications with Rust.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Rusoto: A AWS SDK for Rust.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Warp: A web framework that provides a simple and elegant way to create RESTful\\nAPIs.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Sveltekit: A framework for building web applications with Svelte, a reactive\\nfrontend framework that compiles to vanilla JavaScript.\")), mdx(\"p\", null, \"The result is a GUI application that is easy to use, responsive and\\ncross-platform. You can download it from my GitHub repository (link below) and\\ntry it out yourself. I hope you find it useful and fun to use. If you have any\\nfeedback or suggestions, please let me know in the comments. Thanks for reading!\"), mdx(\"h2\", {\n    \"id\": \"lightmode-ui-overview\"\n  }, \"LightMode UI overview\"), mdx(\"p\", null, mdx(\"span\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"2840px\"\n    }\n  }, \"\\n      \", mdx(\"span\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"64.84%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAABYlAAAWJQFJUiTwAAAC0ElEQVQ4y32Ry09UdxTHr7ow7UZd+QeYCpi47MqNCxc2bdOkaqJR4yMx7nVlF6YbawGl2AoYoqD4QIQ4ghCh0lCVRwpKhZkLjKMzMA9mmAfDPO69c2fu8OmBCz5qdPHJ99zvOb+Tc85VXnx9E+eRm/gu3sHT95JxNcz4vzM4xwOoriBTkyGczz24R14zrfoJTPoJOX2EnruZHXUTGJxgpteFu3UU11kHyj9lTfjbX2KQQyuAsQgiH2CKl+djf5Wl3OSNJ7hONKI8Kb3OdKdKbuE1+sNfMLrLMXsq3vG4ivzfNeT7ajD7LmP+eWElV2nTdY7cyG3Uqg7U4w0oji23mGqfQEu8kobn0Xt+Q+++iLZKTzVa72Wbx3+IV/VeTuKucrThZtTKB6jHpGHjZgfjbS70xSyGmUcvgmbZq5uySm6JxRX4H0uetbgcqxXS8Og1lEsbunjRMoVZSGDMulkIe9GiPqzULMX0Z8iEKSb9FONeCnoU168OnIevolRu6GC09RWF4jz6rIfk3IzcUx5ko1iZuU8j+UIySCHuI2/EcZ5zMHZAJjy1/hEjbV4ZOo0W8ZKKBdGT0lCLY32SmJDASoex5gMUcvOM/SyD7bmOcnxdL8/uTUvDJIbfSVbWNqMeivM+igmvTfzNO1Y9yVtSZ4UnKGSCjP7UyfDuZpSDax7xtC0IC/Knq79Hr9uLUbdHEK0VrT+A0XgMo+GozZV9tr9cJ/GlbzHazzB8uof+HQ9Rdq1toa/NIxPqGLEAZjqKsRCRO87ZpOQ7HRdiNuLZRDBSokmpySUYODnEX18Noexcd5uOJie6HDnyxk0kGCQdi8ot596SFTIrZOMrcTxGJhIiE5ohk4rQ+6NK65cemXDjXb7b0sQP2+v5pux3dpfVsL/kPoe2dnGopHNZT2zt5mzpU86XDFJXNkDdtn5qRWtL+qkvfUbDtkEaNrlp/MLPf3bLcqcXG4ABAAAAAElFTkSuQmCC')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"picture\", {\n    parentName: \"span\"\n  }, \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/73c74f337af4d7a25cd2f343437b5458/a3bc4/lightFiles.webp 2500w\", \"/static/73c74f337af4d7a25cd2f343437b5458/46158/lightFiles.webp 2840w\"],\n    \"sizes\": \"(max-width: 2840px) 100vw, 2840px\",\n    \"type\": \"image/webp\"\n  }), \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/73c74f337af4d7a25cd2f343437b5458/412e4/lightFiles.png 2500w\", \"/static/73c74f337af4d7a25cd2f343437b5458/40555/lightFiles.png 2840w\"],\n    \"sizes\": \"(max-width: 2840px) 100vw, 2840px\",\n    \"type\": \"image/png\"\n  }), \"\\n          \", mdx(\"img\", {\n    parentName: \"picture\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"src\": \"/static/73c74f337af4d7a25cd2f343437b5458/40555/lightFiles.png\",\n    \"alt\": \"LightMode\",\n    \"title\": \"LightMode\",\n    \"loading\": \"lazy\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    }\n  }), \"\\n        \"), \"\\n    \"), \" \", mdx(\"span\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"2798px\"\n    }\n  }, \"\\n      \", mdx(\"span\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"66.19999999999999%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAABYlAAAWJQFJUiTwAAADr0lEQVQ4yzWTfUzUBRjH759K22rk2txaL1pKwHnUMDzerixIk04FTSTjLd6EoPHq1CBS0CsV5C2naagh4AEmgZDdWAYIp0PeOTi4k5c7uBIQKOLl7jj69OuPnu277/Zsz2ff59keUbvrNTSfV2H4rhp9UzcajQlNl4G+HiNajZHB/jEGukbQdwwxqhllTGtgXDOCqUOHqXOQ8VYthsZ+dDXd9J2oRdQmKcWk6mcRM3MLZhbMFhYtFpb/sWFdWcaybMVsNWNetgiyYrEtY7bZBP3vNpZYYfSXTjTRVxA1byrBqBpi6fEAKONYqUzCUhqL9Xo8VCZAzWGo+xJ+zhA8HW4mCRL6VYJXJQsz0dB5jdGbAjD0IqKf7JUYVHpG9G0URO6i6UwMv/96Cf0NBdXHIyjNjKUoLQJF5E6+PxpGhSKBnPgossKDOR0XzbGg/RTnZzN2oxVNyCVEP7xwi4e1wi0mRriefRz1qVC6K8/RUnSMc6czcXTZwkaxMxJXDza+sRl5YBTbAjORvBPHlm2JOEojiErNw1TeQm+wACxcc5uBujG0A13UHApgMMuJtoR1mAqDuFVwDKnUFWexAzJPT+S+20lIPERg+Ane909BvjcVD1kYyWm5jCvV9BwQVj67po7B2yYeah9wYZ8rBoUL0ydfYSLdicbcL3hdLMHBfqMAluLi7MQnQZ8SHHMGb79k5AFH8HovmuT0fMbK1HQFCAlTnlahVU2i7X/AkXcdUIa4oI53ZOjom7QXJLLZ3RN3NzekguztN7DTbz/BB7Px8U9lu38Sbm8LCdNzMRTfo233ZUSRT9yhR/WY9va7vLR6LeFSMRmyZ2iKceD+2Wiksq14yWQ4OYlZ/+p65LsD+Cg4k60fJuHlHYW9g5y41G8YudzKfZ8SRCFP1tNe+4jh0QFOpqRR9PVXKGL8yQn1oK1MQV5+AXnZp4j/LIbAgH1kZBzn2/OVnMm5SlLKaXx3RKPIuYj+fDtNblWIdjz1I3erR4AFZh+NMTNhxLY0zZ+jfUxq7qFWN9LQUE9nZyvNLQ309naxODfNzOQ41sVZ5mcn+Wtxkr6cfupfa0bks6ocVbmOhSkjU0YTM39MMT05x2zFBRpi97DOXc6Gtz5gk2wP9m67SMsq5L8y/23GOi981LyV5RUzbYeHqVytE4B2Svw2VLBXUoZcXIyvuISPHe8Q9nI9B56vwtuuBvmztRx87jdS7NTkvthBsUTPFbGOq046SgRXSnRcWzvM5VVG/gXyNs+3VamzyAAAAABJRU5ErkJggg==')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"picture\", {\n    parentName: \"span\"\n  }, \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/1f39b5c6ac740589d5b7bc8b6c0548fe/a3bc4/lightImg.webp 2500w\", \"/static/1f39b5c6ac740589d5b7bc8b6c0548fe/0030e/lightImg.webp 2798w\"],\n    \"sizes\": \"(max-width: 2798px) 100vw, 2798px\",\n    \"type\": \"image/webp\"\n  }), \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/1f39b5c6ac740589d5b7bc8b6c0548fe/412e4/lightImg.png 2500w\", \"/static/1f39b5c6ac740589d5b7bc8b6c0548fe/92245/lightImg.png 2798w\"],\n    \"sizes\": \"(max-width: 2798px) 100vw, 2798px\",\n    \"type\": \"image/png\"\n  }), \"\\n          \", mdx(\"img\", {\n    parentName: \"picture\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"src\": \"/static/1f39b5c6ac740589d5b7bc8b6c0548fe/92245/lightImg.png\",\n    \"alt\": \"LightMode\",\n    \"title\": \"LightMode\",\n    \"loading\": \"lazy\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    }\n  }), \"\\n        \"), \"\\n    \")), mdx(UI, {\n    colors: ['#1F2937', '#52525b', '#F9FAFB', '#FFEDD5', '#FFF7ED'],\n    primeFontFamily: 'Roboto',\n    secondaryFontFamily: 'Audiowide',\n    background: '#FFF7ED',\n    textColor: \"#1F2937\",\n    h1: {\n      fontFamily: 'Roboto',\n      fontWeight: '700',\n      fontSize: '40px',\n      textTransform: 'uppercase',\n      color: '#1F2937'\n    },\n    h2: {\n      fontSize: '35px',\n      fontWeight: '700',\n      fontFamily: 'Roboto'\n    },\n    body: {\n      fontFamily: 'Roboto',\n      color: '#1F2937',\n      fontSize: '18px',\n      lineHeight: 1.7\n    },\n    mdxType: \"UI\"\n  }), mdx(\"h2\", {\n    \"id\": \"dark-mode-ui-overview\"\n  }, \"Dark Mode UI overview\"), mdx(\"p\", null, mdx(\"span\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"2920px\"\n    }\n  }, \"\\n      \", mdx(\"span\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"65.2%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAABYlAAAWJQFJUiTwAAADeElEQVQ4y0WR20/bZRyHG6GkvzE5hFNbaKEttPRI++v5RGmhtIVBKZsBPLAZ5hgzMMHCTqVsFNguHDBBZFmWELPbRf8AvZnuRhY1RhONJoaLmZho9D94/AkXXjz5fN/vxfO+bz6ysYYSE8oC05oZch27hPSfElY/IaR8QrDxEwL1BwTrHxOseyTlIwIN+/gbdvE3PiDUuEWgroS3ZhVv5TYuYR3Z6H8H9SgqnYV6XYRaiSZTgpq2MFXa4DE1bSEpA8fzq9qQRPCYKmk+rfWjVAVxn7qDS1FCNli9jKU+S3NbO7cSBm70aMmHVOTDapZ7dRSS7RTSZlYGbcdzsa+VlWTbSUos92kxarqwKYqIwhqyiLCIVZ3DandQyth4OhPj650Zvtx4nftZK3tTcXYudFMa6eLhxTgbOS/FAT+r2bC0i1Ic9GFu8/8v9FbMYmwawBmM8fBuiS82pvjus8c8P1hn/Ow5VO1W7J4gZjGExRfG4BnBkZjHEZ/DlbiKPTqNpq0Pp6JwIhTLp9HVpWg1unl6fZJf1h0cvmfgj/23KUyN02Fsx+NyEA2HyQ5l6E1NkB69RmY0T3pojr70JXSGE6FbKJ0IW2v70eitfDQW5teSm7/WNPxTEll/Y4jGZg1Ohx2/z4dXtBPqGWVgrEDq7OKxNJG5LAmTiIpbknAVmUX+FqqqGHVqI/NxBwfjXTybMXFUDLB9vh9dp52I9Dq3243BoJO+n2FwbIXkyALx9BVi/RfR6Xsl2Q08QhGZsXwCZXWU2qZ2bM2dTHeLrCUb+SbvYv+dXsRgN6l0CpfLiSg68YSGOfNagcFzS3QnpojGz0sX9eGVyvUKN5HpykZoqgpTrTRh6/Djs4oEOzSM+7RMZiJYXN10SYV0WkTsdhGjLSYVlJP2w+hNSfSdvbS0RAicyuNTXEOmKotRc9qJxuDk9sYDVu5+yOLqJsuz8+SiPZgjZ3D0ZDGGBrDEhslOzrC+/TE3N7ZYWv2A0tYeHn8Wr3wOj+J9ZGpJWCV0YdK5+OrzZ7x4/oLDw5/4YfMOC1YD5S0+tOYkFmeODnOW4sIOf/78N799+5Kj73/n6MeXjA9cxfvKZRyKd5E1lUdoKAtK+GiQe6iTu1FW9NBSkaZFnpIyg75imLRiniuK+ywJe+SFXeaETS4J93iz8jbZyuuEhFlM8gv8C9FI4Hm3W9PDAAAAAElFTkSuQmCC')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"picture\", {\n    parentName: \"span\"\n  }, \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/c16fac002607f92a68caa474d8814ea9/a3bc4/darkImg.webp 2500w\", \"/static/c16fac002607f92a68caa474d8814ea9/5694a/darkImg.webp 2920w\"],\n    \"sizes\": \"(max-width: 2920px) 100vw, 2920px\",\n    \"type\": \"image/webp\"\n  }), \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/c16fac002607f92a68caa474d8814ea9/412e4/darkImg.png 2500w\", \"/static/c16fac002607f92a68caa474d8814ea9/5be2d/darkImg.png 2920w\"],\n    \"sizes\": \"(max-width: 2920px) 100vw, 2920px\",\n    \"type\": \"image/png\"\n  }), \"\\n          \", mdx(\"img\", {\n    parentName: \"picture\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"src\": \"/static/c16fac002607f92a68caa474d8814ea9/5be2d/darkImg.png\",\n    \"alt\": \"DarkMode\",\n    \"title\": \"DarkMode\",\n    \"loading\": \"lazy\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    }\n  }), \"\\n        \"), \"\\n    \"), \" \", mdx(\"span\", {\n    parentName: \"p\",\n    \"className\": \"gatsby-resp-image-wrapper\",\n    \"style\": {\n      \"position\": \"relative\",\n      \"display\": \"block\",\n      \"marginLeft\": \"auto\",\n      \"marginRight\": \"auto\",\n      \"maxWidth\": \"2732px\"\n    }\n  }, \"\\n      \", mdx(\"span\", {\n    parentName: \"span\",\n    \"className\": \"gatsby-resp-image-background-image\",\n    \"style\": {\n      \"paddingBottom\": \"70%\",\n      \"position\": \"relative\",\n      \"bottom\": \"0\",\n      \"left\": \"0\",\n      \"backgroundImage\": \"url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAABYlAAAWJQFJUiTwAAADBUlEQVQ4y32TWU8bZxSGx2AwQwPE2wTwLJ7xggF7PNjjZYxxqAPBAaKoSkqK3Uq5oGqkSq3UNV1kp1ilraIuUqUoiiIVqkq5yX98+nmJyE178ej9znmPXp1ZPuk95ZRO7HM+Mj5mJ3VBzXjJ5vLfeNfOqUb/ohp5gRd5jhd+RnVA5Cnl6J+C36gqvwrvFyqh7ykvnOHO/o50GPqGhOES1TcIWVuEEg3eUqtc0caoFeZ1j7nBOVYW9WV/pB6zWgEjcgdX/glpP/gVilqk6WQ4O1ihdytDt5Wm1xLngd5apXuYozfEHvq9sd8VPG5l+HbPxFneIx84Q6rPfYqe2uJ2JcuTVpzedozTpjZG5XTXpC9C+yKoLwJOd+Jv+Br9pk63uUgxNggUGxbkh6hGhbBZYkbz8ClFJhddpOjGiIiDFM4Lfc3r/kgnFDGrZFkKHlCSxYb29AOW9AqpZI5S6TpubQ/HbZJaq5JcrZAc6JsMeoKEIL3u4ZRukLLLmMohpRkRmJt6QCxexUw65Jw664VtMSzqFTGUqfwP5eHcurONte4OA8vyj0jZwAdcjdpoZo58oUGu+DYZewtruEX1P7GG23us5a9jZV0sEViR+0jJwF3mI1mWjRxWvkncuYmSrhM0qwQtb6Rm5RLrsh9O1tCyNwilyxjRAzz5MVJaBE4HbW47SV4dW1wcpbi4Z3F+d4DJ+f0VLjr5MTbn76ZG/YEv5v4R8y/u6dSNXfEOu0ja9E1mQ1nctRwntTRHeY12wRwTp120aLtJOm5qhKg7wusURtp2TI4KKvnFXbHhd0jXpmrMR1dRTAcl02BePIos/nxZK44pMKNuMK3aTAkmtZzAxj+o9TxXEmX8RhY9skNDfiQC/ZsszNmo4sOsJTxWxPVLqpck1DqrWpOa/g7b+hEt/f0hO/oxTeM+u8ljauYdcdc71OXPxD85uYky4RH2lbgqbbAgOUR9DZYmWiz5WiwLVN8+1YkPOZl8wpf+ZzzyP+cL/1M+8f/Bif9n2oEf2J/9mmLgIf8CjOHDk7qWKZ0AAAAASUVORK5CYII=')\",\n      \"backgroundSize\": \"cover\",\n      \"display\": \"block\"\n    }\n  }), \"\\n  \", mdx(\"picture\", {\n    parentName: \"span\"\n  }, \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/355626eec6bd9de3a88a60da8c7f8c8c/a3bc4/darkFiles.webp 2500w\", \"/static/355626eec6bd9de3a88a60da8c7f8c8c/57c94/darkFiles.webp 2732w\"],\n    \"sizes\": \"(max-width: 2732px) 100vw, 2732px\",\n    \"type\": \"image/webp\"\n  }), \"\\n          \", mdx(\"source\", {\n    parentName: \"picture\",\n    \"srcSet\": [\"/static/355626eec6bd9de3a88a60da8c7f8c8c/412e4/darkFiles.png 2500w\", \"/static/355626eec6bd9de3a88a60da8c7f8c8c/f2f36/darkFiles.png 2732w\"],\n    \"sizes\": \"(max-width: 2732px) 100vw, 2732px\",\n    \"type\": \"image/png\"\n  }), \"\\n          \", mdx(\"img\", {\n    parentName: \"picture\",\n    \"className\": \"gatsby-resp-image-image\",\n    \"src\": \"/static/355626eec6bd9de3a88a60da8c7f8c8c/f2f36/darkFiles.png\",\n    \"alt\": \"DarkMode\",\n    \"title\": \"DarkMode\",\n    \"loading\": \"lazy\",\n    \"style\": {\n      \"width\": \"100%\",\n      \"height\": \"100%\",\n      \"margin\": \"0\",\n      \"verticalAlign\": \"middle\",\n      \"position\": \"absolute\",\n      \"top\": \"0\",\n      \"left\": \"0\"\n    }\n  }), \"\\n        \"), \"\\n    \")), mdx(UI, {\n    colors: ['#1E293B', '#0F172A', '#FFEDD5', '#FFF7ED', '#F9FAFB', '#FFF'],\n    primeFontFamily: 'Roboto',\n    secondaryFontFamily: 'Audiowide',\n    background: '#1E293B',\n    textColor: \"#FFF\",\n    h1: {\n      fontFamily: 'Roboto',\n      fontWeight: '700',\n      fontSize: '40px',\n      textTransform: 'uppercase',\n      color: '#fff'\n    },\n    h2: {\n      fontSize: '35px',\n      fontWeight: '700',\n      fontFamily: 'Roboto'\n    },\n    body: {\n      fontFamily: 'Roboto',\n      color: '#fff',\n      fontSize: '18px',\n      lineHeight: 1.7\n    },\n    mdxType: \"UI\"\n  }), mdx(\"h2\", {\n    \"id\": \"installation-files\"\n  }, \"Installation files\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://github.com/MassivDash/S3_Manager/releases\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"releases\")), mdx(\"h2\", {\n    \"id\": \"features\"\n  }, \"Features\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Dark and light mode dependant on system preferences\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Files, Pictures, Movies and buckets gallery (grid style)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Optimized for looking through the pictures / movies, lazy loading, images and\\nmovies streamed dritecly from the bucket, are loaded with presigned urls.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Adjustable grid gallery\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Simple name search\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"folders filtering in movies and images pages\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Tagging of assets\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Folder creation\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Multi file upload (drop files)\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Galleries remember scroll positions while navigating the app.\")), mdx(\"h3\", {\n    \"id\": \"aws-account\"\n  }, \"AWS Account\"), mdx(\"p\", null, \"In order to use the application you need aws account with s3 service activated.\\nS3 app uses standard aws config files used for aws cli connection\\n\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"info here\"), \".\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"~/.aws/credentials\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"[default]\\naws_access_key_id=AKIAIOSFODNN7EXAMPLE\\naws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"~/.aws/config\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"[default]\\nregion=us-west-2\\noutput=json\\n\")), mdx(\"h3\", {\n    \"id\": \"alternate-s3-endpoint\"\n  }, \"Alternate s3 endpoint\"), mdx(\"p\", null, \"Set env vars \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"S3_CUSTOM_ENDPOINT\"), \" to \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"true\"), \" or \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"1\"), \" at your machine to alter the\\ns3 default endpoints Set the alternative endpoint url with\\n\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"S3_CUSTOM_ENDPOINT_URL\"), \" env\"), mdx(\"p\", null, \"Rust lang (cargo) and node.js (npm or yarn) and tauri-cli instalations are\\nneeded to run / build the project from source\"), mdx(\"p\", null, \"This application is based on \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://tauri.app/\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"tauri.app\"), \", RUST lang in the\\nbackend (core of the app and frontend things are handled by svelte + vite + ts\\ncombo.\"), mdx(\"p\", null, \"Simple division: Rust manages the data and the calls, front end displays the\\ndata.\"), mdx(\"h2\", {\n    \"id\": \"github-info\"\n  }, \"Github info\"), mdx(\"p\", null, mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://github.com/MassivDash/S3_Manager\",\n    \"target\": \"_blank\",\n    \"rel\": \"noreferrer\"\n  }, \"https://github.com/MassivDash/S3_Manager\")), mdx(\"p\", null, \"Don\\u2019t forget to \\u2B50 the project if you found it helpful.\"));\n}\n;\nMDXContent.isMDXComponent = true;","tech":["Svelte","Rust","TS","Tailwind"],"category":"Project","appDescription":"AWS S3 GUI","hero":{"full":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAEGklEQVQ4y4VT+0+bVRjuf2BM1OmccRujBGd0CzBMdEAUURHdHOp+GGBEhJEtbi7RNQ4cRqNGN1xkGgXb0nvXLKy0hV0EQQesK1CuExjrECalQC9AaQuMr4/vOV0ZRtGTPN97znu+85z38hyRIAhgCAthAtlwGFHfCpYZlrFMYDbiu7Om+Wq/6B+H10KUiDA2+gcmJpwIBoNEdpsTRsEJWVTRsRJxOBIxI7q9tMTXCwsLuD40iHabFW2tLXA6x/mZ5VXRiphjiQ54vR6EQqEVsigx27vpcGBsbBT9fb3o6bbj4oXzMJuMfO73++9ezgiXFhcxOenCLTowfH0Ic3NzPBJG5PP50NluQ3PTL7BdtXLCOkstDh4oxlt5Oai3mOD1eOB2TyNE6bMhmp2dwQSFHrFO9PX2YOSmg1IQiHwW3V2duGq9AmW1DHLZTyg/8RVOEq60tcI9PY3ZmRl02TvgHI+kLxqmmvT39cDlclFkIZzRa9HQ8DPfDAQCPEqfz8vr9fu1fvq3jyJy82aMjDigUlbj49ISzM/PRwhZDVgqvb3dMNUaUV9fx9dddjs6OtoxODjACf8+wrBa23D06Ad4t+AdpKWmQK1WRQjZh9XM5ZrA5d9+xZHDh9Da0gLHjWGYjTUw0yUGvQ4ymZSi10NRLYdE8iEynk9HSspOVHx7CsX7i9DY2BAhZO3GKtmwTg8NDPD0pJU/4svPP4NGpeD2VPlJHCjej9SUZ5CXuw97XtvFG1RVVYlFau6KDqNgg9XsEslCIZdCQilp1UpotSoqQSdvGMvCYjahrOw4knck4cj7h/DD96e50HmEqwm9Xi8velvLZZJKI+/+9NQUtBo1CvLfRmFBPsklF7FbYiCOjUVpyTHYOzvo5YxyrapVSiK8kzKzk1THqclJLFJNfSR0JlwryYNJ5psTX8NYcxbFRYUUWQJ2v5rFazs4cA1e0uEXVJLkpMRIU4IkYicR+al+UyRUG93qnvGhllIrOV6Ksk8/gYK6aKO0G5ubUGsxQ65UoOK70zCcNaCddLgvNweSYx9B1HS4CBcKc3Audw+MBEv+XujffBk1edlQ7M5A+c4EVGWmQf36S4RMVGamouFgPqyS9yDflQ5p1rPQvJGJiueegm5vFkTymPugT9gCQ3I8ziSJodu2GYZEMVRxD0Idez/08euhiVtH8wc42Fy+6V5IH70HGvE6vlbRf7r4h7gVqZ/YiJr0HTj34tMwvZKGuuwXYMnOgHZ7DFRbN0D9+CPcKh97GCoCt7SO+u761/O5SJsYJ2i2bRI0TzJsFOgCWm8WNNtjBAXNZVs3CEry65PiBF2i+H8hClA3gySXAGGBHrr7z1vw01v108Mf6ulG8/k6jDtu8L2Ah/3r4fZfQXusy/1rIfwfe2vhL/Kc+noaqXyIAAAAAElFTkSuQmCC","aspectRatio":1,"src":"/static/7e76a640f9382dc8a36ea033c8346b68/a1946/s3ManagerCover.png","srcSet":"/static/7e76a640f9382dc8a36ea033c8346b68/5b37e/s3ManagerCover.png 236w,\n/static/7e76a640f9382dc8a36ea033c8346b68/49058/s3ManagerCover.png 472w,\n/static/7e76a640f9382dc8a36ea033c8346b68/a1946/s3ManagerCover.png 944w,\n/static/7e76a640f9382dc8a36ea033c8346b68/6050d/s3ManagerCover.png 1200w","srcWebp":"/static/7e76a640f9382dc8a36ea033c8346b68/99fbb/s3ManagerCover.webp","srcSetWebp":"/static/7e76a640f9382dc8a36ea033c8346b68/77392/s3ManagerCover.webp 236w,\n/static/7e76a640f9382dc8a36ea033c8346b68/1f177/s3ManagerCover.webp 472w,\n/static/7e76a640f9382dc8a36ea033c8346b68/99fbb/s3ManagerCover.webp 944w,\n/static/7e76a640f9382dc8a36ea033c8346b68/9000d/s3ManagerCover.webp 1200w","sizes":"(max-width: 944px) 100vw, 944px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M283%2069c-3%202-4%203-4%205s0%202-1%201c0-3-1-2-11%204-6%203-8%205-8%206%200%202%200%202%202%202v2c0%202%200%202%202%201l2-3h3l2-1c0%201-2%203-5%204-3%202-6%204-6%206l-3%203c-2%201-2%201-2-2%201-3-1-4-4-1-3%202-2%203%200%203h2l-2%203-2%202h1l3-1%202-1%204-2c3-2%203-2%2014%202l11%203%201-9%201-9%201%209%201%2010%207-3%206-3c2%200%204-3%205-5l-2-2c-1%200-3-2-1-3s-1-9-4-9l-1-1-3-1h-2l-5-3c-8-3-8-3-3-6%204-2%205-3%203-3l-4%202m-93%2024c1%201%201%201-1%201h-4l2%201%203%201-3%201c-2%200-2%200-1%201h3c4-1%205-1%205%202%201%203%205%207%2010%208%201%201%202%201%202-2%201-3%201-4%204-3l4%203c2%202%202%202-2%204-3%201-4%202-3%204h4c0-3%202-3%202%200%201%203%200%203-2%202l-3%201h4c3%200%204%200%203%201-2%200-1%202%201%202%205%200%207%201%207%203l1%202h1l2%201%201-2-1-2c-3%201-3-1-1-3%204-5%2015-4%2015%201l-1%202h-2l-2%201h-2l2%201c4%202%2024-2%2029-5l3-1c3-1%203-1%202-2h1c2%200%202%200%201-1v-1h2l1%201v-4c-1-1-2-2-3-1-1%200-12-3-15-6-3-1-5-1-4%201l-3%202-4%202c-1%203-6%204-10%202h2l4-1-6-1h-6l1-1h-2c-3%200-3%200-1-1h-2c-3%200-3%200-1-1h-1c-3%200-3%200-2-1v-1l-2-2-3-3v1l-2%203h1l2%201v1h-1v7l-1-2-1-3v-1l-1-1-2-3c0-2-1-2-3-1-3%200-3%200-2-1s1-1-1-1h-2c-3%200-3%200-2-1s1-1-1-1h-3c-3%200-3%200-1-1h-2c-2%200-3%200-2-1%202-1%202-1-1-2h-4m-87%2023l-2%203c-2%202-3%209-2%209%201%201-2%203-7%205-6%203-8%204-7%205h5c2-1%204-1%2014%202l12%204-4-4c-6-6-7-9-7-18l-1-8-1%202m258%202l-8%207-6%203a307%20307%200%2001-33%2018c-21%2012-40%2019-59%2021l-7%201%202%201%2013-1%208-1c9-1%2018-4%2024-7l6-2-5%204c-17%207-38%2011-63%2011-18%200-24%200-43-4l-4%201%201%202%201%2010c0%208%200%2010-2%2011v1c2%200%204-2%203-5l1-3%201%202c-1%202%200%203%201%203l1-3%201-3c1-1%201-1%201%201l2%202c2-1%204-2%202-2l-1-2h1l3%201%203-1-3%202-2%202h2l4-1%201-3c1-3%201-3%201%202%200%203%200%205%201%204h2v2l-1%203c0%202%208%201%2014-1l4-1c2%203%204%200%204-6%200-4%200-5%201-3%200%203%200%203%205%203l9%201c2%200%203%200%203%204l1%206v2c-1%202-1%207%201%208%202%200%203-3%201-4v-1l2%201%201%201c3%200%204%200%204%202l1%201%201-1%202-1-1-2c-3-1-3-1%202-1h4c-2-1-2-1%200-1l3-1h1l1-2v1l1%201%201-2h2v2c-1%201-2%201%2014%201%2014%200%2016%201%2010%204-7%204-12%206-14%205l-1%201c1%201-12%205-25%208-14%202-45%202-60-1-14-2-23-5-23-6h3l4%201-3-2c-4-1-4-2-5-4l1-3%201%201%204%201c4-1%205%200%203%202l-1%201%206%202-2-1c-2-1-2-1-1-3%201-3%201-3-3-3a374%20374%200%2001-9-1l-5%205c-3%201-4%204-4%206%201%201-4%205-10%208l-4%204%204-2%206-2h1c0-1%208-4%2012-4%206-1%2021%2014%2024%2025%201%202%201%202-1%201s-3-1-6%203c-5%205-7%206-8%203s-2-2-1%201c0%203%200%203-4%205-3%202-4%202-5%200-5-5-7-5-4%200%202%204%201%204-4%207s-9%203-5%200c2%200%202-1%200-2-1-1-1-1-1%201s0%202-1%201l-1-1-1-2v-1l-3-4c-3-5-7-9-7-7l2%202c1%201%202%203%200%203v1l-6-6-10-9-3-3h-1c0%201-1%201-3-1-5-2-4%200%201%203%2012%206%2024%2020%2026%2030l1%205%204-2%206-4a183%20183%200%200131-15c1%202-39%2025-43%2025h-2l2%201%202%204v3h-28c-25%200-27%200-25-2%202%200%203-1%203-2l-6%203-14%201-12-1-1-1-1%201-6%201-3-1c1-1%201-1-1-1-3-1-5%200-3%201%201%201-5%201-13%201H0v75h69a1061%201061%200%200197%203l-1%203v2l4-2c3-2%204-4%204-5l1-1%201%202h1v-1l1-1%203%201-1%201-3%203-7%204-3%204v3l19-11%208-5h208v-75h-6c-6%200-6%200-4-1v-2l-2%202-4%201h-2l3-2c8-7%2017-21%2013-23v-1l1-13c0-14%200-15-6-17-3-1-12%200-10%202v3l-1-2-2-1-1%202-1%202v2h-3v1c1%201-2%205-4%203l-1%201v1l-1-1-2%201c-1%201-2%203-1%205l-1%205-1%203-1-3c-1-2-1-2-2%202v6l-1%201c-2-2-2%2014%200%2020%202%203%202%203-1%203l-3-1h-1l-2%201-2-1-3-2-3-1-6-3h3l2-1-2-1v-1c1%200%202-1%201-2l-1-4c0-4%200-3-1%201-1%203-2%203-8%201-2%200-2%200%200%201%201%202%201%202-2%202l-4-1%205%202c2%202%205%203%205%202l1%201h-5c-2-1-2%200%201%202%204%204%203%205-3%205-4%200-5%200-6-2-1-1-2-2-3-1-1%200-1%201%201%202l1%201c-3%200-5-1-4-3v-1h-1c0%202-2%202-5%200h1l2-1-1-2h-2v-1h2c1-1%202%200%203%201%200%202%205%201%205-1%201-1%201-1%201%201s4%204%204%202l1-2-1-2-2-1-2-1h-7l-3-3-4-2-2-2-1-2h-1c0%202-2%203-2%201v-4c-1-3%200-4%201-1l2%201%202%201c1%202%204%201%204-1l-2-1-2-2c0-1%201-1%206%201%204%201%204%201%206-1v-7c-1%200-2%201-1%202%200%201-1%201-5-1-10-4-12-4-8%203%202%204%201%205-2%202-1-1-2-3-1-5%200-1%200-2-1-1l-1%202c-2%200-1-3%201-5%203-3%207-11%206-13h2c-1-1%200-3%202-4%203-4%204-7%203-9s-1-10%201-14c1-4%203-6%2022-16l14-10v-3l4-3c19-12%2020-27%203-38l-4-5-2-4c-1-1%200-2%204-6%203-2%204-4%203-5-1%200-1-1%201-3%202-4%201-3-3%201M63%20148c0%203%204%2014%207%2017%203%204%205%205%2011%208%206%202%208%203%207%204v1l2-1h11l4-5%203-7v-1a12889%2012889%200%2001-45-16m88%205c-1%203%200%204%201%202l2-1%203%202v1l5%202a46%2046%200%200110%202l5%203h2l3%201h3c2-1%202-3-1-3l-17-5c-15-5-16-6-16-4m18%2020l-2%201c-2%200-2%200-2%2012l-1%2013c-2%201-3%200-1-1l1-2h-1l-1-3%201-5v-1l-2%201c-1%201-1%201-1-3l-1-7c0-3%200-3-1-1l-2%202c-1%200-3%203-2%204l3-1c2-1%202-1%202%203%200%202-1%203-3%204l-3%202-1-2c0-5%200-5-2-5-2%201-3%201-3-1s-1-2-2%200l-1%201c3-1%202%201-1%202-1%201-2%201-1%202l3-1c1-1%201-1%201%205-1%205%200%206%201%204h1l1-1h6c2%200%202%200%201%201l-4%202-3%202-8%205c-6%203-10%207-6%206h1c-2%202-3%202-10-1-15-6-18-7-17-8%200-2-2-3-4-2v1l1%202c0%201%201%202%205%203l4%202%202%201-1%202-2%206c0%202-1%203-3%204-3%202-5%205-3%204l4-2%201%201c-2%202%203%202%208%200%208-3%209-4%207-5%200-1-2-1-5%201-6%204-7%204-8-1l1-4%201%204c0%204%201%204%203%200%201-4%201-4-1-4v-1l1-2c0-2%201-2%206%200%204%202%205%202%204%205v4l3-1c2-2%204-2%205-1h8c2%200%204%200%206-2l4-2%201-3c0-1%201-3%205-5l5-3v-7c0-6%200-7%201-6l1%202c-2%201-1%203%201%202h2l-2%204c-2%204-2%204%200%204l4-2%202-1%202-2c4-1%206-3%205-9l1-8v-1l-1-3c-1-3-4-6-4-4h-5c-1-1-1%200-1%203%200%204-2%206-2%202%200-3-2-7-2-5m167%2031c-10%206-12%208-12%2013l-1%206v3l1%202v7h3l2-4%204-4c0-2%200-2-4-1-4%203-4%201-1-3s5-5%209-4h8l5-2h5l2%202h9c1-1%200-3-3-4l-2-3c0-3%200-4-2-5s-3-2-3-4c-1-3-1-3-1%200s0%204-2%204c-4-2-6-2-8-1h-1l1-2c2%200%201-5%200-5l-9%205m-98%2032l2%201c2%200%202%201%202%2010v10l-3-1c-5%200-6-5-1-5l4-1h-4c-2%200-3%200-3-2l-2-2-2%201c0%202-1%202-6%200-9-3-8-4-8%2017v21c-1%201%201%201%208%201%208%200%2011-2%203-2l6-1%2019-2%208-1c-1%201-2%202-1%203v3h46v-8c0-7%200-7-2-6l-9-2-6-2c-1%206-3%2010-8%2012-5%203-10%201-5-2h3v1l2-1-1-1v-2c2-1%202-7%201-7l-4%202h-6c-2-1-22%205-24%207s-5%203-5%200l-2-1h-1v-1l-2-1c0-3%205-2%207%200h1l1-2v-2l1-1%201%201c-2%202%201%202%206%201%204-1%207-3%204-3l5-3c7-4%208-5%202-5l-10-1c-6%200-7%200-9%202l-2%202v-13l1-13%203-1-5-1-5%201m-35%2013l3%203c4%202%204%202%201%204-2%201-2%202-2%2015v15l1-14c0-10%201-14%202-15l1%201%201%201c2-2%203%200%202%202l-2%201-1%2011%201%208%202-4v7c2%200%205-8%203-8v-8l-1-4-2%201%201-2c4-3%202-10-4-14-4-3-6-3-6%200m-15%2025l-3%203%203-1h3v5c0%205%200%205%203%205l4-2%201-2%201-4c0-4%200-5-3-6-5-2-6-1-9%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"regular":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAEGklEQVQ4y4VT+0+bVRjuf2BM1OmccRujBGd0CzBMdEAUURHdHOp+GGBEhJEtbi7RNQ4cRqNGN1xkGgXb0nvXLKy0hV0EQQesK1CuExjrECalQC9AaQuMr4/vOV0ZRtGTPN97znu+85z38hyRIAhgCAthAtlwGFHfCpYZlrFMYDbiu7Om+Wq/6B+H10KUiDA2+gcmJpwIBoNEdpsTRsEJWVTRsRJxOBIxI7q9tMTXCwsLuD40iHabFW2tLXA6x/mZ5VXRiphjiQ54vR6EQqEVsigx27vpcGBsbBT9fb3o6bbj4oXzMJuMfO73++9ezgiXFhcxOenCLTowfH0Ic3NzPBJG5PP50NluQ3PTL7BdtXLCOkstDh4oxlt5Oai3mOD1eOB2TyNE6bMhmp2dwQSFHrFO9PX2YOSmg1IQiHwW3V2duGq9AmW1DHLZTyg/8RVOEq60tcI9PY3ZmRl02TvgHI+kLxqmmvT39cDlclFkIZzRa9HQ8DPfDAQCPEqfz8vr9fu1fvq3jyJy82aMjDigUlbj49ISzM/PRwhZDVgqvb3dMNUaUV9fx9dddjs6OtoxODjACf8+wrBa23D06Ad4t+AdpKWmQK1WRQjZh9XM5ZrA5d9+xZHDh9Da0gLHjWGYjTUw0yUGvQ4ymZSi10NRLYdE8iEynk9HSspOVHx7CsX7i9DY2BAhZO3GKtmwTg8NDPD0pJU/4svPP4NGpeD2VPlJHCjej9SUZ5CXuw97XtvFG1RVVYlFau6KDqNgg9XsEslCIZdCQilp1UpotSoqQSdvGMvCYjahrOw4knck4cj7h/DD96e50HmEqwm9Xi8velvLZZJKI+/+9NQUtBo1CvLfRmFBPsklF7FbYiCOjUVpyTHYOzvo5YxyrapVSiK8kzKzk1THqclJLFJNfSR0JlwryYNJ5psTX8NYcxbFRYUUWQJ2v5rFazs4cA1e0uEXVJLkpMRIU4IkYicR+al+UyRUG93qnvGhllIrOV6Ksk8/gYK6aKO0G5ubUGsxQ65UoOK70zCcNaCddLgvNweSYx9B1HS4CBcKc3Audw+MBEv+XujffBk1edlQ7M5A+c4EVGWmQf36S4RMVGamouFgPqyS9yDflQ5p1rPQvJGJiueegm5vFkTymPugT9gCQ3I8ziSJodu2GYZEMVRxD0Idez/08euhiVtH8wc42Fy+6V5IH70HGvE6vlbRf7r4h7gVqZ/YiJr0HTj34tMwvZKGuuwXYMnOgHZ7DFRbN0D9+CPcKh97GCoCt7SO+u761/O5SJsYJ2i2bRI0TzJsFOgCWm8WNNtjBAXNZVs3CEry65PiBF2i+H8hClA3gySXAGGBHrr7z1vw01v108Mf6ulG8/k6jDtu8L2Ah/3r4fZfQXusy/1rIfwfe2vhL/Kc+noaqXyIAAAAAElFTkSuQmCC","aspectRatio":1,"src":"/static/7e76a640f9382dc8a36ea033c8346b68/3ddd4/s3ManagerCover.png","srcSet":"/static/7e76a640f9382dc8a36ea033c8346b68/078a8/s3ManagerCover.png 163w,\n/static/7e76a640f9382dc8a36ea033c8346b68/e56da/s3ManagerCover.png 327w,\n/static/7e76a640f9382dc8a36ea033c8346b68/3ddd4/s3ManagerCover.png 653w,\n/static/7e76a640f9382dc8a36ea033c8346b68/c5cc7/s3ManagerCover.png 980w,\n/static/7e76a640f9382dc8a36ea033c8346b68/6050d/s3ManagerCover.png 1200w","srcWebp":"/static/7e76a640f9382dc8a36ea033c8346b68/0acdf/s3ManagerCover.webp","srcSetWebp":"/static/7e76a640f9382dc8a36ea033c8346b68/ac59e/s3ManagerCover.webp 163w,\n/static/7e76a640f9382dc8a36ea033c8346b68/7660b/s3ManagerCover.webp 327w,\n/static/7e76a640f9382dc8a36ea033c8346b68/0acdf/s3ManagerCover.webp 653w,\n/static/7e76a640f9382dc8a36ea033c8346b68/75470/s3ManagerCover.webp 980w,\n/static/7e76a640f9382dc8a36ea033c8346b68/9000d/s3ManagerCover.webp 1200w","sizes":"(max-width: 653px) 100vw, 653px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M283%2069c-3%202-4%203-4%205s0%202-1%201c0-3-1-2-11%204-6%203-8%205-8%206%200%202%200%202%202%202v2c0%202%200%202%202%201l2-3h3l2-1c0%201-2%203-5%204-3%202-6%204-6%206l-3%203c-2%201-2%201-2-2%201-3-1-4-4-1-3%202-2%203%200%203h2l-2%203-2%202h1l3-1%202-1%204-2c3-2%203-2%2014%202l11%203%201-9%201-9%201%209%201%2010%207-3%206-3c2%200%204-3%205-5l-2-2c-1%200-3-2-1-3s-1-9-4-9l-1-1-3-1h-2l-5-3c-8-3-8-3-3-6%204-2%205-3%203-3l-4%202m-93%2024c1%201%201%201-1%201h-4l2%201%203%201-3%201c-2%200-2%200-1%201h3c4-1%205-1%205%202%201%203%205%207%2010%208%201%201%202%201%202-2%201-3%201-4%204-3l4%203c2%202%202%202-2%204-3%201-4%202-3%204h4c0-3%202-3%202%200%201%203%200%203-2%202l-3%201h4c3%200%204%200%203%201-2%200-1%202%201%202%205%200%207%201%207%203l1%202h1l2%201%201-2-1-2c-3%201-3-1-1-3%204-5%2015-4%2015%201l-1%202h-2l-2%201h-2l2%201c4%202%2024-2%2029-5l3-1c3-1%203-1%202-2h1c2%200%202%200%201-1v-1h2l1%201v-4c-1-1-2-2-3-1-1%200-12-3-15-6-3-1-5-1-4%201l-3%202-4%202c-1%203-6%204-10%202h2l4-1-6-1h-6l1-1h-2c-3%200-3%200-1-1h-2c-3%200-3%200-1-1h-1c-3%200-3%200-2-1v-1l-2-2-3-3v1l-2%203h1l2%201v1h-1v7l-1-2-1-3v-1l-1-1-2-3c0-2-1-2-3-1-3%200-3%200-2-1s1-1-1-1h-2c-3%200-3%200-2-1s1-1-1-1h-3c-3%200-3%200-1-1h-2c-2%200-3%200-2-1%202-1%202-1-1-2h-4m-87%2023l-2%203c-2%202-3%209-2%209%201%201-2%203-7%205-6%203-8%204-7%205h5c2-1%204-1%2014%202l12%204-4-4c-6-6-7-9-7-18l-1-8-1%202m258%202l-8%207-6%203a307%20307%200%2001-33%2018c-21%2012-40%2019-59%2021l-7%201%202%201%2013-1%208-1c9-1%2018-4%2024-7l6-2-5%204c-17%207-38%2011-63%2011-18%200-24%200-43-4l-4%201%201%202%201%2010c0%208%200%2010-2%2011v1c2%200%204-2%203-5l1-3%201%202c-1%202%200%203%201%203l1-3%201-3c1-1%201-1%201%201l2%202c2-1%204-2%202-2l-1-2h1l3%201%203-1-3%202-2%202h2l4-1%201-3c1-3%201-3%201%202%200%203%200%205%201%204h2v2l-1%203c0%202%208%201%2014-1l4-1c2%203%204%200%204-6%200-4%200-5%201-3%200%203%200%203%205%203l9%201c2%200%203%200%203%204l1%206v2c-1%202-1%207%201%208%202%200%203-3%201-4v-1l2%201%201%201c3%200%204%200%204%202l1%201%201-1%202-1-1-2c-3-1-3-1%202-1h4c-2-1-2-1%200-1l3-1h1l1-2v1l1%201%201-2h2v2c-1%201-2%201%2014%201%2014%200%2016%201%2010%204-7%204-12%206-14%205l-1%201c1%201-12%205-25%208-14%202-45%202-60-1-14-2-23-5-23-6h3l4%201-3-2c-4-1-4-2-5-4l1-3%201%201%204%201c4-1%205%200%203%202l-1%201%206%202-2-1c-2-1-2-1-1-3%201-3%201-3-3-3a374%20374%200%2001-9-1l-5%205c-3%201-4%204-4%206%201%201-4%205-10%208l-4%204%204-2%206-2h1c0-1%208-4%2012-4%206-1%2021%2014%2024%2025%201%202%201%202-1%201s-3-1-6%203c-5%205-7%206-8%203s-2-2-1%201c0%203%200%203-4%205-3%202-4%202-5%200-5-5-7-5-4%200%202%204%201%204-4%207s-9%203-5%200c2%200%202-1%200-2-1-1-1-1-1%201s0%202-1%201l-1-1-1-2v-1l-3-4c-3-5-7-9-7-7l2%202c1%201%202%203%200%203v1l-6-6-10-9-3-3h-1c0%201-1%201-3-1-5-2-4%200%201%203%2012%206%2024%2020%2026%2030l1%205%204-2%206-4a183%20183%200%200131-15c1%202-39%2025-43%2025h-2l2%201%202%204v3h-28c-25%200-27%200-25-2%202%200%203-1%203-2l-6%203-14%201-12-1-1-1-1%201-6%201-3-1c1-1%201-1-1-1-3-1-5%200-3%201%201%201-5%201-13%201H0v75h69a1061%201061%200%200197%203l-1%203v2l4-2c3-2%204-4%204-5l1-1%201%202h1v-1l1-1%203%201-1%201-3%203-7%204-3%204v3l19-11%208-5h208v-75h-6c-6%200-6%200-4-1v-2l-2%202-4%201h-2l3-2c8-7%2017-21%2013-23v-1l1-13c0-14%200-15-6-17-3-1-12%200-10%202v3l-1-2-2-1-1%202-1%202v2h-3v1c1%201-2%205-4%203l-1%201v1l-1-1-2%201c-1%201-2%203-1%205l-1%205-1%203-1-3c-1-2-1-2-2%202v6l-1%201c-2-2-2%2014%200%2020%202%203%202%203-1%203l-3-1h-1l-2%201-2-1-3-2-3-1-6-3h3l2-1-2-1v-1c1%200%202-1%201-2l-1-4c0-4%200-3-1%201-1%203-2%203-8%201-2%200-2%200%200%201%201%202%201%202-2%202l-4-1%205%202c2%202%205%203%205%202l1%201h-5c-2-1-2%200%201%202%204%204%203%205-3%205-4%200-5%200-6-2-1-1-2-2-3-1-1%200-1%201%201%202l1%201c-3%200-5-1-4-3v-1h-1c0%202-2%202-5%200h1l2-1-1-2h-2v-1h2c1-1%202%200%203%201%200%202%205%201%205-1%201-1%201-1%201%201s4%204%204%202l1-2-1-2-2-1-2-1h-7l-3-3-4-2-2-2-1-2h-1c0%202-2%203-2%201v-4c-1-3%200-4%201-1l2%201%202%201c1%202%204%201%204-1l-2-1-2-2c0-1%201-1%206%201%204%201%204%201%206-1v-7c-1%200-2%201-1%202%200%201-1%201-5-1-10-4-12-4-8%203%202%204%201%205-2%202-1-1-2-3-1-5%200-1%200-2-1-1l-1%202c-2%200-1-3%201-5%203-3%207-11%206-13h2c-1-1%200-3%202-4%203-4%204-7%203-9s-1-10%201-14c1-4%203-6%2022-16l14-10v-3l4-3c19-12%2020-27%203-38l-4-5-2-4c-1-1%200-2%204-6%203-2%204-4%203-5-1%200-1-1%201-3%202-4%201-3-3%201M63%20148c0%203%204%2014%207%2017%203%204%205%205%2011%208%206%202%208%203%207%204v1l2-1h11l4-5%203-7v-1a12889%2012889%200%2001-45-16m88%205c-1%203%200%204%201%202l2-1%203%202v1l5%202a46%2046%200%200110%202l5%203h2l3%201h3c2-1%202-3-1-3l-17-5c-15-5-16-6-16-4m18%2020l-2%201c-2%200-2%200-2%2012l-1%2013c-2%201-3%200-1-1l1-2h-1l-1-3%201-5v-1l-2%201c-1%201-1%201-1-3l-1-7c0-3%200-3-1-1l-2%202c-1%200-3%203-2%204l3-1c2-1%202-1%202%203%200%202-1%203-3%204l-3%202-1-2c0-5%200-5-2-5-2%201-3%201-3-1s-1-2-2%200l-1%201c3-1%202%201-1%202-1%201-2%201-1%202l3-1c1-1%201-1%201%205-1%205%200%206%201%204h1l1-1h6c2%200%202%200%201%201l-4%202-3%202-8%205c-6%203-10%207-6%206h1c-2%202-3%202-10-1-15-6-18-7-17-8%200-2-2-3-4-2v1l1%202c0%201%201%202%205%203l4%202%202%201-1%202-2%206c0%202-1%203-3%204-3%202-5%205-3%204l4-2%201%201c-2%202%203%202%208%200%208-3%209-4%207-5%200-1-2-1-5%201-6%204-7%204-8-1l1-4%201%204c0%204%201%204%203%200%201-4%201-4-1-4v-1l1-2c0-2%201-2%206%200%204%202%205%202%204%205v4l3-1c2-2%204-2%205-1h8c2%200%204%200%206-2l4-2%201-3c0-1%201-3%205-5l5-3v-7c0-6%200-7%201-6l1%202c-2%201-1%203%201%202h2l-2%204c-2%204-2%204%200%204l4-2%202-1%202-2c4-1%206-3%205-9l1-8v-1l-1-3c-1-3-4-6-4-4h-5c-1-1-1%200-1%203%200%204-2%206-2%202%200-3-2-7-2-5m167%2031c-10%206-12%208-12%2013l-1%206v3l1%202v7h3l2-4%204-4c0-2%200-2-4-1-4%203-4%201-1-3s5-5%209-4h8l5-2h5l2%202h9c1-1%200-3-3-4l-2-3c0-3%200-4-2-5s-3-2-3-4c-1-3-1-3-1%200s0%204-2%204c-4-2-6-2-8-1h-1l1-2c2%200%201-5%200-5l-9%205m-98%2032l2%201c2%200%202%201%202%2010v10l-3-1c-5%200-6-5-1-5l4-1h-4c-2%200-3%200-3-2l-2-2-2%201c0%202-1%202-6%200-9-3-8-4-8%2017v21c-1%201%201%201%208%201%208%200%2011-2%203-2l6-1%2019-2%208-1c-1%201-2%202-1%203v3h46v-8c0-7%200-7-2-6l-9-2-6-2c-1%206-3%2010-8%2012-5%203-10%201-5-2h3v1l2-1-1-1v-2c2-1%202-7%201-7l-4%202h-6c-2-1-22%205-24%207s-5%203-5%200l-2-1h-1v-1l-2-1c0-3%205-2%207%200h1l1-2v-2l1-1%201%201c-2%202%201%202%206%201%204-1%207-3%204-3l5-3c7-4%208-5%202-5l-10-1c-6%200-7%200-9%202l-2%202v-13l1-13%203-1-5-1-5%201m-35%2013l3%203c4%202%204%202%201%204-2%201-2%202-2%2015v15l1-14c0-10%201-14%202-15l1%201%201%201c2-2%203%200%202%202l-2%201-1%2011%201%208%202-4v7c2%200%205-8%203-8v-8l-1-4-2%201%201-2c4-3%202-10-4-14-4-3-6-3-6%200m-15%2025l-3%203%203-1h3v5c0%205%200%205%203%205l4-2%201-2%201-4c0-4%200-5-3-6-5-2-6-1-9%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"narrow":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAEGklEQVQ4y4VT+0+bVRjuf2BM1OmccRujBGd0CzBMdEAUURHdHOp+GGBEhJEtbi7RNQ4cRqNGN1xkGgXb0nvXLKy0hV0EQQesK1CuExjrECalQC9AaQuMr4/vOV0ZRtGTPN97znu+85z38hyRIAhgCAthAtlwGFHfCpYZlrFMYDbiu7Om+Wq/6B+H10KUiDA2+gcmJpwIBoNEdpsTRsEJWVTRsRJxOBIxI7q9tMTXCwsLuD40iHabFW2tLXA6x/mZ5VXRiphjiQ54vR6EQqEVsigx27vpcGBsbBT9fb3o6bbj4oXzMJuMfO73++9ezgiXFhcxOenCLTowfH0Ic3NzPBJG5PP50NluQ3PTL7BdtXLCOkstDh4oxlt5Oai3mOD1eOB2TyNE6bMhmp2dwQSFHrFO9PX2YOSmg1IQiHwW3V2duGq9AmW1DHLZTyg/8RVOEq60tcI9PY3ZmRl02TvgHI+kLxqmmvT39cDlclFkIZzRa9HQ8DPfDAQCPEqfz8vr9fu1fvq3jyJy82aMjDigUlbj49ISzM/PRwhZDVgqvb3dMNUaUV9fx9dddjs6OtoxODjACf8+wrBa23D06Ad4t+AdpKWmQK1WRQjZh9XM5ZrA5d9+xZHDh9Da0gLHjWGYjTUw0yUGvQ4ymZSi10NRLYdE8iEynk9HSspOVHx7CsX7i9DY2BAhZO3GKtmwTg8NDPD0pJU/4svPP4NGpeD2VPlJHCjej9SUZ5CXuw97XtvFG1RVVYlFau6KDqNgg9XsEslCIZdCQilp1UpotSoqQSdvGMvCYjahrOw4knck4cj7h/DD96e50HmEqwm9Xi8velvLZZJKI+/+9NQUtBo1CvLfRmFBPsklF7FbYiCOjUVpyTHYOzvo5YxyrapVSiK8kzKzk1THqclJLFJNfSR0JlwryYNJ5psTX8NYcxbFRYUUWQJ2v5rFazs4cA1e0uEXVJLkpMRIU4IkYicR+al+UyRUG93qnvGhllIrOV6Ksk8/gYK6aKO0G5ubUGsxQ65UoOK70zCcNaCddLgvNweSYx9B1HS4CBcKc3Audw+MBEv+XujffBk1edlQ7M5A+c4EVGWmQf36S4RMVGamouFgPqyS9yDflQ5p1rPQvJGJiueegm5vFkTymPugT9gCQ3I8ziSJodu2GYZEMVRxD0Idez/08euhiVtH8wc42Fy+6V5IH70HGvE6vlbRf7r4h7gVqZ/YiJr0HTj34tMwvZKGuuwXYMnOgHZ7DFRbN0D9+CPcKh97GCoCt7SO+u761/O5SJsYJ2i2bRI0TzJsFOgCWm8WNNtjBAXNZVs3CEry65PiBF2i+H8hClA3gySXAGGBHrr7z1vw01v108Mf6ulG8/k6jDtu8L2Ah/3r4fZfQXusy/1rIfwfe2vhL/Kc+noaqXyIAAAAAElFTkSuQmCC","aspectRatio":1,"src":"/static/7e76a640f9382dc8a36ea033c8346b68/502b1/s3ManagerCover.png","srcSet":"/static/7e76a640f9382dc8a36ea033c8346b68/f2e6d/s3ManagerCover.png 114w,\n/static/7e76a640f9382dc8a36ea033c8346b68/4ddba/s3ManagerCover.png 229w,\n/static/7e76a640f9382dc8a36ea033c8346b68/502b1/s3ManagerCover.png 457w,\n/static/7e76a640f9382dc8a36ea033c8346b68/7ddc2/s3ManagerCover.png 686w,\n/static/7e76a640f9382dc8a36ea033c8346b68/435bf/s3ManagerCover.png 914w,\n/static/7e76a640f9382dc8a36ea033c8346b68/6050d/s3ManagerCover.png 1200w","srcWebp":"/static/7e76a640f9382dc8a36ea033c8346b68/15384/s3ManagerCover.webp","srcSetWebp":"/static/7e76a640f9382dc8a36ea033c8346b68/31fce/s3ManagerCover.webp 114w,\n/static/7e76a640f9382dc8a36ea033c8346b68/e3e25/s3ManagerCover.webp 229w,\n/static/7e76a640f9382dc8a36ea033c8346b68/15384/s3ManagerCover.webp 457w,\n/static/7e76a640f9382dc8a36ea033c8346b68/0258d/s3ManagerCover.webp 686w,\n/static/7e76a640f9382dc8a36ea033c8346b68/64ea2/s3ManagerCover.webp 914w,\n/static/7e76a640f9382dc8a36ea033c8346b68/9000d/s3ManagerCover.webp 1200w","sizes":"(max-width: 457px) 100vw, 457px","tracedSVG":"data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='400'%20viewBox='0%200%20400%20400'%20preserveAspectRatio='none'%3e%3cpath%20d='M283%2069c-3%202-4%203-4%205s0%202-1%201c0-3-1-2-11%204-6%203-8%205-8%206%200%202%200%202%202%202v2c0%202%200%202%202%201l2-3h3l2-1c0%201-2%203-5%204-3%202-6%204-6%206l-3%203c-2%201-2%201-2-2%201-3-1-4-4-1-3%202-2%203%200%203h2l-2%203-2%202h1l3-1%202-1%204-2c3-2%203-2%2014%202l11%203%201-9%201-9%201%209%201%2010%207-3%206-3c2%200%204-3%205-5l-2-2c-1%200-3-2-1-3s-1-9-4-9l-1-1-3-1h-2l-5-3c-8-3-8-3-3-6%204-2%205-3%203-3l-4%202m-93%2024c1%201%201%201-1%201h-4l2%201%203%201-3%201c-2%200-2%200-1%201h3c4-1%205-1%205%202%201%203%205%207%2010%208%201%201%202%201%202-2%201-3%201-4%204-3l4%203c2%202%202%202-2%204-3%201-4%202-3%204h4c0-3%202-3%202%200%201%203%200%203-2%202l-3%201h4c3%200%204%200%203%201-2%200-1%202%201%202%205%200%207%201%207%203l1%202h1l2%201%201-2-1-2c-3%201-3-1-1-3%204-5%2015-4%2015%201l-1%202h-2l-2%201h-2l2%201c4%202%2024-2%2029-5l3-1c3-1%203-1%202-2h1c2%200%202%200%201-1v-1h2l1%201v-4c-1-1-2-2-3-1-1%200-12-3-15-6-3-1-5-1-4%201l-3%202-4%202c-1%203-6%204-10%202h2l4-1-6-1h-6l1-1h-2c-3%200-3%200-1-1h-2c-3%200-3%200-1-1h-1c-3%200-3%200-2-1v-1l-2-2-3-3v1l-2%203h1l2%201v1h-1v7l-1-2-1-3v-1l-1-1-2-3c0-2-1-2-3-1-3%200-3%200-2-1s1-1-1-1h-2c-3%200-3%200-2-1s1-1-1-1h-3c-3%200-3%200-1-1h-2c-2%200-3%200-2-1%202-1%202-1-1-2h-4m-87%2023l-2%203c-2%202-3%209-2%209%201%201-2%203-7%205-6%203-8%204-7%205h5c2-1%204-1%2014%202l12%204-4-4c-6-6-7-9-7-18l-1-8-1%202m258%202l-8%207-6%203a307%20307%200%2001-33%2018c-21%2012-40%2019-59%2021l-7%201%202%201%2013-1%208-1c9-1%2018-4%2024-7l6-2-5%204c-17%207-38%2011-63%2011-18%200-24%200-43-4l-4%201%201%202%201%2010c0%208%200%2010-2%2011v1c2%200%204-2%203-5l1-3%201%202c-1%202%200%203%201%203l1-3%201-3c1-1%201-1%201%201l2%202c2-1%204-2%202-2l-1-2h1l3%201%203-1-3%202-2%202h2l4-1%201-3c1-3%201-3%201%202%200%203%200%205%201%204h2v2l-1%203c0%202%208%201%2014-1l4-1c2%203%204%200%204-6%200-4%200-5%201-3%200%203%200%203%205%203l9%201c2%200%203%200%203%204l1%206v2c-1%202-1%207%201%208%202%200%203-3%201-4v-1l2%201%201%201c3%200%204%200%204%202l1%201%201-1%202-1-1-2c-3-1-3-1%202-1h4c-2-1-2-1%200-1l3-1h1l1-2v1l1%201%201-2h2v2c-1%201-2%201%2014%201%2014%200%2016%201%2010%204-7%204-12%206-14%205l-1%201c1%201-12%205-25%208-14%202-45%202-60-1-14-2-23-5-23-6h3l4%201-3-2c-4-1-4-2-5-4l1-3%201%201%204%201c4-1%205%200%203%202l-1%201%206%202-2-1c-2-1-2-1-1-3%201-3%201-3-3-3a374%20374%200%2001-9-1l-5%205c-3%201-4%204-4%206%201%201-4%205-10%208l-4%204%204-2%206-2h1c0-1%208-4%2012-4%206-1%2021%2014%2024%2025%201%202%201%202-1%201s-3-1-6%203c-5%205-7%206-8%203s-2-2-1%201c0%203%200%203-4%205-3%202-4%202-5%200-5-5-7-5-4%200%202%204%201%204-4%207s-9%203-5%200c2%200%202-1%200-2-1-1-1-1-1%201s0%202-1%201l-1-1-1-2v-1l-3-4c-3-5-7-9-7-7l2%202c1%201%202%203%200%203v1l-6-6-10-9-3-3h-1c0%201-1%201-3-1-5-2-4%200%201%203%2012%206%2024%2020%2026%2030l1%205%204-2%206-4a183%20183%200%200131-15c1%202-39%2025-43%2025h-2l2%201%202%204v3h-28c-25%200-27%200-25-2%202%200%203-1%203-2l-6%203-14%201-12-1-1-1-1%201-6%201-3-1c1-1%201-1-1-1-3-1-5%200-3%201%201%201-5%201-13%201H0v75h69a1061%201061%200%200197%203l-1%203v2l4-2c3-2%204-4%204-5l1-1%201%202h1v-1l1-1%203%201-1%201-3%203-7%204-3%204v3l19-11%208-5h208v-75h-6c-6%200-6%200-4-1v-2l-2%202-4%201h-2l3-2c8-7%2017-21%2013-23v-1l1-13c0-14%200-15-6-17-3-1-12%200-10%202v3l-1-2-2-1-1%202-1%202v2h-3v1c1%201-2%205-4%203l-1%201v1l-1-1-2%201c-1%201-2%203-1%205l-1%205-1%203-1-3c-1-2-1-2-2%202v6l-1%201c-2-2-2%2014%200%2020%202%203%202%203-1%203l-3-1h-1l-2%201-2-1-3-2-3-1-6-3h3l2-1-2-1v-1c1%200%202-1%201-2l-1-4c0-4%200-3-1%201-1%203-2%203-8%201-2%200-2%200%200%201%201%202%201%202-2%202l-4-1%205%202c2%202%205%203%205%202l1%201h-5c-2-1-2%200%201%202%204%204%203%205-3%205-4%200-5%200-6-2-1-1-2-2-3-1-1%200-1%201%201%202l1%201c-3%200-5-1-4-3v-1h-1c0%202-2%202-5%200h1l2-1-1-2h-2v-1h2c1-1%202%200%203%201%200%202%205%201%205-1%201-1%201-1%201%201s4%204%204%202l1-2-1-2-2-1-2-1h-7l-3-3-4-2-2-2-1-2h-1c0%202-2%203-2%201v-4c-1-3%200-4%201-1l2%201%202%201c1%202%204%201%204-1l-2-1-2-2c0-1%201-1%206%201%204%201%204%201%206-1v-7c-1%200-2%201-1%202%200%201-1%201-5-1-10-4-12-4-8%203%202%204%201%205-2%202-1-1-2-3-1-5%200-1%200-2-1-1l-1%202c-2%200-1-3%201-5%203-3%207-11%206-13h2c-1-1%200-3%202-4%203-4%204-7%203-9s-1-10%201-14c1-4%203-6%2022-16l14-10v-3l4-3c19-12%2020-27%203-38l-4-5-2-4c-1-1%200-2%204-6%203-2%204-4%203-5-1%200-1-1%201-3%202-4%201-3-3%201M63%20148c0%203%204%2014%207%2017%203%204%205%205%2011%208%206%202%208%203%207%204v1l2-1h11l4-5%203-7v-1a12889%2012889%200%2001-45-16m88%205c-1%203%200%204%201%202l2-1%203%202v1l5%202a46%2046%200%200110%202l5%203h2l3%201h3c2-1%202-3-1-3l-17-5c-15-5-16-6-16-4m18%2020l-2%201c-2%200-2%200-2%2012l-1%2013c-2%201-3%200-1-1l1-2h-1l-1-3%201-5v-1l-2%201c-1%201-1%201-1-3l-1-7c0-3%200-3-1-1l-2%202c-1%200-3%203-2%204l3-1c2-1%202-1%202%203%200%202-1%203-3%204l-3%202-1-2c0-5%200-5-2-5-2%201-3%201-3-1s-1-2-2%200l-1%201c3-1%202%201-1%202-1%201-2%201-1%202l3-1c1-1%201-1%201%205-1%205%200%206%201%204h1l1-1h6c2%200%202%200%201%201l-4%202-3%202-8%205c-6%203-10%207-6%206h1c-2%202-3%202-10-1-15-6-18-7-17-8%200-2-2-3-4-2v1l1%202c0%201%201%202%205%203l4%202%202%201-1%202-2%206c0%202-1%203-3%204-3%202-5%205-3%204l4-2%201%201c-2%202%203%202%208%200%208-3%209-4%207-5%200-1-2-1-5%201-6%204-7%204-8-1l1-4%201%204c0%204%201%204%203%200%201-4%201-4-1-4v-1l1-2c0-2%201-2%206%200%204%202%205%202%204%205v4l3-1c2-2%204-2%205-1h8c2%200%204%200%206-2l4-2%201-3c0-1%201-3%205-5l5-3v-7c0-6%200-7%201-6l1%202c-2%201-1%203%201%202h2l-2%204c-2%204-2%204%200%204l4-2%202-1%202-2c4-1%206-3%205-9l1-8v-1l-1-3c-1-3-4-6-4-4h-5c-1-1-1%200-1%203%200%204-2%206-2%202%200-3-2-7-2-5m167%2031c-10%206-12%208-12%2013l-1%206v3l1%202v7h3l2-4%204-4c0-2%200-2-4-1-4%203-4%201-1-3s5-5%209-4h8l5-2h5l2%202h9c1-1%200-3-3-4l-2-3c0-3%200-4-2-5s-3-2-3-4c-1-3-1-3-1%200s0%204-2%204c-4-2-6-2-8-1h-1l1-2c2%200%201-5%200-5l-9%205m-98%2032l2%201c2%200%202%201%202%2010v10l-3-1c-5%200-6-5-1-5l4-1h-4c-2%200-3%200-3-2l-2-2-2%201c0%202-1%202-6%200-9-3-8-4-8%2017v21c-1%201%201%201%208%201%208%200%2011-2%203-2l6-1%2019-2%208-1c-1%201-2%202-1%203v3h46v-8c0-7%200-7-2-6l-9-2-6-2c-1%206-3%2010-8%2012-5%203-10%201-5-2h3v1l2-1-1-1v-2c2-1%202-7%201-7l-4%202h-6c-2-1-22%205-24%207s-5%203-5%200l-2-1h-1v-1l-2-1c0-3%205-2%207%200h1l1-2v-2l1-1%201%201c-2%202%201%202%206%201%204-1%207-3%204-3l5-3c7-4%208-5%202-5l-10-1c-6%200-7%200-9%202l-2%202v-13l1-13%203-1-5-1-5%201m-35%2013l3%203c4%202%204%202%201%204-2%201-2%202-2%2015v15l1-14c0-10%201-14%202-15l1%201%201%201c2-2%203%200%202%202l-2%201-1%2011%201%208%202-4v7c2%200%205-8%203-8v-8l-1-4-2%201%201-2c4-3%202-10-4-14-4-3-6-3-6%200m-15%2025l-3%203%203-1h3v5c0%205%200%205%203%205l4-2%201-2%201-4c0-4%200-5-3-6-5-2-6-1-9%202'%20fill='%23fafafa'%20fill-rule='evenodd'/%3e%3c/svg%3e"},"seo":{"src":"/static/7e76a640f9382dc8a36ea033c8346b68/6050d/s3ManagerCover.png"}}}]}},"staticQueryHashes":["1609575157","2068910035","2361467917","2361467917","3838421970","500183989","5650841"]}