Squashed 'third_party/pico-sdk/' content from commit 2062372d2

Change-Id: Ic20f199d3ed0ea8d3a6a1bbf513f875ec7500cc6
git-subtree-dir: third_party/pico-sdk
git-subtree-split: 2062372d203b372849d573f252cf7c6dc2800c0a
Signed-off-by: Austin Schuh <austin.linux@gmail.com>
diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt
new file mode 100644
index 0000000..45fd1d6
--- /dev/null
+++ b/docs/CMakeLists.txt
@@ -0,0 +1,59 @@
+find_package(Doxygen QUIET)
+if (PICO_SDK_TOP_LEVEL_PROJECT AND ${DOXYGEN_FOUND})
+    set(PICO_BUILD_DOCS_DEFAULT 1)
+endif()
+option(PICO_BUILD_DOCS "Build HTML Doxygen docs" ${PICO_BUILD_DOCS_DEFAULT})
+
+if (DEFINED ENV{PICO_EXAMPLES_PATH} AND NOT PICO_EXAMPLES_PATH)
+    set(PICO_EXAMPLES_PATH $ENV{PICO_EXAMPLES_PATH})
+    message("Using PICO_EXAMPLES_PATH from environment ('${PICO_EXAMPLES_PATH}')")
+endif()
+
+if(PICO_BUILD_DOCS)
+    if(NOT DOXYGEN_FOUND)
+        message(FATAL_ERROR "Doxygen is needed to build the documentation.")
+    endif()
+
+    include(ExternalProject)
+
+    if(PICO_EXAMPLES_PATH)
+        get_filename_component(PICO_EXAMPLES_PATH "${PICO_EXAMPLES_PATH}" REALPATH BASE_DIR "${CMAKE_BINARY_DIR}")
+        if (EXISTS ${PICO_EXAMPLES_PATH})
+            message("Documentation example code will come from ${PICO_EXAMPLES_PATH}")
+        else()
+            message(WARNING "Documentation example code configured to come from ${PICO_EXAMPLES_PATH}, but that path does not exist")
+        endif()
+        add_custom_target(doc-pico-examples)
+    else()
+        ExternalProject_Add(doc-pico-examples
+                GIT_REPOSITORY    https://github.com/raspberrypi/pico-examples
+                GIT_TAG           master
+                CONFIGURE_COMMAND ""
+                BUILD_COMMAND ""
+                INSTALL_COMMAND ""
+                )
+        ExternalProject_Get_property(doc-pico-examples SOURCE_DIR)
+        ExternalProject_Get_property(doc-pico-examples GIT_REPOSITORY)
+        ExternalProject_Get_property(doc-pico-examples GIT_TAG)
+        set(PICO_EXAMPLES_PATH ${SOURCE_DIR})
+        message("Documentation example code will come from git repo ${GIT_REPOSITORY}, branch ${GIT_TAG}")
+    endif()
+
+    set(DOXY_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/doxygen")
+    set(DOXY_INPUT_DIRS "${PICO_DOXYGEN_PATHS}")
+    set(DOXY_EXCLUDE_DIRS "${PICO_DOXYGEN_EXCLUDE_PATHS}")
+    set(DOXY_EXAMPLE_DIR "${PICO_EXAMPLES_PATH}")
+
+    set(doxyfile_in ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in)
+    set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
+
+    configure_file(${doxyfile_in} ${doxyfile} @ONLY)
+
+    add_custom_target(docs
+            COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
+            WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+            COMMENT "Generating API documentation with Doxygen"
+            VERBATIM)
+
+    add_dependencies(docs doc-pico-examples)
+endif()
diff --git a/docs/Doxyfile.in b/docs/Doxyfile.in
new file mode 100644
index 0000000..cc133f8
--- /dev/null
+++ b/docs/Doxyfile.in
@@ -0,0 +1,63 @@
+PROJECT_NAME            = "Raspberry Pi Pico SDK"
+PROJECT_BRIEF           = "Raspberry Pi Pico SDK documentation"
+PROJECT_NUMBER          = @PICO_SDK_VERSION_STRING@
+
+#STRIP_FROM_PATH        = @PROJECT_SOURCE_DIR@
+STRIP_FROM_PATH         = @DOXY_INPUT_DIRS@
+#                         @PROJECT_BINARY_DIR@
+#INPUT                  = @doxy_main_page@ \
+#                         @PROJECT_SOURCE_DIR@ \
+#                         @PROJECT_BINARY_DIR@
+
+FILE_PATTERNS          = *.h \
+                         *.cpp \
+                         *.c \
+                         *.S \
+                         *.s \
+                         *.md
+
+USE_MDFILE_AS_MAINPAGE = @PROJECT_SOURCE_DIR@/docs/mainpage.md
+LAYOUT_FILE = @PROJECT_SOURCE_DIR@/docs/DoxygenLayout.xml
+HTML_FOOTER = @PROJECT_SOURCE_DIR@/docs/footer.html
+HTML_HEADER = @PROJECT_SOURCE_DIR@/docs/header.html
+
+OPTIMIZE_OUTPUT_FOR_C = YES
+# HTML_EXTRA_STYLESHEET = @PROJECT_SOURCE_DIR@/docs/customdoxygen.css
+HTML_EXTRA_STYLESHEET  = @PROJECT_SOURCE_DIR@/docs/normalise.css @PROJECT_SOURCE_DIR@/docs/main.css @PROJECT_SOURCE_DIR@/docs/styles.css
+HTML_EXTRA_FILES       = @PROJECT_SOURCE_DIR@/docs/logo-mobile.svg @PROJECT_SOURCE_DIR@/docs/logo.svg @PROJECT_SOURCE_DIR@/docs/search.svg \
+                         @PROJECT_SOURCE_DIR@/docs/main.js @PROJECT_SOURCE_DIR@/docs/pico.jpg @PROJECT_SOURCE_DIR@/docs/rp2040.png
+GENERATE_TREEVIEW      = YES # This is needed as it wraps the content area in an HTML tag that we need to use
+HTML_COLORSTYLE_HUE = 350
+HTML_COLORSTYLE_SAT = 200
+HTML_COLORSTYLE_GAMMA = 150
+GENERATE_LATEX = NO
+GENERATE_XML = YES
+GROUP_GRAPHS = NO
+
+ALIASES += tag=@internal
+ALIASES += end=@internal
+
+OUTPUT_DIRECTORY       = @DOXY_OUTPUT_DIR@
+INPUT                  = @PROJECT_SOURCE_DIR@/docs/index.h @DOXY_INPUT_DIRS@ @PROJECT_SOURCE_DIR@/docs/
+
+#EXCLUDE               = @DOXY_EXCLUDE_DIRS@ @PROJECT_SOURCE_DIR@/src/rp2040
+EXCLUDE                = @DOXY_EXCLUDE_DIRS@
+RECURSIVE              = YES
+EXAMPLE_PATH           = @PICO_EXAMPLES_PATH@
+
+# This is needed as we have a number of static inline functions that need to be documented.
+EXTRACT_STATIC         = YES
+
+EXTRACT_ALL            = NO
+ALWAYS_DETAILED_SEC    = NO
+#REPEAT_BRIEF           = NO
+
+# Need these next options to ensure that functions with modifiers do not confuse the Doxygen parser.
+# And any further function modifiers here.
+MACRO_EXPANSION        = YES
+
+PREDEFINED             = __not_in_flash_func(x) \
+                         __time_critical_func(x) \
+                         __not_in_flash(x)= \
+                         __no_inline_not_in_flash(x)= \
+                         __attribute__(x)=
diff --git a/docs/DoxygenLayout.xml b/docs/DoxygenLayout.xml
new file mode 100644
index 0000000..6ba5dfc
--- /dev/null
+++ b/docs/DoxygenLayout.xml
@@ -0,0 +1,246 @@
+<doxygenlayout version="1.0">
+  <!-- Generated by doxygen 1.8.17 -->
+  <!-- Navigation index tabs for HTML output -->
+  <navindex>
+    <tab type="mainpage" visible="yes" title="Introduction"></tab>
+    <tab type="modules" visible="yes" title="API Documentation" intro="These are the libraries supplied in the Raspberry Pi Pico SDK"/>
+    <tab type="user" url="@ref examples_page" visible="yes" title="Examples" intro="Links to SDK examples"/>
+    <tab type="usergroup" url="@ref weblinks_page" visible="yes" title="Additional Documentation" intro="Links to datasheets and documentation">
+      <tab type="user" url="https://rptl.io/pico-datasheet" visible="yes" title="Raspberry Pi Pico Datasheet" intro=""/>
+      <tab type="user" url="https://rptl.io/rp2040-datasheet" visible="yes" title="RP2040 Datasheet" intro=""/>
+      <tab type="user" url="https://rptl.io/rp2040-design" visible="yes" title="Hardware design with RP2040" intro=""/>
+      <tab type="user" url="https://rptl.io/pico-c-sdk" visible="yes" title="Raspberry Pi Pico C/C++ SDK" intro=""/>
+      <tab type="user" url="https://rptl.io/pico-micropython" visible="yes" title="Raspberry Pi Pico Python SDK" intro=""/>
+      <tab type="user" url="https://rptl.io/pico-get-started" visible="yes" title="Getting started with Raspberry Pi Pico" intro=""/>
+      <tab type="user" url="https://rptl.io/pico-faq" visible="yes" title="Raspberry Pi Pico FAQ" intro=""/>
+    </tab>
+    <tab type="usergroup" url="@ref weblinks_page" visible="yes" title="Web" intro="useful weblinks">
+      <tab type="user" url="https://www.raspberrypi.com/" visible="yes" title="Raspberry Pi Site" intro=""/>
+      <tab type="user" url="https://rptl.io/rp2040-get-started" visible="yes" title="Raspberry Pi Pico Page" intro=""/>
+      <tab type="user" url="https://forums.raspberrypi.com/" visible="yes" title="Raspberry Pi Forums" intro=""/>
+      <tab type="user" url="https://github.com/raspberrypi/pico-sdk" visible="yes" title="Raspberry Pi Pico SDK on GitHub" intro=""/>
+      <tab type="user" url="https://github.com/raspberrypi/pico-examples" visible="yes" title="Pico Examples on GitHub" intro=""/>
+      <tab type="user" url="https://github.com/raspberrypi/pico-extras" visible="yes" title="Pico Extras on GitHub" intro=""/>
+      <tab type="user" url="https://github.com/raspberrypi/pico-playground" visible="yes" title="Pico Playground on GitHub" intro=""/>
+      <tab type="user" url="https://github.com/raspberrypi/pico-bootrom" visible="yes" title="Pico Bootrom on GitHub" intro=""/>
+    </tab>
+    <tab type="pages" visible="no" title="" intro=""/>
+    <tab type="namespaces" visible="yes" title="">
+      <tab type="namespacelist" visible="yes" title="" intro=""/>
+      <tab type="namespacemembers" visible="yes" title="" intro=""/>
+    </tab>
+    <tab type="interfaces" visible="yes" title="">
+      <tab type="interfacelist" visible="yes" title="" intro=""/>
+      <tab type="interfaceindex" visible="$ALPHABETICAL_INDEX" title=""/>
+      <tab type="interfacehierarchy" visible="yes" title="" intro=""/>
+    </tab>
+    <tab type="classes" visible="no" title="">
+      <tab type="classlist" visible="yes" title="" intro=""/>
+      <tab type="classindex" visible="$ALPHABETICAL_INDEX" title=""/>
+      <tab type="hierarchy" visible="yes" title="" intro=""/>
+      <tab type="classmembers" visible="yes" title="" intro=""/>
+    </tab>
+    <tab type="structs" visible="yes" title="">
+      <tab type="structlist" visible="yes" title="" intro=""/>
+      <tab type="structindex" visible="$ALPHABETICAL_INDEX" title=""/>
+    </tab>
+    <tab type="exceptions" visible="yes" title="">
+      <tab type="exceptionlist" visible="yes" title="" intro=""/>
+      <tab type="exceptionindex" visible="$ALPHABETICAL_INDEX" title=""/>
+      <tab type="exceptionhierarchy" visible="yes" title="" intro=""/>
+    </tab>
+    <tab type="files" visible="no" title="">
+      <tab type="filelist" visible="yes" title="" intro=""/>
+      <tab type="globals" visible="yes" title="" intro=""/>
+    </tab>
+    <tab type="examples" visible="yes" title="" intro=""/>
+  </navindex>
+
+  <!-- Layout definition for a class page -->
+  <class>
+    <briefdescription visible="yes"/>
+    <includes visible="$SHOW_INCLUDE_FILES"/>
+    <inheritancegraph visible="$CLASS_GRAPH"/>
+    <collaborationgraph visible="$COLLABORATION_GRAPH"/>
+    <memberdecl>
+      <nestedclasses visible="yes" title=""/>
+      <publictypes title=""/>
+      <services title=""/>
+      <interfaces title=""/>
+      <publicslots title=""/>
+      <signals title=""/>
+      <publicmethods title=""/>
+      <publicstaticmethods title=""/>
+      <publicattributes title=""/>
+      <publicstaticattributes title=""/>
+      <protectedtypes title=""/>
+      <protectedslots title=""/>
+      <protectedmethods title=""/>
+      <protectedstaticmethods title=""/>
+      <protectedattributes title=""/>
+      <protectedstaticattributes title=""/>
+      <packagetypes title=""/>
+      <packagemethods title=""/>
+      <packagestaticmethods title=""/>
+      <packageattributes title=""/>
+      <packagestaticattributes title=""/>
+      <properties title=""/>
+      <events title=""/>
+      <privatetypes title=""/>
+      <privateslots title=""/>
+      <privatemethods title=""/>
+      <privatestaticmethods title=""/>
+      <privateattributes title=""/>
+      <privatestaticattributes title=""/>
+      <friends title=""/>
+      <related title="" subtitle=""/>
+      <membergroups visible="yes"/>
+    </memberdecl>
+    <detaileddescription title=""/>
+    <memberdef>
+      <inlineclasses title=""/>
+      <typedefs title=""/>
+      <enums title=""/>
+      <services title=""/>
+      <interfaces title=""/>
+      <constructors title=""/>
+      <functions title=""/>
+      <related title=""/>
+      <variables title=""/>
+      <properties title=""/>
+      <events title=""/>
+    </memberdef>
+    <allmemberslink visible="yes"/>
+    <usedfiles visible="$SHOW_USED_FILES"/>
+    <authorsection visible="yes"/>
+  </class>
+
+  <!-- Layout definition for a namespace page -->
+  <namespace>
+    <briefdescription visible="yes"/>
+    <memberdecl>
+      <nestednamespaces visible="yes" title=""/>
+      <constantgroups visible="yes" title=""/>
+      <interfaces visible="yes" title=""/>
+      <classes visible="yes" title=""/>
+      <structs visible="yes" title=""/>
+      <exceptions visible="yes" title=""/>
+      <typedefs title=""/>
+      <sequences title=""/>
+      <dictionaries title=""/>
+      <enums title=""/>
+      <functions title=""/>
+      <variables title=""/>
+      <membergroups visible="yes"/>
+    </memberdecl>
+    <detaileddescription title=""/>
+    <memberdef>
+      <inlineclasses title=""/>
+      <typedefs title=""/>
+      <sequences title=""/>
+      <dictionaries title=""/>
+      <enums title=""/>
+      <functions title=""/>
+      <variables title=""/>
+    </memberdef>
+    <authorsection visible="yes"/>
+  </namespace>
+
+  <!-- Layout definition for a file page -->
+  <file>
+    <briefdescription visible="yes"/>
+    <includes visible="$SHOW_INCLUDE_FILES"/>
+    <includegraph visible="$INCLUDE_GRAPH"/>
+    <includedbygraph visible="$INCLUDED_BY_GRAPH"/>
+    <sourcelink visible="yes"/>
+    <memberdecl>
+      <interfaces visible="yes" title=""/>
+      <classes visible="yes" title=""/>
+      <structs visible="yes" title=""/>
+      <exceptions visible="yes" title=""/>
+      <namespaces visible="yes" title=""/>
+      <constantgroups visible="yes" title=""/>
+      <defines title=""/>
+      <typedefs title=""/>
+      <sequences title=""/>
+      <dictionaries title=""/>
+      <enums title=""/>
+      <functions title=""/>
+      <variables title=""/>
+      <membergroups visible="yes"/>
+    </memberdecl>
+    <detaileddescription title=""/>
+    <memberdef>
+      <inlineclasses title=""/>
+      <defines title=""/>
+      <typedefs title=""/>
+      <sequences title=""/>
+      <dictionaries title=""/>
+      <enums title=""/>
+      <functions title=""/>
+      <variables title=""/>
+    </memberdef>
+    <authorsection/>
+  </file>
+
+  <!-- Layout definition for a group page -->
+  <group>
+    <briefdescription visible="yes"/>
+    <groupgraph visible="$GROUP_GRAPHS"/>
+    <memberdecl>
+      <nestedgroups visible="yes" title=""/>
+      <dirs visible="yes" title=""/>
+      <files visible="yes" title=""/>
+      <namespaces visible="yes" title=""/>
+      <classes visible="yes" title=""/>
+      <defines title=""/>
+      <typedefs title=""/>
+      <sequences title=""/>
+      <dictionaries title=""/>
+      <enums title=""/>
+      <enumvalues title=""/>
+      <functions title=""/>
+      <variables title=""/>
+      <signals title=""/>
+      <publicslots title=""/>
+      <protectedslots title=""/>
+      <privateslots title=""/>
+      <events title=""/>
+      <properties title=""/>
+      <friends title=""/>
+      <membergroups visible="yes"/>
+    </memberdecl>
+    <detaileddescription title=""/>
+    <memberdef>
+      <pagedocs/>
+      <inlineclasses title=""/>
+      <defines title=""/>
+      <typedefs title=""/>
+      <sequences title=""/>
+      <dictionaries title=""/>
+      <enums title=""/>
+      <enumvalues title=""/>
+      <functions title=""/>
+      <variables title=""/>
+      <signals title=""/>
+      <publicslots title=""/>
+      <protectedslots title=""/>
+      <privateslots title=""/>
+      <events title=""/>
+      <properties title=""/>
+      <friends title=""/>
+    </memberdef>
+    <authorsection visible="yes"/>
+  </group>
+
+  <!-- Layout definition for a directory page -->
+  <directory>
+    <briefdescription visible="yes"/>
+    <directorygraph visible="yes"/>
+    <memberdecl>
+      <dirs visible="yes"/>
+      <files visible="yes"/>
+    </memberdecl>
+    <detaileddescription title=""/>
+  </directory>
+</doxygenlayout>
diff --git a/docs/examples.md b/docs/examples.md
new file mode 100644
index 0000000..2553591
--- /dev/null
+++ b/docs/examples.md
@@ -0,0 +1,21 @@
+## Examples Index {#examples_page}
+
+This page links to the various example code fragments in this documentation. For more complete examples, please see the [pico-examples](https://github.com/raspberrypi/pico-examples) repository, which contains complete buildable projects.
+
+ - [RTC example](@ref rtc_example)
+ - [UART example](@ref uart_example)
+ - [ADC example](@ref adc_example)
+ - [I2C example](@ref i2c_example)
+ - [Clock example](@ref clock_example)
+ - [Timer example](@ref timer_example)
+ - [Flash programming example](@ref flash_example)
+ - [Watchdog example](@ref watchdog_example)
+ - [Divider example](@ref divider_example)
+ - [PWM example](@ref pwm_example)
+ - [Multicore example](@ref multicore_example)
+ - [Reset example](@ref reset_example)
+
+
+All examples are "Copyright (c) 2020 Raspberry Pi (Trading) Ltd", and are released under a 3-Clause BSD licence. Briefly, this means you are free to use the example code
+as long as you retain the copyright notice. Full details on the licence can be found [here](https://opensource.org/licenses/BSD-3-Clause).
+
diff --git a/docs/footer.html b/docs/footer.html
new file mode 100644
index 0000000..377fd4a
--- /dev/null
+++ b/docs/footer.html
@@ -0,0 +1,5 @@
+
+	<script src="main.js"></script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/docs/header.html b/docs/header.html
new file mode 100644
index 0000000..32bb7eb
--- /dev/null
+++ b/docs/header.html
@@ -0,0 +1,64 @@
+<!-- HTML header for doxygen 1.8.20-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+
+	<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+	<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+	<meta name="generator" content="Doxygen $doxygenversion"/>
+	<meta name="viewport" content="width=device-width, initial-scale=1"/>
+
+	<!--BEGIN PROJECT_NAME--><title>$projectname: $title</title><!--END PROJECT_NAME-->
+	<!--BEGIN !PROJECT_NAME--><title>$title</title><!--END !PROJECT_NAME-->
+
+	<!-- <link href="$relpath^tabs.css" rel="stylesheet" type="text/css"/> -->
+	<script type="text/javascript" src="$relpath^jquery.js"></script>
+	<script type="text/javascript" src="$relpath^dynsections.js"></script>
+	$treeview
+	$search
+	$mathjax
+
+    <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500&display=swap" rel="stylesheet">
+	<link href="$relpath^$stylesheet" rel="stylesheet" type="text/css" />
+	$extrastylesheet
+
+</head>
+
+<body>
+
+
+	<div class="navigation-mobile">
+		<div class="logo--mobile">
+			<a href="/"><img src="logo-mobile.svg" alt="Raspberry Pi"></a>
+		</div>
+		<div class="navigation-toggle">
+			<span class="line-1"></span>
+			<span class="line-2">
+				<p>Menu Toggle</p>
+			</span>
+			<span class="line-3"></span>
+		</div>
+	</div>
+
+
+
+	<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+
+		<div class="logo">
+			<a href="$relpath^index.html"> <img src="logo.svg" alt="Raspberry Pi"></a>
+			<span style="display: inline-block; margin-top: 10px;">
+				v$projectnumber
+			</span>
+		</div>
+
+
+		<div class="navigation-footer">
+			<img src="logo-mobile.svg" alt="Raspberry Pi">
+			<a href="https://www.raspberrypi.com/" target="_blank">By Raspberry Pi (Trading) Ltd</a>
+		</div>
+<!-- 		<div class="search">
+			<form>
+				<input type="search" name="search" id="search" placeholder="Search">
+				<input type="submit" value="Search">
+			</form>
+		</div> -->
diff --git a/docs/index.h b/docs/index.h
new file mode 100644
index 0000000..c7ef735
--- /dev/null
+++ b/docs/index.h
@@ -0,0 +1,90 @@
+/*
+ * Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+// Here to organize documentation order
+
+/**
+ * \defgroup hardware Hardware APIs
+ * This group of libraries provides a thin and efficient C API / abstractions to access the RP2040 hardware without having to read and write
+ * hardware registers directly.
+ * @{
+ * \defgroup hardware_adc hardware_adc
+ * \defgroup hardware_base hardware_base
+ * \defgroup hardware_claim hardware_claim
+ * \defgroup hardware_clocks hardware_clocks
+ * \defgroup hardware_divider hardware_divider
+ * \defgroup hardware_dma hardware_dma
+ * \defgroup hardware_exception hardware_exception
+ * \defgroup hardware_flash hardware_flash
+ * \defgroup hardware_gpio hardware_gpio
+ * \defgroup hardware_i2c hardware_i2c
+ * \defgroup hardware_interp hardware_interp
+ * \defgroup hardware_irq hardware_irq
+ * \defgroup hardware_pio hardware_pio
+ * \defgroup hardware_pll hardware_pll
+ * \defgroup hardware_pwm hardware_pwm
+ * \defgroup hardware_resets hardware_resets
+ * \defgroup hardware_rtc hardware_rtc
+ * \defgroup hardware_spi hardware_spi
+ * \defgroup hardware_sync hardware_sync
+ * \defgroup hardware_timer hardware_timer
+ * \defgroup hardware_uart hardware_uart
+ * \defgroup hardware_vreg hardware_vreg
+ * \defgroup hardware_watchdog hardware_watchdog
+ * \defgroup hardware_xosc hardware_xosc
+ * @}
+ *
+ * \defgroup high_level High Level APIs
+ * This group of libraries provide higher level functionality that isn't hardware related or provides a richer
+ * set of functionality above the basic hardware interfaces
+ * @{
+ * \defgroup pico_multicore pico_multicore
+ * \defgroup pico_stdlib pico_stdlib
+ * \defgroup pico_sync pico_sync
+ * \defgroup pico_time pico_time
+ * \defgroup pico_unique_id pico_unique_id
+ * \defgroup pico_util pico_util
+ * @}
+ *
+ * \defgroup third_party Third-party Libraries
+ * Third party libraries for implementing high level functionality.
+ * @{
+ * \defgroup tinyusb_device tinyusb_device
+ * \defgroup tinyusb_host tinyusb_host
+ * @}
+ *
+ * \defgroup runtime Runtime Infrastructure
+ * Libraries that are used to provide efficient implementation of certain
+ * language level and C library functions, as well as CMake INTERFACE libraries
+ * abstracting the compilation and link steps in the SDK
+ * @{
+ * \defgroup boot_stage2 boot_stage2
+ * \defgroup pico_base pico_base
+ * \defgroup pico_binary_info pico_binary_info
+ * \defgroup pico_bit_ops pico_bit_ops
+ * \defgroup pico_bootrom pico_bootrom
+ * \defgroup pico_bootsel_via_double_reset pico_bootsel_via_double_reset
+ * \defgroup pico_cxx_options pico_cxx_options
+ * \defgroup pico_divider pico_divider
+ * \defgroup pico_double pico_double
+ * \defgroup pico_float pico_float
+ * \defgroup pico_int64_ops pico_int64_ops
+ * \defgroup pico_malloc pico_malloc
+ * \defgroup pico_mem_ops pico_mem_ops
+ * \defgroup pico_platform pico_platform
+ * \defgroup pico_printf pico_printf
+ * \defgroup pico_runtime pico_runtime
+ * \defgroup pico_stdio pico_stdio
+ * \defgroup pico_standard_link pico_standard_link
+ * @}
+ *
+ * \defgroup misc External API Headers
+ * Headers for interfaces that are shared with code outside of the SDK
+ * @{
+ * \defgroup boot_picoboot boot_picoboot
+ * \defgroup boot_uf2 boot_uf2
+ * @}
+*/
diff --git a/docs/logo-mobile.svg b/docs/logo-mobile.svg
new file mode 100644
index 0000000..27192be
--- /dev/null
+++ b/docs/logo-mobile.svg
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="570" height="720">
+ <path d="m 158.375,1.65625 c -3.6193,0.1123192 -7.51715,1.4493266 -11.9375,4.9375 C 135.61054,2.4174496 125.11041,0.9665612 115.71875,9.46875 101.22489,7.5879922 96.508461,11.469494 92.9375,16 89.754953,15.934135 69.118652,12.72793 59.65625,26.84375 35.874602,24.030329 28.359472,40.831625 36.875,56.5 c -4.856911,7.518955 -9.889503,14.947226 1.46875,29.28125 -4.018006,7.983514 -1.527431,16.64403 7.9375,27.125 -2.497857,11.2226 2.412077,19.14086 11.21875,25.3125 -1.64709,15.35756 14.083505,24.28743 18.78125,27.46875 1.803677,8.94868 5.56291,17.3927 23.53125,22.0625 2.96323,13.3361 13.76206,15.63906 24.21875,18.4375 -34.561929,20.08954 -64.20067,46.52266 -64,111.375 l -5.0625,9.03125 C 15.337882,350.69604 -20.316547,428.16001 35.4375,491.125 c 3.641871,19.70838 9.749589,33.86396 15.1875,49.53125 8.133834,63.13058 61.21763,92.69161 75.21875,96.1875 20.51653,15.62812 42.36818,30.45672 71.9375,40.84375 27.87515,28.74946 58.07388,39.7064 88.4375,39.6875 0.44515,-2.8e-4 0.89853,0.005 1.34375,0 30.36363,0.0189 60.56235,-10.93804 88.4375,-39.6875 29.56932,-10.38703 51.42097,-25.21563 71.9375,-40.84375 14.00112,-3.49589 67.08492,-33.05692 75.21875,-96.1875 5.43791,-15.66729 11.54562,-29.82287 15.1875,-49.53125 55.75404,-62.96499 20.09961,-140.42896 -19.53125,-164.53125 L 513.75,317.5625 c 0.20067,-64.85234 -29.43807,-91.28546 -64,-111.375 10.45669,-2.79844 21.25552,-5.1014 24.21875,-18.4375 17.96834,-4.6698 21.72758,-13.11382 23.53125,-22.0625 4.69775,-3.18132 20.42834,-12.11119 18.78125,-27.46875 8.80668,-6.17164 13.71661,-14.0899 11.21875,-25.3125 9.46494,-10.48097 11.9555,-19.141487 7.9375,-27.125 C 546.79575,71.447226 541.76316,64.018955 536.90625,56.5 545.42178,40.831625 537.90665,24.030329 514.125,26.84375 504.6626,12.72793 484.0263,15.934135 480.84375,16 477.27279,11.469494 472.55636,7.587992 458.0625,9.46875 448.67084,0.96656132 438.17071,2.41745 427.34375,6.59375 414.48455,-3.5536631 405.97149,4.580454 396.25,7.65625 380.67615,2.568472 377.11698,9.5371578 369.46875,12.375 352.4935,8.7869238 347.33315,16.598532 339.1875,24.84375 l -9.46875,-0.1875 c -25.61054,15.093115 -38.33378,45.825501 -42.84375,61.625 -4.51206,-15.801979 -17.20647,-46.534542 -42.8125,-61.625 l -9.46875,0.1875 C 226.4481,16.598532 221.28775,8.7869235 204.3125,12.375 196.66427,9.5371583 193.1051,2.5684729 177.53125,7.65625 c -6.37973,-2.0184911 -12.24667,-6.2144276 -19.15625,-6 z" style="fill:#000000" />
+ <path d="m 107.39184,68.055583 c 67.94767,35.031357 107.44689,63.368967 129.08717,87.504467 -11.08235,44.41759 -68.89638,46.44464 -90.03559,45.19858 4.32842,-2.01474 7.93988,-4.42778 9.22051,-8.13574 -5.30449,-3.76981 -24.11289,-0.39719 -37.24363,-7.77416 5.04407,-1.04499 7.40348,-2.06302 9.76289,-5.78542 -12.40571,-3.9567 -25.76862,-7.36642 -33.627746,-13.92116 4.241253,0.0524 8.201156,0.9488 13.740366,-2.89271 -11.111694,-5.98819 -22.969108,-10.73351 -32.18139,-19.88738 5.745213,-0.14063 11.939452,-0.0568 13.740371,-2.16953 -10.17044,-6.30068 -18.751242,-13.30787 -25.853592,-20.97215 8.039979,0.97052 11.435284,0.13478 13.378782,-1.26556 -7.687795,-7.87419 -17.417559,-14.52319 -22.056911,-24.22644 5.969606,2.057484 11.431249,2.84506 15.36752,-0.180795 -2.612365,-5.893453 -13.805413,-9.369618 -20.248967,-23.141676 6.284359,0.609377 12.949606,1.371108 14.282753,0 C 61.802068,58.517346 56.796919,51.835885 51.887978,44.913906 65.338021,44.714177 85.715734,44.966253 84.792549,43.82914 l -8.31654,-8.497335 c 13.137617,-3.537241 26.580651,0.568164 36.339661,3.615887 4.38186,-3.457681 -0.0776,-7.82998 -5.42383,-12.294015 11.16496,1.490646 21.25382,4.057389 30.37345,7.593362 4.87238,-4.399329 -3.16389,-8.798658 -7.05098,-13.197987 17.24936,3.272568 24.55716,7.87068 31.81981,12.47481 5.26935,-5.050799 0.30166,-9.343299 -3.2543,-13.740371 13.00566,4.817048 19.70478,11.035551 26.75756,17.175463 2.39119,-3.227053 6.07494,-5.592408 1.62715,-13.378781 9.23416,5.322725 16.18926,11.59506 21.33374,18.621817 5.71336,-3.637941 3.40387,-8.613023 3.43509,-13.197987 9.59665,7.806516 15.68687,16.11395 23.14168,24.226443 1.50169,-1.093437 2.81661,-4.80171 3.97747,-10.666867 22.89539,22.211815 55.24591,78.158241 8.31654,100.340861 C 207.95028,109.95728 160.25292,86.016909 107.39184,68.055583 z" style="fill:#75a928" />
+ <path d="M 467.92487,68.055583 C 399.9772,103.08694 360.47798,131.42455 338.8377,155.56005 c 11.08235,44.41759 68.89638,46.44464 90.03559,45.19858 -4.32842,-2.01474 -7.93988,-4.42778 -9.22051,-8.13574 5.30449,-3.76981 24.11289,-0.39719 37.24363,-7.77416 -5.04407,-1.04499 -7.40348,-2.06302 -9.76289,-5.78542 12.40571,-3.9567 25.76862,-7.36642 33.62775,-13.92116 -4.24126,0.0524 -8.20116,0.9488 -13.74037,-2.89271 11.11169,-5.98819 22.96911,-10.73351 32.18139,-19.88738 -5.74521,-0.14063 -11.93945,-0.0568 -13.74037,-2.16953 10.17044,-6.30068 18.75124,-13.30787 25.85359,-20.97215 -8.03998,0.97052 -11.43528,0.13478 -13.37878,-1.26556 7.68779,-7.87419 17.41756,-14.52319 22.05691,-24.22644 -5.96961,2.057484 -11.43125,2.84506 -15.36752,-0.180795 2.61237,-5.893453 13.80541,-9.369618 20.24897,-23.141676 -6.28436,0.609377 -12.94961,1.371108 -14.28276,0 2.92231,-11.888563 7.92746,-18.570024 12.8364,-25.492003 -13.45004,-0.199729 -33.82775,0.05235 -32.90457,-1.084766 l 8.31654,-8.497335 c -13.13762,-3.537241 -26.58065,0.568164 -36.33966,3.615887 -4.38186,-3.457681 0.0776,-7.82998 5.42383,-12.294015 -11.16496,1.490646 -21.25382,4.057389 -30.37345,7.593362 -4.87238,-4.399329 3.16389,-8.798658 7.05098,-13.197987 -17.24936,3.272568 -24.55716,7.87068 -31.81981,12.47481 -5.26935,-5.050799 -0.30166,-9.343299 3.2543,-13.740371 -13.00566,4.817048 -19.70478,11.035551 -26.75756,17.175463 -2.39119,-3.227053 -6.07494,-5.592408 -1.62715,-13.378781 -9.23416,5.322725 -16.18926,11.59506 -21.33374,18.621817 -5.71336,-3.637941 -3.40387,-8.613023 -3.43509,-13.197987 -9.59665,7.806516 -15.68687,16.11395 -23.14168,24.226443 -1.50169,-1.093437 -2.81661,-4.80171 -3.97747,-10.666867 -22.89539,22.211815 -55.24591,78.158241 -8.31654,100.340861 39.91877,-32.94716 87.61613,-56.887531 140.47721,-74.848857 z" style="fill:#75a928" />
+ <path d="m 365.2046,521.84937 a 71.956154,66.532318 0 1 1 -143.91231,0 71.956154,66.532318 0 1 1 143.91231,0 z" transform="matrix(1.131107,0,0,1.1280497,-43.139135,-68.310983)" style="fill:#bc1142" />
+ <path d="m 262.84091,276.64774 a 61.875,28.125 0 1 1 -123.75,0 61.875,28.125 0 1 1 123.75,0 z" transform="matrix(0.76741684,-1.1613112,2.171115,1.4224368,-560.88858,217.68859)" style="fill:#bc1142" />
+ <path d="m 262.84091,276.64774 a 61.875,28.125 0 1 1 -123.75,0 61.875,28.125 0 1 1 123.75,0 z" transform="matrix(-0.76741684,-1.1613112,-2.171115,1.4224368,1134.8288,213.68859)" style="fill:#bc1142" />
+ <path d="M 72.910253,342.0878 C 109.32447,332.33088 85.201845,492.72431 55.576871,479.56357 22.990103,453.35089 12.493801,376.58814 72.910253,342.0878 z" style="fill:#bc1142" />
+ <path d="m 493.67828,340.0878 c -36.41422,-9.75692 -12.2916,150.63651 17.33338,137.47577 32.58677,-26.21268 43.08307,-102.97543 -17.33338,-137.47577 z" style="fill:#bc1142" />
+ <path d="m 369.97158,220.6534 c 62.83486,-10.61013 115.11594,26.72229 113.01138,94.85796 -2.06693,26.12112 -136.15872,-90.96907 -113.01138,-94.85796 z" style="fill:#bc1142" />
+ <path d="M 196.35975,218.6534 C 133.52489,208.04327 81.24381,245.37569 83.34837,313.51136 85.4153,339.63248 219.50709,222.54229 196.35975,218.6534 z" style="fill:#bc1142" />
+ <path d="m 286.61932,202.75568 c -37.50259,-0.97548 -73.49548,27.83418 -73.58158,44.54443 -0.10462,20.30426 29.6512,41.09266 73.83726,41.62035 45.12305,0.32321 73.91561,-16.64049 74.0611,-37.59409 0.16484,-23.73996 -41.03879,-48.93744 -74.31678,-48.57069 z" style="fill:#bc1142" />
+ <path d="m 288.90937,619.11675 c 32.69744,-1.42711 76.57083,10.53196 76.6568,26.39598 0.5427,15.4052 -39.78969,50.21055 -78.82634,49.53765 -40.42729,1.74391 -80.06908,-33.11559 -79.54951,-45.19859 -0.60506,-17.71593 49.226,-31.54796 81.71905,-30.73504 z" style="fill:#bc1142" />
+ <path d="m 168.13874,525.10369 c 23.2791,28.04573 33.89066,77.31899 14.46355,91.84353 -18.37917,11.08784 -63.01228,6.52162 -94.736237,-39.05157 -21.395052,-38.24168 -18.637584,-77.15663 -3.615887,-88.58924 22.464424,-13.68429 57.173424,4.79902 83.888574,35.79728 z" style="fill:#bc1142" />
+ <path d="m 405.0209,516.21177 c -25.18682,29.50165 -39.21227,83.30951 -20.83785,100.6428 17.56828,13.46361 64.7292,11.58162 99.56566,-36.75574 25.29599,-32.46471 16.82013,-86.68225 2.37077,-101.07511 -21.46408,-16.60213 -52.27691,4.64489 -81.09858,37.18805 z" style="fill:#bc1142" />
+</svg>
diff --git a/docs/logo.svg b/docs/logo.svg
new file mode 100644
index 0000000..86a2a40
--- /dev/null
+++ b/docs/logo.svg
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 24.3.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Layer_1"
+   x="0px"
+   y="0px"
+   viewBox="0 0 231.43986 61.396812"
+   xml:space="preserve"
+   sodipodi:docname="logo.svg"
+   width="231.43987"
+   height="61.39682"
+   inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
+   id="metadata6202"><rdf:RDF><cc:Work
+       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
+   id="defs6200">
+
+	</defs><sodipodi:namedview
+   pagecolor="#ffffff"
+   bordercolor="#666666"
+   borderopacity="1"
+   objecttolerance="10"
+   gridtolerance="10"
+   guidetolerance="10"
+   inkscape:pageopacity="0"
+   inkscape:pageshadow="2"
+   inkscape:window-width="1920"
+   inkscape:window-height="1081"
+   id="namedview6198"
+   showgrid="false"
+   inkscape:zoom="3.1460265"
+   inkscape:cx="146.61494"
+   inkscape:cy="35.501241"
+   inkscape:window-x="0"
+   inkscape:window-y="32"
+   inkscape:window-maximized="1"
+   inkscape:current-layer="Layer_1" />
+<style
+   type="text/css"
+   id="style6081">
+	.st0{enable-background:new    ;}
+	.st1{fill:#1E1E1E;}
+	.st2{fill:#C31C4A;}
+	.st3{fill:#6ABF4B;}
+</style>
+<g
+   id="g6332"
+   transform="matrix(0.63209031,0,0,0.63209031,-0.16434348,-45.049552)"><g
+     transform="translate(-73.51,57.850753)"
+     style="enable-background:new"
+     id="g6105"
+     class="st0">
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6083"
+   d="M 85.34,42.72 H 80.21 V 54.16 H 73.77 V 22.91 h 11.61 c 3.69,0 6.54,0.82 8.54,2.47 2,1.65 3.01,3.97 3.01,6.98 0,2.13 -0.46,3.91 -1.38,5.33 -0.92,1.42 -2.32,2.56 -4.2,3.4 l 6.76,12.77 v 0.3 H 91.2 Z M 80.21,37.5 h 5.2 c 1.62,0 2.87,-0.41 3.76,-1.23 0.89,-0.82 1.33,-1.96 1.33,-3.4 0,-1.47 -0.42,-2.63 -1.26,-3.48 -0.84,-0.84 -2.12,-1.27 -3.85,-1.27 h -5.17 v 9.38 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6085"
+   d="m 114.88,54.16 c -0.29,-0.56 -0.49,-1.25 -0.62,-2.08 -1.5,1.67 -3.46,2.51 -5.86,2.51 -2.28,0 -4.16,-0.66 -5.66,-1.98 -1.5,-1.32 -2.24,-2.98 -2.24,-4.98 0,-2.46 0.91,-4.35 2.74,-5.67 1.83,-1.32 4.46,-1.98 7.91,-2 H 114 v -1.33 c 0,-1.07 -0.28,-1.93 -0.83,-2.58 -0.55,-0.64 -1.42,-0.97 -2.61,-0.97 -1.04,0 -1.86,0.25 -2.46,0.75 -0.59,0.5 -0.89,1.19 -0.89,2.06 h -6.2 c 0,-1.35 0.42,-2.59 1.25,-3.74 0.83,-1.15 2,-2.04 3.52,-2.69 1.52,-0.65 3.22,-0.98 5.11,-0.98 2.86,0 5.13,0.72 6.82,2.16 1.68,1.44 2.52,3.46 2.52,6.06 v 10.1 c 0.01,2.2 0.32,3.87 0.92,5 v 0.37 z m -5.13,-4.31 c 0.92,0 1.76,-0.2 2.53,-0.61 0.77,-0.41 1.35,-0.96 1.72,-1.64 v -4 h -2.32 c -3.11,0 -4.76,1.07 -4.96,3.22 l -0.02,0.36 c 0,0.77 0.27,1.41 0.82,1.91 0.54,0.51 1.29,0.76 2.23,0.76 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6087"
+   d="m 137.57,47.74 c 0,-0.76 -0.38,-1.36 -1.13,-1.79 -0.75,-0.44 -1.96,-0.83 -3.62,-1.17 -5.52,-1.16 -8.29,-3.51 -8.29,-7.04 0,-2.06 0.85,-3.78 2.57,-5.16 1.71,-1.38 3.95,-2.07 6.71,-2.07 2.95,0 5.31,0.69 7.07,2.08 1.77,1.39 2.65,3.19 2.65,5.41 h -6.2 c 0,-0.89 -0.29,-1.62 -0.86,-2.2 -0.57,-0.58 -1.47,-0.87 -2.68,-0.87 -1.04,0 -1.85,0.24 -2.43,0.71 -0.57,0.47 -0.86,1.07 -0.86,1.8 0,0.69 0.33,1.24 0.98,1.66 0.65,0.42 1.75,0.79 3.3,1.09 1.55,0.3 2.85,0.65 3.91,1.04 3.28,1.2 4.92,3.28 4.92,6.25 0,2.12 -0.91,3.83 -2.73,5.14 -1.82,1.31 -4.17,1.96 -7.04,1.96 -1.95,0 -3.67,-0.35 -5.18,-1.04 -1.51,-0.69 -2.69,-1.65 -3.55,-2.85 -0.86,-1.21 -1.29,-2.52 -1.29,-3.92 h 5.88 c 0.06,1.1 0.46,1.95 1.22,2.53 0.76,0.59 1.77,0.88 3.05,0.88 1.19,0 2.09,-0.23 2.69,-0.68 0.61,-0.44 0.91,-1.03 0.91,-1.76 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6089"
+   d="m 168.51,42.76 c 0,3.58 -0.81,6.44 -2.44,8.6 -1.62,2.15 -3.82,3.23 -6.58,3.23 -2.35,0 -4.24,-0.82 -5.69,-2.45 v 10.95 h -6.2 V 30.93 h 5.75 l 0.21,2.28 c 1.5,-1.8 3.46,-2.71 5.88,-2.71 2.86,0 5.09,1.06 6.68,3.18 1.59,2.12 2.38,5.04 2.38,8.76 z m -6.21,-0.45 c 0,-2.16 -0.38,-3.83 -1.15,-5 -0.77,-1.17 -1.88,-1.76 -3.34,-1.76 -1.95,0 -3.28,0.75 -4.01,2.23 v 9.51 c 0.76,1.53 2.11,2.3 4.06,2.3 2.96,0 4.44,-2.43 4.44,-7.28 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6091"
+   d="m 193.28,42.76 c 0,3.72 -0.79,6.62 -2.38,8.71 -1.59,2.08 -3.81,3.12 -6.65,3.12 -2.52,0 -4.53,-0.97 -6.03,-2.9 l -0.28,2.47 h -5.58 V 21.19 h 6.2 v 11.83 c 1.43,-1.67 3.31,-2.51 5.65,-2.51 2.83,0 5.06,1.04 6.67,3.12 1.61,2.08 2.42,5.01 2.42,8.79 v 0.34 z m -6.2,-0.45 c 0,-2.35 -0.37,-4.06 -1.12,-5.14 -0.74,-1.08 -1.85,-1.62 -3.33,-1.62 -1.98,0 -3.33,0.81 -4.08,2.43 v 9.17 c 0.76,1.63 2.13,2.45 4.12,2.45 2,0 3.32,-0.99 3.95,-2.96 0.31,-0.96 0.46,-2.39 0.46,-4.33 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6093"
+   d="m 207.8,54.59 c -3.41,0 -6.18,-1.04 -8.32,-3.13 -2.14,-2.09 -3.21,-4.87 -3.21,-8.35 v -0.6 c 0,-2.33 0.45,-4.42 1.35,-6.26 0.9,-1.84 2.18,-3.26 3.83,-4.25 1.65,-0.99 3.54,-1.49 5.66,-1.49 3.18,0 5.68,1 7.5,3.01 1.82,2.01 2.74,4.84 2.74,8.52 v 2.53 h -14.79 c 0.2,1.52 0.81,2.73 1.81,3.65 1,0.92 2.29,1.37 3.83,1.37 2.39,0 4.26,-0.87 5.6,-2.6 l 3.05,3.41 c -0.93,1.32 -2.19,2.34 -3.78,3.08 -1.58,0.74 -3.34,1.11 -5.27,1.11 z m -0.71,-19.08 c -1.23,0 -2.23,0.42 -3,1.25 -0.77,0.83 -1.26,2.03 -1.47,3.58 h 8.63 v -0.5 c -0.03,-1.38 -0.4,-2.45 -1.12,-3.2 -0.71,-0.76 -1.73,-1.13 -3.04,-1.13 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6095"
+   d="m 233.92,36.75 c -0.84,-0.12 -1.59,-0.17 -2.23,-0.17 -2.35,0 -3.89,0.79 -4.62,2.38 v 15.2 h -6.21 V 30.93 h 5.86 l 0.17,2.77 c 1.25,-2.13 2.97,-3.2 5.17,-3.2 0.69,0 1.33,0.09 1.93,0.28 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6097"
+   d="m 249.96,36.75 c -0.84,-0.12 -1.59,-0.17 -2.23,-0.17 -2.35,0 -3.88,0.79 -4.62,2.38 v 15.2 h -6.2 V 30.93 h 5.86 l 0.17,2.77 c 1.25,-2.13 2.97,-3.2 5.17,-3.2 0.69,0 1.33,0.09 1.93,0.28 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6099"
+   d="m 262,45.38 4.29,-14.45 h 6.66 l -9.34,26.83 -0.51,1.22 c -1.39,3.03 -3.68,4.55 -6.87,4.55 -0.9,0 -1.82,-0.14 -2.75,-0.41 v -4.7 l 0.95,0.02 c 1.17,0 2.05,-0.18 2.63,-0.54 0.58,-0.36 1.03,-0.95 1.36,-1.78 l 0.73,-1.91 -8.14,-23.29 h 6.68 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6101"
+   d="m 293.2,43.15 v 11.01 h -6.44 V 22.91 h 12.19 c 2.35,0 4.41,0.43 6.19,1.29 1.78,0.86 3.15,2.08 4.11,3.66 0.96,1.58 1.44,3.38 1.44,5.4 0,3.06 -1.05,5.48 -3.14,7.25 -2.09,1.77 -5,2.65 -8.71,2.65 h -5.64 z m 0,-5.22 h 5.75 c 1.7,0 3,-0.4 3.9,-1.2 0.89,-0.8 1.34,-1.95 1.34,-3.44 0,-1.53 -0.45,-2.77 -1.35,-3.71 -0.9,-0.94 -2.15,-1.43 -3.74,-1.46 h -5.9 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6103"
+   d="m 314.66,24.92 c 0,-0.93 0.31,-1.7 0.93,-2.3 0.62,-0.6 1.47,-0.9 2.54,-0.9 1.06,0 1.9,0.3 2.53,0.9 0.63,0.6 0.94,1.37 0.94,2.3 0,0.94 -0.32,1.72 -0.96,2.32 -0.64,0.6 -1.48,0.9 -2.52,0.9 -1.04,0 -1.89,-0.3 -2.52,-0.9 -0.62,-0.6 -0.94,-1.37 -0.94,-2.32 z m 6.59,29.24 h -6.23 V 30.93 h 6.23 z"
+   class="st1" />
+		</g><g
+     transform="translate(-73.51,57.850753)"
+     style="enable-background:new"
+     id="g6115"
+     class="st0">
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6107"
+   d="m 352.17,41.43 v 12.73 h -2.64 V 22.91 h 10.65 c 3.25,0 5.81,0.83 7.7,2.49 1.88,1.66 2.82,3.94 2.82,6.85 0,2.93 -0.91,5.2 -2.72,6.79 -1.81,1.59 -4.43,2.39 -7.87,2.39 z m 0,-2.23 h 8.01 c 2.56,0 4.52,-0.61 5.86,-1.83 1.35,-1.22 2.02,-2.92 2.02,-5.1 0,-2.16 -0.67,-3.89 -2.01,-5.17 -1.34,-1.28 -3.24,-1.94 -5.7,-1.97 h -8.18 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6109"
+   d="m 375.85,24.23 c 0,-0.48 0.16,-0.89 0.47,-1.23 0.32,-0.33 0.74,-0.5 1.29,-0.5 0.55,0 0.98,0.17 1.3,0.5 0.32,0.33 0.48,0.74 0.48,1.23 0,0.48 -0.16,0.89 -0.48,1.22 -0.32,0.33 -0.75,0.49 -1.3,0.49 -0.55,0 -0.97,-0.16 -1.29,-0.49 -0.31,-0.33 -0.47,-0.74 -0.47,-1.22 z m 3.03,29.93 H 376.3 V 30.93 h 2.58 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6111"
+   d="m 394.44,52.42 c 1.79,0 3.29,-0.5 4.5,-1.51 1.21,-1.01 1.86,-2.32 1.96,-3.92 h 2.47 c -0.07,1.42 -0.52,2.71 -1.33,3.88 -0.82,1.17 -1.9,2.08 -3.25,2.74 -1.35,0.66 -2.8,0.99 -4.35,0.99 -3.05,0 -5.46,-1.06 -7.25,-3.18 -1.79,-2.12 -2.67,-4.97 -2.67,-8.54 V 42.1 c 0,-2.29 0.4,-4.31 1.2,-6.08 0.8,-1.77 1.95,-3.12 3.45,-4.08 1.5,-0.96 3.24,-1.44 5.25,-1.44 2.55,0 4.65,0.76 6.3,2.28 1.65,1.52 2.54,3.51 2.65,5.99 h -2.47 c -0.11,-1.82 -0.77,-3.28 -1.96,-4.4 -1.2,-1.12 -2.7,-1.67 -4.52,-1.67 -2.32,0 -4.12,0.84 -5.4,2.51 -1.28,1.67 -1.92,4.02 -1.92,7.04 V 43 c 0,2.96 0.64,5.27 1.92,6.93 1.28,1.66 3.09,2.49 5.42,2.49 z"
+   class="st1" />
+			<path
+   style="fill:#1e1e1e"
+   inkscape:connector-curvature="0"
+   id="path6113"
+   d="m 407.08,42.21 c 0,-2.23 0.43,-4.24 1.3,-6.03 0.87,-1.79 2.09,-3.18 3.67,-4.18 1.58,-0.99 3.37,-1.49 5.38,-1.49 3.09,0 5.6,1.08 7.51,3.25 1.91,2.17 2.88,5.04 2.88,8.62 v 0.54 c 0,2.25 -0.43,4.27 -1.3,6.06 -0.87,1.79 -2.09,3.18 -3.66,4.15 -1.57,0.97 -3.37,1.46 -5.39,1.46 -3.08,0 -5.58,-1.08 -7.5,-3.25 -1.92,-2.17 -2.89,-5.04 -2.89,-8.62 z m 2.58,0.7 c 0,2.78 0.72,5.06 2.16,6.84 1.44,1.78 3.32,2.67 5.66,2.67 2.32,0 4.2,-0.89 5.64,-2.67 1.44,-1.78 2.16,-4.13 2.16,-7.05 v -0.49 c 0,-1.77 -0.33,-3.4 -0.99,-4.87 -0.66,-1.47 -1.58,-2.62 -2.77,-3.42 -1.19,-0.81 -2.55,-1.21 -4.08,-1.21 -2.29,0 -4.16,0.9 -5.6,2.69 -1.45,1.8 -2.17,4.15 -2.17,7.05 v 0.46 z"
+   class="st1" />
+		</g><path
+     style="fill:#c31c4a"
+     inkscape:connector-curvature="0"
+     id="path6117"
+     d="m 274.43,121.33075 c -6.39,0 -11.58,-5.2 -11.58,-11.58 V 82.850753 c 0,-6.39 5.2,-11.58 11.58,-11.58 h 80.4 c 6.39,0 11.58,5.2 11.58,11.58 v 26.799997 c 0,6.39 -5.2,11.58 -11.58,11.58 h -79.02 z m -1.33,-2.86 h 81.73 c 4.86,0 8.82,-3.96 8.82,-8.82 V 82.850753 c 0,-4.86 -3.96,-8.82 -8.82,-8.82 h -80.4 c -4.86,0 -8.82,3.96 -8.82,8.82 v 26.899997 c 0,4.41 3.25,8.07 7.49,8.72 z"
+     class="st2" /></g><g
+   id="g6350"
+   transform="matrix(0.84770507,0,0,0.84770507,0.18908311,-61.910993)"><path
+     inkscape:connector-curvature="0"
+     id="path6161"
+     d="m 5.2185549,138.93075 c -1.61,-0.46 -2.78,-1.03 -3.51,-1.7 -0.73000003,-0.67 -1.10000003,-1.51 -1.10000003,-2.5 0,-1.12 0.45000003,-2.05 1.34000003,-2.78 0.89,-0.73 2.06,-1.1 3.49,-1.1 0.98,0 1.85,0.19 2.61,0.57 0.76,0.38 1.36,0.9 1.78,1.56 0.4200001,0.66 0.6300001,1.39 0.6300001,2.18 H 8.5785549 c 0,-0.86 -0.27,-1.54 -0.82,-2.03 -0.55,-0.49 -1.32,-0.74 -2.31,-0.74 -0.92,0 -1.65,0.2 -2.16,0.61 -0.52,0.41 -0.78,0.97 -0.78,1.7 0,0.58 0.25,1.07 0.74,1.47 0.49,0.4 1.33,0.77 2.51,1.1 1.18,0.33 2.11,0.7 2.77,1.1 0.66,0.4 1.16,0.87 1.4800001,1.4 0.32,0.53 0.48,1.16 0.48,1.88 0,1.15 -0.45,2.08 -1.3500001,2.77 -0.9,0.69 -2.1,1.04 -3.6,1.04 -0.98,0 -1.89,-0.19 -2.73,-0.56 -0.84,-0.37 -1.5,-0.89 -1.96000003,-1.54 -0.46,-0.65 -0.69,-1.39 -0.69,-2.22 H 2.0385549 c 0,0.86 0.32,1.54 0.95,2.04 0.63,0.5 1.48,0.75 2.54,0.75 0.99,0 1.75,-0.2 2.28,-0.61 0.53,-0.41 0.79,-0.95 0.79,-1.65 0,-0.7 -0.24,-1.24 -0.73,-1.62 -0.49,-0.38 -1.37,-0.75 -2.65,-1.12 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6163"
+     d="m 12.898555,145.26075 v -14.22 h 4.01 c 1.24,0 2.33,0.27 3.28,0.82 0.95,0.55 1.68,1.33 2.2,2.33 0.52,1 0.78,2.17 0.79,3.48 v 0.91 c 0,1.34 -0.26,2.52 -0.78,3.53 -0.52,1.01 -1.26,1.78 -2.22,2.32 -0.96,0.54 -2.08,0.82 -3.35,0.83 z m 1.87,-12.68 v 11.15 h 1.97 c 1.45,0 2.57,-0.45 3.37,-1.35 0.8,-0.9 1.21,-2.18 1.21,-3.84 v -0.83 c 0,-1.62 -0.38,-2.87 -1.14,-3.77 -0.76,-0.9 -1.83,-1.35 -3.23,-1.36 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6165"
+     d="m 29.618555,138.65075 -1.74,1.81 v 4.8 h -1.88 v -14.22 h 1.88 v 7.03 l 6.32,-7.03 h 2.27 l -5.6,6.28 6.04,7.94 h -2.25 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6167"
+     d="m 43.498555,145.26075 v -14.22 h 4.01 c 1.24,0 2.33,0.27 3.28,0.82 0.95,0.55 1.68,1.33 2.2,2.33 0.52,1 0.78,2.17 0.79,3.48 v 0.91 c 0,1.34 -0.26,2.52 -0.78,3.53 -0.52,1.01 -1.26,1.78 -2.22,2.32 -0.96,0.54 -2.08,0.82 -3.35,0.83 z m 1.88,-12.68 v 11.15 h 1.97 c 1.45,0 2.57,-0.45 3.37,-1.35 0.8,-0.9 1.21,-2.18 1.21,-3.84 v -0.83 c 0,-1.62 -0.38,-2.87 -1.14,-3.77 -0.76,-0.9 -1.83,-1.35 -3.23,-1.36 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6169"
+     d="m 55.858555,139.88075 c 0,-1.04 0.2,-1.97 0.61,-2.79 0.41,-0.82 0.97,-1.46 1.7,-1.91 0.73,-0.45 1.55,-0.67 2.49,-0.67 1.44,0 2.6,0.5 3.49,1.49 0.89,0.99 1.33,2.32 1.33,3.97 v 0.13 c 0,1.03 -0.2,1.95 -0.59,2.77 -0.39,0.82 -0.96,1.45 -1.69,1.91 -0.73,0.46 -1.57,0.68 -2.52,0.68 -1.43,0 -2.59,-0.5 -3.48,-1.49 -0.89,-0.99 -1.33,-2.31 -1.33,-3.96 v -0.13 z m 1.81,0.22 c 0,1.17 0.27,2.11 0.82,2.82 0.55,0.71 1.27,1.06 2.18,1.06 0.92,0 1.65,-0.36 2.19,-1.08 0.54,-0.72 0.81,-1.73 0.81,-3.02 0,-1.16 -0.27,-2.1 -0.83,-2.82 -0.56,-0.72 -1.28,-1.08 -2.19,-1.08 -0.89,0 -1.61,0.35 -2.16,1.06 -0.55,0.71 -0.82,1.74 -0.82,3.06 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6171"
+     d="m 71.978555,143.98075 c 0.64,0 1.21,-0.2 1.69,-0.59 0.48,-0.39 0.75,-0.88 0.8,-1.46 h 1.71 c -0.03,0.61 -0.24,1.18 -0.62,1.73 -0.38,0.55 -0.9,0.98 -1.54,1.31 -0.64,0.33 -1.32,0.49 -2.04,0.49 -1.44,0 -2.58,-0.48 -3.43,-1.44 -0.85,-0.96 -1.27,-2.27 -1.27,-3.94 v -0.3 c 0,-1.03 0.19,-1.94 0.57,-2.74 0.38,-0.8 0.92,-1.42 1.63,-1.87 0.71,-0.45 1.54,-0.66 2.5,-0.66 1.19,0 2.17,0.35 2.95,1.06 0.78,0.71 1.2,1.63 1.25,2.76 h -1.71 c -0.05,-0.68 -0.31,-1.25 -0.78,-1.68 -0.47,-0.43 -1.04,-0.66 -1.72,-0.66 -0.92,0 -1.63,0.33 -2.13,0.99 -0.5,0.66 -0.76,1.62 -0.76,2.87 v 0.34 c 0,1.22 0.25,2.16 0.75,2.81 0.5,0.65 1.22,0.98 2.15,0.98 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6173"
+     d="m 84.728555,144.22075 c -0.7,0.83 -1.73,1.24 -3.1,1.24 -1.13,0 -1.98,-0.33 -2.57,-0.98 -0.59,-0.65 -0.89,-1.62 -0.89,-2.91 v -6.88 h 1.81 v 6.83 c 0,1.6 0.65,2.4 1.95,2.4 1.38,0 2.3,-0.51 2.75,-1.54 v -7.69 h 1.81 v 10.57 h -1.72 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6175"
+     d="m 90.928555,134.70075 0.05,1.17 c 0.77,-0.91 1.82,-1.37 3.13,-1.37 1.48,0 2.48,0.57 3.02,1.7 0.35,-0.51 0.81,-0.92 1.37,-1.23 0.56,-0.31 1.23,-0.47 1.999995,-0.47 2.32,0 3.5,1.23 3.53,3.68 v 7.08 h -1.81 v -6.97 c 0,-0.75 -0.17,-1.32 -0.52,-1.69 -0.35,-0.37 -0.92,-0.56 -1.739995,-0.56 -0.67,0 -1.23,0.2 -1.67,0.6 -0.44,0.4 -0.7,0.94 -0.77,1.62 v 7.01 h -1.82 v -6.92 c 0,-1.54 -0.75,-2.3 -2.26,-2.3 -1.19,0 -2,0.5 -2.43,1.51 v 7.71 h -1.79 v -10.57 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6177"
+     d="m 111.14855,145.46075 c -1.43,0 -2.6,-0.47 -3.5,-1.41 -0.9,-0.94 -1.35,-2.2 -1.35,-3.77 v -0.33 c 0,-1.05 0.2,-1.98 0.6,-2.81 0.4,-0.83 0.96,-1.47 1.68,-1.93 0.72,-0.46 1.5,-0.7 2.34,-0.7 1.37,0 2.44,0.45 3.2,1.36 0.76,0.91 1.14,2.2 1.14,3.89 v 0.75 h -7.16 c 0.03,1.04 0.33,1.88 0.91,2.52 0.58,0.64 1.32,0.96 2.22,0.96 0.64,0 1.18,-0.13 1.62,-0.39 0.44,-0.26 0.83,-0.61 1.16,-1.04 l 1.1,0.86 c -0.86,1.36 -2.19,2.04 -3.96,2.04 z m -0.23,-9.47 c -0.73,0 -1.34,0.27 -1.84,0.8 -0.5,0.53 -0.8,1.27 -0.92,2.23 h 5.29 v -0.14 c -0.05,-0.92 -0.3,-1.63 -0.74,-2.13 -0.44,-0.5 -1.03,-0.76 -1.79,-0.76 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6179"
+     d="m 119.06855,134.70075 0.06,1.33 c 0.81,-1.02 1.86,-1.52 3.16,-1.52 2.23,0 3.36,1.26 3.38,3.78 v 6.98 h -1.81 v -6.99 c -0.01,-0.76 -0.18,-1.33 -0.52,-1.69 -0.34,-0.36 -0.87,-0.55 -1.6,-0.55 -0.59,0 -1.1,0.16 -1.54,0.47 -0.44,0.31 -0.79,0.72 -1.04,1.23 v 7.53 h -1.81 v -10.57 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6181"
+     d="m 130.84855,132.14075 v 2.56 h 1.97 v 1.4 h -1.97 v 6.56 c 0,0.42 0.09,0.74 0.26,0.95 0.17,0.21 0.48,0.32 0.9,0.32 0.21,0 0.5,-0.04 0.86,-0.12 v 1.46 c -0.48,0.13 -0.94,0.19 -1.39,0.19 -0.81,0 -1.42,-0.24 -1.83,-0.73 -0.41,-0.49 -0.62,-1.18 -0.62,-2.08 v -6.55 h -1.92 v -1.4 h 1.92 v -2.56 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6183"
+     d="m 141.44855,145.26075 c -0.1,-0.21 -0.19,-0.58 -0.25,-1.11 -0.84,0.87 -1.84,1.31 -3.01,1.31 -1.04,0 -1.9,-0.29 -2.56,-0.88 -0.66,-0.59 -1,-1.34 -1,-2.24 0,-1.1 0.42,-1.96 1.25,-2.56 0.83,-0.6 2.01,-0.91 3.53,-0.91 h 1.76 v -0.83 c 0,-0.63 -0.19,-1.13 -0.57,-1.51 -0.38,-0.38 -0.93,-0.56 -1.67,-0.56 -0.64,0 -1.18,0.16 -1.62,0.49 -0.44,0.33 -0.65,0.72 -0.65,1.18 h -1.82 c 0,-0.53 0.19,-1.04 0.56,-1.53 0.37,-0.49 0.88,-0.88 1.52,-1.17 0.64,-0.29 1.35,-0.43 2.11,-0.43 1.22,0 2.17,0.3 2.86,0.91 0.69,0.61 1.05,1.45 1.07,2.51 v 4.86 c 0,0.97 0.12,1.74 0.37,2.31 v 0.16 z m -3,-1.37 c 0.57,0 1.1,-0.15 1.61,-0.44 0.51,-0.29 0.88,-0.67 1.1,-1.14 v -2.17 h -1.42 c -2.21,0 -3.32,0.65 -3.32,1.94 0,0.57 0.19,1.01 0.57,1.33 0.38,0.32 0.87,0.48 1.46,0.48 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6185"
+     d="m 148.25855,132.14075 v 2.56 h 1.97 v 1.4 h -1.97 v 6.56 c 0,0.42 0.09,0.74 0.26,0.95 0.17,0.21 0.48,0.32 0.9,0.32 0.21,0 0.5,-0.04 0.86,-0.12 v 1.46 c -0.48,0.13 -0.94,0.19 -1.39,0.19 -0.81,0 -1.42,-0.24 -1.83,-0.73 -0.41,-0.49 -0.62,-1.18 -0.62,-2.08 v -6.55 h -1.92 v -1.4 h 1.92 v -2.56 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6187"
+     d="m 152.34855,131.89075 c 0,-0.29 0.09,-0.54 0.27,-0.74 0.18,-0.2 0.44,-0.3 0.8,-0.3 0.36,0 0.62,0.1 0.8,0.3 0.18,0.2 0.27,0.45 0.27,0.74 0,0.29 -0.09,0.54 -0.27,0.73 -0.18,0.19 -0.45,0.29 -0.8,0.29 -0.35,0 -0.62,-0.1 -0.8,-0.29 -0.18,-0.19 -0.27,-0.43 -0.27,-0.73 z m 1.95,13.37 h -1.81 v -10.56 h 1.81 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6189"
+     d="m 156.70855,139.88075 c 0,-1.04 0.2,-1.97 0.61,-2.79 0.41,-0.82 0.97,-1.46 1.7,-1.91 0.73,-0.45 1.55,-0.67 2.49,-0.67 1.44,0 2.6,0.5 3.49,1.49 0.89,0.99 1.33,2.32 1.33,3.97 v 0.13 c 0,1.03 -0.2,1.95 -0.59,2.77 -0.39,0.82 -0.96,1.45 -1.69,1.91 -0.73,0.46 -1.57,0.68 -2.52,0.68 -1.43,0 -2.59,-0.5 -3.48,-1.49 -0.89,-0.99 -1.33,-2.31 -1.33,-3.96 v -0.13 z m 1.82,0.22 c 0,1.17 0.27,2.11 0.82,2.82 0.55,0.71 1.27,1.06 2.18,1.06 0.92,0 1.65,-0.36 2.19,-1.08 0.54,-0.72 0.81,-1.73 0.81,-3.02 0,-1.16 -0.28,-2.1 -0.83,-2.82 -0.55,-0.72 -1.28,-1.08 -2.19,-1.08 -0.89,0 -1.61,0.35 -2.16,1.06 -0.55,0.71 -0.82,1.74 -0.82,3.06 z" /><path
+     inkscape:connector-curvature="0"
+     id="path6191"
+     d="m 170.30855,134.70075 0.06,1.33 c 0.81,-1.02 1.86,-1.52 3.16,-1.52 2.23,0 3.36,1.26 3.38,3.78 v 6.98 h -1.81 v -6.99 c -0.01,-0.76 -0.18,-1.33 -0.52,-1.69 -0.34,-0.36 -0.87,-0.55 -1.6,-0.55 -0.59,0 -1.1,0.16 -1.54,0.47 -0.44,0.31 -0.79,0.72 -1.04,1.23 v 7.53 h -1.81 v -10.57 z" /></g>
+</svg>
\ No newline at end of file
diff --git a/docs/main.css b/docs/main.css
new file mode 100644
index 0000000..57a8da6
--- /dev/null
+++ b/docs/main.css
@@ -0,0 +1,105 @@
+/************************/
+/*       GENERAL        */
+/************************/
+
+body {
+    color: #1e1e1e;
+}
+
+h1, h2, h3, h4, h5, h6, p, a, li, span, blockquote, input, textarea, select, label {
+    font-family: 'Roboto', sans-serif;
+}
+
+p {
+/*    font-size: 16px;
+    line-height: 25px;
+    margin-bottom: 20px;*/
+}
+
+a {
+    text-decoration: none;
+    color: inherit;
+}
+
+
+/* Sidebar */
+#top {
+	background-color: #F5F5F5;
+	width: 275px;
+	position: fixed;
+	top: 0;
+	bottom: 0;
+	left: 0;
+	height: auto !important;
+    overflow: auto;
+    padding: 25px;
+    box-sizing: border-box;
+    display: flex;
+    flex-direction: column;
+}
+@media (max-width: 1012px) {
+	#top {
+		box-shadow: 5px 0px 10px 0px rgba(0,0,0,0.25);
+		position: fixed;
+		z-index: 9999;
+		left: -100%;
+		width: 450px;
+		background-color: #F5F5F5;
+		transition: 0.2s left;
+	}
+}
+@media (max-width: 767px) {
+	#top {
+		width: calc(100% - 50px);
+		padding: 20px;
+	}
+}
+@media (max-width: 1012px) {
+	#top.open {
+		left: 0;
+	}
+}
+
+
+/* Content */
+#doc-content {
+	padding: 25px 50px 25px 290px;
+	margin: 0 !important;
+	height: auto !important;
+}
+@media (max-width: 1012px) {
+    #doc-content {
+        padding: 110px 40px 40px 40px;
+    }
+}
+@media (max-width: 767px) {
+    #doc-content {
+        padding: 90px 20px 50px 20px;
+    }
+}
+
+
+/* Hide the default doxygen stuff that we dont want */
+.ui-resizable-handle {
+	display: none !important;
+}
+#nav-sync {
+	display: none !important;
+}
+#nav-tree {
+	height: 100% !important;
+	background: none;
+    overflow: auto;
+    padding: 35px;
+    box-sizing: border-box;
+}
+#nav-path, #side-nav {
+	display: none !important;
+}
+
+div.line,
+div.line a,
+div.line span {
+	font-family: monospace;
+}
+
diff --git a/docs/main.js b/docs/main.js
new file mode 100644
index 0000000..e732e8f
--- /dev/null
+++ b/docs/main.js
@@ -0,0 +1,17 @@
+$(document).ready(function() {
+
+    // Trigger the mobile navigation
+    $(document).on('click', '.navigation-toggle', function (event) {
+        event.preventDefault();
+        $(this).toggleClass('clicked');
+        $('#top').toggleClass('open');
+    });
+
+    // Add a class to all <li>'s with children
+    $('#main-nav ul li > ul').parent().addClass('hasChildren');
+    $('#main-nav .has-submenu').removeClass('has-submenu');
+    $('#main-nav .sm').removeClass('sm');
+    $('#main-nav .sm-dox').removeClass('sm-dox');
+    $('#main-nav #main-menu').removeAttr('data-smartmenus-id');
+    $('#main-nav #main-menu').removeAttr('id');
+});
diff --git a/docs/mainpage.md b/docs/mainpage.md
new file mode 100644
index 0000000..e79fb90
--- /dev/null
+++ b/docs/mainpage.md
@@ -0,0 +1,30 @@
+# Raspberry Pi Pico SDK
+
+The Raspberry Pi Pico SDK (Software Development Kit), henceforth SDK, provides the headers, libraries and build system necessary to write programs for the RP2040 based devices such as the Raspberry Pi Pico in C, C++ or assembly language. The SDK is designed to provide an API and programming environment that is familiar both to non-embedded C developers and embedded C developers alike.
+
+A single program runs on the device at a time with a conventional main() method. Standard C/C++ libraries are supported along with APIs for accessing the RP2040’s hardware, including DMA, IRQs, and the wide variety fixed function peripherals and PIO (Programmable IO).
+
+Additionally the SDK provides higher level libraries for dealing with timers, USB, synchronization and multi-core programming, along with additional high level functionality built using PIO such as audio. The SDK can be used to build anything from simple applications, full fledged runtime environments such as MicroPython, to low level software such as the RP2040’s on chip bootrom itself.
+
+This documentation is generated from the SDK source tree using Doxygen. It provides basic information on the APIs used for each library, but does not provide usage information. Please refer to the Databooks for usage and more technical information.
+
+## SDK Design
+
+The RP2040 is a powerful chip, however it is an embedded environment, so both RAM, and program space are at premium. Additionally the trade offs between performance and other factors (e.g. edge case error handling, runtime vs compile time configuration) are necessarily much more visible to the developer than they might be on other higher level platforms.
+
+The intention within the SDK has been for features to just work out of the box, with sensible defaults, but also to give the developer as much control and power as possible (if they want it) to fine tune every aspect of the application they are building and the libraries used.
+
+## The Build System
+
+The SDK uses CMake to manage the build. CMake is widely supported by IDEs (Integrated Development Environments), and allows a simple specification of the build (via CMakeLists.txt files), from which CMake can generate a build system (for use by `make`, `ninja` or other build tools) customized for the platform and by any configuration variables the developer chooses for a list of configuration variables).
+
+Apart from being a widely used build system for C/C++ development, CMake is fundamental to the way the SDK is structured, and how applications are configured and built.
+
+The SDK builds an executable which is bare metal, i.e. it includes the entirety of the code needed to run on the device (other than floating point and other optimized code contained in the bootrom within the RP2040).
+
+## Examples
+
+
+This SDK documentation contains a number of example code fragments. An index of these examples can be found [here](@ref examples_page). These examples, and any other source code included in this documentation, is Copyright &copy; 2020 Raspberry Pi (Trading) Ltd. and licensed under the [3-Clause BSD](https://opensource.org/licenses/BSD-3-Clause) license.
+
+
diff --git a/docs/normalise.css b/docs/normalise.css
new file mode 100644
index 0000000..2b0f97b
--- /dev/null
+++ b/docs/normalise.css
@@ -0,0 +1,447 @@
+/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
+
+/* Document
+   ========================================================================== */
+
+/**
+ * 1. Correct the line height in all browsers.
+ * 2. Prevent adjustments of font size after orientation changes in
+ *    IE on Windows Phone and in iOS.
+ */
+
+ html {
+    line-height: 1.15; /* 1 */
+    -ms-text-size-adjust: 100%; /* 2 */
+    -webkit-text-size-adjust: 100%; /* 2 */
+  }
+
+  /* Sections
+     ========================================================================== */
+
+  /**
+   * Remove the margin in all browsers (opinionated).
+   */
+
+  body {
+    margin: 0;
+  }
+
+  /**
+   * Add the correct display in IE 9-.
+   */
+
+  article,
+  aside,
+  footer,
+  header,
+  nav,
+  section {
+    display: block;
+  }
+
+  /**
+   * Correct the font size and margin on `h1` elements within `section` and
+   * `article` contexts in Chrome, Firefox, and Safari.
+   */
+
+  h1 {
+    font-size: 145%;
+    margin: 0.67em 0;
+  }
+
+  /* Grouping content
+     ========================================================================== */
+
+  /**
+   * Add the correct display in IE 9-.
+   * 1. Add the correct display in IE.
+   */
+
+  figcaption,
+  figure,
+  main { /* 1 */
+    display: block;
+  }
+
+  /**
+   * Add the correct margin in IE 8.
+   */
+
+  figure {
+    margin: 1em 40px;
+  }
+
+  /**
+   * 1. Add the correct box sizing in Firefox.
+   * 2. Show the overflow in Edge and IE.
+   */
+
+  hr {
+    box-sizing: content-box; /* 1 */
+    height: 0; /* 1 */
+    overflow: visible; /* 2 */
+  }
+
+  /**
+   * 1. Correct the inheritance and scaling of font size in all browsers.
+   * 2. Correct the odd `em` font sizing in all browsers.
+   */
+
+  pre {
+    font-family: monospace, monospace; /* 1 */
+    font-size: 1em; /* 2 */
+  }
+
+  /* Text-level semantics
+     ========================================================================== */
+
+  /**
+   * 1. Remove the gray background on active links in IE 10.
+   * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
+   */
+
+  a {
+    background-color: transparent; /* 1 */
+    -webkit-text-decoration-skip: objects; /* 2 */
+  }
+
+  /**
+   * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
+   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
+   */
+
+  abbr[title] {
+    border-bottom: none; /* 1 */
+    text-decoration: underline; /* 2 */
+    text-decoration: underline dotted; /* 2 */
+  }
+
+  /**
+   * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
+   */
+
+  b,
+  strong {
+    font-weight: inherit;
+  }
+
+  /**
+   * Add the correct font weight in Chrome, Edge, and Safari.
+   */
+
+  b,
+  strong {
+    font-weight: bolder;
+  }
+
+  /**
+   * 1. Correct the inheritance and scaling of font size in all browsers.
+   * 2. Correct the odd `em` font sizing in all browsers.
+   */
+
+  code,
+  kbd,
+  samp {
+    font-family: monospace, monospace; /* 1 */
+    font-size: 1em; /* 2 */
+  }
+
+  /**
+   * Add the correct font style in Android 4.3-.
+   */
+
+  dfn {
+    font-style: italic;
+  }
+
+  /**
+   * Add the correct background and color in IE 9-.
+   */
+
+  mark {
+    background-color: #ff0;
+    color: #000;
+  }
+
+  /**
+   * Add the correct font size in all browsers.
+   */
+
+  small {
+    font-size: 80%;
+  }
+
+  /**
+   * Prevent `sub` and `sup` elements from affecting the line height in
+   * all browsers.
+   */
+
+  sub,
+  sup {
+    font-size: 75%;
+    line-height: 0;
+    position: relative;
+    vertical-align: baseline;
+  }
+
+  sub {
+    bottom: -0.25em;
+  }
+
+  sup {
+    top: -0.5em;
+  }
+
+  /* Embedded content
+     ========================================================================== */
+
+  /**
+   * Add the correct display in IE 9-.
+   */
+
+  audio,
+  video {
+    display: inline-block;
+  }
+
+  /**
+   * Add the correct display in iOS 4-7.
+   */
+
+  audio:not([controls]) {
+    display: none;
+    height: 0;
+  }
+
+  /**
+   * Remove the border on images inside links in IE 10-.
+   */
+
+  img {
+    border-style: none;
+  }
+
+  /**
+   * Hide the overflow in IE.
+   */
+
+  svg:not(:root) {
+    overflow: hidden;
+  }
+
+  /* Forms
+     ========================================================================== */
+
+  /**
+   * 1. Change the font styles in all browsers (opinionated).
+   * 2. Remove the margin in Firefox and Safari.
+   */
+
+  button,
+  input,
+  optgroup,
+  select,
+  textarea {
+    font-family: sans-serif; /* 1 */
+    font-size: 100%; /* 1 */
+    line-height: 1.15; /* 1 */
+    margin: 0; /* 2 */
+  }
+
+  /**
+   * Show the overflow in IE.
+   * 1. Show the overflow in Edge.
+   */
+
+  button,
+  input { /* 1 */
+    overflow: visible;
+  }
+
+  /**
+   * Remove the inheritance of text transform in Edge, Firefox, and IE.
+   * 1. Remove the inheritance of text transform in Firefox.
+   */
+
+  button,
+  select { /* 1 */
+    text-transform: none;
+  }
+
+  /**
+   * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
+   *    controls in Android 4.
+   * 2. Correct the inability to style clickable types in iOS and Safari.
+   */
+
+  button,
+  html [type="button"], /* 1 */
+  [type="reset"],
+  [type="submit"] {
+    -webkit-appearance: button; /* 2 */
+  }
+
+  /**
+   * Remove the inner border and padding in Firefox.
+   */
+
+  button::-moz-focus-inner,
+  [type="button"]::-moz-focus-inner,
+  [type="reset"]::-moz-focus-inner,
+  [type="submit"]::-moz-focus-inner {
+    border-style: none;
+    padding: 0;
+  }
+
+  /**
+   * Restore the focus styles unset by the previous rule.
+   */
+
+  button:-moz-focusring,
+  [type="button"]:-moz-focusring,
+  [type="reset"]:-moz-focusring,
+  [type="submit"]:-moz-focusring {
+    outline: 1px dotted ButtonText;
+  }
+
+  /**
+   * Correct the padding in Firefox.
+   */
+
+  fieldset {
+    padding: 0.35em 0.75em 0.625em;
+  }
+
+  /**
+   * 1. Correct the text wrapping in Edge and IE.
+   * 2. Correct the color inheritance from `fieldset` elements in IE.
+   * 3. Remove the padding so developers are not caught out when they zero out
+   *    `fieldset` elements in all browsers.
+   */
+
+  legend {
+    box-sizing: border-box; /* 1 */
+    color: inherit; /* 2 */
+    display: table; /* 1 */
+    max-width: 100%; /* 1 */
+    padding: 0; /* 3 */
+    white-space: normal; /* 1 */
+  }
+
+  /**
+   * 1. Add the correct display in IE 9-.
+   * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
+   */
+
+  progress {
+    display: inline-block; /* 1 */
+    vertical-align: baseline; /* 2 */
+  }
+
+  /**
+   * Remove the default vertical scrollbar in IE.
+   */
+
+  textarea {
+    overflow: auto;
+  }
+
+  /**
+   * 1. Add the correct box sizing in IE 10-.
+   * 2. Remove the padding in IE 10-.
+   */
+
+  [type="checkbox"],
+  [type="radio"] {
+    box-sizing: border-box; /* 1 */
+    padding: 0; /* 2 */
+  }
+
+  /**
+   * Correct the cursor style of increment and decrement buttons in Chrome.
+   */
+
+  [type="number"]::-webkit-inner-spin-button,
+  [type="number"]::-webkit-outer-spin-button {
+    height: auto;
+  }
+
+  /**
+   * 1. Correct the odd appearance in Chrome and Safari.
+   * 2. Correct the outline style in Safari.
+   */
+
+  [type="search"] {
+    -webkit-appearance: textfield; /* 1 */
+    outline-offset: -2px; /* 2 */
+  }
+
+  /**
+   * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
+   */
+
+  [type="search"]::-webkit-search-cancel-button,
+  [type="search"]::-webkit-search-decoration {
+    -webkit-appearance: none;
+  }
+
+  /**
+   * 1. Correct the inability to style clickable types in iOS and Safari.
+   * 2. Change font properties to `inherit` in Safari.
+   */
+
+  ::-webkit-file-upload-button {
+    -webkit-appearance: button; /* 1 */
+    font: inherit; /* 2 */
+  }
+
+  /* Interactive
+     ========================================================================== */
+
+  /*
+   * Add the correct display in IE 9-.
+   * 1. Add the correct display in Edge, IE, and Firefox.
+   */
+
+  details, /* 1 */
+  menu {
+    display: block;
+  }
+
+  /*
+   * Add the correct display in all browsers.
+   */
+
+  summary {
+    display: list-item;
+  }
+
+  /* Scripting
+     ========================================================================== */
+
+  /**
+   * Add the correct display in IE 9-.
+   */
+
+  canvas {
+    display: inline-block;
+  }
+
+  /**
+   * Add the correct display in IE.
+   */
+
+  template {
+    display: none;
+  }
+
+  /* Hidden
+     ========================================================================== */
+
+  /**
+   * Add the correct display in IE 10-.
+   */
+
+  [hidden] {
+    display: none;
+  }
\ No newline at end of file
diff --git a/docs/pico.jpg b/docs/pico.jpg
new file mode 100644
index 0000000..f60d148
--- /dev/null
+++ b/docs/pico.jpg
Binary files differ
diff --git a/docs/rp2040.png b/docs/rp2040.png
new file mode 100644
index 0000000..ce4e0f1
--- /dev/null
+++ b/docs/rp2040.png
Binary files differ
diff --git a/docs/search.svg b/docs/search.svg
new file mode 100644
index 0000000..0d6faca
--- /dev/null
+++ b/docs/search.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="Layer_1" x="0px" y="0px" viewBox="0 0 29 29" xml:space="preserve"><style type="text/css">.st0{fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;} .st1{fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;} .st2{fill:none;stroke:#000000;stroke-miterlimit:10;} .st3{fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;stroke-dasharray:1.7411,1.7411;} .st4{fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:2.0261,4.0522;}</style><circle class="st0" cx="11.854" cy="11.854" r="9" fill="none" stroke="#000" stroke-miterlimit="10" stroke-width="2"/><path class="st1" fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-width="2" d="M18.451 18.451l7.695 7.695"/><metadata><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:dc="http://purl.org/dc/elements/1.1/"><rdf:Description about="https://iconscout.com/legal#licenses" dc:title="search,find,magnifier,glass,magnify" dc:description="search,find,magnifier,glass,magnify" dc:publisher="Iconscout" dc:date="2017-10-04" dc:format="image/svg+xml" dc:language="en"><dc:creator><rdf:Bag><rdf:li>Jemis Mali</rdf:li></rdf:Bag></dc:creator></rdf:Description></rdf:RDF></metadata></svg>
\ No newline at end of file
diff --git a/docs/styles.css b/docs/styles.css
new file mode 100644
index 0000000..495fb24
--- /dev/null
+++ b/docs/styles.css
@@ -0,0 +1,703 @@
+
+.logo {
+    margin-bottom: 30px;
+}
+@media (max-width: 1012px) {
+    .logo {
+        display: none;
+    }
+}
+
+.logo--mobile {
+    display: none;
+}
+@media (max-width: 1012px) {
+    .logo--mobile {
+        display: block;
+        box-sizing: border-box;
+        max-width: 35px;
+        position: absolute;
+        z-index: 10;
+        top: 50%;
+        left: 40px;
+        transform: translateY(-50%);
+    }
+    .logo--mobile img {
+        width: 100%;
+    }
+}
+@media (max-width: 767px) {
+    .logo--mobile {
+        left: 20px;
+    }
+}
+
+
+
+.navigation-footer {
+    margin-top: auto;
+    order: 3;
+    color: #CA4F62;
+    display: flex;
+    align-items: center;
+}
+@media (max-width: 1012px) {
+    .navigation-footer {
+        margin-top: 50px;
+    }
+}
+.navigation-footer img {
+    height: 35px;
+}
+.navigation-footer a {
+    font-size: .9em;
+    margin-left: 10px;
+}
+
+
+
+
+
+/* Search Box */
+#MSearchBox {
+    border-radius: 5px;
+    margin-top: 0px;
+    margin-bottom: 15px;
+    background: none;
+    background-color: white;
+    position: relative;
+    border-radius: 0;
+    box-shadow: none;
+    width: 100%;
+}
+#MSearchBox .right {
+    display: none;
+}
+#MSearchBox .left {
+    width: 100%;
+    height: auto;
+    left: 0;
+}
+#MSearchBox img {
+    position: absolute;
+    z-index: 1;
+    top: 4px;
+    left: 0px;
+}
+#MSearchBox input[type=text] {
+    position: inherit;
+    padding: 16px 15px 14px 30px;
+    border: 0;
+    box-sizing: border-box;
+    background: none;
+    background-color: white;
+    width: 100%;
+    margin: 0;
+    box-sizing: border-box;
+    font-family: 'Roboto', sans-serif;
+    font-size: 0.9em;
+}
+#MSearchSelectWindow {
+    position: fixed;
+    top: 178px !important;
+    left: 49px !important;
+    border: solid 1px #d4d4d4;
+    border-radius: 0;
+    box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.25);
+    background-color: white;
+}
+#MSearchSelectWindow .SelectItem {
+    font-family: 'Roboto', sans-serif;
+    padding: 1px 25px 1px 6px;
+}
+#MSearchSelectWindow .SelectionMark {
+    color: black;
+}
+#MSearchSelectWindow .SelectItem:hover {
+    background-color: #CA4F62;
+}
+#MSearchResultsWindow {
+    position: fixed;
+    top: 178px !important;
+    left: 49px !important;
+    border: solid 1px #d4d4d4;
+    border-radius: 0;
+    box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.25);
+    background-color: white;
+}
+.SRSymbol {
+    color: #CA4F62;
+}
+
+
+
+/* Main Navigation */
+#main-nav ul {
+    list-style-type: none;
+    margin: 0;
+    padding: 0;
+}
+#main-nav > ul {
+    display: flex;
+    flex-direction: column;
+}
+#main-nav > ul > li > a {
+    font-weight: normal;
+    font-size: 18px;
+}
+#main-nav > ul > li {
+    position: relative;
+    padding-bottom: 20px;
+    flex: 1;
+    order: 2;
+}
+#main-nav > ul > li:last-child {
+    order: 1;
+    float: none !important;
+}
+#main-nav ul li a {
+    display: block;
+}
+
+#main-nav ul li.hasChildren > a:hover[aria-expanded="false"] {
+    text-decoration: none;
+}
+
+#main-nav ul li a:hover {
+    text-decoration: underline;
+    color: #CA4F62;
+}
+
+#main-nav ul ul li {
+    position: relative;
+    padding-bottom: 10px;
+}
+
+#main-nav ul li.hasChildren > a[aria-expanded="false"]:after {
+    position: absolute;
+    content: "+";
+    /*top: -1px;*/
+    right: -2px;
+    line-height: 20px;
+    font-size: 20px;
+}
+
+#main-nav li ul {
+    padding-left: 5px;
+    display: none;
+    padding-top: 15px;
+    /*padding-bottom: 15px;*/
+}
+
+@media (max-width: 1012px) {
+    #main-nav > ul > li.hasChildren:after {
+        top: 9px;
+    }
+    #main-nav > ul > li {
+        padding-bottom: 0px;
+    }
+    #main-nav > ul > li:first-child {
+        border-top: 1px solid rgba(0,0,0,0.2);
+    }
+    #main-nav > ul > li {
+        padding: 10px 0;
+        border-bottom: 1px solid rgba(0,0,0,0.2);
+    }
+    #main-nav > ul > li:last-child {
+        padding: 10px 0;
+    }
+    #main-nav > ul > li ul {
+        padding-bottom: 10px;
+    }
+}
+
+
+/* Page Header */
+div.header {
+    background: none;
+    padding: 0px;
+    margin-bottom: 20px;
+    border-bottom: none;
+}
+div.header .headertitle {
+    padding: 0;
+}
+div.header .title {
+    margin: 0;
+}
+div.header .summary {
+    font-size: 13px;
+    padding: 9px 0 0 0;
+    width: auto;
+}
+@media (max-width: 767px) {
+    div.header .summary {
+        text-align: left;
+        margin-bottom: 20px;
+    }
+}
+div.header .summary a:hover {
+    color: #CA4F62;
+}
+div.header .ingroups {
+    font-size: 13px;
+    width: auto;
+    font-weight: normal;
+}
+
+
+/* Floating labels */
+span.mlabels {
+    margin: 0;
+    margin-left: 10px;
+}
+span.mlabel {
+    margin: 0;
+    margin-left: 10px;
+    border: solid 1px #CA4F62;
+    background-color: #CA4F62;
+    padding: 3px 5px;
+    font-weight: normal;
+}
+
+
+/* Content area */
+div.contents {
+    padding: 0;
+    margin: 0px;
+    margin-bottom: 20px;
+}
+div.contents ul li {
+    margin-bottom: 10px;
+}
+div.contents ul li:last-child {
+    margin-bottom: 0px;
+}
+
+div.toc {
+    padding: 0;
+    padding-bottom: 20px;
+    background-color: transparent;
+    border: none;
+    box-sizing: border-box;
+    float: none;
+    width: 100%;
+    margin: 0;
+    border-radius: 0;
+}
+
+@media (max-width: 767px) {
+    div.toc {
+        //
+    }
+}
+div.toc h3 {
+    margin: 0;
+    margin-bottom: 5px;
+    color: black;
+    font: 400 14px/22px Roboto,sans-serif;
+    font-weight: bold;
+}
+div.toc ul {
+    margin: 0;
+}
+div.toc ul li {
+    margin-left: 0 !important;
+    padding-left: 15px !important;
+    font: 400 14px/22px Roboto,sans-serif;
+}
+div.toc li ul {
+    padding-left: 10px;
+    padding-top: 7px;
+}
+
+/* Group Headers */
+h2.groupheader {
+    border-bottom: solid 1px #d4d4d4;
+    color: black;
+    margin: 0px;
+    margin-top: 30px;
+    padding: 10px 0;
+}
+tr.heading h2 {
+    margin: 0px;
+}
+
+
+/* Tables */
+table.memberdecls {
+    margin-top: 30px;
+    /*margin-bottom: 30px;*/
+}
+table.memberdecls td.memSeparator {
+    line-height: 0;
+    font-size: 0;
+    border-bottom: 1px solid #d4d4d4;
+}
+table.memberdecls td.memItemLeft {
+    padding: 7px 15px 4px 15px;
+    background-color: #f5f5f5;
+}
+table.memberdecls td.memItemRight {
+    padding: 7px 15px 4px 15px;
+    background-color: #f5f5f5;
+}
+table.memberdecls td.mdescLeft {
+    padding: 7px 15px 4px 15px;
+    background-color: #f5f5f5;
+}
+table.memberdecls td.mdescRight {
+    padding: 7px 15px 4px 15px;
+    background-color: #f5f5f5;
+}
+
+table.params .paramname {
+    color: black;
+}
+
+
+table.markdownTable td, table.markdownTable th {
+    border: 1px solid #d4d4d4;
+    padding: 3px 7px;
+    color: black;
+}
+
+table.markdownTable th.markdownTableHeadLeft, table.markdownTable th.markdownTableHeadRight, table.markdownTable th.markdownTableHeadCenter, table.markdownTable th.markdownTableHeadNone {
+    background-color: #f5f5f5;
+    color: black;
+    padding: 3px 7px;
+}
+
+div.contents .fragment {
+    border: solid 1px #CA4F62;
+    padding: 20px;
+    border-radius: 4px;
+}
+
+div.contents .line {
+    line-height: 15px;
+}
+
+
+.memtitle {
+    margin-top: 10px;
+    border-top: solid 1px #d4d4d4;
+    border-left: solid 1px #d4d4d4;
+    border-right: solid 1px #d4d4d4;
+    background: none;
+    background-color: #f5f5f5;
+    padding: 8px 10px;
+    font-weight: bold;
+    font-size: 18px;
+}
+.memtitle .permalink a, .memtitle .permalink a:visited {
+    color: black;
+}
+.memtitle .permalink a:hover {
+    text-decoration: none;
+}
+.memitem {
+    margin: 0;
+    box-shadow: none;
+}
+.memitem.glow {
+    box-shadow: 0 0 15px #CA4F62;
+}
+.memitem .memproto {
+    box-shadow: none;
+    background: none;
+    background-color: #f5f5f5;
+    border-top: solid 1px #d4d4d4;
+    border-left: solid 1px #d4d4d4;
+    border-right: solid 1px #d4d4d4;
+    color: black;
+    padding: 8px 10px;
+}
+.memitem .memproto .memname {
+    margin-left: 0;
+}
+.memitem .memdoc {
+    box-shadow: none;
+    background: none;
+    border-bottom: solid 1px #d4d4d4;
+    border-left: solid 1px #d4d4d4;
+    border-right: solid 1px #d4d4d4;
+    padding: 10px 12px;
+
+}
+
+
+/* General links? */
+a.el {
+    font-weight: normal;
+}
+a.el {
+    color: #CA4F62;
+}
+a.el:visited {
+    color: #CA4F62;
+}
+a.el:hover {
+    color: #CA4F62;
+}
+div.contents a {
+    color: #CA4F62;
+}
+div.contents a:visited {
+    color: #CA4F62;
+}
+div.contents a:hover {
+    color: #CA4F62;
+}
+
+
+/* Highlighted effect */
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+    text-shadow: 0 0 15px #CA4F62;
+}
+
+
+/* Directory */
+div.directory {
+    margin: 20px 0px;
+    border-top: 1px solid #d4d4d4;
+    border-bottom: 1px solid #d4d4d4;
+}
+div.directory .levels {
+    font-size: 13px;
+    padding: 8px 0;
+}
+div.directory .levels span:hover {
+    color: #CA4F62;
+}
+table.directory {
+    /*width: 100%;*/
+}
+table.directory tr.even {
+    background-color: #f5f5f5;
+}
+table.directory td.entry {
+    padding: 8px 6px;
+    vertical-align: middle;
+    box-sizing: border-box;
+}
+table.directory td.desc {
+    padding: 8px 6px;
+    vertical-align: middle;
+    box-sizing: border-box;
+}
+
+
+/* Icons */
+.iconfopen, .icondoc {
+    margin: 0;
+}
+
+
+
+dl.reflist dt {
+    box-shadow: none;
+    background-color: #F5F5F5;
+    border-top: solid 1px #d4d4d4;
+    border-left: solid 1px #d4d4d4;
+    border-right: solid 1px #d4d4d4;
+    padding: 10px;
+}
+dl.reflist dd {
+    box-shadow: none;
+    background: none;
+    border-bottom: solid 1px #d4d4d4;
+    border-left: solid 1px #d4d4d4;
+    border-right: solid 1px #d4d4d4;
+    padding: 10px;
+}
+
+
+/* Standard arrow icon? */
+.arrow {
+    color: #d4d4d4;
+    width: auto;
+    height: auto;
+    margin: 0 5px;
+}
+
+.icona {
+    height: auto;
+    width: auto;
+    margin-right: 8px;
+}
+.icona .icon {
+    font-family: 'Roboto', sans-serif;
+    margin: 0;
+    background-color: #CA4F62;
+    padding: 1px;
+    font-weight: normal;
+}
+
+/* horizontal ruler */
+hr {
+    border: none;
+    border-top: 1px solid #d4d4d4;
+    margin-top: 20px;
+    margin-bottom: 20px;
+}
+
+
+/* Notes */
+dl.warning {
+    margin: 0px;
+    padding: 0px;
+    padding-left: 10px;
+}
+dl.note {
+    margin: 0px;
+    padding: 0px;
+    padding-left: 10px;
+}
+dl.attention {
+    margin: 0px;
+    padding: 0px;
+    padding-left: 10px;
+}
+dl.todo {
+    margin: 0px;
+    padding: 0px;
+    padding-left: 10px;
+}
+dl dt, dl dt a.el {
+    font-weight: bold;
+}
+dl dd {
+    margin: 0px;
+}
+
+
+table.fieldtable {
+    box-shadow: none;
+    border: 1px solid #d4d4d4;
+}
+table.fieldtable th {
+    background: none;
+    background-color: #F5F5F5;
+    border-bottom: 1px solid #d4d4d4;
+    color: black;
+    font-size: 100%;
+    font-weight: bold;
+}
+table.fieldtable td.fieldname, table.fieldtable td.fielddoc {
+    border-bottom: 1px solid #d4d4d4;
+    border-right: 1px solid #d4d4d4;
+    vertical-align: middle;
+}
+
+
+div.qindex {
+    background-color: #F5F5F5;
+    border: none;
+    text-align: center;
+    padding: 8px 0;
+}
+table.classindex div.ah {
+    font-family: 'Roboto', sans-serif;
+    margin: 0;
+    background: none;
+    background-color: #CA4F62;
+    padding: 1px;
+    font-weight: normal;
+    border: none;
+    box-shadow: none;
+    border-radius: 0;
+    padding: 3px;
+}
+table.classindex td {
+    padding: 3px 6px;
+    vertical-align: middle;
+    font-size: 14px;
+}
+table.classindex table td {
+    padding: 0;
+    vertical-align: middle;
+}
+
+
+div.textblock h2 {
+    border-bottom: solid 1px #d4d4d4;
+    padding-bottom: 10px;
+}
+
+
+
+
+
+.navigation-mobile {
+    display: none;
+    background-color: #F5F5F5;
+    position: fixed;
+    top: 0;
+    left: 0;
+    width: 100%;
+    height: 70px;
+}
+@media (max-width: 1012px) {
+    .navigation-mobile {
+        display: block;
+    }
+}
+
+
+.navigation-toggle {
+    cursor: pointer;
+    width: 44px;
+    height: 44px;
+    margin-right: 20px;
+    position: absolute;
+    right: 0;
+    top: 50%;
+    transform: translateY(-50%);
+    bottom: 5%;
+    z-index: 50;
+    display: none;
+}
+@media (max-width: 1012px) {
+    .navigation-toggle {
+        display: block;
+    }
+}
+@media (max-width: 767px) {
+    .navigation-toggle {
+        margin-right: 0px;
+    }
+}
+.navigation-toggle span {
+    display: block;
+    text-indent: -9999px;
+    position: absolute;
+    height: 2px;
+    left: 10px;
+    right: 10px;
+    background-color: #CA4F62;
+    border-radius: 1px;
+    transition: 0.15s all;
+}
+.line-1 {
+    top: 14px;
+}
+.line-2 {
+    top: 50%;
+    margin-top: -1px;
+}
+.line-3 {
+    bottom: 14px;
+}
+.navigation-toggle.clicked .line-1 {
+    transform: rotate(45deg);
+    top: 21px;
+}
+.navigation-toggle.clicked .line-2 {
+    opacity: 0;
+}
+.navigation-toggle.clicked .line-3 {
+    transform: rotate(-45deg);
+    bottom: 21px;
+}
+
diff --git a/docs/weblinks_page.md b/docs/weblinks_page.md
new file mode 100644
index 0000000..e579362
--- /dev/null
+++ b/docs/weblinks_page.md
@@ -0,0 +1,31 @@
+## Documentation and datasheets {#weblinks_page}
+
+The full documentation for the RP2040 and Raspberry Pi Pico board can be found at the following links
+
+ - [RP2040 Datasheet](https://rptl.io/rp2040-datasheet)
+ - [Raspberry Pi Pico Datasheet](https://rptl.io/pico-datasheet)
+ - [Hardware design with the RP2040](https://rptl.io/rp2040-design)
+ - [Raspberry Pi Pico C/C++ SDK](https://rptl.io/pico-c-sdk)
+ - [Raspberry Pi Pico Python SDK](https://rptl.io/pico-micropython)
+ - [Getting started with Raspberry Pi Pico](https://rptl.io/pico-get-started)
+ - [Raspberry Pi Pico FAQ](https://rptl.io/pico-faq)
+
+### Weblinks
+
+At Raspberry Pi we have a very community-based attitude to help. We run a very popular and busy forum where you can ask questions about any aspect of the Raspberry Pi ecosystem, including the Raspberry Pi Pico.
+
+You can find our forums at the [following link](https://forums.raspberrypi.com/).
+
+For the main Raspberry Pi website, [see here](https://www.raspberrypi.com)
+
+For the Raspberry Pi Pico page, [see here](https://rptl.io/rp2040-get-started)
+
+### GitHub
+
+All the source code for the Raspberry Pi Pico SDK, examples and other libraries can be found on GitHub.
+
+ - [Raspberry Pi Pico SDK](https://github.com/raspberrypi/pico-sdk)
+ - [Pico Examples](https://github.com/raspberrypi/pico-examples)
+ - [Pico Extras - Libraries under development](https://github.com/raspberrypi/pico-extras)
+ - [Pico Playground - Examples that use Pico Extras](https://github.com/raspberrypi/pico-playground)
+ - [Pico Bootrom source code](https://github.com/raspberrypi/pico-bootrom)